Hussi commited on
Commit
e0e4dc3
·
verified ·
1 Parent(s): fb4f800

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. index.html +346 -614
index.html CHANGED
@@ -1,626 +1,358 @@
1
  <!DOCTYPE html>
2
  <html lang="en" class="scroll-smooth">
3
  <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>AERO X1 | Next Gen Headphones</title>
7
- <script src="https://cdn.tailwindcss.com"></script>
8
- <link rel="preconnect" href="https://fonts.googleapis.com">
9
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
- <link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
11
-
12
- <script>
13
- tailwind.config = {
14
- theme: {
15
- extend: {
16
- fontFamily: {
17
- sans: ['Space Grotesk', 'system-ui', 'sans-serif'],
18
- body: ['Inter', 'system-ui', 'sans-serif'],
19
- },
20
- colors: {
21
- 'void': '#05070a',
22
- 'ink': '#080c12',
23
- 'slate-950': '#02040a',
24
- 'slate-900': '#0a0f1a',
25
- 'slate-800': '#111827',
26
- 'slate-700': '#1e293b',
27
- 'slate-600': '#334155',
28
- 'slate-500': '#475569',
29
- 'slate-400': '#64748b',
30
- 'slate-300': '#94a3b8',
31
- 'slate-200': '#cbd5e1',
32
- 'slate-100': '#f1f5f9',
33
- 'slate-50': '#f8fafc',
34
- 'neon': '#00d4ff',
35
- 'neon-dim': 'rgba(0, 212, 255, 0.08)',
36
- 'neon-glow': 'rgba(0, 212, 255, 0.3)',
37
- 'neon-bright': 'rgba(0, 212, 255, 0.15)',
38
- 'mauve': '#a78bfa',
39
- 'mauve-dim': 'rgba(167, 139, 250, 0.06)',
40
- 'mauve-glow': 'rgba(167, 139, 250, 0.2)',
41
- },
42
- spacing: {
43
- '18': '4.5rem',
44
- '22': '5.5rem',
45
- }
46
- }
47
- }
48
- }
49
- </script>
50
-
51
- <style>
52
- *, *::before, *::after {
53
- box-sizing: border-box;
54
- margin: 0;
55
- padding: 0;
56
- }
57
-
58
- html {
59
- scrollbar-width: thin;
60
- scrollbar-color: #1e293b #02040a;
61
- }
62
-
63
- body {
64
- font-family: 'Space Grotesk', system-ui, sans-serif;
65
- background: #05070a;
66
- color: #e2e8f0;
67
- overflow-x: hidden;
68
- -webkit-font-smoothing: antialiased;
69
- -moz-osx-font-smoothing: grayscale;
70
- }
71
-
72
- /* ── Scrollbar ── */
73
- ::-webkit-scrollbar { width: 5px; }
74
- ::-webkit-scrollbar-track { background: #02040a; }
75
- ::-webkit-scrollbar-thumb { background: #1e293b; border-radius: 10px; }
76
- ::-webkit-scrollbar-thumb:hover { background: #334155; }
77
-
78
- /* ── Scroll Reveal ── */
79
- .reveal {
80
- opacity: 0;
81
- transform: translateY(40px);
82
- transition: all 1s cubic-bezier(0.16, 1, 0.3, 1);
83
- }
84
- .reveal.active {
85
- opacity: 1;
86
- transform: translateY(0);
87
- }
88
- .reveal-delay-1 { transition-delay: 0.08s; }
89
- .reveal-delay-2 { transition-delay: 0.16s; }
90
- .reveal-delay-3 { transition-delay: 0.24s; }
91
- .reveal-delay-4 { transition-delay: 0.32s; }
92
- .reveal-delay-5 { transition-delay: 0.4s; }
93
-
94
- /* ── Hero gradient text ── */
95
- .hero-title {
96
- background: linear-gradient(180deg, #f8fafc 0%, #94a3b8 55%, #475569 100%);
97
- -webkit-background-clip: text;
98
- background-clip: text;
99
- -webkit-text-fill-color: transparent;
100
- }
101
-
102
- /* ── Thin separator line ── */
103
- .sep-line {
104
- height: 1px;
105
- background: linear-gradient(90deg, transparent, rgba(148,163,184,0.15), transparent);
106
- }
107
-
108
- /* ── Nav link underline ── */
109
- .nav-link {
110
- position: relative;
111
- padding-bottom: 2px;
112
- }
113
- .nav-link::after {
114
- content: '';
115
- position: absolute;
116
- bottom: 0;
117
- left: 0;
118
- width: 0;
119
- height: 1px;
120
- background: #00d4ff;
121
- transition: width 0.35s cubic-bezier(0.16, 1, 0.3, 1);
122
- }
123
- .nav-link:hover::after {
124
- width: 100%;
125
- }
126
-
127
- /* ── Header scroll state ── */
128
- .header-bg {
129
- transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
130
- }
131
- .header-bg.scrolled {
132
- background: rgba(5, 7, 10, 0.7);
133
- backdrop-filter: blur(24px);
134
- -webkit-backdrop-filter: blur(24px);
135
- border-bottom: 1px solid rgba(30, 41, 59, 0.3);
136
- }
137
-
138
- /* ── Hero 3D image ── */
139
- .hero-img-wrap {
140
- transition: transform 0.1s linear;
141
- will-change: transform;
142
- }
143
-
144
- /* ── Gradient orbit behind product ── */
145
- .orbit-glow {
146
- position: absolute;
147
- width: 600px;
148
- height: 600px;
149
- border-radius: 50%;
150
- background: radial-gradient(circle, rgba(0,212,255,0.04) 0%, rgba(167,139,250,0.03) 40%, transparent 70%);
151
- filter: blur(60px);
152
- animation: orbitDrift 20s ease-in-out infinite;
153
- pointer-events: none;
154
- }
155
- @keyframes orbitDrift {
156
- 0%, 100% { transform: translate(0, 0) scale(1); }
157
- 33% { transform: translate(40px, -30px) scale(1.05); }
158
- 66% { transform: translate(-20px, 20px) scale(0.95); }
159
- }
160
-
161
- /* ── Marquee ── */
162
- @keyframes marquee-left {
163
- 0% { transform: translateX(0); }
164
- 100% { transform: translateX(-50%); }
165
- }
166
- @keyframes marquee-right {
167
- 0% { transform: translateX(-50%); }
168
- 100% { transform: translateX(0); }
169
- }
170
- .marquee-left {
171
- animation: marquee-left 35s linear infinite;
172
- }
173
- .marquee-right {
174
- animation: marquee-right 45s linear infinite;
175
- }
176
-
177
- /* ── Section label ── */
178
- .sec-label {
179
- font-size: 0.65rem;
180
- letter-spacing: 0.2em;
181
- text-transform: uppercase;
182
- font-weight: 500;
183
- color: #64748b;
184
- }
185
-
186
- /* ── Abstract fill text ── */
187
- .abstract-text {
188
- font-size: clamp(2rem, 5vw, 4.5rem);
189
- line-height: 1.08;
190
- letter-spacing: -0.03em;
191
- font-weight: 600;
192
- }
193
- .abstract-line {
194
- display: inline;
195
- background: linear-gradient(90deg, #334155, #334155);
196
- background-repeat: no-repeat;
197
- background-size: 0% 100%;
198
- -webkit-background-clip: text;
199
- background-clip: text;
200
- -webkit-text-fill-color: transparent;
201
- transition: background-size 0.5s cubic-bezier(0.16, 1, 0.3, 1);
202
- }
203
- .abstract-line.revealed {
204
- background-size: 100% 100%;
205
- -webkit-text-fill-color: transparent;
206
- background-image: linear-gradient(90deg, #f8fafc, #cbd5e1);
207
- }
208
-
209
- /* ── Progress bar ── */
210
- .progress-bar {
211
- position: absolute;
212
- left: 0;
213
- top: 0;
214
- width: 2px;
215
- height: 100%;
216
- background: #1e293b;
217
- border-radius: 1px;
218
- }
219
- .progress-fill {
220
- width: 100%;
221
- background: #00d4ff;
222
- border-radius: 1px;
223
- transition: height 0.15s ease-out;
224
- }
225
-
226
- /* ── Spec card ── */
227
- .spec-card {
228
- border: 1px solid rgba(30, 41, 59, 0.4);
229
- transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
230
- }
231
- .spec-card:hover {
232
- border-color: rgba(0, 212, 255, 0.2);
233
- background: rgba(0, 212, 255, 0.02);
234
- transform: translateY(-4px);
235
- }
236
-
237
- /* ── Tab pill ── */
238
- .tab-pill {
239
- transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
240
- position: relative;
241
- overflow: hidden;
242
- }
243
- .tab-pill.active {
244
- background: rgba(0, 212, 255, 0.08);
245
- color: #00d4ff;
246
- border-color: rgba(0, 212, 255, 0.3);
247
- }
248
-
249
- /* ── Feature row ── */
250
- .feat-row {
251
- border-bottom: 1px solid rgba(30, 41, 59, 0.3);
252
- transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
253
- }
254
- .feat-row:hover {
255
- background: rgba(0, 212, 255, 0.02);
256
- border-bottom-color: rgba(0, 212, 255, 0.15);
257
- padding-left: 12px;
258
- }
259
-
260
- /* ── Gallery hover ── */
261
- .gal-img {
262
- transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
263
- }
264
- .gal-img:hover {
265
- transform: scale(1.02);
266
- }
267
- .gal-img:hover .gal-overlay {
268
- opacity: 1;
269
- }
270
- .gal-overlay {
271
- opacity: 0;
272
- transition: opacity 0.4s ease;
273
- }
274
-
275
- /* ── Price color selector ── */
276
- .color-pick {
277
- transition: all 0.3s ease;
278
- }
279
- .color-pick:hover {
280
- transform: scale(1.15);
281
- }
282
- .color-pick.active {
283
- box-shadow: 0 0 0 3px #05070a, 0 0 0 5px #00d4ff;
284
- }
285
-
286
- /* ── Buy button ── */
287
- .buy-btn {
288
- background: #e2e8f0;
289
- color: #02040a;
290
- transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
291
- position: relative;
292
- overflow: hidden;
293
- }
294
- .buy-btn::before {
295
- content: '';
296
- position: absolute;
297
- inset: 0;
298
- background: linear-gradient(135deg, transparent 40%, rgba(255,255,255,0.2) 50%, transparent 60%);
299
- transform: translateX(-100%);
300
- transition: transform 0.6s ease;
301
- }
302
- .buy-btn:hover::before {
303
- transform: translateX(100%);
304
- }
305
- .buy-btn:hover {
306
- background: #fff;
307
- box-shadow: 0 0 40px rgba(226, 232, 240, 0.15);
308
- transform: translateY(-1px);
309
- }
310
-
311
- /* ── Input ── */
312
- .form-input {
313
- background: transparent;
314
- border: 1px solid rgba(30, 41, 59, 0.5);
315
- transition: all 0.4s ease;
316
- color: #f1f5f9;
317
- }
318
- .form-input:focus {
319
- border-color: #00d4ff;
320
- box-shadow: 0 0 0 3px rgba(0, 212, 255, 0.06);
321
- outline: none;
322
- }
323
- .form-input::placeholder {
324
- color: #475569;
325
- }
326
-
327
- /* ── Lightbox ── */
328
- .lightbox {
329
- transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
330
- }
331
-
332
- /* ── Footer link ── */
333
- .footer-link {
334
- transition: color 0.3s ease;
335
- }
336
- .footer-link:hover {
337
- color: #00d4ff;
338
- }
339
-
340
- /* ── Toast ── */
341
- .toast {
342
- animation: toastIn 0.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
343
- }
344
- @keyframes toastIn {
345
- from { opacity: 0; transform: translateY(20px) scale(0.95); }
346
- to { opacity: 1; transform: translateY(0) scale(1); }
347
- }
348
- @keyframes toastOut {
349
- from { opacity: 1; transform: translateY(0) scale(1); }
350
- to { opacity: 0; transform: translateY(20px) scale(0.95); }
351
- }
352
-
353
- /* ── Noise overlay ── */
354
- .noise {
355
- position: fixed;
356
- inset: 0;
357
- pointer-events: none;
358
- z-index: 9999;
359
- opacity: 0.025;
360
- background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
361
- background-repeat: repeat;
362
- }
363
-
364
- /* ── Pulsing dot for "In Stock" ── */
365
- @keyframes pulse-soft {
366
- 0%, 100% { opacity: 1; transform: scale(1); }
367
- 50% { opacity: 0.5; transform: scale(0.8); }
368
- }
369
- .pulse-dot {
370
- animation: pulse-soft 2s ease-in-out infinite;
371
- }
372
-
373
- /* ── Underline animation on hover for CTAs ── */
374
- .cta-underline {
375
- position: relative;
376
- }
377
- .cta-underline::after {
378
- content: '';
379
- position: absolute;
380
- bottom: -2px;
381
- left: 0;
382
- width: 100%;
383
- height: 1px;
384
- background: #00d4ff;
385
- transform: scaleX(0);
386
- transform-origin: right;
387
- transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
388
- }
389
- .cta-underline:hover::after {
390
- transform: scaleX(1);
391
- transform-origin: left;
392
- }
393
- </style>
394
  </head>
395
  <body class="antialiased">
396
-
397
- <!-- Noise texture overlay -->
398
- <div class="noise"></div>
399
-
400
- <!-- ─── HEADER ─── -->
401
- <header id="header" class="fixed top-0 left-0 right-0 z-50 header-bg">
402
- <div class="max-w-7xl mx-auto px-5 sm:px-8 lg:px-12">
403
- <div class="flex items-center justify-between h-16">
404
- <!-- Logo -->
405
- <a href="#" class="flex items-center gap-2.5 group">
406
- <div class="w-7 h-7 rounded border border-slate-600 flex items-center justify-center group-hover:border-neon transition-colors duration-500">
407
- <svg class="w-3.5 h-3.5 text-slate-300 group-hover:text-neon transition-colors duration-500" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
408
- <path stroke-linecap="round" stroke-linejoin="round" d="M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"/>
409
- </svg>
410
- </div>
411
- <span class="text-sm font-semibold tracking-wide text-slate-100">AERO<span class="text-slate-500 font-normal">.</span></span>
412
- </a>
413
-
414
- <!-- Desktop Nav -->
415
- <nav class="hidden md:flex items-center gap-8">
416
- <a href="#about" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">About</a>
417
- <a href="#features" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">Features</a>
418
- <a href="#gallery" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">Gallery</a>
419
- <a href="#specs" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">Specs</a>
420
- </nav>
421
-
422
- <!-- Actions -->
423
- <div class="flex items-center gap-5">
424
- <a href="#pricing" class="hidden sm:inline-flex text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-neon transition-colors">Pricing</a>
425
- <a href="#buy" class="inline-flex items-center gap-2 px-4 py-1.5 bg-slate-100 text-slate-900 rounded text-xs font-semibold tracking-wider hover:bg-white transition-all duration-300 hover:shadow-lg hover:shadow-slate-100/10">
426
- Order
427
- <svg class="w-3 h-3" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5">
428
- <path stroke-linecap="round" stroke-linejoin="round" d="M4.5 19.5l15-15m0 0H8.25m11.25 0v11.25"/>
429
- </svg>
430
- </a>
431
- </div>
 
 
 
 
 
 
 
 
 
432
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
433
  </div>
434
- </header>
435
-
436
- <!-- ─── HERO ─── -->
437
- <section class="relative min-h-screen flex items-center overflow-hidden" id="hero">
438
- <!-- Canvas particles -->
439
- <canvas id="heroCanvas" class="absolute inset-0 w-full h-full pointer-events-none"></canvas>
440
-
441
- <!-- Orbit glow -->
442
- <div class="orbit-glow top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2"></div>
443
-
444
- <div class="relative z-10 max-w-7xl mx-auto px-5 sm:px-8 lg:px-12 w-full pt-24 pb-16">
445
- <div class="grid lg:grid-cols-2 gap-12 lg:gap-8 items-center">
446
- <!-- Text -->
447
- <div class="order-2 lg:order-1">
448
- <div class="reveal">
449
- <div class="flex items-center gap-3 mb-8">
450
- <span class="w-1.5 h-1.5 rounded-full bg-emerald-400 pulse-dot"></span>
451
- <span class="text-[0.65rem] tracking-[0.2em] uppercase text-emerald-400/80 font-medium">In Stock &mdash; Ships in 24h</span>
452
- </div>
453
- </div>
454
-
455
- <h1 class="reveal reveal-delay-1 hero-title text-5xl sm:text-6xl lg:text-7xl xl:text-[5.5rem] font-bold leading-[0.95] tracking-tight mb-6">
456
- Aero<br>
457
- <span class="text-transparent bg-clip-text" style="background: linear-gradient(180deg, #00d4ff 0%, #0ea5e9 100%); -webkit-background-clip:text; -webkit-text-fill-color:transparent;">X1</span>
458
- </h1>
459
-
460
- <p class="reveal reveal-delay-2 text-slate-400 text-base sm:text-lg font-body leading-relaxed max-w-md mb-10">
461
- Wireless headphones engineered with graphene drivers, 50-hour battery life, and adaptive ANC that learns your environment.
462
- </p>
463
-
464
- <div class="reveal reveal-delay-3 flex flex-wrap items-center gap-4">
465
- <a href="#buy" class="buy-btn inline-flex items-center gap-3 px-7 py-3.5 rounded font-semibold text-sm tracking-wide">
466
- Buy Now &mdash; $349
467
- <svg class="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5">
468
- <path stroke-linecap="round" stroke-linejoin="round" d="M13.5 4.5L21 12m0 0l-7.5 7.5M21 12H3"/>
469
- </svg>
470
- </a>
471
- <a href="#features" class="cta-underline inline-flex items-center gap-2 text-sm text-slate-400 hover:text-slate-200 transition-colors">
472
- Explore
473
- </a>
474
- </div>
475
-
476
- <!-- Spec badges -->
477
- <div class="reveal reveal-delay-4 mt-14 flex flex-wrap gap-x-8 gap-y-3">
478
- <div>
479
- <div class="text-lg font-semibold text-slate-100">50h</div>
480
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">Battery</div>
481
- </div>
482
- <div class="w-px h-8 bg-slate-800"></div>
483
- <div>
484
- <div class="text-lg font-semibold text-slate-100">-42dB</div>
485
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">ANC</div>
486
- </div>
487
- <div class="w-px h-8 bg-slate-800"></div>
488
- <div>
489
- <div class="text-lg font-semibold text-slate-100">5.3</div>
490
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">Bluetooth</div>
491
- </div>
492
- </div>
493
- </div>
494
-
495
- <!-- Image -->
496
- <div class="order-1 lg:order-2 flex justify-center lg:justify-end reveal reveal-delay-2">
497
- <div class="relative hero-img-wrap" id="heroImg">
498
- <img src="https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=700&q=85" alt="Aero X1 Headphones" class="w-full max-w-[420px] lg:max-w-[480px] object-contain drop-shadow-2xl">
499
- <!-- Subtle reflection -->
500
- <div class="absolute -bottom-8 left-1/2 -translate-x-1/2 w-3/4 h-12 bg-gradient-to-t from-slate-400/5 to-transparent blur-2xl rounded-full"></div>
501
- </div>
502
- </div>
 
 
 
503
  </div>
 
504
  </div>
505
-
506
- <!-- Bottom fade -->
507
- <div class="absolute bottom-0 left-0 right-0 h-32 bg-gradient-to-t from-void to-transparent pointer-events-none"></div>
508
- </section>
509
-
510
- <!-- ─── MARQUEE ─── -->
511
- <div class="relative py-5 border-y border-slate-800/50 overflow-hidden">
512
- <div class="marquee-left flex gap-12 whitespace-nowrap">
513
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
514
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
515
- Precision Engineered
516
- </span>
517
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
518
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
519
- Adaptive ANC
520
- </span>
521
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
522
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
523
- 50h Battery
524
- </span>
525
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
526
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
527
- Spatial Audio
528
- </span>
529
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
530
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
531
- Graphene Drivers
532
- </span>
533
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
534
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
535
- Bluetooth 5.3
536
- </span>
537
- <!-- Duplicate -->
538
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
539
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
540
- Precision Engineered
541
- </span>
542
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
543
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
544
- Adaptive ANC
545
- </span>
546
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
547
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
548
- 50h Battery
549
- </span>
550
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
551
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
552
- Spatial Audio
553
- </span>
554
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
555
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
556
- Graphene Drivers
557
- </span>
558
- <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
559
- <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>
560
- Bluetooth 5.3
561
- </span>
562
  </div>
 
563
  </div>
564
-
565
- <!-- ─── ABOUT ─── -->
566
- <section id="about" class="relative py-28 sm:py-36 overflow-hidden">
567
- <div class="max-w-7xl mx-auto px-5 sm:px-8 lg:px-12">
568
- <div class="grid lg:grid-cols-12 gap-8 lg:gap-16">
569
- <!-- Left: sticky progress -->
570
- <div class="lg:col-span-5 lg:sticky lg:top-32 lg:self-start">
571
- <div class="reveal">
572
- <div class="sec-label mb-3">About</div>
573
- <h2 class="text-3xl sm:text-4xl font-bold text-slate-100 leading-tight mb-4">
574
- Redefining<br>how you listen
575
- </h2>
576
- <p class="text-slate-500 text-sm font-body leading-relaxed max-w-sm">
577
- The Aero X1 isn't just another pair of headphones. It is a statement of intent &mdash; a commitment to audio perfection in its purest form.
578
- </p>
579
- </div>
580
-
581
- <!-- Progress bar -->
582
- <div class="hidden lg:block mt-12 relative pl-6">
583
- <div class="progress-bar">
584
- <div class="progress-fill" id="scrollProgress" style="height: 0%"></div>
585
- </div>
586
- <div class="space-y-6">
587
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">01 &mdash; Philosophy</div>
588
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">02 &mdash; Craft</div>
589
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">03 &mdash; Innovation</div>
590
- <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">04 &mdash; Experience</div>
591
- </div>
592
- </div>
 
593
  </div>
594
-
595
- <!-- Right: large abstract text -->
596
- <div class="lg:col-span-7">
597
- <div class="abstract-text text-slate-700 leading-snug" id="abstractText">
598
- <span class="abstract-line" data-idx="0">Sound that breathes</span>
599
- <span class="abstract-line" data-idx="1"> with you. Noise that </span>
600
- <span class="abstract-line" data-idx="2">disappears without a </span>
601
- <span class="abstract-line" data-idx="3">trace. Comfort that </span>
602
- <span class="abstract-line" data-idx="4">lasts all day &mdash; and </span>
603
- <span class="abstract-line" data-idx="5">all night. Every detail, </span>
604
- <span class="abstract-line" data-idx="6">obsessively refined. </span>
605
- <span class="abstract-line" data-idx="7">Every frequency, </span>
606
- <span class="abstract-line" data-idx="8">swept clean.</span>
607
- </div>
608
-
609
- <div class="reveal mt-16 grid grid-cols-1 sm:grid-cols-3 gap-6">
610
- <div class="spec-card p-6 rounded-lg">
611
- <div class="w-8 h-8 rounded-md border border-slate-700 flex items-center justify-center mb-4">
612
- <svg class="w-4 h-4 text-neon/70" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
613
- <path stroke-linecap="round" stroke-linejoin="round" d="M9 9l10.5-3m0 6.553v3.75a2.25 2.25 0 01-1.632 2.163l-1.32.377a1.803 1.803 0 11-.99-3.467l2.31-.66a2.25 2.25 0 001.632-2.163zm0 0V2.25L9 5.25v10.303m0 0v3.75a2.25 2.25 0 01-1.632 2.163l-1.32.377a1.803 1.803 0 01-.99-3.467l2.31-.66A2.25 2.25 0 009 15.553z"/>
614
- </svg>
615
- </div>
616
- <div class="text-xs font-semibold text-slate-200 mb-1.5">AeroSound 2.0</div>
617
- <div class="text-[0.7rem] text-slate-500 font-body leading-relaxed">Custom 40mm beryllium-infused drivers tuned for extended low-end and crystalline highs.</div>
618
- </div>
619
- <div class="spec-card p-6 rounded-lg">
620
- <div class="w-8 h-8 rounded-md border border-slate-700 flex items-center justify-center mb-4">
621
- <svg class="w-4 h-4 text-neon/70" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
622
- <path stroke-linecap="round" stroke-linejoin="round" d="M21 7.5l-2.25-1.313M21 7.5v2.25m0-2.25l-2.25 1.313M3 7.5l2.25-1.313M3 7.5l2.25 1.313M3 7.5v2.25m9 3l2.25-1.313M12 12.75l-2.25-1.313M12 12.75V15m0 6.75l2.25-1.313M12 21.75V19.5m0 2.25l-2.25-1.313m0-16.875L12 2.25l2.25 1.313M21 14.25v2.25l-2.25 1.313m-13.5 0L3 16.5v-2.25"/>
623
- </svg>
624
- </div>
625
- <div class="text-xs font-semibold text-slate-200 mb-1.5">Zero Gravity</div>
626
- <div class="text
 
1
  <!DOCTYPE html>
2
  <html lang="en" class="scroll-smooth">
3
  <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>AERO X1 | Next Gen Headphones</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="preconnect" href="https://fonts.googleapis.com">
9
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
+ <link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
11
+ <script>
12
+ tailwind.config = {
13
+ theme: {
14
+ extend: {
15
+ fontFamily: {
16
+ sans: ['Space Grotesk', 'system-ui', 'sans-serif'],
17
+ body: ['Inter', 'system-ui', 'sans-serif'],
18
+ },
19
+ colors: {
20
+ 'void': '#05070a',
21
+ 'ink': '#080c12',
22
+ 'slate-950': '#02040a',
23
+ 'slate-900': '#0a0f1a',
24
+ 'slate-800': '#111827',
25
+ 'slate-700': '#1e293b',
26
+ 'slate-600': '#334155',
27
+ 'slate-500': '#475569',
28
+ 'slate-400': '#64748b',
29
+ 'slate-300': '#94a3b8',
30
+ 'slate-200': '#cbd5e1',
31
+ 'slate-100': '#f1f5f9',
32
+ 'slate-50': '#f8fafc',
33
+ 'neon': '#00d4ff',
34
+ 'neon-dim': 'rgba(0, 212, 255, 0.08)',
35
+ 'neon-glow': 'rgba(0, 212, 255, 0.3)',
36
+ 'neon-bright': 'rgba(0, 212, 255, 0.15)',
37
+ 'mauve': '#a78bfa',
38
+ 'mauve-dim': 'rgba(167, 139, 250, 0.06)',
39
+ 'mauve-glow': 'rgba(167, 139, 250, 0.2)',
40
+ }
41
+ }
42
+ }
43
+ }
44
+ </script>
45
+ <style>
46
+ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
47
+ html { scrollbar-width: thin; scrollbar-color: #1e293b #02040a; }
48
+ body {
49
+ font-family: 'Space Grotesk', system-ui, sans-serif;
50
+ background: #05070a;
51
+ color: #e2e8f0;
52
+ overflow-x: hidden;
53
+ -webkit-font-smoothing: antialiased;
54
+ -moz-osx-font-smoothing: grayscale;
55
+ }
56
+ ::-webkit-scrollbar { width: 5px; }
57
+ ::-webkit-scrollbar-track { background: #02040a; }
58
+ ::-webkit-scrollbar-thumb { background: #1e293b; border-radius: 10px; }
59
+ ::-webkit-scrollbar-thumb:hover { background: #334155; }
60
+ .reveal { opacity: 0; transform: translateY(40px); transition: all 1s cubic-bezier(0.16, 1, 0.3, 1); }
61
+ .reveal.active { opacity: 1; transform: translateY(0); }
62
+ .reveal-delay-1 { transition-delay: 0.08s; }
63
+ .reveal-delay-2 { transition-delay: 0.16s; }
64
+ .reveal-delay-3 { transition-delay: 0.24s; }
65
+ .reveal-delay-4 { transition-delay: 0.32s; }
66
+ .reveal-delay-5 { transition-delay: 0.4s; }
67
+ .hero-title {
68
+ background: linear-gradient(180deg, #f8fafc 0%, #94a3b8 55%, #475569 100%);
69
+ -webkit-background-clip: text;
70
+ background-clip: text;
71
+ -webkit-text-fill-color: transparent;
72
+ }
73
+ .sep-line { height: 1px; background: linear-gradient(90deg, transparent, rgba(148,163,184,0.15), transparent); }
74
+ .nav-link { position: relative; padding-bottom: 2px; }
75
+ .nav-link::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; background: #00d4ff; transition: width 0.35s cubic-bezier(0.16,1,0.3,1); }
76
+ .nav-link:hover::after { width: 100%; }
77
+ .header-bg { transition: all 0.5s cubic-bezier(0.16,1,0.3,1); }
78
+ .header-bg.scrolled { background: rgba(5,7,10,0.7); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); border-bottom: 1px solid rgba(30,41,59,0.3); }
79
+ .hero-img-wrap { transition: transform 0.1s linear; will-change: transform; }
80
+ .orbit-glow { position: absolute; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(0,212,255,0.04) 0%, rgba(167,139,250,0.03) 40%, transparent 70%); filter: blur(60px); animation: orbitDrift 20s ease-in-out infinite; pointer-events: none; }
81
+ @keyframes orbitDrift {
82
+ 0%, 100% { transform: translate(0,0) scale(1); }
83
+ 33% { transform: translate(40px,-30px) scale(1.05); }
84
+ 66% { transform: translate(-20px,20px) scale(0.95); }
85
+ }
86
+ @keyframes marquee-left { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
87
+ @keyframes marquee-right { 0% { transform: translateX(-50%); } 100% { transform: translateX(0); } }
88
+ .marquee-left { animation: marquee-left 35s linear infinite; }
89
+ .marquee-right { animation: marquee-right 45s linear infinite; }
90
+ .sec-label { font-size: 0.65rem; letter-spacing: 0.2em; text-transform: uppercase; font-weight: 500; color: #64748b; }
91
+ .abstract-text { font-size: clamp(2rem, 5vw, 4.5rem); line-height: 1.08; letter-spacing: -0.03em; font-weight: 600; }
92
+ .abstract-line { display: inline; background: linear-gradient(90deg, #334155, #334155); background-repeat: no-repeat; background-size: 0% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; transition: background-size 0.5s cubic-bezier(0.16,1,0.3,1); }
93
+ .abstract-line.revealed { background-size: 100% 100%; -webkit-text-fill-color: transparent; background-image: linear-gradient(90deg, #f8fafc, #cbd5e1); }
94
+ .progress-bar { position: absolute; left: 0; top: 0; width: 2px; height: 100%; background: #1e293b; border-radius: 1px; }
95
+ .progress-fill { width: 100%; background: #00d4ff; border-radius: 1px; transition: height 0.15s ease-out; }
96
+ .spec-card { border: 1px solid rgba(30,41,59,0.4); transition: all 0.5s cubic-bezier(0.16,1,0.3,1); }
97
+ .spec-card:hover { border-color: rgba(0,212,255,0.2); background: rgba(0,212,255,0.02); transform: translateY(-4px); }
98
+ .tab-pill { transition: all 0.4s cubic-bezier(0.16,1,0.3,1); position: relative; overflow: hidden; cursor: pointer; }
99
+ .tab-pill.active { background: rgba(0,212,255,0.08); color: #00d4ff; border-color: rgba(0,212,255,0.3); }
100
+ .feat-row { border-bottom: 1px solid rgba(30,41,59,0.3); transition: all 0.4s cubic-bezier(0.16,1,0.3,1); }
101
+ .feat-row:hover { background: rgba(0,212,255,0.02); border-bottom-color: rgba(0,212,255,0.15); padding-left: 12px; }
102
+ .gal-img { transition: all 0.6s cubic-bezier(0.16,1,0.3,1); cursor: pointer; }
103
+ .gal-img:hover { transform: scale(1.02); }
104
+ .gal-img:hover .gal-overlay { opacity: 1; }
105
+ .gal-overlay { opacity: 0; transition: opacity 0.4s ease; }
106
+ .color-pick { transition: all 0.3s ease; cursor: pointer; }
107
+ .color-pick:hover { transform: scale(1.15); }
108
+ .color-pick.active { box-shadow: 0 0 0 3px #05070a, 0 0 0 5px #00d4ff; }
109
+ .buy-btn { background: #e2e8f0; color: #02040a; transition: all 0.4s cubic-bezier(0.16,1,0.3,1); position: relative; overflow: hidden; }
110
+ .buy-btn::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 40%, rgba(255,255,255,0.2) 50%, transparent 60%); transform: translateX(-100%); transition: transform 0.6s ease; }
111
+ .buy-btn:hover::before { transform: translateX(100%); }
112
+ .buy-btn:hover { background: #fff; box-shadow: 0 0 40px rgba(226,232,240,0.15); transform: translateY(-1px); }
113
+ .form-input { background: transparent; border: 1px solid rgba(30,41,59,0.5); transition: all 0.4s ease; color: #f1f5f9; }
114
+ .form-input:focus { border-color: #00d4ff; box-shadow: 0 0 0 3px rgba(0,212,255,0.06); outline: none; }
115
+ .form-input::placeholder { color: #475569; }
116
+ .lightbox { transition: all 0.5s cubic-bezier(0.16,1,0.3,1); }
117
+ .footer-link { transition: color 0.3s ease; }
118
+ .footer-link:hover { color: #00d4ff; }
119
+ .toast { animation: toastIn 0.5s cubic-bezier(0.16,1,0.3,1) forwards; }
120
+ @keyframes toastIn { from { opacity: 0; transform: translateY(20px) scale(0.95); } to { opacity: 1; transform: translateY(0) scale(1); } }
121
+ @keyframes toastOut { from { opacity: 1; transform: translateY(0) scale(1); } to { opacity: 0; transform: translateY(20px) scale(0.95); } }
122
+ .noise { position: fixed; inset: 0; pointer-events: none; z-index: 9999; opacity: 0.025; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); background-repeat: repeat; }
123
+ @keyframes pulse-soft { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.5; transform: scale(0.8); } }
124
+ .pulse-dot { animation: pulse-soft 2s ease-in-out infinite; }
125
+ .cta-underline { position: relative; }
126
+ .cta-underline::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 100%; height: 1px; background: #00d4ff; transform: scaleX(0); transform-origin: right; transition: transform 0.4s cubic-bezier(0.16,1,0.3,1); }
127
+ .cta-underline:hover::after { transform: scaleX(1); transform-origin: left; }
128
+ .feature-img { transition: all 0.8s cubic-bezier(0.16,1,0.3,1); opacity: 0; transform: scale(0.95); position: absolute; inset: 0; }
129
+ .feature-img.active { opacity: 1; transform: scale(1); position: relative; }
130
+ .stat-num { font-variant-numeric: tabular-nums; }
131
+ </style>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
132
  </head>
133
  <body class="antialiased">
134
+ <div class="noise"></div>
135
+
136
+ <!-- HEADER -->
137
+ <header id="header" class="fixed top-0 left-0 right-0 z-50 header-bg">
138
+ <div class="max-w-7xl mx-auto px-5 sm:px-8 lg:px-12">
139
+ <div class="flex items-center justify-between h-16">
140
+ <a href="#" class="flex items-center gap-2.5 group">
141
+ <div class="w-7 h-7 rounded border border-slate-600 flex items-center justify-center group-hover:border-neon transition-colors duration-500">
142
+ <svg class="w-3.5 h-3.5 text-slate-300 group-hover:text-neon transition-colors duration-500" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
143
+ <path stroke-linecap="round" stroke-linejoin="round" d="M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z" />
144
+ </svg>
145
+ </div>
146
+ <span class="text-sm font-semibold tracking-wide text-slate-100">AERO<span class="text-slate-500 font-normal">.</span></span>
147
+ </a>
148
+ <nav class="hidden md:flex items-center gap-8">
149
+ <a href="#about" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">About</a>
150
+ <a href="#features" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">Features</a>
151
+ <a href="#gallery" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">Gallery</a>
152
+ <a href="#specs" class="nav-link text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-slate-200 transition-colors">Specs</a>
153
+ </nav>
154
+ <div class="flex items-center gap-5">
155
+ <a href="https://huggingface.co/spaces/akhaliq/anycoder" target="_blank" class="hidden sm:inline-flex text-[0.65rem] tracking-[0.12em] uppercase text-slate-500 hover:text-neon transition-colors duration-300">Built with anycoder</a>
156
+ <a href="#pricing" class="hidden sm:inline-flex text-[0.75rem] tracking-[0.12em] uppercase text-slate-400 hover:text-neon transition-colors">Pricing</a>
157
+ <a href="#buy" class="inline-flex items-center gap-2 px-4 py-1.5 bg-slate-100 text-slate-900 rounded text-xs font-semibold tracking-wider hover:bg-white transition-all duration-300 hover:shadow-lg hover:shadow-slate-100/10">
158
+ Order
159
+ <svg class="w-3 h-3" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5">
160
+ <path stroke-linecap="round" stroke-linejoin="round" d="M4.5 19.5l15-15m0 0H8.25m11.25 0v11.25" />
161
+ </svg>
162
+ </a>
163
+ </div>
164
+ </div>
165
+ </div>
166
+ </header>
167
+
168
+ <!-- HERO -->
169
+ <section class="relative min-h-screen flex items-center overflow-hidden" id="hero">
170
+ <canvas id="heroCanvas" class="absolute inset-0 w-full h-full pointer-events-none"></canvas>
171
+ <div class="orbit-glow top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2"></div>
172
+ <div class="relative z-10 max-w-7xl mx-auto px-5 sm:px-8 lg:px-12 w-full pt-24 pb-16">
173
+ <div class="grid lg:grid-cols-2 gap-12 lg:gap-8 items-center">
174
+ <div class="order-2 lg:order-1">
175
+ <div class="reveal">
176
+ <div class="flex items-center gap-3 mb-8">
177
+ <span class="w-1.5 h-1.5 rounded-full bg-emerald-400 pulse-dot"></span>
178
+ <span class="text-[0.65rem] tracking-[0.2em] uppercase text-emerald-400/80 font-medium">In Stock &mdash; Ships in 24h</span>
179
  </div>
180
+ </div>
181
+ <h1 class="reveal reveal-delay-1 hero-title text-5xl sm:text-6xl lg:text-7xl xl:text-[5.5rem] font-bold leading-[0.95] tracking-tight mb-6">
182
+ Aero<br>
183
+ <span class="text-transparent bg-clip-text" style="background: linear-gradient(180deg, #00d4ff 0%, #0ea5e9 100%); -webkit-background-clip:text; -webkit-text-fill-color:transparent;">X1</span>
184
+ </h1>
185
+ <p class="reveal reveal-delay-2 text-slate-400 text-base sm:text-lg font-body leading-relaxed max-w-md mb-10">
186
+ Wireless headphones engineered with graphene drivers, 50-hour battery life, and adaptive ANC that learns your environment.
187
+ </p>
188
+ <div class="reveal reveal-delay-3 flex flex-wrap items-center gap-4">
189
+ <a href="#buy" class="buy-btn inline-flex items-center gap-3 px-7 py-3.5 rounded font-semibold text-sm tracking-wide">
190
+ Buy Now &mdash; $349
191
+ <svg class="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5">
192
+ <path stroke-linecap="round" stroke-linejoin="round" d="M13.5 4.5L21 12m0 0l-7.5 7.5M21 12H3" />
193
+ </svg>
194
+ </a>
195
+ <a href="#features" class="cta-underline inline-flex items-center gap-2 text-sm text-slate-400 hover:text-slate-200 transition-colors">Explore</a>
196
+ </div>
197
+ <div class="reveal reveal-delay-4 mt-14 flex flex-wrap gap-x-8 gap-y-3">
198
+ <div><div class="text-lg font-semibold text-slate-100">50h</div><div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">Battery</div></div>
199
+ <div class="w-px h-8 bg-slate-800"></div>
200
+ <div><div class="text-lg font-semibold text-slate-100">-42dB</div><div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">ANC</div></div>
201
+ <div class="w-px h-8 bg-slate-800"></div>
202
+ <div><div class="text-lg font-semibold text-slate-100">5.3</div><div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">Bluetooth</div></div>
203
+ </div>
204
  </div>
205
+ <div class="order-1 lg:order-2 flex justify-center lg:justify-end reveal reveal-delay-2">
206
+ <div class="relative hero-img-wrap" id="heroImg">
207
+ <img src="https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=700&q=85" alt="Aero X1 Headphones" class="w-full max-w-[420px] lg:max-w-[480px] object-contain drop-shadow-2xl">
208
+ <div class="absolute -bottom-8 left-1/2 -translate-x-1/2 w-3/4 h-12 bg-gradient-to-t from-slate-400/5 to-transparent blur-2xl rounded-full"></div>
209
+ </div>
210
+ </div>
211
+ </div>
212
+ </div>
213
+ <div class="absolute bottom-0 left-0 right-0 h-32 bg-gradient-to-t from-void to-transparent pointer-events-none"></div>
214
+ </section>
215
+
216
+ <!-- MARQUEE -->
217
+ <div class="relative py-5 border-y border-slate-800/50 overflow-hidden">
218
+ <div class="marquee-left flex gap-12 whitespace-nowrap">
219
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
220
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Precision Engineered
221
+ </span>
222
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
223
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Adaptive ANC
224
+ </span>
225
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
226
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> 50h Battery
227
+ </span>
228
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
229
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Spatial Audio
230
+ </span>
231
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
232
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Graphene Drivers
233
+ </span>
234
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
235
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Bluetooth 5.3
236
+ </span>
237
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
238
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Precision Engineered
239
+ </span>
240
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
241
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Adaptive ANC
242
+ </span>
243
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
244
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> 50h Battery
245
+ </span>
246
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
247
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Spatial Audio
248
+ </span>
249
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
250
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Graphene Drivers
251
+ </span>
252
+ <span class="text-[0.7rem] tracking-[0.25em] uppercase text-slate-600 font-medium flex items-center gap-3">
253
+ <svg class="w-3 h-3 text-neon/50" fill="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg> Bluetooth 5.3
254
+ </span>
255
+ </div>
256
+ </div>
257
+
258
+ <!-- ABOUT -->
259
+ <section id="about" class="relative py-28 sm:py-36 overflow-hidden">
260
+ <div class="max-w-7xl mx-auto px-5 sm:px-8 lg:px-12">
261
+ <div class="grid lg:grid-cols-12 gap-8 lg:gap-16">
262
+ <div class="lg:col-span-5 lg:sticky lg:top-32 lg:self-start">
263
+ <div class="reveal">
264
+ <div class="sec-label mb-3">About</div>
265
+ <h2 class="text-3xl sm:text-4xl font-bold text-slate-100 leading-tight mb-4">Redefining<br>how you listen</h2>
266
+ <p class="text-slate-500 text-sm font-body leading-relaxed max-w-sm">
267
+ The Aero X1 isn't just another pair of headphones. It is a statement of intent &mdash; a commitment to audio perfection in its purest form.
268
+ </p>
269
+ </div>
270
+ <div class="hidden lg:block mt-12 relative pl-6">
271
+ <div class="progress-bar"><div class="progress-fill" id="scrollProgress" style="height: 0%"></div></div>
272
+ <div class="space-y-6">
273
+ <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">01 &mdash; Philosophy</div>
274
+ <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">02 &mdash; Craft</div>
275
+ <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">03 &mdash; Innovation</div>
276
+ <div class="text-[0.65rem] tracking-[0.15em] uppercase text-slate-600">04 &mdash; Experience</div>
277
  </div>
278
+ </div>
279
  </div>
280
+ <div class="lg:col-span-7">
281
+ <div class="abstract-text text-slate-700 leading-snug" id="abstractText">
282
+ <span class="abstract-line" data-idx="0">Sound that breathes</span>
283
+ <span class="abstract-line" data-idx="1"> with you. Noise that </span>
284
+ <span class="abstract-line" data-idx="2">disappears without a </span>
285
+ <span class="abstract-line" data-idx="3">trace. Comfort that </span>
286
+ <span class="abstract-line" data-idx="4">lasts all day &mdash; and </span>
287
+ <span class="abstract-line" data-idx="5">all night. Every detail, </span>
288
+ <span class="abstract-line" data-idx="6">obsessively refined. </span>
289
+ <span class="abstract-line" data-idx="7">Every frequency, </span>
290
+ <span class="abstract-line" data-idx="8">swept clean.</span>
291
+ </div>
292
+ <div class="reveal mt-16 grid grid-cols-1 sm:grid-cols-3 gap-6">
293
+ <div class="spec-card p-6 rounded-lg">
294
+ <div class="w-8 h-8 rounded-md border border-slate-700 flex items-center justify-center mb-4">
295
+ <svg class="w-4 h-4 text-neon/70" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
296
+ <path stroke-linecap="round" stroke-linejoin="round" d="M9 9l10.5-3m0 6.553v3.75a2.25 2.25 0 01-1.632 2.163l-1.32.377a1.803 1.803 0 11-.99-3.467l2.31-.66a2.25 2.25 0 001.632-2.163zm0 0V2.25L9 5.25v10.303m0 0v3.75a2.25 2.25 0 01-1.632 2.163l-1.32.377a1.803 1.803 0 01-.99-3.467l2.31-.66A2.25 2.25 0 009 15.553z" />
297
+ </svg>
298
+ </div>
299
+ <div class="text-xs font-semibold text-slate-200 mb-1.5">AeroSound 2.0</div>
300
+ <div class="text-[0.7rem] text-slate-500 font-body leading-relaxed">Custom 40mm beryllium-infused drivers tuned for extended low-end and crystalline highs.</div>
301
+ </div>
302
+ <div class="spec-card p-6 rounded-lg">
303
+ <div class="w-8 h-8 rounded-md border border-slate-700 flex items-center justify-center mb-4">
304
+ <svg class="w-4 h-4 text-neon/70" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
305
+ <path stroke-linecap="round" stroke-linejoin="round" d="M21 7.5l-2.25-1.313M21 7.5v2.25m0-2.25l-2.25 1.313M3 7.5l2.25-1.313M3 7.5l2.25 1.313M3 7.5v2.25m9 3l2.25-1.313M12 12.75l-2.25-1.313M12 12.75V15m0 6.75l2.25-1.313M12 21.75V19.5m0 2.25l-2.25-1.313m0-16.875L12 2.25l2.25 1.313M21 14.25v2.25l-2.25 1.313m-13.5 0L3 16.5v-2.25" />
306
+ </svg>
307
+ </div>
308
+ <div class="text-xs font-semibold text-slate-200 mb-1.5">Zero Gravity</div>
309
+ <div class="text-[0.7rem] text-slate-500 font-body leading-relaxed">Memory foam ear cushions with micro-suede lining for weightless extended wear.</div>
310
+ </div>
311
+ <div class="spec-card p-6 rounded-lg">
312
+ <div class="w-8 h-8 rounded-md border border-slate-700 flex items-center justify-center mb-4">
313
+ <svg class="w-4 h-4 text-neon/70" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
314
+ <path stroke-linecap="round" stroke-linejoin="round" d="M3.75 13.5l10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75z" />
315
+ </svg>
316
+ </div>
317
+ <div class="text-xs font-semibold text-slate-200 mb-1.5">Adaptive ANC</div>
318
+ <div class="text-[0.7rem] text-slate-500 font-body leading-relaxed">AI-driven noise cancellation that adapts in real-time to your surroundings.</div>
319
+ </div>
320
+ </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
321
  </div>
322
+ </div>
323
  </div>
324
+ </section>
325
+
326
+ <!-- FEATURES -->
327
+ <section id="features" class="relative py-28 sm:py-36 bg-slate-950/50">
328
+ <div class="absolute inset-0 bg-[radial-gradient(ellipse_at_top,rgba(0,212,255,0.03),transparent_50%)]"></div>
329
+ <div class="relative max-w-7xl mx-auto px-5 sm:px-8 lg:px-12">
330
+ <div class="text-center mb-16 reveal">
331
+ <div class="sec-label mb-3">Features</div>
332
+ <h2 class="text-3xl sm:text-4xl font-bold text-slate-100 leading-tight">Every detail, considered</h2>
333
+ </div>
334
+
335
+ <div class="grid lg:grid-cols-2 gap-12 lg:gap-16 items-start">
336
+ <div class="reveal">
337
+ <div class="flex flex-wrap gap-2 mb-8">
338
+ <button class="tab-pill active px-5 py-2 rounded-full border border-slate-700 text-[0.75rem] tracking-wide text-slate-400" data-tab="audio">Audio</button>
339
+ <button class="tab-pill px-5 py-2 rounded-full border border-slate-700 text-[0.75rem] tracking-wide text-slate-400" data-tab="comfort">Comfort</button>
340
+ <button class="tab-pill px-5 py-2 rounded-full border border-slate-700 text-[0.75rem] tracking-wide text-slate-400" data-tab="smart">Smart</button>
341
+ <button class="tab-pill px-5 py-2 rounded-full border border-slate-700 text-[0.75rem] tracking-wide text-slate-400" data-tab="connect">Connect</button>
342
+ </div>
343
+
344
+ <div id="featureContent" class="min-h-[280px]">
345
+ <div class="feature-panel" data-panel="audio">
346
+ <h3 class="text-2xl font-bold text-slate-100 mb-4">AeroSound 2.0 Engine</h3>
347
+ <p class="text-slate-400 text-sm font-body leading-relaxed mb-6">
348
+ Custom-designed 40mm beryllium-infused diaphragms deliver a frequency response from 4Hz to 40kHz. Experience sub-bass you can feel and treble so pristine it reveals details you've never heard before.
349
+ </p>
350
+ <div class="space-y-0">
351
+ <div class="feat-row py-4 flex items-center justify-between">
352
+ <span class="text-sm text-slate-300">Frequency Response</span>
353
+ <span class="text-sm font-semibold text-slate-100">4Hz &ndash; 40kHz</span>
354
  </div>
355
+ <div class="feat-row py-4 flex items-center justify-between">
356
+ <span class="text-sm text-slate-300">Driver Size</span>
357
+ <span class="text-sm font-semibold text-slate-100">40mm Beryllium</span>
358
+ </