From 012c262f326ee94e9dd08fef9d7f5cf7b7498cf5 Mon Sep 17 00:00:00 2001 From: koehr Date: Sun, 31 Mar 2024 23:49:43 +0200 Subject: [PATCH] new header and colors --- dist/down.svg | 1 - dist/fediverse.svg | 2 +- dist/gitforge.svg | 9 ++++ dist/github.svg | 2 +- dist/header.jpg | Bin 21438 -> 11591 bytes dist/index.html | 64 ++++++++++++++++++++----- dist/instagram.svg | 2 +- dist/linkedin.svg | 2 +- dist/mail.svg | 2 +- dist/reddit.svg | 2 +- dist/style.css | 110 ++++++++++++++++++++++++++++++++++++++----- dist/term.svg | 1 - dist/threads.svg | 2 +- dist/twitter.svg | 2 +- index.md | 2 + layouts/index.html | 61 ++++++++++++++++++++---- static/down.svg | 1 - static/fediverse.svg | 2 +- static/gitforge.svg | 9 ++++ static/github.svg | 2 +- static/header.jpg | Bin 21438 -> 11591 bytes static/instagram.svg | 2 +- static/linkedin.svg | 2 +- static/mail.svg | 2 +- static/reddit.svg | 2 +- static/style.css | 110 ++++++++++++++++++++++++++++++++++++++----- static/term.svg | 1 - static/threads.svg | 2 +- static/twitter.svg | 2 +- 29 files changed, 334 insertions(+), 67 deletions(-) delete mode 100644 dist/down.svg create mode 100644 dist/gitforge.svg delete mode 100644 dist/term.svg delete mode 100644 static/down.svg create mode 100644 static/gitforge.svg delete mode 100644 static/term.svg diff --git a/dist/down.svg b/dist/down.svg deleted file mode 100644 index 0248e90..0000000 --- a/dist/down.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/dist/fediverse.svg b/dist/fediverse.svg index 72f9dba..8475fd0 100644 --- a/dist/fediverse.svg +++ b/dist/fediverse.svg @@ -1 +1 @@ - + diff --git a/dist/gitforge.svg b/dist/gitforge.svg new file mode 100644 index 0000000..2f50935 --- /dev/null +++ b/dist/gitforge.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/dist/github.svg b/dist/github.svg index cc919f6..735c025 100644 --- a/dist/github.svg +++ b/dist/github.svg @@ -1 +1 @@ - + diff --git a/dist/header.jpg b/dist/header.jpg index ee867b37b5994325b89a53535a35809112956299..08a223c379e52309ed2b302bb0435edc7e4f9559 100644 GIT binary patch literal 11591 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 Nl3$Da|KE=K{})R~WK947 literal 21438 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%0A4)ey=GEhp!>Ga}@ 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 C>;YH+ diff --git a/dist/index.html b/dist/index.html index bac34eb..2846fdb 100644 --- a/dist/index.html +++ b/dist/index.html @@ -3,7 +3,7 @@ - + Norman Köhring // the codeartist — programmer and engineer based in Berlin @@ -30,14 +30,6 @@ -
- Homepage of -
- Norman - Köhring -
- Code Artist -
@@ -89,6 +89,7 @@
+
+ + diff --git a/dist/instagram.svg b/dist/instagram.svg index 7041024..570b3d6 100644 --- a/dist/instagram.svg +++ b/dist/instagram.svg @@ -1 +1 @@ - + diff --git a/dist/linkedin.svg b/dist/linkedin.svg index c00bc12..9ce8535 100644 --- a/dist/linkedin.svg +++ b/dist/linkedin.svg @@ -1 +1 @@ - + diff --git a/dist/mail.svg b/dist/mail.svg index 6e65b40..d812e12 100644 --- a/dist/mail.svg +++ b/dist/mail.svg @@ -1 +1 @@ - + diff --git a/dist/reddit.svg b/dist/reddit.svg index 629e64b..3a88f30 100644 --- a/dist/reddit.svg +++ b/dist/reddit.svg @@ -1 +1 @@ - + diff --git a/dist/style.css b/dist/style.css index 1ce2e82..d91d2df 100644 --- a/dist/style.css +++ b/dist/style.css @@ -1,6 +1,11 @@ :root { - --page-bg-color: #101626; - --page-fg-color: #fff8e7; + --header-bg-color: #1b1c1d; + --header-fg-color: #a3bd8d; + --header-height: 192px; + --header-multiplier: .25; + --page-bg-color: #232425; + --page-fg-color: #7e9fbe; + --highlight-fg-color: #eacb8b; --emboss-color: #000; } @@ -16,25 +21,27 @@ :root { --page-bg-color: #efe9d9; --page-fg-color: #261b00; + --header-fg-color: #143373; + --header-bg-color: #a49570; --emboss-color: #fff; } - .light\:invert { + .light\:invert, + .contacts img { filter: invert(); } } * { - transition: color, background-color 200ms ease; + transition: color 300ms ease, background-color 300ms ease, fill 500ms ease; } html, body { + width: 100vw; display: flex; flex-flow: column nowrap; justify-content: center; - width: 960px; - max-width: 98vw; margin: auto; background: var(--page-bg-color); color: var(--page-fg-color); @@ -43,10 +50,41 @@ body { scroll-behavior: smooth; } +body>#spacer, body>header { - height: 420px; - background: url(/header.jpg) center no-repeat; + position: fixed; + top: 0; + left: 0; + width: 100vw; + background-color: var(--header-bg-color); +} + +body>#spacer { + height: calc(var(--header-height) * var(--header-multiplier)); +} + +body>header { + height: var(--header-height); color: transparent; + transition: transform .3s ease-in-out; + transform-origin: top center; +} + +body>header.small { + transform: scale(var(--header-multiplier)); +} + +body>header>svg { + display: block; + width: 960px; + max-width: 98vw; + margin: .5em auto; + color: var(--header-fg-color); +} + +body>main { + width: 960px; + margin: var(--header-height) auto 4em; } a { @@ -57,15 +95,17 @@ a { display: flex; flex-flow: column nowrap; justify-content: center; - height: calc(100vh - 420px); + height: calc(100vh - var(--header-height)); margin: 2rem 0; } #content>h1 { - margin: 2em 0 .25em; + margin: 0 0 .25em; + padding-top: 2em; font-size: 2rem; font-variant: small-caps; text-shadow: 1px 1px 0 var(--emboss-color); + color: var(--header-fg-color); } #menu { @@ -102,26 +142,70 @@ blockquote { background-color: rgba(128, 128, 128, .2); } -#menu>a>img { +#menu>a>svg { + display: block; max-width: 200px; opacity: .3; transition: opacity .3s ease; } -#menu>a:hover>img { +#menu>a:hover>svg { opacity: .8; } .contacts { - columns: 2; + margin: 1.5em 0; + columns: 3; + column-fill: balance; } .contacts p { display: flex; align-items: center; gap: 1rem; + margin: 0 0 1em 0; } .contacts img { width: 3rem; +} + +#header-tilde, +#header-bracket, +#header-underscore { + fill: var(--highlight-fg-color); +} + +#header-k, +#header-o, +#header-e, +#header-h, +#header-r { + fill: var(--header-fg-color); +} + +#header-underscore { + animation: fade 2s linear infinite; +} + +@keyframes fade { + 0% { + opacity: 1.0; + } + + 50% { + opacity: 0.0; + } + + 60% { + opacity: 0.0; + } + + 80% { + opacity: 1.0; + } + + 100% { + opacity: 1.0; + } } \ No newline at end of file diff --git a/dist/term.svg b/dist/term.svg deleted file mode 100644 index 3d7aa93..0000000 --- a/dist/term.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/dist/threads.svg b/dist/threads.svg index 8d45e80..3eb8092 100644 --- a/dist/threads.svg +++ b/dist/threads.svg @@ -1 +1 @@ - + diff --git a/dist/twitter.svg b/dist/twitter.svg index 7ea2b36..7941f7c 100644 --- a/dist/twitter.svg +++ b/dist/twitter.svg @@ -1 +1 @@ - + diff --git a/index.md b/index.md index 2b38315..8537a0e 100644 --- a/index.md +++ b/index.md @@ -28,6 +28,8 @@ Many people want to learn and grow. Whenever I can I try to help those people by ![Fediverse / Mastodon](/fediverse.svg) [@Koehr\@mstdn.io](https://mstdn.io/@Koehr/) + ![Gitforge](/gitforge.svg) [git.k0r.in](https://git.k0r.in/) + ![LinkedIn](/linkedin.svg) [Norman Köhring](https://linkedin.com/in/norman-köhring-950448109/) ![Instagram](/instagram.svg) [coffee_n_code](https://instagram.com/coffee_n_code/) diff --git a/layouts/index.html b/layouts/index.html index 60c43de..fd90d22 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -30,14 +30,6 @@ -
- Homepage of -
- Norman - Köhring -
- Code Artist -
@@ -71,7 +71,48 @@ @contents
+
+ + diff --git a/static/down.svg b/static/down.svg deleted file mode 100644 index 0248e90..0000000 --- a/static/down.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/fediverse.svg b/static/fediverse.svg index 72f9dba..8475fd0 100644 --- a/static/fediverse.svg +++ b/static/fediverse.svg @@ -1 +1 @@ - + diff --git a/static/gitforge.svg b/static/gitforge.svg new file mode 100644 index 0000000..2f50935 --- /dev/null +++ b/static/gitforge.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/static/github.svg b/static/github.svg index cc919f6..735c025 100644 --- a/static/github.svg +++ b/static/github.svg @@ -1 +1 @@ - + diff --git a/static/header.jpg b/static/header.jpg index ee867b37b5994325b89a53535a35809112956299..08a223c379e52309ed2b302bb0435edc7e4f9559 100644 GIT binary patch literal 11591 zcmds-cT|(xy03%avKI^yq*&-A6a_*R8%?^9gdSLQNvNR*&?O2A2pBqqBB3UMASFPk zDj-q<(mP1+AYJ;!z0Y22pF7Uk=iEE)7-x+8{*laEp(zh}O4=BV%JJK(aqikb?5 zfdTM$I~oKi0)AsUdGaLFZ^s{}e*5jznM-HSoIZU9c;Vu?OILxctXF{`5E}>2bvE`} z>>$u}p&Pe&`2++7*tj5~5Pne}egXbpoiO}%>eQLjXRe$*dxifR=o0CinouyBh@x#QAKgLoe4Sr!x)wO?hGfFUpek3~xxxIa{KT)>{M~oI24lX%cWT5VmLI}we zQ=CmOU3oL@?SDBvM()_4l044hXtypNuUuX7+U8BR@7t1kpLhs~()B!E1xs-FGVJ4j z+0TEw!3}joJ`yn~@#=zx#2^PS4}p2q{`;bcW35!*9PySF2|?`aBK!GpH8>mSfoe`= zc^7^SJp$CcTw*s~i+{5t)>+rCd{;ZQ0`Bz!u=fG%bMc93@uC>*K}52`TI z;~fTeVg>lxB(*zgnZ3#xfIlz;m3|VtoM>35OeOp(fP3R#&sScHWz5@E^d?51id0mo zi?k(7QAjjsRVdXr^qQ8=N#XO^SwS+lEUo({P|!T>$FJ@$d+WTa5d%M81`0Xo=-gW= z!2`#d&3H=HR9#m`kIKm5}*Oc9)1GmcT6-}h8v%P4ZHUzt5q z_XkU{b{jI$k1KQz9S5s^c?x+a<(nbkWyimERJ?!Nb>tDCFm>k>{zrg^Mv}ytgNc2W1C>~Z+(h{L;p!pJvvh6eY(Ib669&G2xw?xBDnEa7(3|P$ z`MQfX)$TT+-t|Ft4Q+F~nk~0BHpl)LduW9uw6J~Huzx6lj74(8YfMU?nbp3iH|C+W zqq_|4w!bh9ert@f)o#7G<;hOVr8m80*dS)7#Cmmh)$#)GVB9fKKn|}@dx%?)PlAzjR|1XNH0>4BcT|Ee4JgKe*~yOX8=!CHXXClZJX}?*M*x}FjaUBP zBwdu}x~*$tn2C4Jdq%t04hF)C7@O+;Q)-YBT5|!ebV}Cy zR-kd6GD1m-4qyCm7`Cc4mKXQ2BOrND&zRapmzC!8`Vjv?A5dhG(=YdBU@+Va3J+T| zm=>tt)vg|Eivw<*f+i*0iTZ^M!PPlCrp4;c~HYYi(%oK)dgZSx-wK!iKo^f!p z+JsE*E0!Fb%ff?c?Z|JL@^5{6|~aDnwNu za`66DeJQ0)eq!UuhDNZU@toj|ldY0t98}(eUWZL^EEDI?2HQpW*#UJD`)infr-qh< zU(S>zwQ(rBuEc8)l(nZ`+-od2Zxk0Y!>?^8Re|-o94p%%__?JYk~_Z_$mmH+@Do;} z1Dmw%=f^Fl>m_KqUjd(kUk|NLjqV8@0m?LANiTb^tsF!j0fzV=_0P?WZd}$D{Uj60 zY}H)Z#bO*yhQL1Cd1j!;rM*DQ$^yT8wi?B~QgHZIA+Bn=;)G~M3lW<64(vonb&L14 zEQV?}IZ~eI-#B1OJoQC>JturD4Qn7R@3H)JxLfy%0&A6cbC*k5gsOMSmj=yU$=ocb z9U{o=P10a&A+}KXgRC1DzCinh#htCNrR}~c3bjxUlBHe^w&84Ej|$kITxt1(JUgEQ z;V0z1_yK>kWWsK6qnEsZk+YM<*>*!Y~--MZxXsOIiWDax$_m?pvkGy){qEy+<53rD&Oz z%0UmKRNcSTo3L*WtlZJ8xhfYQlRB??7=SwU>`q%U!a?!X>d6-fC(k*aKvv%5l)LCX zwF3Dyn2M=tLB3_dk}9+@k_wZA^KiNmnmArz3@oM#Lkgtwq-HY~cOZ+4BbF1ZYLf>K zZ|>>qb?G8B)C|szr3gUGIXd}JsaH^c{Hd@fGujs~cYeq7+(bbs8DR@?tg_IgYN}pd zo=-3->I_azeFhb!Ie!nIV)vFmpQ}-E6u>ZNp;^YF{^R5ml$R^;Aj%) z0U9BjPa)=EcAX5W`OWXMl;S%rISEqmRckw|C}+>{Tfb=VZK2E1_HQ((;cpq8T(Pr| zXN*JIVOW!mVhJ{xZxU@NK}u0l5Lo(?VBi7mZ6Mi#yGl2HDwK>{c4Kpg+t+Q2`u zRQE8XSk*nPH|GO=6lR3lmX=FO9 z>-z2Ye=ht#OE5aWtXwL@`rUZi(F;=j3o(#z+#1tgEaAH%+Ia-Pd#-36zGm;$v@5>K z3_>sip~$a6&6oO?<94UpjpvYeLt~3dp}{><-(Ri2aQASiebdxbWxSW@IA=O~g>NT# zzt`D92(Mp``~17YRfH*4K8Rbjy+c&nM%*D*X=jvAq3YG3b6Q5Jo~o*%4j1&UeUw!g zjr$rPH=VjN3}tadbHUmVYh zuy);cHA6i;gEq}ea$PQRC~0b@x26m}yrHHmPc=>g<{1!~rHHmaJlWGeZ^b_8;J&B4 znw<>$5;N?dtoCt2k}GIX`DxT;c*9|*3EqM(Rl<9`IVmR2EAcTJCHY!mXTCACP6#7W zpNs89&^_wG!0-0y=3M(b0?;kIwl?xIBJr{jklkm(c7E6r|JySWBJsq~6Ve}- zg*AsYx9xJ19n6H5bnN?yrey_v>@BL+@9VA-9ZOGdj^iZIQB7e(oZa7Z96n`%R6&O5 z+f&nM8hxfL{g_K^g$S1D)p2*+H~3CM~- zkG4g+!PFX?2`4>k>~(-c85rG`X5{_f9=xG6<9nU_6F7@jFC40(@9nr^HuGS;JMla9 z0^xb@!1S7HmU!PyVm>vMEF22)*QTEtRP{>I^(GiOZw2W|2v6kD4dKLdDnxr zdj5?e*t4vCz;WGF6j*ZhDM#*h#jG~f?6iH5A!JLqBXfC1e!Qrvr<}L1+erh`nTM<` zP(ZmhzY%L%@~9d@3_oMpKa9E|ld;-ec+$O=U8~MBIKFA%HBxYkCq2h>B)D;JeW@k+ z$MDwZ8%Nh6$HIlWrEqkKoU|)CDj+d229M`>bibqZg3WHvUh?_Jaq24IERthFa22_y z64qV!j$u$1V+KxUEa<2TE73I9>oX#28KwZQ*c3oxJfdh{tD0VOK5D(5;FFY{4A{v; z&MoiBG~Rx@!8je`m0hto!Tb4`)V;q07H)FyyJf1QO*>3-nHx;t^avt$2FOYjUyJJ> zP?i?932_q7jgfAu+xhUdK)P$_9la~8#klw*NwN>mtk=~4d$lS1H0Al~CHRW6Y4nOq zN*sD_(ng9q7;+P#^dmko3|H9=w5ljH>x^<8oFLY*l{5!(b%cNy{1w4MQ<{T3tdiz5 zpKB_es_Yh@nTPZA%x2S7h6Lj&QHc8@SDcln@tswtnMzB~SOf%QVPErDgbTBCN^mNMW6B%9d?0dZ5O*5)n1;Rv!r9XvMVJ< z%47N|v(NOsFkk1%|8;jBW0WY?H7w) z#)(s*mZ|WE3X*LBS=VkQghr*~NWD-W!typ{woOzz*h5>|0y41Bu%T_4f9*@>zsX9wP@kjOllW$m+^hq9~n#(MI)87{4$oRqU{ zTj}_V(!kloMstp-BH5m%JW?3l92l1<+O=#p{+RL2WC_^mW`XG7hxf9@NHTqwG1GOXyHrIwD&!#KF3d%C}8Jhy5;$#r3q>ajUz{t!q_&vG|{^ad!n zHR>u<;m@0zXWGtOZ|5t$V0kWDLE&U#A%U|wX&X>{qyVsn{MJGLhl;qQxo~ z++w7qs0!8V?EIwL(Uhw>G}#Srl;J;^(Y}zW0Ns*@mNYyX;6Orz#+(k2%Vwpbn`WKA z0~qT%8qVt^+H-I^XxS+&L_+1dwM4=7Qg0>HI)_O2n7>wmed2I5QT zE97Gq(J(6J5yf1zyR;%>8}f?GyDkr%N4cN`m>wawAM{qsdyx9N;SOunc9S)?n3?bQ zR1<)F_ zAs)}|s;!;|_~JKve^8m|E{>lzaiMeCIz z>SM2v{G#mLKQCSEZienh#BH7vRlUx@I#G{;!c0cmPPffG)48up*GAS)M8EAxHx5H_ zLxH?X-=Fao$>f}~98SV|1I%2=H-cjcv-Jnc~Y2EWql8J&(kXJDE;17 znb1IWTb7?xI<`h2=2m}1uUORTR|~EihPUU%J!{9P^uaL+0+{*??Ik@o?FnFsdX+Z` z7%T9M%#{+sV(s>3Oox+MF0QiG$nHgXPSTYtub6ZelXC(h6OBnkqw~yA)1B)y9$gtC zVl}M4v_;FcT&3H=;|l3ZXpJrqL0fOU++6S7x)+?1mrv}aB3aG_!)$3hjBNtq+R;+OAA92ZQK2IuT9!SD> z6oPa{6^lxRr$yoc6-~kZ-{6iO<()1++gpAbB+5!0#%#VzQ?TE>KMdwO0<07*PTtfr zUYc!KOL6~;tP;?vbGY!)_DAqnMte^V5*YJn+#wK|Km@1{z^!fp+TcAlW!J|0ebas0G0kbK%f5u zphdp`+5uj8G_^D`a**`(Q75Wwcs??=Usc4kdDY6v#|<$QOjk2M`_!LEgaxChanA!_ z@^)6K+gSQcYR0C-R$N-FEWzQ!*M1(XZEt~_vUV}7Kh&Z0$-r#Cs#9ioY%)GQj3(d= zowflz05E{&nlE%TKh;!aattRWFImqA$31QkRZEpbXiqKP9QW@Gn@)^7x7S7qCsA-A zZ-xCPOt2m!*87N0 z+%aa;vuPGRYv&HSU11a{jTP$m&h2j*bG}p$S3(>gYK@Q{Z4FDp3$GSVScm)QN;NX= zz9H|DLN^kR$pWEn1!?$mK}4cE2qj1((3*lAwNNuE-@-gvbqp3pIIyi0&Z7+-W9cvPd_s=LuX*OZUojKaXk5{iUx-Klq~sMRUW0c7M*Ix1fB8CL!NL z@ES7pLE_Y~Re0o+`|LTBs!&~BPeL|uqr+m{h$l#(8PbmX((RU1fdgWLr$bJsO0E?O z#wXBLFx~uEKotlO4#72{nzoA(PMNWew~s7Z-2Im7_xB5`;);e!#l&{BV`|NR`t47>Z^d-UCafCjQ%!O?I7Ikl z4WEygr=5(Jz0buW<%=rzCtAsCBPnG=ulXH*)MHHUfJ(kox*ZiXow55}7__ehuyCW~ z0XKmF7JXXz&@1M`UYfn2U@^#o9g8;D*;{JisT_bZ)F0gPt>0N$_@pSQ<%6L4fA2)G#+0H)CdI_CvCWWU8; zkL-RuRgO@}&7na|dng;h65X5Aav28Y`tNN(H?4%wKg>-7jaEc{?F zJd%wNz^{1TAw-H_%ZlT8OMtt)#aQ_V`+1#E2X7~kM^m1hjb^{rjWEbwnJ48j=TeQV zrcs12n%Uo@n3AIcc6$fgdf6#EFV_1TL@VYdImP?V>FNug_Jo6|XIA1~Q(J z{$>>jc>U-&ZS}B%(?mh4Za0S~7_K3G6bhR1w(GHB7G)Yz$B=NGYrIpBEP=-%DcmT7P@rhfN+f%zPt zA<;4|zfoTbW`SzX9xI=fFE)miC)TCMLo)V1xp)vt!HsT! zqSRBKkKC_w?y|RSYRuHRzj9+-dR}sR*Q;SL25`kxO2)aB!#uNo^II9Ls>C0Y{ad-k{(VIpLYG zW1A?d0w+s^jA>n>Lcy*g`lUCRvOHTG?k{gf=27~ci#tjp2US7BB0q7Z!aMoK>#*BH zb;+4t&YJSb!ckPFBVS24*wAE^+sSC%j5?k5`){2LVXpavl8$oH7y=}GVU#ytCA&Ce zRX_e_gjwo^j*aEvF^>yy=fxuI_EcZC2(BNGRgYueg*ZY;6p*go$Kf^g4HUB(xRdEl z`rL>H`m3Lg3$Sh25fsoifNAL!Uo zqCOa?F^}Rk9p>qUn$u+2-m}5~1JC^`Vkj@N%vH9vQ+2H9ddTh+hNRRjqKlL^Iqc@d zIAqJK4{VCCu)2_%Ihh|`i8IWF6{F75ukGAu@a`<1bZZsJy-XoB37s`3rCQi&_m~yHSx#Gar*24Zs|EEFLBEIrH|DI-o_mQF3k2N$sadJ9DQD#M1ymKS&{O#~Wk>xbZ^wuGPvN2iV ztCq`IsAnPvqp|%QnVqzX-vU$V80#G3rziWu6zPxpNjeFKZ=gd+mw#V zQAcQxe8yJuD`K8LlDAB&HRsu0~Q_C-in##9{>i42;5+A#O@?dYRxHun7|)H(r1{yJlaQkAyxC+kAiud`!)NkcoGE*^ z8!k`TEe4~cHLsp1)1Itsx{7q=lB<2(lFY@?DbQ4-AR`^Sxi|_j`aro}B%5C{VE-LQ zjMO0KZX9IWR(HC4T5UGhG>mgYnU771`_}G1b_WBbtPcCtz zY6a_EY#}vElI6ODDRVIc2mH^ZN_=Kg&Fs7~bIpbnJseLmCH6E4h?1k+3!MzMT(mdG zU3jTJ-3)Xo-|<8$e31)C^aMK06{GYA23h(B{2 zx*oi-w)m()nHTe=(bCtPqn)!C>ZYtblmnBFk1eXl-qkz|7ii3xnI}-lK&aW{*B?Bh zIl_vwePZqNdPr&xi>Udk^-^$z-l84VCykXZT-3CajazHlq__FT9N$5bC~N&lhZ1}d zbE&)s)R=!NRuYqKxuS@VQehKWG4So0wxvxD1dH!}5p^_>$C-q`JZr(x!%svD3MCEr ztwoZQnxq7rL6dm3wbAtb8;_QrI=DPurgeAhagtu^a9jf($FgX)u15B*Mqt@w!<=7g z82`muNj9^tXvxRAci>!q-OJ5|0sO%`|uTejrthQwOE>BNk?du$`Z^|}_){2=Xk*nY-D;?FcTX6^f z@r^Y!CExLmtZHQZ)HxAYc}{e(Iyr{E*(s$Y(@E2s_y-hD?0fxP_Q~^v%oi1tF|%D;INM|0XI|(WD>q9XtQ1Wng&o8? zo9$Py1UpOPGv~>lov0n%&9z8R=>njo7aP;^5df4TD{nXAEUnRP5Qv0ilH&rZ{;d|k z_5^V1!5L}QMDgvlAbIMvkNxb_;Q2e&5x9GLB*J7$_f$h6W~$Kh?F%cD<39leM-EPT zL5a^to*hD5>}Kbl2S=?yf8;*TFt}{EQtx#BfJKv%@GN zeRmU@Af`vX!nIJEY5nhibzk}NdD!hLPf+L#L(5wLWgRJ96p+m#`I||~M}~$6 z#~Ax(<8Zi{6JPk1TyUlO6xLT){g*+!R#e-j%hEtK`|Q}t56Ap zMs9AYN=0x@2Z9B%5YL)a`L_uM=8+8FaO`pTyp!mJy<_;7vBp(?77gQa^oQSEN^-HRTeN z{07f#8Zv`H!%+DargxSF;#fw_&2ru0?WO72!3Jo|dy^4yR{o2bh>ce{*h zE(?PWH1c$D)gUJxsZFj2hGILb!ME8H z&#S#&zVX8#Q7CS*#B%{#)YA7;`JU0n>QpZ!DBk~JE~Tb#7AQAZ1-dUJfC6vv`y@H; zX&7PxDK^w1q=05Sl)a!KRa)Me$TA}?&qq9KZyCT!mkbLLY&V^$!l)2j5jU3v?5{Zm zi^SIQBs{1V-V`dZ+sT`E?(DCLt}h$d2~Nq)O}>?(OfUX0-GgZhjVtYQ;}@mPnNCEw z1AuT|5stZwes^P%q-f)8}?zM1?v*TuQ9Q)%1LDVmlOE};v zBw;s6-e{ni%ao25I@jG1GyM}ep>o)B1W=ePdc9GL&OuvM>uM;AU9-@RgwDi8C*#%s z<_=AE4Nu`(0~Y51bHS7u{-+JY>e%|o1~tT`HAE+_uTYD%Ro>u?#PTwZ3DBX{%Z- zG!bTg+Foe6mDiQE1c;{8;Ub46&3kjBZ1W?PPy)G?m6bh)5yiX2pL|M5 z`cEqxVZ~YD5;6 zAfYj)q!}=Y(v29m^Qht612A>}vxfdkpOIF^J`AcqRau&ed4h(dB@^|VXz!dn-Da>wE2!A(q?*lDLy^4-=`Ap3w65v-rIMrVyzARKC3ccA|_ ziUqzPm)F&W17JUCcE8uFnWjH_e z4IalV{wNK&^>%f$WXwK`I*gjgEbA=bR!;cZ(-K?&0(si?1m4jbn&x%!>+t4G$Y>{d zq`y0uOWR+#?{k)W>k^mb{bak9n}06={CD%WB8)Jl?GNS_AjG-xe>~*V6T=KF8n5$; z$goTsvvh-SQbAJ<;`Hqm$%3~Qb-jZ2j`LHcx-&VOn&k$RZJX{Q-W3^fxys&j;2XgC Nl3$Da|KE=K{})R~WK947 literal 21438 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%0A4)ey=GEhp!>Ga}@ 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 C>;YH+ diff --git a/static/instagram.svg b/static/instagram.svg index 7041024..570b3d6 100644 --- a/static/instagram.svg +++ b/static/instagram.svg @@ -1 +1 @@ - + diff --git a/static/linkedin.svg b/static/linkedin.svg index c00bc12..9ce8535 100644 --- a/static/linkedin.svg +++ b/static/linkedin.svg @@ -1 +1 @@ - + diff --git a/static/mail.svg b/static/mail.svg index 6e65b40..d812e12 100644 --- a/static/mail.svg +++ b/static/mail.svg @@ -1 +1 @@ - + diff --git a/static/reddit.svg b/static/reddit.svg index 629e64b..3a88f30 100644 --- a/static/reddit.svg +++ b/static/reddit.svg @@ -1 +1 @@ - + diff --git a/static/style.css b/static/style.css index 1ce2e82..d91d2df 100644 --- a/static/style.css +++ b/static/style.css @@ -1,6 +1,11 @@ :root { - --page-bg-color: #101626; - --page-fg-color: #fff8e7; + --header-bg-color: #1b1c1d; + --header-fg-color: #a3bd8d; + --header-height: 192px; + --header-multiplier: .25; + --page-bg-color: #232425; + --page-fg-color: #7e9fbe; + --highlight-fg-color: #eacb8b; --emboss-color: #000; } @@ -16,25 +21,27 @@ :root { --page-bg-color: #efe9d9; --page-fg-color: #261b00; + --header-fg-color: #143373; + --header-bg-color: #a49570; --emboss-color: #fff; } - .light\:invert { + .light\:invert, + .contacts img { filter: invert(); } } * { - transition: color, background-color 200ms ease; + transition: color 300ms ease, background-color 300ms ease, fill 500ms ease; } html, body { + width: 100vw; display: flex; flex-flow: column nowrap; justify-content: center; - width: 960px; - max-width: 98vw; margin: auto; background: var(--page-bg-color); color: var(--page-fg-color); @@ -43,10 +50,41 @@ body { scroll-behavior: smooth; } +body>#spacer, body>header { - height: 420px; - background: url(/header.jpg) center no-repeat; + position: fixed; + top: 0; + left: 0; + width: 100vw; + background-color: var(--header-bg-color); +} + +body>#spacer { + height: calc(var(--header-height) * var(--header-multiplier)); +} + +body>header { + height: var(--header-height); color: transparent; + transition: transform .3s ease-in-out; + transform-origin: top center; +} + +body>header.small { + transform: scale(var(--header-multiplier)); +} + +body>header>svg { + display: block; + width: 960px; + max-width: 98vw; + margin: .5em auto; + color: var(--header-fg-color); +} + +body>main { + width: 960px; + margin: var(--header-height) auto 4em; } a { @@ -57,15 +95,17 @@ a { display: flex; flex-flow: column nowrap; justify-content: center; - height: calc(100vh - 420px); + height: calc(100vh - var(--header-height)); margin: 2rem 0; } #content>h1 { - margin: 2em 0 .25em; + margin: 0 0 .25em; + padding-top: 2em; font-size: 2rem; font-variant: small-caps; text-shadow: 1px 1px 0 var(--emboss-color); + color: var(--header-fg-color); } #menu { @@ -102,26 +142,70 @@ blockquote { background-color: rgba(128, 128, 128, .2); } -#menu>a>img { +#menu>a>svg { + display: block; max-width: 200px; opacity: .3; transition: opacity .3s ease; } -#menu>a:hover>img { +#menu>a:hover>svg { opacity: .8; } .contacts { - columns: 2; + margin: 1.5em 0; + columns: 3; + column-fill: balance; } .contacts p { display: flex; align-items: center; gap: 1rem; + margin: 0 0 1em 0; } .contacts img { width: 3rem; +} + +#header-tilde, +#header-bracket, +#header-underscore { + fill: var(--highlight-fg-color); +} + +#header-k, +#header-o, +#header-e, +#header-h, +#header-r { + fill: var(--header-fg-color); +} + +#header-underscore { + animation: fade 2s linear infinite; +} + +@keyframes fade { + 0% { + opacity: 1.0; + } + + 50% { + opacity: 0.0; + } + + 60% { + opacity: 0.0; + } + + 80% { + opacity: 1.0; + } + + 100% { + opacity: 1.0; + } } \ No newline at end of file diff --git a/static/term.svg b/static/term.svg deleted file mode 100644 index 3d7aa93..0000000 --- a/static/term.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/threads.svg b/static/threads.svg index 8d45e80..3eb8092 100644 --- a/static/threads.svg +++ b/static/threads.svg @@ -1 +1 @@ - + diff --git a/static/twitter.svg b/static/twitter.svg index 7ea2b36..7941f7c 100644 --- a/static/twitter.svg +++ b/static/twitter.svg @@ -1 +1 @@ - +