diff --git a/css/style.css b/css/style.css index 5d3fe92..b54d326 100644 --- a/css/style.css +++ b/css/style.css @@ -1,10 +1,10 @@ :root { - --bg: #07111f; - --bg-soft: #0c172b; - --surface: rgba(10, 20, 36, 0.72); - --surface-strong: rgba(12, 24, 44, 0.92); - --surface-light: rgba(255, 255, 255, 0.06); - --border: rgba(145, 201, 255, 0.18); + --bg: #000000; + --bg-soft: #000000; + --surface: rgba(0, 0, 0, 0.88); + --surface-strong: rgba(0, 0, 0, 0.96); + --surface-light: rgba(255, 255, 255, 0.04); + --border: rgba(255, 255, 255, 0.1); --text: #f4f8ff; --muted: #a9b8d0; --accent: #63e6ff; @@ -15,14 +15,18 @@ --radius-lg: 32px; --radius-md: 20px; --radius-sm: 14px; - --nav-bg: rgba(4, 10, 22, 0.2); - --nav-scrolled-bg: rgba(6, 14, 28, 0.88); + --nav-bg: rgba(0, 0, 0, 0.3); + --nav-scrolled-bg: rgba(0, 0, 0, 0.94); --nav-text: rgba(244, 248, 255, 0.9); --nav-hover-bg: rgba(255, 255, 255, 0.08); --overlay-bg: - linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)), - rgba(6, 12, 24, 0.68); - --grid-line: rgba(255, 255, 255, 0.025); + linear-gradient( + 135deg, + rgba(255, 255, 255, 0.05), + rgba(255, 255, 255, 0.01) + ), + rgba(0, 0, 0, 0.92); + --grid-line: rgba(255, 255, 255, 0.02); --section-outline: rgba(255, 255, 255, 0.03); --toggle-track: rgba(255, 255, 255, 0.12); --toggle-thumb: linear-gradient(135deg, var(--accent), var(--accent-strong)); @@ -33,21 +37,25 @@ --footer-link: #d8e6fb; --footer-heading: #f4f8ff; --footer-bg: - linear-gradient(135deg, rgba(99, 230, 255, 0.12), rgba(139, 92, 246, 0.12)), - rgba(6, 12, 24, 0.85); + linear-gradient( + 135deg, + rgba(255, 255, 255, 0.03), + rgba(255, 255, 255, 0.01) + ), + rgba(0, 0, 0, 0.95); --footer-border: rgba(255, 255, 255, 0.08); - --footer-divider: rgba(255, 255, 255, 0.65); + --footer-divider: rgba(255, 255, 255, 0.4); --button-primary-text: #04111d; --button-secondary-hover-text: #ffffff; } body.light-theme { - --bg: #edf4ff; - --bg-soft: #dce8fb; - --surface: rgba(255, 255, 255, 0.78); - --surface-strong: rgba(244, 248, 255, 0.96); - --surface-light: rgba(12, 26, 52, 0.04); - --border: rgba(57, 102, 182, 0.16); + --bg: #ffffff; + --bg-soft: #ffffff; + --surface: rgba(255, 255, 255, 0.94); + --surface-strong: rgba(255, 255, 255, 0.98); + --surface-light: rgba(0, 0, 0, 0.03); + --border: rgba(0, 0, 0, 0.08); --text: #10203d; --muted: #536684; --accent: #1f7cff; @@ -55,15 +63,19 @@ body.light-theme { --accent-warm: #ff8a57; --success: #00b67a; --shadow: 0 24px 70px rgba(56, 82, 128, 0.14); - --nav-bg: rgba(237, 244, 255, 0.7); - --nav-scrolled-bg: rgba(249, 251, 255, 0.94); + --nav-bg: rgba(255, 255, 255, 0.72); + --nav-scrolled-bg: rgba(255, 255, 255, 0.96); --nav-text: rgba(16, 32, 61, 0.9); - --nav-hover-bg: rgba(31, 124, 255, 0.08); + --nav-hover-bg: rgba(0, 0, 0, 0.05); --overlay-bg: - linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(229, 238, 255, 0.78)), - rgba(255, 255, 255, 0.72); - --grid-line: rgba(16, 32, 61, 0.035); - --section-outline: rgba(18, 36, 72, 0.05); + linear-gradient( + 135deg, + rgba(255, 255, 255, 0.98), + rgba(255, 255, 255, 0.94) + ), + rgba(255, 255, 255, 0.94); + --grid-line: rgba(0, 0, 0, 0.025); + --section-outline: rgba(0, 0, 0, 0.05); --toggle-track: rgba(16, 32, 61, 0.12); --toggle-thumb: linear-gradient(135deg, #f7b733, #fc4a1a); --toggle-text: #10203d; @@ -73,10 +85,10 @@ body.light-theme { --footer-link: #536684; --footer-heading: #10203d; --footer-bg: - linear-gradient(135deg, rgba(31, 124, 255, 0.08), rgba(124, 77, 255, 0.08)), - rgba(255, 255, 255, 0.88); - --footer-border: rgba(57, 102, 182, 0.14); - --footer-divider: rgba(83, 102, 132, 0.38); + linear-gradient(135deg, rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.01)), + rgba(255, 255, 255, 0.98); + --footer-border: rgba(0, 0, 0, 0.08); + --footer-divider: rgba(0, 0, 0, 0.18); --button-primary-text: #ffffff; --button-secondary-hover-text: #10203d; } @@ -98,21 +110,13 @@ body { overflow-x: hidden; font-family: "Manrope", sans-serif; color: var(--text); - background: - radial-gradient(circle at top left, rgba(99, 230, 255, 0.15), transparent 30%), - radial-gradient(circle at top right, rgba(139, 92, 246, 0.16), transparent 26%), - radial-gradient(circle at bottom center, rgba(255, 143, 92, 0.12), transparent 24%), - linear-gradient(180deg, var(--bg) 0%, #07111f 42%, #0b1730 100%); + background: var(--bg); font-weight: 500; line-height: 1.65; } body.light-theme { - background: - radial-gradient(circle at top left, rgba(31, 124, 255, 0.12), transparent 30%), - radial-gradient(circle at top right, rgba(124, 77, 255, 0.12), transparent 26%), - radial-gradient(circle at bottom center, rgba(255, 138, 87, 0.1), transparent 24%), - linear-gradient(180deg, #f7faff 0%, #edf4ff 48%, #e4eefc 100%); + background: var(--bg); } body::before { @@ -229,18 +233,16 @@ strong { box-shadow: 0 0 14px rgba(114, 241, 184, 0.8); } -.content-panel, +/* .content-panel, #win, #mts, -.card, .intro-shell { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow); backdrop-filter: blur(18px); -} - +} */ /* NAVBAR */ #topnav { @@ -260,7 +262,11 @@ strong { height: 52px; border-radius: 16px; background: - radial-gradient(circle at top left, rgba(99, 230, 255, 0.38), transparent 55%), + radial-gradient( + circle at top left, + rgba(99, 230, 255, 0.38), + transparent 55% + ), linear-gradient(135deg, rgba(139, 92, 246, 0.55), rgba(6, 15, 30, 0.7)); border: 1px solid rgba(255, 255, 255, 0.12); box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25); @@ -346,7 +352,10 @@ body.light-theme .nav-item.active { color: var(--toggle-text); font-weight: 700; cursor: pointer; - transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease; + transition: + background 0.25s ease, + border-color 0.25s ease, + transform 0.25s ease; } .theme-toggle:hover { @@ -398,6 +407,7 @@ body.light-theme .theme-toggle-thumb { display: flex; align-items: center; position: relative; + overflow: hidden; } #cover::before, @@ -434,12 +444,24 @@ body.light-theme .theme-toggle-thumb { padding: 56px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 40px; - background: - var(--overlay-bg); + background: var(--overlay-bg); box-shadow: var(--shadow); backdrop-filter: blur(18px); } +.hero-layout { + display: grid; + grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr); + align-items: center; + gap: 42px; +} + +.hero-copy { + min-width: 0; + position: relative; + z-index: 1; +} + .hero-badge { display: inline-flex; align-items: center; @@ -490,10 +512,21 @@ h3 { } .hero-text { - max-width: 760px; - margin-top: 22px; + max-width: 420px; + margin-top: 26px; color: var(--muted); - font-size: 1.15rem; + font-size: 1.08rem; + line-height: 1.7; +} + +.hero-subtext { + max-width: 380px; + margin-top: 10px; + color: var(--accent); + font-family: "Space Grotesk", sans-serif; + font-size: 1rem; + font-weight: 700; + letter-spacing: 0.02em; } .hero-actions { @@ -518,7 +551,11 @@ h3 { font-weight: 800; letter-spacing: 0.02em; text-decoration: none !important; - transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, border-color 0.25s ease; + transition: + transform 0.25s ease, + box-shadow 0.25s ease, + background 0.25s ease, + border-color 0.25s ease; } .hero-btn:hover, @@ -576,6 +613,49 @@ h3 { font-size: 0.95rem; } +.hero-media { + position: relative; + height: 100%; + width: 100%; +} + +.hero-video-shell { + position: relative; + min-height: 540px; + display: flex; + align-items: center; + justify-content: center; +} + +.hero-video { + position: relative; + z-index: 1; + width: 100%; + min-height: 508px; + object-fit: cover; + background: transparent; +} + +.hero-video-dark { + display: none; +} + +body.light-theme .hero-video-light { + display: block; +} + +body.light-theme .hero-video-dark { + display: none; +} + +body:not(.light-theme) .hero-video-light { + display: none; +} + +body:not(.light-theme) .hero-video-dark { + display: block; +} + /* ABOUT */ .intro-shell { @@ -615,7 +695,11 @@ h3 { margin: 0 auto; padding: 16px; border-radius: 38px; - background: linear-gradient(145deg, rgba(99, 230, 255, 0.18), rgba(139, 92, 246, 0.18)); + background: linear-gradient( + 145deg, + rgba(99, 230, 255, 0.18), + rgba(139, 92, 246, 0.18) + ); } .profile-frame::before { @@ -624,8 +708,17 @@ h3 { inset: -1px; border-radius: 38px; padding: 1px; - background: linear-gradient(135deg, rgba(99, 230, 255, 0.8), rgba(139, 92, 246, 0.6)); - -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); + background: linear-gradient( + 135deg, + rgba(99, 230, 255, 0.8), + rgba(139, 92, 246, 0.6) + ); + -webkit-mask: + linear-gradient(#fff 0 0) content-box, + linear-gradient(#fff 0 0); + mask: + linear-gradient(#fff 0 0) content-box, + linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; } @@ -634,7 +727,7 @@ h3 { width: 280px; height: 280px; border: 6px solid rgba(255, 255, 255, 0.08); - background: url("../img/profile_pic.jpg") center/cover; + background: url("../img/profile_pic.png") center/cover; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28); } @@ -704,7 +797,10 @@ h3 { color: var(--text); font-weight: 700; text-decoration: none !important; - transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease; + transition: + transform 0.25s ease, + background 0.25s ease, + border-color 0.25s ease; } .connect-link:hover { @@ -751,7 +847,11 @@ h3 { right: -40px; top: -50px; border-radius: 50%; - background: radial-gradient(circle, rgba(99, 230, 255, 0.25), transparent 65%); + background: radial-gradient( + circle, + rgba(99, 230, 255, 0.25), + transparent 65% + ); pointer-events: none; } @@ -771,12 +871,19 @@ h3 { border-radius: 18px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.07); - transition: transform 0.22s ease, background 0.22s ease; + display: block; + transition: + transform 0.22s ease, + background 0.22s ease, + border-color 0.22s ease, + box-shadow 0.22s ease; } .tech-logo:hover { transform: translateY(-4px); background: rgba(255, 255, 255, 0.08); + border-color: rgba(99, 230, 255, 0.2); + box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22); } .tech-logo-sm { @@ -798,12 +905,24 @@ h3 { margin: 0; justify-self: stretch; object-fit: contain; + object-position: center; } .tech-grid .tech-logo-sm { height: 72px; } +.tech-grid .tech-logo-wordmark { + padding: 16px 20px; + background: rgba(255, 255, 255, 0.94); + border-color: rgba(255, 255, 255, 0.16); +} + +body.light-theme .tech-grid .tech-logo-wordmark { + background: rgba(16, 32, 61, 0.04); + border-color: rgba(16, 32, 61, 0.08); +} + #resume-btn { margin-top: 8px; } @@ -815,9 +934,17 @@ h3 { } .card { + background: var(--surface); + border: 1px solid var(--border); + border-radius: var(--radius-lg); + box-shadow: var(--shadow); + backdrop-filter: blur(18px); overflow: hidden; height: 100%; - transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease; + transition: + transform 0.25s ease, + box-shadow 0.25s ease, + border-color 0.25s ease; } .card:hover { @@ -844,11 +971,16 @@ h3 { gap: 14px; height: 100%; padding: 24px 22px; + background: + linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 24%), + var(--surface); + color: var(--text); } .card-title { font-size: 1.45rem; line-height: 1.2; + color: var(--text); } .used-skills { @@ -869,6 +1001,32 @@ h3 { .card-btn { flex: 1; + background: var(--surface-light); + border-color: var(--border); + color: var(--text); +} + +.card-body .lead { + color: var(--muted); +} + +.card-body .lead.used-skills { + color: var(--accent); +} + +.card-btn .btn-img { + flex-shrink: 0; +} + +body.light-theme .card-body { + background: + linear-gradient(180deg, rgba(31, 124, 255, 0.05), transparent 24%), + var(--surface); +} + +body.light-theme .card-btn { + background: rgba(16, 32, 61, 0.03); + border-color: rgba(16, 32, 61, 0.08); } /* FOOTER */ @@ -890,7 +1048,12 @@ h3 { margin: 18px auto; border: none; height: 1px; - background: linear-gradient(90deg, transparent, var(--footer-divider), transparent); + background: linear-gradient( + 90deg, + transparent, + var(--footer-divider), + transparent + ); } #footer .lead, @@ -903,7 +1066,7 @@ h3 { @media (max-width: 991px) { #topnav { padding: 14px 16px; - background: rgba(6, 14, 28, 0.86); + background: var(--nav-scrolled-bg); border-bottom: 1px solid rgba(255, 255, 255, 0.08); backdrop-filter: blur(18px); } @@ -937,6 +1100,22 @@ h3 { padding: 40px 28px; } + .hero-layout { + grid-template-columns: 1fr; + gap: 28px; + } + + .hero-video-shell { + max-width: 460px; + min-height: 0; + margin: 0 auto; + } + + .hero-video { + min-height: 0; + aspect-ratio: 1 / 1; + } + .hero-stats, .detail-grid { grid-template-columns: 1fr; @@ -973,6 +1152,10 @@ h3 { border-radius: 28px; } + .hero-layout { + gap: 22px; + } + .hero-badge, .eyebrow { font-size: 0.76rem; @@ -995,6 +1178,14 @@ h3 { font-size: 0.98rem; } + .hero-text { + max-width: 100%; + } + + .hero-subtext { + font-size: 0.92rem; + } + .hero-actions, .hero-stats { margin-top: 22px; @@ -1010,6 +1201,14 @@ h3 { border-radius: 18px; } + .hero-video-shell { + width: 100%; + } + + .hero-video { + min-height: 0; + } + .hero-btn, #resume-btn, .card-btn { @@ -1106,6 +1305,10 @@ h3 { padding: 22px 14px; } + .hero-layout { + gap: 18px; + } + .display-1 { font-size: 1.95rem; line-height: 1.08; @@ -1119,10 +1322,18 @@ h3 { font-size: 0.9rem; } + .hero-subtext { + font-size: 0.85rem; + } + .hero-stat { padding: 14px; } + .hero-video-shell { + width: 100%; + } + .section-heading { font-size: 0.78rem; padding: 9px 12px; diff --git a/img/css3-logo.svg b/img/css3-logo.svg new file mode 100644 index 0000000..7213aaa --- /dev/null +++ b/img/css3-logo.svg @@ -0,0 +1,8 @@ + diff --git a/img/hero-globe-dark.webm b/img/hero-globe-dark.webm new file mode 100644 index 0000000..fda132d Binary files /dev/null and b/img/hero-globe-dark.webm differ diff --git a/img/hero-globe.webm b/img/hero-globe.webm new file mode 100644 index 0000000..3beb4c2 Binary files /dev/null and b/img/hero-globe.webm differ diff --git a/img/jquery-logo.svg b/img/jquery-logo.svg new file mode 100644 index 0000000..26cec11 --- /dev/null +++ b/img/jquery-logo.svg @@ -0,0 +1,8 @@ + diff --git a/img/mongodb-logo.svg b/img/mongodb-logo.svg new file mode 100644 index 0000000..8a369f3 --- /dev/null +++ b/img/mongodb-logo.svg @@ -0,0 +1,7 @@ + diff --git a/img/profile_pic.jpg b/img/profile_pic.jpg deleted file mode 100644 index 2f8497e..0000000 Binary files a/img/profile_pic.jpg and /dev/null differ diff --git a/img/profile_pic.png b/img/profile_pic.png new file mode 100644 index 0000000..82a9b26 Binary files /dev/null and b/img/profile_pic.png differ diff --git a/index.html b/index.html index f7bd59c..ddc459b 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@
-