mirror of
https://github.com/ced4568/ceds-noc.git
synced 2026-08-13 05:14:03 +00:00
Upgrade portfolio to elite v2 systems layout
This commit is contained in:
+192
-38
@@ -3,19 +3,25 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
|
||||||
<title>Chase Dumphord | Digital Systems & Infrastructure</title>
|
<title>Chase Dumphord | Digital Systems & Infrastructure</title>
|
||||||
|
|
||||||
<meta
|
<meta
|
||||||
name="description"
|
name="description"
|
||||||
content="Chase Dumphord portfolio - digital systems, infrastructure, networking, automation, and real-world technical projects."
|
content="Chase Dumphord portfolio - digital systems, infrastructure, networking, automation, homelab engineering, and real-world technical projects."
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<link rel="stylesheet" href="style.css" />
|
<link rel="stylesheet" href="style.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<header class="site-header">
|
<header class="site-header">
|
||||||
<div class="container nav">
|
<div class="container nav">
|
||||||
<a href="#top" class="logo">Chase Dumphord</a>
|
<a href="#top" class="logo">Chase Dumphord</a>
|
||||||
|
|
||||||
<nav>
|
<nav>
|
||||||
<ul class="nav-links">
|
<ul class="nav-links">
|
||||||
|
<li><a href="#snapshot">Snapshot</a></li>
|
||||||
<li><a href="#about">About</a></li>
|
<li><a href="#about">About</a></li>
|
||||||
<li><a href="#projects">Projects</a></li>
|
<li><a href="#projects">Projects</a></li>
|
||||||
<li><a href="#resume">Resume</a></li>
|
<li><a href="#resume">Resume</a></li>
|
||||||
@@ -29,11 +35,14 @@
|
|||||||
<section class="hero">
|
<section class="hero">
|
||||||
<div class="container hero-grid">
|
<div class="container hero-grid">
|
||||||
<div class="hero-text">
|
<div class="hero-text">
|
||||||
<p class="eyebrow">Digital Systems • Infrastructure • Networking • Automation</p>
|
<p class="eyebrow">Digital Systems • Infrastructure • Networking • Automation • Edge Systems</p>
|
||||||
<h1>I build real-world systems that connect hardware, networks, software, and operations.</h1>
|
|
||||||
|
<h1>I build practical systems that connect hardware, networks, software, and operations.</h1>
|
||||||
|
|
||||||
<p class="lead">
|
<p class="lead">
|
||||||
I’m Chase Dumphord. My work spans digital systems, Linux infrastructure, homelab engineering,
|
I’m Chase Dumphord — a hands-on systems builder focused on digital infrastructure,
|
||||||
Raspberry Pi deployments, networking, automation, and practical technical problem solving.
|
Linux systems, homelab engineering, Raspberry Pi deployments, networking, automation,
|
||||||
|
and real-world technical problem solving.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class="hero-actions">
|
<div class="hero-actions">
|
||||||
@@ -42,14 +51,82 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ul class="quick-facts">
|
<ul class="quick-facts">
|
||||||
<li>Based in Oxford, MS</li>
|
<li>Oxford, MS</li>
|
||||||
<li>GitHub: <a href="https://github.com/ced4568" target="_blank" rel="noopener noreferrer">ced4568</a></li>
|
<li>
|
||||||
<li>Email: <a href="mailto:[email protected]">[email protected]</a></li>
|
GitHub:
|
||||||
|
<a href="https://github.com/ced4568" target="_blank" rel="noopener noreferrer">ced4568</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Email:
|
||||||
|
<a href="mailto:[email protected]">[email protected]</a>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="hero-image-card">
|
<div class="hero-panel">
|
||||||
<img src="assets/images/ChaseD_headshot.jpg" alt="Headshot of Chase Dumphord" class="hero-image" />
|
<img
|
||||||
|
src="assets/images/ChaseD_headshot.jpg"
|
||||||
|
alt="Headshot of Chase Dumphord"
|
||||||
|
class="hero-image"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<div class="terminal-card">
|
||||||
|
<div class="terminal-top">
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<pre><code>$ whoami
|
||||||
|
systems_builder
|
||||||
|
|
||||||
|
$ focus
|
||||||
|
infrastructure
|
||||||
|
networking
|
||||||
|
automation
|
||||||
|
edge_systems
|
||||||
|
|
||||||
|
$ status
|
||||||
|
building_real_systems</code></pre>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id="snapshot" class="section section-alt">
|
||||||
|
<div class="container">
|
||||||
|
<div class="section-heading">
|
||||||
|
<p class="section-label">Environment</p>
|
||||||
|
<h2>Systems Snapshot</h2>
|
||||||
|
<p class="section-intro">
|
||||||
|
A quick look at the infrastructure and systems I’m actively building and documenting.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="stats-grid">
|
||||||
|
<div class="stat-card">
|
||||||
|
<h3>12+</h3>
|
||||||
|
<p>Nodes</p>
|
||||||
|
<span>K3s cluster environment</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="stat-card">
|
||||||
|
<h3>10+</h3>
|
||||||
|
<p>Services</p>
|
||||||
|
<span>Self-hosted stack</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="stat-card">
|
||||||
|
<h3>4</h3>
|
||||||
|
<p>VLANs</p>
|
||||||
|
<span>Segmented network design</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="stat-card">
|
||||||
|
<h3>2</h3>
|
||||||
|
<p>iGate Nodes</p>
|
||||||
|
<span>Home + mobile APRS</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@@ -64,19 +141,22 @@
|
|||||||
<div class="content-grid">
|
<div class="content-grid">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<p>
|
<p>
|
||||||
I’m a technical professional focused on digital systems, infrastructure, networking, automation,
|
I’m a technical professional focused on digital systems, infrastructure, networking,
|
||||||
and hands-on system integration. I enjoy building systems that are practical, reliable, and well documented —
|
automation, and hands-on system integration. I enjoy building systems that are practical,
|
||||||
from homelab services and dashboards to Raspberry Pi deployments, APRS iGates, and troubleshooting workflows.
|
reliable, and well documented — from homelab services and dashboards to Raspberry Pi
|
||||||
|
deployments, APRS iGates, and troubleshooting workflows.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
My background blends field engineering, industrial technology, software-oriented thinking, and infrastructure
|
My background blends field engineering, industrial technology, software-oriented thinking,
|
||||||
problem solving. I’m especially interested in projects that connect the physical and digital worlds through
|
and infrastructure problem solving. I’m especially interested in projects that connect the
|
||||||
monitoring, networking, automation, and resilient design.
|
physical and digital worlds through monitoring, networking, automation, and resilient design.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h3>Core Focus Areas</h3>
|
<h3>Core Focus Areas</h3>
|
||||||
|
|
||||||
<ul class="clean-list">
|
<ul class="clean-list">
|
||||||
<li>Digital systems and infrastructure</li>
|
<li>Digital systems and infrastructure</li>
|
||||||
<li>Linux systems and service management</li>
|
<li>Linux systems and service management</li>
|
||||||
@@ -89,64 +169,95 @@
|
|||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="projects" class="section">
|
<section id="projects" class="section section-alt">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="section-heading">
|
<div class="section-heading">
|
||||||
<p class="section-label">Projects</p>
|
<p class="section-label">Projects</p>
|
||||||
<h2>🔧 Infrastructure & Systems Projects</h2>
|
<h2>🔧 Infrastructure & Systems Projects</h2>
|
||||||
|
<p class="section-intro">
|
||||||
|
These projects are built around real systems, networking, Linux services, edge devices,
|
||||||
|
and practical documentation.
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="projects-grid">
|
<div class="projects-grid">
|
||||||
|
<article class="project-card featured-project">
|
||||||
<div class="project-card">
|
<div class="project-top">
|
||||||
<h3>🧠 Ced’s HomeLab Infrastructure</h3>
|
<h3>🧠 Ced’s HomeLab Infrastructure</h3>
|
||||||
|
<span class="status-pill">Flagship</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
<p class="tags">Infrastructure • Networking • Virtualization • Monitoring • Self-Hosting</p>
|
<p class="tags">Infrastructure • Networking • Virtualization • Monitoring • Self-Hosting</p>
|
||||||
<p>
|
|
||||||
Personal infrastructure lab focused on networking, monitoring, virtualization,
|
<p class="project-impact">
|
||||||
service hosting, and systems documentation.
|
Designed as a practical infrastructure environment for networking, monitoring,
|
||||||
|
service hosting, and documentation.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<ul>
|
<p>
|
||||||
|
Personal infrastructure lab focused on network segmentation, virtualization,
|
||||||
|
self-hosted services, monitoring, and architecture documentation.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul class="clean-list">
|
||||||
<li>VLAN segmentation and network design</li>
|
<li>VLAN segmentation and network design</li>
|
||||||
<li>Proxmox virtualization</li>
|
<li>Proxmox virtualization</li>
|
||||||
<li>Self-hosted services and monitoring</li>
|
<li>Self-hosted services and monitoring</li>
|
||||||
<li>System architecture documentation</li>
|
<li>System architecture documentation</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<a href="https://github.com/ced4568/ceds-homelab" target="_blank" class="project-link">
|
<a href="https://github.com/ced4568/ceds-homelab" target="_blank" rel="noopener noreferrer" class="project-link">
|
||||||
View Project →
|
View Project →
|
||||||
</a>
|
</a>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="project-card">
|
||||||
|
<div class="project-top">
|
||||||
|
<h3>☸️ K3s Kubernetes Cluster</h3>
|
||||||
|
<span class="status-pill">Infrastructure</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="project-card">
|
|
||||||
<h3>☸️ K3s Kubernetes Cluster</h3>
|
|
||||||
<p class="tags">Kubernetes • Containers • Linux • Infrastructure • Automation</p>
|
<p class="tags">Kubernetes • Containers • Linux • Infrastructure • Automation</p>
|
||||||
|
|
||||||
|
<p class="project-impact">
|
||||||
|
Built to simulate distributed infrastructure, container orchestration, and scalable service deployment.
|
||||||
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Multi-node K3s cluster built for container orchestration, service deployment,
|
Multi-node K3s cluster built for container orchestration, service deployment,
|
||||||
and infrastructure experimentation.
|
and infrastructure experimentation.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<ul>
|
<ul class="clean-list">
|
||||||
<li>Multi-node cluster setup</li>
|
<li>Multi-node cluster setup</li>
|
||||||
<li>Containerized workloads</li>
|
<li>Containerized workloads</li>
|
||||||
<li>Service deployment</li>
|
<li>Service deployment</li>
|
||||||
<li>Infrastructure automation</li>
|
<li>Infrastructure automation</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<a href="https://github.com/ced4568/ced-k3s-homelab" target="_blank" class="project-link">
|
<a href="https://github.com/ced4568/ced-k3s-homelab" target="_blank" rel="noopener noreferrer" class="project-link">
|
||||||
View Project →
|
View Project →
|
||||||
</a>
|
</a>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="project-card">
|
||||||
|
<div class="project-top">
|
||||||
|
<h3>📡 APRS iGate System</h3>
|
||||||
|
<span class="status-pill">Edge System</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="project-card">
|
|
||||||
<h3>📡 APRS iGate System</h3>
|
|
||||||
<p class="tags">RF • Linux • Raspberry Pi • Networking • APRS-IS • Edge Systems</p>
|
<p class="tags">RF • Linux • Raspberry Pi • Networking • APRS-IS • Edge Systems</p>
|
||||||
|
|
||||||
|
<p class="project-impact">
|
||||||
|
Bridges RF communication into IP-based infrastructure using Linux, Direwolf, and APRS-IS.
|
||||||
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Operational dual-node APRS iGate system built with Raspberry Pi, Direwolf, APRS-IS,
|
Operational dual-node APRS iGate system built with Raspberry Pi, Direwolf, APRS-IS,
|
||||||
RF radios, HomeLab network integration, and planned mobile GPS support.
|
RF radios, HomeLab network integration, and planned mobile GPS support.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<ul>
|
<ul class="clean-list">
|
||||||
<li>RF packet decoding with Direwolf</li>
|
<li>RF packet decoding with Direwolf</li>
|
||||||
<li>APRS-IS uplink verified on aprs.fi</li>
|
<li>APRS-IS uplink verified on aprs.fi</li>
|
||||||
<li>HomeLab WiFi + mobile hotspot failover</li>
|
<li>HomeLab WiFi + mobile hotspot failover</li>
|
||||||
@@ -154,11 +265,39 @@
|
|||||||
<li>Documented configs, architecture, and troubleshooting</li>
|
<li>Documented configs, architecture, and troubleshooting</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<a href="https://github.com/ced4568/ceds-aprs-igate" target="_blank" class="project-link">
|
<a href="https://github.com/ced4568/ceds-aprs-igate" target="_blank" rel="noopener noreferrer" class="project-link">
|
||||||
View Project →
|
View Project →
|
||||||
</a>
|
</a>
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="section noc-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="section-heading">
|
||||||
|
<p class="section-label">Future Buildout</p>
|
||||||
|
<h2>📊 Ced’s NOC Vision</h2>
|
||||||
|
<p class="section-intro">
|
||||||
|
The long-term goal is to bring these systems together into a unified network operations view.
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="noc-grid">
|
||||||
|
<div class="noc-card">
|
||||||
|
<h3>Monitoring</h3>
|
||||||
|
<p>Grafana, Prometheus, Uptime Kuma, and service-level visibility.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="noc-card">
|
||||||
|
<h3>Infrastructure</h3>
|
||||||
|
<p>HomeLab services, K3s nodes, VLANs, and self-hosted systems.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="noc-card">
|
||||||
|
<h3>Edge Systems</h3>
|
||||||
|
<p>APRS iGate nodes, Raspberry Pi devices, and field/mobile deployments.</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@@ -173,6 +312,7 @@
|
|||||||
<div class="content-grid">
|
<div class="content-grid">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h3>What I Bring</h3>
|
<h3>What I Bring</h3>
|
||||||
|
|
||||||
<ul class="clean-list">
|
<ul class="clean-list">
|
||||||
<li>Industrial and field-service technical experience</li>
|
<li>Industrial and field-service technical experience</li>
|
||||||
<li>Linux, Raspberry Pi, and systems administration work</li>
|
<li>Linux, Raspberry Pi, and systems administration work</li>
|
||||||
@@ -183,10 +323,13 @@
|
|||||||
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h3>Current Direction</h3>
|
<h3>Current Direction</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
I’m positioning myself around digital systems, infrastructure, networking, automation, and technical operations —
|
I’m positioning myself around digital systems, infrastructure, networking,
|
||||||
especially roles where hands-on problem solving and system integration matter.
|
automation, and technical operations — especially roles where hands-on problem
|
||||||
|
solving and system integration matter.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
More detailed resume content will be added here as the portfolio grows.
|
More detailed resume content will be added here as the portfolio grows.
|
||||||
</p>
|
</p>
|
||||||
@@ -198,15 +341,21 @@
|
|||||||
<section class="section section-alt personal-section">
|
<section class="section section-alt personal-section">
|
||||||
<div class="container personal-grid">
|
<div class="container personal-grid">
|
||||||
<div class="personal-image-wrap">
|
<div class="personal-image-wrap">
|
||||||
<img src="assets/images/lakephotopinkpants.png" alt="Chase Dumphord standing by a fence with a lake view in the background" class="personal-image" />
|
<img
|
||||||
|
src="assets/images/lakephotopinkpants.png"
|
||||||
|
alt="Chase Dumphord standing by a fence with a lake view in the background"
|
||||||
|
class="personal-image"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<p class="section-label">Personal Note</p>
|
<p class="section-label">Personal Note</p>
|
||||||
<h2>Technical, curious, and always building</h2>
|
<h2>Technical, curious, and always building</h2>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Outside of work, I enjoy electronics, self-hosting, coding, drones, radio, and hands-on technical projects that
|
Outside of work, I enjoy electronics, self-hosting, coding, drones, radio, and
|
||||||
push me to learn something useful. That curiosity carries directly into the way I build and document systems.
|
hands-on technical projects that push me to learn something useful. That curiosity
|
||||||
|
carries directly into the way I build and document systems.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -222,14 +371,19 @@
|
|||||||
<div class="contact-grid">
|
<div class="contact-grid">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h3>Contact Info</h3>
|
<h3>Contact Info</h3>
|
||||||
|
|
||||||
<p>Email: <a href="mailto:[email protected]">[email protected]</a></p>
|
<p>Email: <a href="mailto:[email protected]">[email protected]</a></p>
|
||||||
<p>Phone: <a href="tel:+16622142231">662-214-2231</a></p>
|
<p>Phone: <a href="tel:+16622142231">662-214-2231</a></p>
|
||||||
<p>Location: Oxford, MS</p>
|
<p>Location: Oxford, MS</p>
|
||||||
<p>GitHub: <a href="https://github.com/ced4568" target="_blank" rel="noopener noreferrer">github.com/ced4568</a></p>
|
<p>
|
||||||
|
GitHub:
|
||||||
|
<a href="https://github.com/ced4568" target="_blank" rel="noopener noreferrer">github.com/ced4568</a>
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h3>What I’m Open To</h3>
|
<h3>What I’m Open To</h3>
|
||||||
|
|
||||||
<ul class="clean-list">
|
<ul class="clean-list">
|
||||||
<li>Digital systems and infrastructure roles</li>
|
<li>Digital systems and infrastructure roles</li>
|
||||||
<li>Networking and technical operations work</li>
|
<li>Networking and technical operations work</li>
|
||||||
|
|||||||
@@ -1,13 +1,16 @@
|
|||||||
:root {
|
:root {
|
||||||
--bg: #0b1220;
|
--bg: #070b12;
|
||||||
--bg-soft: #121a2b;
|
--bg-soft: #0d1422;
|
||||||
--card: #172235;
|
--bg-alt: #101827;
|
||||||
--text: #e8eefc;
|
--card: #111c2e;
|
||||||
--muted: #a9b6d3;
|
--card-2: #0f1726;
|
||||||
--line: rgba(255, 255, 255, 0.08);
|
--text: #e7edf7;
|
||||||
--accent: #66b3ff;
|
--muted: #a8b3c7;
|
||||||
|
--line: rgba(255, 255, 255, 0.1);
|
||||||
|
--accent: #58a6ff;
|
||||||
--accent-2: #8ef0cf;
|
--accent-2: #8ef0cf;
|
||||||
--shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
|
--warning: #f2cc60;
|
||||||
|
--shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
|
||||||
--radius: 18px;
|
--radius: 18px;
|
||||||
--max: 1120px;
|
--max: 1120px;
|
||||||
}
|
}
|
||||||
@@ -24,10 +27,11 @@ body {
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: Arial, Helvetica, sans-serif;
|
font-family: Arial, Helvetica, sans-serif;
|
||||||
background:
|
background:
|
||||||
radial-gradient(circle at top left, rgba(102, 179, 255, 0.08), transparent 30%),
|
radial-gradient(circle at top left, rgba(88, 166, 255, 0.14), transparent 28%),
|
||||||
linear-gradient(180deg, #0b1220 0%, #0d1424 100%);
|
radial-gradient(circle at 80% 20%, rgba(142, 240, 207, 0.08), transparent 26%),
|
||||||
|
linear-gradient(180deg, var(--bg) 0%, #0b1220 100%);
|
||||||
color: var(--text);
|
color: var(--text);
|
||||||
line-height: 1.6;
|
line-height: 1.65;
|
||||||
}
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
@@ -53,40 +57,44 @@ a:hover {
|
|||||||
position: sticky;
|
position: sticky;
|
||||||
top: 0;
|
top: 0;
|
||||||
z-index: 1000;
|
z-index: 1000;
|
||||||
backdrop-filter: blur(12px);
|
backdrop-filter: blur(14px);
|
||||||
background: rgba(11, 18, 32, 0.82);
|
background: rgba(7, 11, 18, 0.86);
|
||||||
border-bottom: 1px solid var(--line);
|
border-bottom: 1px solid var(--line);
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav {
|
.nav {
|
||||||
|
min-height: 72px;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
min-height: 72px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.logo {
|
.logo {
|
||||||
color: var(--text);
|
color: var(--text);
|
||||||
font-weight: 700;
|
font-weight: 800;
|
||||||
font-size: 1.05rem;
|
|
||||||
letter-spacing: 0.02em;
|
letter-spacing: 0.02em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.logo::after {
|
||||||
|
content: " >";
|
||||||
|
color: var(--accent-2);
|
||||||
|
}
|
||||||
|
|
||||||
.logo:hover {
|
.logo:hover {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-links {
|
.nav-links {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
gap: 1.1rem;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
gap: 1.2rem;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-links a {
|
.nav-links a {
|
||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
font-size: 0.96rem;
|
font-size: 0.95rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-links a:hover {
|
.nav-links a:hover {
|
||||||
@@ -100,7 +108,7 @@ a:hover {
|
|||||||
|
|
||||||
.hero-grid {
|
.hero-grid {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: 1.35fr 0.9fr;
|
grid-template-columns: 1.25fr 0.85fr;
|
||||||
gap: 2rem;
|
gap: 2rem;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
@@ -110,36 +118,36 @@ a:hover {
|
|||||||
color: var(--accent-2);
|
color: var(--accent-2);
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
letter-spacing: 0.08em;
|
letter-spacing: 0.08em;
|
||||||
font-size: 0.8rem;
|
font-size: 0.78rem;
|
||||||
font-weight: 700;
|
font-weight: 800;
|
||||||
margin-bottom: 0.9rem;
|
margin: 0 0 0.85rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.hero h1 {
|
.hero h1 {
|
||||||
margin: 0 0 1rem;
|
margin: 0 0 1rem;
|
||||||
font-size: clamp(2.2rem, 4vw, 4rem);
|
font-size: clamp(2.25rem, 4vw, 4.2rem);
|
||||||
line-height: 1.1;
|
line-height: 1.08;
|
||||||
}
|
}
|
||||||
|
|
||||||
.lead {
|
.lead {
|
||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
font-size: 1.05rem;
|
font-size: 1.07rem;
|
||||||
max-width: 60ch;
|
max-width: 62ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
.hero-actions {
|
.hero-actions {
|
||||||
display: flex;
|
display: flex;
|
||||||
gap: 1rem;
|
|
||||||
margin: 1.75rem 0 1.25rem;
|
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
|
gap: 1rem;
|
||||||
|
margin: 1.8rem 0 1.25rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: 0.9rem 1.2rem;
|
padding: 0.9rem 1.2rem;
|
||||||
border-radius: 999px;
|
border-radius: 999px;
|
||||||
font-weight: 700;
|
font-weight: 800;
|
||||||
transition: transform 0.18s ease, opacity 0.18s ease, background 0.18s ease;
|
transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn:hover {
|
.btn:hover {
|
||||||
@@ -155,7 +163,7 @@ a:hover {
|
|||||||
.btn-secondary {
|
.btn-secondary {
|
||||||
border: 1px solid var(--line);
|
border: 1px solid var(--line);
|
||||||
color: var(--text);
|
color: var(--text);
|
||||||
background: rgba(255, 255, 255, 0.03);
|
background: rgba(255, 255, 255, 0.035);
|
||||||
}
|
}
|
||||||
|
|
||||||
.quick-facts {
|
.quick-facts {
|
||||||
@@ -168,10 +176,20 @@ a:hover {
|
|||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.hero-panel {
|
||||||
|
display: grid;
|
||||||
|
gap: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
.hero-image-card,
|
.hero-image-card,
|
||||||
|
.terminal-card,
|
||||||
.card,
|
.card,
|
||||||
.project-card {
|
.project-card,
|
||||||
background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.025));
|
.stat-card,
|
||||||
|
.noc-card,
|
||||||
|
.personal-image-wrap {
|
||||||
|
background:
|
||||||
|
linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025));
|
||||||
border: 1px solid var(--line);
|
border: 1px solid var(--line);
|
||||||
border-radius: var(--radius);
|
border-radius: var(--radius);
|
||||||
box-shadow: var(--shadow);
|
box-shadow: var(--shadow);
|
||||||
@@ -187,29 +205,72 @@ a:hover {
|
|||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.terminal-card {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.terminal-top {
|
||||||
|
display: flex;
|
||||||
|
gap: 0.45rem;
|
||||||
|
padding: 0.85rem 1rem;
|
||||||
|
border-bottom: 1px solid var(--line);
|
||||||
|
background: rgba(0, 0, 0, 0.22);
|
||||||
|
}
|
||||||
|
|
||||||
|
.terminal-top span {
|
||||||
|
width: 11px;
|
||||||
|
height: 11px;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: var(--accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.terminal-top span:nth-child(2) {
|
||||||
|
background: var(--warning);
|
||||||
|
}
|
||||||
|
|
||||||
|
.terminal-top span:nth-child(3) {
|
||||||
|
background: var(--accent-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.terminal-card pre {
|
||||||
|
margin: 0;
|
||||||
|
padding: 1rem;
|
||||||
|
overflow: auto;
|
||||||
|
color: var(--accent-2);
|
||||||
|
font-size: 0.88rem;
|
||||||
|
}
|
||||||
|
|
||||||
.section {
|
.section {
|
||||||
padding: 4rem 0;
|
padding: 4.2rem 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.section-alt {
|
.section-alt {
|
||||||
background: rgba(255, 255, 255, 0.02);
|
background: rgba(255, 255, 255, 0.025);
|
||||||
border-top: 1px solid var(--line);
|
border-top: 1px solid var(--line);
|
||||||
border-bottom: 1px solid var(--line);
|
border-bottom: 1px solid var(--line);
|
||||||
}
|
}
|
||||||
|
|
||||||
.section-heading {
|
.section-heading {
|
||||||
margin-bottom: 1.5rem;
|
margin-bottom: 1.6rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.section h2 {
|
.section h2 {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-size: clamp(1.7rem, 2.6vw, 2.5rem);
|
font-size: clamp(1.7rem, 2.6vw, 2.6rem);
|
||||||
|
line-height: 1.15;
|
||||||
|
}
|
||||||
|
|
||||||
|
.section-intro {
|
||||||
|
color: var(--muted);
|
||||||
|
max-width: 70ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content-grid,
|
.content-grid,
|
||||||
.projects-grid,
|
.projects-grid,
|
||||||
.contact-grid,
|
.contact-grid,
|
||||||
.personal-grid {
|
.personal-grid,
|
||||||
|
.noc-grid,
|
||||||
|
.stats-grid {
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 1.25rem;
|
gap: 1.25rem;
|
||||||
}
|
}
|
||||||
@@ -219,60 +280,117 @@ a:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.projects-grid {
|
.projects-grid {
|
||||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||||
}
|
|
||||||
|
|
||||||
.contact-grid {
|
|
||||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.contact-grid,
|
||||||
.personal-grid {
|
.personal-grid {
|
||||||
grid-template-columns: 0.95fr 1.05fr;
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||||
align-items: center;
|
}
|
||||||
|
|
||||||
|
.stats-grid,
|
||||||
|
.noc-grid {
|
||||||
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.noc-grid {
|
||||||
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||||
}
|
}
|
||||||
|
|
||||||
.card,
|
.card,
|
||||||
.project-card {
|
.project-card,
|
||||||
|
.stat-card,
|
||||||
|
.noc-card {
|
||||||
padding: 1.35rem;
|
padding: 1.35rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.card h3,
|
||||||
|
.project-card h3,
|
||||||
|
.noc-card h3 {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.project-card {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.featured-project {
|
||||||
|
border-color: rgba(142, 240, 207, 0.28);
|
||||||
|
}
|
||||||
|
|
||||||
.project-top {
|
.project-top {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
gap: 1rem;
|
gap: 1rem;
|
||||||
|
align-items: flex-start;
|
||||||
}
|
}
|
||||||
|
|
||||||
.project-card h3,
|
.status-pill {
|
||||||
.card h3 {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tag {
|
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: 0.35rem 0.7rem;
|
padding: 0.34rem 0.65rem;
|
||||||
border-radius: 999px;
|
border-radius: 999px;
|
||||||
background: rgba(102, 179, 255, 0.12);
|
background: rgba(88, 166, 255, 0.12);
|
||||||
border: 1px solid rgba(102, 179, 255, 0.22);
|
border: 1px solid rgba(88, 166, 255, 0.24);
|
||||||
color: var(--accent);
|
color: var(--accent);
|
||||||
font-size: 0.8rem;
|
font-size: 0.76rem;
|
||||||
|
font-weight: 800;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tags {
|
||||||
|
color: var(--accent-2);
|
||||||
|
font-size: 0.9rem;
|
||||||
|
font-weight: 700;
|
||||||
|
margin: 0.25rem 0 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.project-impact {
|
||||||
|
color: var(--text);
|
||||||
|
border-left: 3px solid var(--accent-2);
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
margin: 1rem 0;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
|
|
||||||
.clean-list {
|
.clean-list {
|
||||||
margin: 0.8rem 0 0;
|
margin: 0.8rem 0 0;
|
||||||
padding-left: 1.2rem;
|
padding-left: 1.15rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.project-links {
|
.project-link {
|
||||||
|
display: inline-block;
|
||||||
margin-top: 1rem;
|
margin-top: 1rem;
|
||||||
|
color: var(--accent);
|
||||||
|
font-weight: 800;
|
||||||
|
}
|
||||||
|
|
||||||
|
.stat-card h3 {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 2.2rem;
|
||||||
|
color: var(--accent-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.stat-card p {
|
||||||
|
margin: 0.25rem 0;
|
||||||
|
font-weight: 800;
|
||||||
|
color: var(--text);
|
||||||
|
}
|
||||||
|
|
||||||
|
.stat-card span {
|
||||||
|
color: var(--muted);
|
||||||
|
font-size: 0.92rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.noc-section {
|
||||||
|
background:
|
||||||
|
linear-gradient(135deg, rgba(88, 166, 255, 0.08), rgba(142, 240, 207, 0.04));
|
||||||
|
}
|
||||||
|
|
||||||
|
.personal-grid {
|
||||||
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.personal-image-wrap {
|
.personal-image-wrap {
|
||||||
background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.025));
|
|
||||||
border: 1px solid var(--line);
|
|
||||||
border-radius: var(--radius);
|
|
||||||
box-shadow: var(--shadow);
|
|
||||||
padding: 1rem;
|
padding: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -289,9 +407,8 @@ a:hover {
|
|||||||
|
|
||||||
.footer-content {
|
.footer-content {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
gap: 1rem;
|
align-items: center;
|
||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -304,12 +421,19 @@ a:hover {
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (max-width: 1050px) {
|
||||||
|
.projects-grid,
|
||||||
|
.stats-grid {
|
||||||
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: 900px) {
|
@media (max-width: 900px) {
|
||||||
.hero-grid,
|
.hero-grid,
|
||||||
.content-grid,
|
.content-grid,
|
||||||
.projects-grid,
|
|
||||||
.contact-grid,
|
.contact-grid,
|
||||||
.personal-grid {
|
.personal-grid,
|
||||||
|
.noc-grid {
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -317,7 +441,7 @@ a:hover {
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
padding: 0.85rem 0;
|
padding: 0.85rem 0;
|
||||||
gap: 0.75rem;
|
gap: 0.8rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-links {
|
.nav-links {
|
||||||
@@ -330,7 +454,12 @@ a:hover {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 560px) {
|
@media (max-width: 620px) {
|
||||||
|
.projects-grid,
|
||||||
|
.stats-grid {
|
||||||
|
grid-template-columns: 1fr;
|
||||||
|
}
|
||||||
|
|
||||||
.hero h1 {
|
.hero h1 {
|
||||||
font-size: 2rem;
|
font-size: 2rem;
|
||||||
}
|
}
|
||||||
@@ -346,24 +475,6 @@ a:hover {
|
|||||||
.footer-content {
|
.footer-content {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
|
gap: 0.5rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.project-link {
|
|
||||||
display: inline-block;
|
|
||||||
margin-top: 10px;
|
|
||||||
color: #4ea1ff;
|
|
||||||
font-weight: bold;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.project-link:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tags {
|
|
||||||
color: #8ef0cf;
|
|
||||||
font-size: 0.9rem;
|
|
||||||
font-weight: 600;
|
|
||||||
margin: 0.25rem 0 1rem;
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user