ankittshrma commited on
Commit
d78f57d
·
verified ·
1 Parent(s): a7b75db

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +843 -18
index.html CHANGED
@@ -1,19 +1,844 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  </html>
 
1
+ <<!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
6
+ <title>Ankit Sharma | Engineer • Thinker • Dreamer</title>
7
+
8
+ <!-- Google Fonts -->
9
+ <link href="https://fonts.googleapis.com/css2?family=Cinzel:wght@700&family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=Playfair+Display:ital,wght@0,700;1,600&family=Inter:wght@400;500;600&display=swap" rel="stylesheet"/>
10
+
11
+ <!-- Font Awesome Icons -->
12
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" />
13
+
14
+ <!-- EmailJS Initialization -->
15
+ <script src="https://cdn.emailjs.com/dist/email.min.js"></script>
16
+ <script>
17
+ (function() {
18
+ emailjs.init("ZW5H-qHuVOZoISPM6"); // ← Replace this line with your real public key
19
+ })();
20
+ </script>
21
+
22
+
23
+ <style>
24
+ /* ========================================
25
+ BASE & GLOBAL STYLES
26
+ ======================================== */
27
+ :root {
28
+ --bg-dark: #0f0f1a;
29
+ --accent-purple: #a56eff;
30
+ --accent-purple-light: #b694f5;
31
+ --accent-purple-ultra: #d1c2ff;
32
+ --neon-blue: #00d4ff;
33
+ --text-light: #ffffff;
34
+ --text-muted: #c5c5dd;
35
+ --glass-bg: rgba(30, 25, 55, 0.3);
36
+ --glass-border: rgba(165, 110, 255, 0.2);
37
+ --shadow-glow: 0 0 15px rgba(165, 110, 255, 0.4);
38
+ }
39
+
40
+ * {
41
+ margin: 0;
42
+ padding: 0;
43
+ box-sizing: border-box;
44
+ }
45
+
46
+ body {
47
+ background-color: var(--bg-dark);
48
+ color: var(--text-light);
49
+ font-family: 'Inter', sans-serif;
50
+ overflow-x: hidden;
51
+ position: relative;
52
+ line-height: 1.7;
53
+ }
54
+
55
+ h1, h2, h3, h4 {
56
+ font-family: 'Cinzel', serif;
57
+ color: var(--text-light);
58
+ letter-spacing: 1px;
59
+ }
60
+
61
+ p {
62
+ color: var(--text-muted);
63
+ font-size: 16px;
64
+ max-width: 680px;
65
+ margin: 0 auto;
66
+ }
67
+
68
+ .container {
69
+ width: 90%;
70
+ max-width: 1200px;
71
+ margin: 0 auto;
72
+ padding: 4rem 0;
73
+ }
74
+
75
+ /* ========================================
76
+ BACKGROUND ANIMATION (Three.js for crystal orbs)
77
+ ======================================== */
78
+ #background-canvas {
79
+ position: fixed;
80
+ top: 0;
81
+ left: 0;
82
+ width: 100%;
83
+ height: 100%;
84
+ z-index: -1;
85
+ pointer-events: none;
86
+ }
87
+
88
+ /* ========================================
89
+ HERO SECTION
90
+ ======================================== */
91
+ #hero {
92
+ height: 100vh;
93
+ display: flex;
94
+ flex-direction: column;
95
+ justify-content: center;
96
+ align-items: center;
97
+ text-align: center;
98
+ position: relative;
99
+ overflow: hidden;
100
+ }
101
+
102
+ .hero-name {
103
+ font-family: 'Playfair Display', serif;
104
+ font-size: 5rem;
105
+ font-weight: 700;
106
+ color: var(--text-light);
107
+ letter-spacing: 2px;
108
+ position: relative;
109
+ transition: transform 0.3s ease;
110
+ z-index: 2;
111
+ text-shadow: 0 0 20px var(--accent-purple), 0 0 40px rgba(165, 110, 255, 0.3);
112
+ }
113
+
114
+ .hero-name:hover {
115
+ transform: scale(1.08);
116
+ cursor: pointer;
117
+ }
118
+
119
+ .hero-name::after {
120
+ content: '';
121
+ position: absolute;
122
+ top: 0;
123
+ left: 0;
124
+ right: 0;
125
+ bottom: 0;
126
+ background: url('https://assets.codepen.io/210284/faceted-glass.png') no-repeat center center;
127
+ background-size: 80%;
128
+ opacity: 0;
129
+ transition: opacity 0.5s ease;
130
+ pointer-events: none;
131
+ mix-blend-mode: screen;
132
+ }
133
+
134
+ .hero-name:hover::after {
135
+ opacity: 0.4;
136
+ }
137
+
138
+ .hero-subtext {
139
+ font-family: 'Cormorant Garamond', serif;
140
+ font-size: 1.4rem;
141
+ color: var(--accent-purple-light);
142
+ margin-top: 0.8rem;
143
+ opacity: 0;
144
+ animation: fadeIn 2s ease forwards 1.5s;
145
+ }
146
+
147
+ @keyframes fadeIn {
148
+ to {
149
+ opacity: 1;
150
+ }
151
+ }
152
+
153
+ /* ========================================
154
+ NAVIGATION
155
+ ======================================== */
156
+ .navbar {
157
+ position: fixed;
158
+ top: -80px;
159
+ width: 100%;
160
+ display: flex;
161
+ justify-content: center;
162
+ padding: 1.2rem;
163
+ z-index: 1000;
164
+ transition: top 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
165
+ backdrop-filter: blur(10px);
166
+ background-color: rgba(15, 15, 26, 0.7);
167
+ border-bottom: 1px solid var(--glass-border);
168
+ }
169
+
170
+ .navbar.show {
171
+ top: 0;
172
+ }
173
+
174
+ .nav-links {
175
+ display: flex;
176
+ gap: 2.5rem;
177
+ list-style: none;
178
+ }
179
+
180
+ .nav-links a {
181
+ font-family: 'Cinzel', serif;
182
+ color: var(--text-light);
183
+ text-decoration: none;
184
+ font-size: 1.1rem;
185
+ position: relative;
186
+ padding: 0.5rem 0;
187
+ transition: color 0.3s ease;
188
+ }
189
+
190
+ .nav-links a::after {
191
+ content: '';
192
+ position: absolute;
193
+ bottom: 0;
194
+ left: 0;
195
+ width: 0;
196
+ height: 2px;
197
+ background: linear-gradient(90deg, var(--accent-purple), var(--neon-blue));
198
+ transition: width 0.4s ease;
199
+ }
200
+
201
+ .nav-links a:hover {
202
+ color: var(--accent-purple-light);
203
+ }
204
+
205
+ .nav-links a:hover::after {
206
+ width: 100%;
207
+ }
208
+
209
+ /* ========================================
210
+ BOOK PREVIEW SECTION
211
+ ======================================== */
212
+ #thoughts {
213
+ padding: 6rem 0;
214
+ text-align: center;
215
+ }
216
+
217
+ .book-card {
218
+ background: var(--glass-bg);
219
+ backdrop-filter: blur(12px);
220
+ border: 1px solid var(--glass-border);
221
+ border-radius: 16px;
222
+ padding: 2.5rem;
223
+ margin: 0 auto;
224
+ max-width: 800px;
225
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2), var(--shadow-glow);
226
+ position: relative;
227
+ overflow: hidden;
228
+ transition: transform 0.4s ease, box-shadow 0.4s ease;
229
+ }
230
+
231
+ .book-card::before {
232
+ content: '';
233
+ position: absolute;
234
+ top: 0;
235
+ left: 0;
236
+ right: 0;
237
+ height: 4px;
238
+ background: linear-gradient(90deg, var(--accent-purple), var(--accent-purple-ultra), var(--neon-blue));
239
+ opacity: 0.6;
240
+ }
241
+
242
+ .book-card:hover {
243
+ transform: translateY(-8px);
244
+ box-shadow: 0 16px 40px rgba(0, 0, 0, 0.3), var(--shadow-glow), 0 0 30px rgba(165, 110, 255, 0.25);
245
+ }
246
+
247
+ .chapter-title {
248
+ font-family: 'Cormorant Garamond', serif;
249
+ font-size: 2.2rem;
250
+ font-weight: 600;
251
+ color: var(--text-light);
252
+ margin-bottom: 1rem;
253
+ }
254
+
255
+ .chapter-text {
256
+ font-family: 'Cormorant Garamond', serif;
257
+ font-size: 1.2rem;
258
+ line-height: 1.9;
259
+ color: var(--text-muted);
260
+ text-align: justify;
261
+ margin-bottom: 2rem;
262
+ }
263
+
264
+ .read-more-btn {
265
+ display: inline-block;
266
+ padding: 0.8rem 2rem;
267
+ background: transparent;
268
+ color: var(--accent-purple-light);
269
+ border: 1px solid var(--accent-purple-light);
270
+ border-radius: 30px;
271
+ font-family: 'Inter', sans-serif;
272
+ font-weight: 500;
273
+ cursor: pointer;
274
+ transition: all 0.4s ease;
275
+ position: relative;
276
+ overflow: hidden;
277
+ text-transform: uppercase;
278
+ letter-spacing: 1px;
279
+ }
280
+
281
+ .read-more-btn:hover {
282
+ background: var(--accent-purple-light);
283
+ color: var(--bg-dark);
284
+ box-shadow: var(--shadow-glow);
285
+ transform: translateY(-2px);
286
+ }
287
+
288
+ .read-more-btn::after {
289
+ content: '';
290
+ position: absolute;
291
+ top: 50%;
292
+ left: 50%;
293
+ width: 50px;
294
+ height: 50px;
295
+ background-color: rgba(255, 255, 255, 0.2);
296
+ border-radius: 50%;
297
+ transform: translate(-50%, -50%) scale(0);
298
+ transition: transform 0.6s ease;
299
+ pointer-events: none;
300
+ }
301
+
302
+ .read-more-btn:active::after {
303
+ transform: translate(-50%, -50%) scale(3);
304
+ }
305
+
306
+ .page-number {
307
+ font-size: 0.9rem;
308
+ color: var(--accent-purple-ultra);
309
+ margin-top: 2rem;
310
+ font-style: italic;
311
+ }
312
+
313
+ /* ========================================
314
+ PROFESSIONAL LIFE
315
+ ======================================== */
316
+ #professional {
317
+ padding: 6rem 0;
318
+ display: flex;
319
+ flex-wrap: wrap;
320
+ align-items: center;
321
+ gap: 3rem;
322
+ justify-content: center;
323
+ }
324
+
325
+ .pro-text {
326
+ flex: 1;
327
+ min-width: 300px;
328
+ max-width: 500px;
329
+ }
330
+
331
+ .pro-visual {
332
+ flex: 1;
333
+ min-width: 300px;
334
+ display: flex;
335
+ flex-direction: column;
336
+ gap: 1rem;
337
+ }
338
+
339
+ .tech-badge {
340
+ display: flex;
341
+ align-items: center;
342
+ gap: 1rem;
343
+ background: var(--glass-bg);
344
+ padding: 1rem 1.5rem;
345
+ border-radius: 12px;
346
+ border-left: 4px solid var(--accent-purple);
347
+ transition: all 0.4s ease;
348
+ transform: translateX(-30px);
349
+ opacity: 0;
350
+ }
351
+
352
+ .tech-badge.visible {
353
+ transform: translateX(0);
354
+ opacity: 1;
355
+ }
356
+
357
+ .tech-icon {
358
+ font-size: 1.5rem;
359
+ color: var(--accent-purple-light);
360
+ transition: transform 0.4s ease;
361
+ }
362
+
363
+ .tech-badge:hover .tech-icon {
364
+ transform: scale(1.3) rotate(15deg);
365
+ color: var(--neon-blue);
366
+ }
367
+
368
+ /* ========================================
369
+ CONTACT FORM
370
+ ======================================== */
371
+ #contact {
372
+ padding: 6rem 0;
373
+ text-align: center;
374
+ }
375
+
376
+ .form-container {
377
+ max-width: 600px;
378
+ margin: 0 auto;
379
+ background: var(--glass-bg);
380
+ border: 1px solid var(--glass-border);
381
+ border-radius: 16px;
382
+ padding: 3rem;
383
+ backdrop-filter: blur(12px);
384
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2), var(--shadow-glow);
385
+ position: relative;
386
+ overflow: hidden;
387
+ }
388
+
389
+ .form-group {
390
+ margin-bottom: 1.8rem;
391
+ position: relative;
392
+ text-align: left;
393
+ }
394
+
395
+ .form-input {
396
+ width: 100%;
397
+ padding: 1rem;
398
+ background: rgba(30, 25, 55, 0.6);
399
+ border: 1px solid var(--glass-border);
400
+ border-radius: 8px;
401
+ color: var(--text-light);
402
+ font-family: 'Inter', sans-serif;
403
+ font-size: 1rem;
404
+ transition: all 0.4s ease;
405
+ }
406
+
407
+ .form-input:focus {
408
+ outline: none;
409
+ border-color: var(--accent-purple);
410
+ box-shadow: 0 0 15px rgba(165, 110, 255, 0.3);
411
+ }
412
+
413
+ .form-label {
414
+ position: absolute;
415
+ left: 1rem;
416
+ top: 1rem;
417
+ color: var(--text-muted);
418
+ font-size: 1rem;
419
+ transition: all 0.3s ease;
420
+ pointer-events: none;
421
+ }
422
+
423
+ .form-input:focus + .form-label,
424
+ .form-input:not(:placeholder-shown) + .form-label {
425
+ top: -0.8rem;
426
+ left: 0.8rem;
427
+ font-size: 0.8rem;
428
+ color: var(--accent-purple-light);
429
+ background: var(--bg-dark);
430
+ padding: 0 0.5rem;
431
+ border-radius: 4px;
432
+ }
433
+
434
+ .submit-btn {
435
+ width: 100%;
436
+ padding: 1.2rem;
437
+ background: linear-gradient(90deg, var(--accent-purple), var(--neon-blue));
438
+ color: white;
439
+ border: none;
440
+ border-radius: 8px;
441
+ font-size: 1.1rem;
442
+ font-weight: 600;
443
+ cursor: pointer;
444
+ transition: all 0.4s ease;
445
+ position: relative;
446
+ overflow: hidden;
447
+ }
448
+
449
+ .submit-btn:hover {
450
+ box-shadow: 0 0 30px rgba(165, 110, 255, 0.5);
451
+ transform: translateY(-2px);
452
+ }
453
+
454
+ .submit-btn::after {
455
+ content: '';
456
+ position: absolute;
457
+ top: 50%;
458
+ left: 50%;
459
+ width: 50px;
460
+ height: 50px;
461
+ background-color: rgba(255, 255, 255, 0.1);
462
+ border-radius: 50%;
463
+ transform: translate(-50%, -50%) scale(0);
464
+ transition: transform 0.8s ease;
465
+ }
466
+
467
+ .submit-btn:active::after {
468
+ transform: translate(-50%, -50%) scale(5);
469
+ opacity: 0;
470
+ }
471
+
472
+ /* ========================================
473
+ FOOTER
474
+ ======================================== */
475
+ footer {
476
+ padding: 3rem 0;
477
+ text-align: center;
478
+ position: relative;
479
+ color: var(--text-muted);
480
+ font-size: 0.9rem;
481
+ border-top: 1px solid var(--glass-border);
482
+ margin-top: 4rem;
483
+ }
484
+
485
+ .footer-content {
486
+ position: relative;
487
+ z-index: 2;
488
+ }
489
+
490
+ .social-icons {
491
+ display: flex;
492
+ justify-content: center;
493
+ gap: 1.5rem;
494
+ margin: 1.5rem 0;
495
+ }
496
+
497
+ .social-icons a {
498
+ color: var(--text-muted);
499
+ font-size: 1.4rem;
500
+ transition: all 0.4s ease;
501
+ }
502
+
503
+ .social-icons a:hover {
504
+ color: var(--accent-purple-light);
505
+ transform: translateY(-5px);
506
+ }
507
+
508
+ .music-toggle {
509
+ display: inline-block;
510
+ margin: 1rem;
511
+ color: var(--accent-purple-ultra);
512
+ cursor: pointer;
513
+ font-size: 1.1rem;
514
+ transition: color 0.3s ease;
515
+ }
516
+
517
+ .music-toggle:hover {
518
+ color: var(--neon-blue);
519
+ }
520
+
521
+ .quote {
522
+ font-style: italic;
523
+ color: var(--text-muted);
524
+ font-size: 0.85rem;
525
+ margin-top: 1.5rem;
526
+ opacity: 0.7;
527
+ }
528
+
529
+ /* Crystal FX in corners */
530
+ .crystal-corner {
531
+ position: absolute;
532
+ width: 80px;
533
+ height: 80px;
534
+ background: url('https://i.ibb.co/6Wq4cLg/crystal.png') no-repeat center center;
535
+ background-size: contain;
536
+ opacity: 0.1;
537
+ pointer-events: none;
538
+ }
539
+
540
+ .crystal-tl {
541
+ top: 10%;
542
+ left: 5%;
543
+ transform: rotate(-20deg);
544
+ }
545
+
546
+ .crystal-tr {
547
+ top: 15%;
548
+ right: 8%;
549
+ transform: rotate(15deg);
550
+ }
551
+
552
+ .crystal-bl {
553
+ bottom: 10%;
554
+ left: 6%;
555
+ transform: rotate(-10deg);
556
+ }
557
+
558
+ .crystal-br {
559
+ bottom: 12%;
560
+ right: 7%;
561
+ transform: rotate(25deg);
562
+ }
563
+
564
+ /* ========================================
565
+ RESPONSIVE DESIGN
566
+ ======================================== */
567
+ @media (max-width: 768px) {
568
+ .hero-name {
569
+ font-size: 3.5rem;
570
+ }
571
+
572
+ .nav-links {
573
+ gap: 1.5rem;
574
+ }
575
+
576
+ .chapter-title {
577
+ font-size: 1.8rem;
578
+ }
579
+
580
+ .form-container {
581
+ padding: 2rem;
582
+ }
583
+
584
+ .tech-badge {
585
+ flex-direction: row;
586
+ }
587
+ }
588
+
589
+ @media (max-width: 480px) {
590
+ .hero-name {
591
+ font-size: 2.8rem;
592
+ }
593
+
594
+ .nav-links {
595
+ gap: 1rem;
596
+ font-size: 0.9rem;
597
+ }
598
+
599
+ .container {
600
+ width: 95%;
601
+ }
602
+ }
603
+ </style>
604
+ </head>
605
+ <body>
606
+
607
+ <!-- Background Canvas for Floating Orbs -->
608
+ <canvas id="background-canvas"></canvas>
609
+
610
+ <!-- Navigation -->
611
+ <nav class="navbar">
612
+ <ul class="nav-links">
613
+ <li><a href="#hero">Home</a></li>
614
+ <li><a href="#thoughts">My Thoughts</a></li>
615
+ <li><a href="#professional">Professional Life</a></li>
616
+ <li><a href="#contact">Contact</a></li>
617
+ </ul>
618
+ </nav>
619
+
620
+ <!-- Hero Section -->
621
+ <section id="hero">
622
+ <h1 class="hero-name">Ankit Sharma</h1>
623
+ <p class="hero-subtext">Engineer • Thinker • Dreamer</p>
624
+ </section>
625
+
626
+ <!-- Book Preview Section -->
627
+ <section id="thoughts" class="container">
628
+ <div class="book-card">
629
+ <h2 class="chapter-title">Chapter One: Under the Starlight</h2>
630
+ <p class="chapter-text">
631
+ I often sit beneath the Himalayan skies, gazing at galaxies that whisper secrets older than time.
632
+ At twenty, I’ve walked through code and calculus, but my heart beats for curiosity —
633
+ the kind that asks “why” long after answers are given.
634
+ This journey isn’t about destinations; it’s about depth.
635
+ Of thought. Of feeling. Of building things that matter — quietly, beautifully.
636
+ </p>
637
+ <button class="read-more-btn">Read More</button>
638
+ <p class="page-number">— Page 1 —</p>
639
+ </div>
640
+ </section>
641
+
642
+ <!-- Professional Life -->
643
+ <section id="professional" class="container">
644
+ <div class="pro-text">
645
+ <h2>Professional Life</h2>
646
+ <p>
647
+ I’m from Himachal Pradesh and completed my B.Tech in Computer Science.
648
+ I craft systems with clarity and care, balancing logic with imagination.
649
+ My tools are simple, but powerful:
650
+ </p>
651
+ </div>
652
+ <div class="pro-visual">
653
+ <div class="tech-badge" data-delay="0">
654
+ <i class="fab fa-python tech-icon"></i>
655
+ <span>Python</span>
656
+ </div>
657
+ <div class="tech-badge" data-delay="100">
658
+ <i class="fab fa-linux tech-icon"></i>
659
+ <span>Linux / Bash</span>
660
+ </div>
661
+ <div class="tech-badge" data-delay="200">
662
+ <i class="fas fa-code tech-icon"></i>
663
+ <span>VS Code</span>
664
+ </div>
665
+ <div class="tech-badge" data-delay="300">
666
+ <i class="fab fa-git-alt tech-icon"></i>
667
+ <span>GitLab</span>
668
+ </div>
669
+ <div class="tech-badge" data-delay="400">
670
+ <i class="fas fa-chart-line tech-icon"></i>
671
+ <span>Grafana</span>
672
+ </div>
673
+ </div>
674
+ </section>
675
+
676
+ <!-- Contact Form -->
677
+ <section id="contact" class="container">
678
+ <h2 style="margin-bottom: 2rem;">Get In Touch</h2>
679
+ <div class="form-container">
680
+ <form id="contactForm">
681
+ <div class="form-group">
682
+ <input type="text" name="user_name" class="form-input" id="name" placeholder=" " required />
683
+ <label for="name" class="form-label">Your Name</label>
684
+ </div>
685
+ <div class="form-group">
686
+ <input type="email" name="user_email" class="form-input" id="email" placeholder=" " required />
687
+ <label for="email" class="form-label">Your Email</label>
688
+ </div>
689
+ <div class="form-group">
690
+ <textarea name="message" class="form-input" id="message" rows="5" placeholder=" " required></textarea>
691
+ <label for="message" class="form-label">Your Thoughts...</label>
692
+ </div>
693
+ <button type="submit" class="submit-btn">Send your thoughts</button>
694
+ </form>
695
+ </div>
696
+ </section>
697
+
698
+ <!-- Footer -->
699
+ <footer>
700
+ <div class="crystal-corner crystal-tl"></div>
701
+ <div class="crystal-corner crystal-tr"></div>
702
+ <div class="crystal-corner crystal-bl"></div>
703
+ <div class="crystal-corner crystal-br"></div>
704
+
705
+ <div class="footer-content">
706
+ <div class="social-icons">
707
+ <a href="https://github.com/ankitsharma0720" target="_blank"><i class="fab fa-github"></i></a>
708
+ <a href="https://linkedin.com/in/ankit-sharma-0720" target="_blank"><i class="fab fa-linkedin"></i></a>
709
+ <a href="mailto:anku.sharma.0720@gmail.com"><i class="fas fa-envelope"></i></a>
710
+ </div>
711
+ <div class="music-toggle">
712
+ <i class="fas fa-music"></i> Play Ambient Sounds
713
+ </div>
714
+ <p>Crafted by Ankit Sharma with code and thoughts.</p>
715
+ <p class="quote">““Whisper your thoughts and stories — I cherish every word.
716
+ Thank you for turning these pages with me.”” </p>
717
+ </div>
718
+ </footer>
719
+
720
+ <!-- Simple Particle Background Script -->
721
+ <script>
722
+ document.addEventListener("DOMContentLoaded", () => {
723
+ const canvas = document.getElementById("background-canvas");
724
+ const ctx = canvas.getContext("2d");
725
+ let width, height;
726
+ const orbs = [];
727
+
728
+ const resize = () => {
729
+ width = window.innerWidth;
730
+ height = window.innerHeight;
731
+ canvas.width = width;
732
+ canvas.height = height;
733
+ };
734
+
735
+ window.addEventListener("resize", resize);
736
+ resize();
737
+
738
+ // Create Orbs
739
+ class Orb {
740
+ constructor() {
741
+ this.reset();
742
+ }
743
+ reset() {
744
+ this.x = Math.random() * width;
745
+ this.y = Math.random() * height;
746
+ this.size = Math.random() * 5 + 2;
747
+ this.speedX = (Math.random() - 0.5) * 0.5;
748
+ this.speedY = (Math.random() - 0.5) * 0.5;
749
+ this.hue = 260 + Math.random() * 60; // Purple spectrum
750
+ this.opacity = Math.random() * 0.4 + 0.1;
751
+ }
752
+ update() {
753
+ this.x += this.speedX;
754
+ this.y += this.speedY;
755
+ if (this.x < 0 || this.x > width) this.reset();
756
+ if (this.y < 0 || this.y > height) this.reset();
757
+ }
758
+ draw() {
759
+ ctx.beginPath();
760
+ ctx.arc(this.x, this.y, this.size, 0, Math.PI * 2);
761
+ ctx.fillStyle = `hsla(${this.hue}, 80%, 60%, ${this.opacity})`;
762
+ ctx.fill();
763
+ // Glow effect
764
+ ctx.shadowBlur = 15;
765
+ ctx.shadowColor = `hsla(${this.hue}, 100%, 70%, 0.4)`;
766
+ ctx.fill();
767
+ ctx.shadowBlur = 0;
768
+ }
769
+ }
770
+
771
+ for (let i = 0; i < 30; i++) {
772
+ orbs.push(new Orb());
773
+ }
774
+
775
+ const animate = () => {
776
+ ctx.clearRect(0, 0, width, height);
777
+ orbs.forEach(orb => {
778
+ orb.update();
779
+ orb.draw();
780
+ });
781
+ requestAnimationFrame(animate);
782
+ };
783
+ animate();
784
+
785
+ // Nav reveal on scroll
786
+ const navbar = document.querySelector(".navbar");
787
+ window.addEventListener("scroll", () => {
788
+ if (window.scrollY > 100) {
789
+ navbar.classList.add("show");
790
+ } else {
791
+ navbar.classList.remove("show");
792
+ }
793
+ });
794
+
795
+ // Scroll reveal for tech badges
796
+ const badges = document.querySelectorAll(".tech-badge");
797
+ const badgeObserver = new IntersectionObserver((entries) => {
798
+ entries.forEach(entry => {
799
+ if (entry.isIntersecting) {
800
+ const delay = entry.target.getAttribute("data-delay") || 0;
801
+ setTimeout(() => {
802
+ entry.target.classList.add("visible");
803
+ }, delay);
804
+ }
805
+ });
806
+ }, { threshold: 0.1 });
807
+
808
+ badges.forEach(badge => badgeObserver.observe(badge));
809
+
810
+ // Read More Button
811
+ document.querySelector(".read-more-btn").addEventListener("click", () => {
812
+ window.location.href = "page1.html";
813
+ });
814
+
815
+ // Contact Form Submit using EmailJS
816
+ document.getElementById("contactForm").addEventListener("submit", function (e) {
817
+ e.preventDefault();
818
+
819
+ emailjs.sendForm("service_website", "template_gusqonl", this)
820
+ .then(function () {
821
+ alert("Your message has been sent! Thank you.");
822
+ document.getElementById("contactForm").reset();
823
+ }, function (error) {
824
+ alert("Failed to send message: " + error.text);
825
+ });
826
+ });
827
+
828
+ // Music Toggle Placeholder
829
+ document.querySelector(".music-toggle").addEventListener("click", function () {
830
+ const icon = this.querySelector("i");
831
+ if (icon.classList.contains("fa-music")) {
832
+ icon.classList.remove("fa-music");
833
+ icon.classList.add("fa-pause");
834
+ this.innerHTML = '<i class="fas fa-pause"></i> Pause Ambient';
835
+ } else {
836
+ icon.classList.remove("fa-pause");
837
+ icon.classList.add("fa-music");
838
+ this.innerHTML = '<i class="fas fa-music"></i> Play Ambient Sounds';
839
+ }
840
+ });
841
+ });
842
+ </script>
843
+ </body>
844
  </html>