diff --git a/src/pages/index.astro b/src/pages/index.astro
index 0d91922..69cade6 100644
--- a/src/pages/index.astro
+++ b/src/pages/index.astro
@@ -17,6 +17,11 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
@@ -28,9 +33,9 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
gay furry wizard
- IT wizard with a homelab. I believe in self-hosting, privacy,
- and keeping control of my own data. Companies don't get to sell
- or misuse what's mine.
+ IT wizard with a homelab. I believe in self-hosting,
+ privacy, and keeping control of my own data. Companies don't
+ get to sell or misuse what's mine.
age: {age}
@@ -44,15 +49,27 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
pgp fingerprint:
- 50DAAAABFD6D76B86507C46E723D1C7AB893AEBE
+ 50DAAAABFD6D76B86507C46E723D1C7AB893AEBE
@@ -69,12 +86,48 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
@@ -82,7 +135,13 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
Services
- - Gitea — self-hosted git server
+ -
+ Gitea — self-hosted git server
+
@@ -92,11 +151,15 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
[XMR]
- 41uiUeBru8jhtzjQz3M5CKV1uFpern7juStdfveNQS52LQ9aw3mNkdbc8akM81YnxuE2RT9K2Cmyp9cfyi1osrbVBjBbzQ3
+ 41uiUeBru8jhtzjQz3M5CKV1uFpern7juStdfveNQS52LQ9aw3mNkdbc8akM81YnxuE2RT9K2Cmyp9cfyi1osrbVBjBbzQ3
[ETH]
- 0x3Dfc92458267b91BFa6bF8f6c86bAE809Ab76Cb4
+ 0x3Dfc92458267b91BFa6bF8f6c86bAE809Ab76Cb4
@@ -127,8 +190,12 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
}
@keyframes grid-move {
- 0% { transform: translate(0, 0); }
- 100% { transform: translate(50px, 50px); }
+ 0% {
+ transform: translate(0, 0);
+ }
+ 100% {
+ transform: translate(50px, 50px);
+ }
}
.main {
@@ -155,6 +222,28 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
margin-bottom: var(--space-lg);
}
+ .hero-avatar {
+ display: flex;
+ justify-content: center;
+ margin-bottom: 12px;
+ }
+
+ .avatar-circle {
+ width: 128px;
+ height: 128px;
+ border-radius: 50%;
+ overflow: hidden;
+ flex-shrink: 0;
+ }
+
+ .avatar-circle img {
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+ transform: scale(1.08);
+ transform-origin: center;
+ }
+
.title {
font-size: 2rem;
font-weight: 700;
@@ -317,13 +406,27 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
opacity: 0;
}
- .fade-in:nth-child(1) { animation-delay: 0.1s; }
- .fade-in:nth-child(2) { animation-delay: 0.2s; }
- .fade-in:nth-child(3) { animation-delay: 0.3s; }
- .fade-in:nth-child(4) { animation-delay: 0.4s; }
- .fade-in:nth-child(5) { animation-delay: 0.5s; }
- .fade-in:nth-child(6) { animation-delay: 0.6s; }
- .fade-in:nth-child(7) { animation-delay: 0.7s; }
+ .fade-in:nth-child(1) {
+ animation-delay: 0.1s;
+ }
+ .fade-in:nth-child(2) {
+ animation-delay: 0.2s;
+ }
+ .fade-in:nth-child(3) {
+ animation-delay: 0.3s;
+ }
+ .fade-in:nth-child(4) {
+ animation-delay: 0.4s;
+ }
+ .fade-in:nth-child(5) {
+ animation-delay: 0.5s;
+ }
+ .fade-in:nth-child(6) {
+ animation-delay: 0.6s;
+ }
+ .fade-in:nth-child(7) {
+ animation-delay: 0.7s;
+ }
@keyframes fadeIn {
from {
@@ -342,6 +445,11 @@ if (now < new Date(now.getFullYear(), 6, 8)) age--;
padding: var(--space-md);
}
+ .avatar-circle {
+ width: 100px;
+ height: 100px;
+ }
+
.title {
font-size: 1.5rem;
}
diff --git a/src/pages/projects.astro b/src/pages/projects.astro
index 07a52c0..5f5d610 100644
--- a/src/pages/projects.astro
+++ b/src/pages/projects.astro
@@ -169,12 +169,13 @@ function getPrimaryLink(project: Project): string | undefined {
border-radius: 6px;
padding: var(--space-md);
background: var(--color-bg);
- transition: border-color 0.2s ease, box-shadow 0.2s ease;
+ transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.project-item:hover {
- border-color: var(--color-accent);
+ border-color: rgba(255, 255, 255, 0.2);
box-shadow: 0 0 0 1px var(--color-accent);
+ transform: translateY(-2px);
}
.project-item:hover .project-name {