v2
This commit is contained in:
+421
-319
@@ -1,402 +1,504 @@
|
||||
$columnleft: 12rem;
|
||||
$gap: 1.875rem;
|
||||
/* purple green yellow */
|
||||
$spaceindigo: #3D315B;
|
||||
$duskblue: #444B6E;
|
||||
$dustyolive: #708B75;
|
||||
$mutedolive: #9AB87A;
|
||||
$limecream: #F8F991;
|
||||
|
||||
$dark: #0b0b0b;
|
||||
$grey: #a1a1a1;
|
||||
/* blue pink violet */
|
||||
$oceanblue: #2E86AB;
|
||||
$berryblush: #A23B72;
|
||||
$carrotorange: #F18F01;
|
||||
$redochre: #C73E1D;
|
||||
$midnightviolet: #3B1F2B;
|
||||
|
||||
$orange: #F39F5A;
|
||||
$pink: #AE445A;
|
||||
$bordeaux: #662549;
|
||||
$purple: #451952;
|
||||
/* something */
|
||||
$grey: #455054;
|
||||
$blue: #308695;
|
||||
$pink: #D45769;
|
||||
$orange: #E69D45;
|
||||
$light: #D4CFC9;
|
||||
|
||||
$mainBg: #232323;
|
||||
$defaultColor: #c9c9c9;
|
||||
|
||||
/* variables */
|
||||
|
||||
$paperblack: #121315;
|
||||
$inkpanel: #17181B;
|
||||
$warmivory: #F3F1EA;
|
||||
$bronzeaccent: #8A7A5A;
|
||||
$colortext: #C8C3B9;
|
||||
|
||||
$font-display: "Instrument Serif", Georgia, serif;
|
||||
$font-body: "Fira Sans", sans-serif;
|
||||
$font-mono: "DM Mono", monospace;
|
||||
|
||||
$maxwidth: 960px;
|
||||
|
||||
/* reset */
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
h1, p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0.75rem 0.75rem 6.25rem 0;
|
||||
background-color: $mainBg;
|
||||
min-height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding: 0;
|
||||
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 1.125rem;
|
||||
background: $inkpanel;
|
||||
color: $colortext;
|
||||
|
||||
font-family: "Fira Sans", sans-serif;
|
||||
font-size: 16px;
|
||||
line-height: 1.6;
|
||||
color: $defaultColor;
|
||||
|
||||
a,
|
||||
p,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4 {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: $bronzeaccent;
|
||||
color: $paperblack;
|
||||
}
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
button,
|
||||
input,
|
||||
textarea {
|
||||
font: inherit;
|
||||
}
|
||||
|
||||
/* --- new ---*/
|
||||
|
||||
.section {
|
||||
margin-bottom: 48px;
|
||||
}
|
||||
|
||||
.centered {
|
||||
max-width: $maxwidth;
|
||||
margin: 0 auto;
|
||||
padding: 24px 24px;
|
||||
}
|
||||
|
||||
.top {
|
||||
background-color: $paperblack;
|
||||
border-bottom: 1px solid rgba($light, 0.15);
|
||||
|
||||
.header {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
a,
|
||||
p {
|
||||
line-height: 1.6;
|
||||
margin: 0.75rem 0;
|
||||
}
|
||||
.logo {
|
||||
font-family: $font-mono;
|
||||
font-weight: 700;
|
||||
color: rgba($light, 0.3);
|
||||
|
||||
a {
|
||||
color: $orange;
|
||||
}
|
||||
.firstname {
|
||||
color: rgba($pink, .8);
|
||||
}
|
||||
|
||||
ul,
|
||||
ol {
|
||||
margin: 0.75rem 0;
|
||||
|
||||
li {
|
||||
margin: 0.5rem 0;
|
||||
.lastname {
|
||||
color: rgba($orange, .8);
|
||||
}
|
||||
}
|
||||
|
||||
.contact {
|
||||
color: $pink;
|
||||
}
|
||||
|
||||
.contact-middle {
|
||||
color: $bordeaux;
|
||||
}
|
||||
|
||||
|
||||
// --------------------------------------------------
|
||||
// Main page
|
||||
// --------------------------------------------------
|
||||
|
||||
.main {
|
||||
max-width: 62.5rem;
|
||||
margin: 3.125rem auto 0;
|
||||
padding-left: 0.75rem;
|
||||
|
||||
.top {
|
||||
text-align: center;
|
||||
|
||||
h1.name {
|
||||
font-size: 4.5rem;
|
||||
line-height: 1.1;
|
||||
margin-bottom: 0.5rem;
|
||||
|
||||
.firstname {
|
||||
color: $orange;
|
||||
}
|
||||
|
||||
.lastname {
|
||||
color: $pink;
|
||||
}
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 2rem;
|
||||
line-height: 1.2;
|
||||
color: $defaultColor;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.skills {
|
||||
color: $defaultColor;
|
||||
}
|
||||
}
|
||||
|
||||
h3 {
|
||||
color: rgba($defaultColor, 0.6);
|
||||
margin-bottom: 0.75rem;
|
||||
margin-top: 4.375rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
nav {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
gap: 14px;
|
||||
margin-left: 72px;
|
||||
|
||||
a {
|
||||
color: $orange;
|
||||
display: inline-block;
|
||||
font-size: 0.75rem;
|
||||
font-family: $font-mono;
|
||||
text-transform: uppercase;
|
||||
font-weight: 400;
|
||||
letter-spacing: .15em;
|
||||
color: rgba($light, 0.5);
|
||||
transition: transform .2s ease, color .2s ease;
|
||||
|
||||
&.main-link {
|
||||
font-size: 1.25rem;
|
||||
margin-left: 1.125rem;
|
||||
margin-right: 1.125rem;
|
||||
}
|
||||
}
|
||||
|
||||
.movie {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
margin-top: 2.25rem;
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
&:hover {
|
||||
color: rgba($light, 1);
|
||||
transform: translateX(4px);
|
||||
}
|
||||
|
||||
img {
|
||||
margin-right: 0.75rem;
|
||||
|
||||
&.mobile {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: $orange;
|
||||
font-size: 0.875rem;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
h4 {
|
||||
margin-right: 0.75rem;
|
||||
}
|
||||
|
||||
.movie-title {
|
||||
margin-bottom: 0.375rem;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
|
||||
h4 {
|
||||
font-size: 1.125rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
&.active {
|
||||
color: rgba($light, 1);
|
||||
transform: translateX(4px);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// --------------------------------------------------
|
||||
// Main page — mobile
|
||||
// --------------------------------------------------
|
||||
|
||||
@media (max-width: 37.5rem) {
|
||||
.main {
|
||||
.top h1.name {
|
||||
font-size: 3rem;
|
||||
}
|
||||
|
||||
.movie {
|
||||
img {
|
||||
display: none;
|
||||
|
||||
&.mobile {
|
||||
display: block;
|
||||
margin: 0 auto 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
.movie-title {
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// --------------------------------------------------
|
||||
// Blog
|
||||
// --------------------------------------------------
|
||||
|
||||
pre {
|
||||
padding: 0.75rem;
|
||||
border-radius: 0.25rem;
|
||||
overflow: auto;
|
||||
|
||||
code {
|
||||
padding: 0;
|
||||
background: none;
|
||||
}
|
||||
}
|
||||
|
||||
code {
|
||||
padding: 0.125rem 0.25rem;
|
||||
background: #383838;
|
||||
font-size: 0.875rem;
|
||||
line-height: 1.8;
|
||||
color: $grey;
|
||||
}
|
||||
|
||||
.main {
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: $pink;
|
||||
|
||||
&:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// --------------------------------------------------
|
||||
// Blog header
|
||||
// --------------------------------------------------
|
||||
|
||||
.header {
|
||||
display: grid;
|
||||
grid-template-columns: $columnleft minmax(0, 1fr);
|
||||
column-gap: $gap;
|
||||
margin-bottom: 1.5rem;
|
||||
|
||||
a {
|
||||
margin-right: 2rem;
|
||||
}
|
||||
}
|
||||
|
||||
.logo {
|
||||
display: block;
|
||||
width: $columnleft;
|
||||
padding: 0.3125rem;
|
||||
box-sizing: border-box;
|
||||
text-align: right;
|
||||
.subtitle {
|
||||
color: $orange;
|
||||
font-weight: 600;
|
||||
font-size: 1.25rem;
|
||||
text-transform: uppercase;
|
||||
font-family: $font-mono;
|
||||
font-size: .8rem;
|
||||
letter-spacing: .18em;
|
||||
margin-bottom: 8px;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
a {
|
||||
.firstname {
|
||||
color: $orange;
|
||||
.about {
|
||||
p {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.latest-writing {
|
||||
.entry {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.date {
|
||||
margin-right: 24px;
|
||||
opacity: .5;
|
||||
}
|
||||
|
||||
.lastname {
|
||||
color: $pink;
|
||||
a {
|
||||
color: $light;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
h3 {
|
||||
margin: 0;
|
||||
font-weight: 400;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.latest-reading,
|
||||
.latest-films {
|
||||
.entry {
|
||||
margin-bottom: 24px;
|
||||
|
||||
// --------------------------------------------------
|
||||
// Blog entries
|
||||
// --------------------------------------------------
|
||||
h3 {
|
||||
margin: 0;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.blog {
|
||||
margin-top: 1.5rem;
|
||||
max-width: 75rem;
|
||||
a {
|
||||
color: $light;
|
||||
}
|
||||
|
||||
p.tag-link {
|
||||
color: rgba($orange, 0.6);
|
||||
margin-top: 0.25rem;
|
||||
.author {
|
||||
opacity: .5;
|
||||
|
||||
.middot {
|
||||
margin: 0 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.opportunities {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-family: $font-mono;
|
||||
font-weight: 700;
|
||||
font-size: .8rem;
|
||||
margin-bottom: 48px;
|
||||
|
||||
.available {
|
||||
text-transform: uppercase;
|
||||
color: $pink;
|
||||
letter-spacing: .1em;
|
||||
}
|
||||
|
||||
.location {
|
||||
margin-left: 24px;
|
||||
color: rgba($light, .6);
|
||||
}
|
||||
}
|
||||
|
||||
.elsewhere {
|
||||
margin-top: 48px;
|
||||
|
||||
.links {
|
||||
padding: 4px 14px;
|
||||
border-left: 3px solid rgba($orange, .4);
|
||||
|
||||
a {
|
||||
color: $light;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.best {
|
||||
margin-bottom: 96px;
|
||||
|
||||
.subtitle {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
.entry {
|
||||
display: grid;
|
||||
grid-template-columns: $columnleft minmax(0, 1fr);
|
||||
column-gap: $gap;
|
||||
align-items: start;
|
||||
margin-bottom: 2.25rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 24px;
|
||||
margin-bottom: 48px;
|
||||
|
||||
.column-left {
|
||||
color: $grey;
|
||||
margin-top: 0.25rem;
|
||||
h2 {
|
||||
margin: 0;
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $light;
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.meta {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-end;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
opacity: .6;
|
||||
font-size: 1rem;
|
||||
|
||||
.middot {
|
||||
margin: 0 12px;
|
||||
}
|
||||
|
||||
line-height: 0;
|
||||
.tags {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
|
||||
p {
|
||||
margin: 0 0 0.375rem;
|
||||
> p {
|
||||
margin-right: 12px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.column-right {
|
||||
min-width: 0;
|
||||
.opinion {
|
||||
|
||||
.mobile {
|
||||
display: none;
|
||||
}
|
||||
p {
|
||||
margin-bottom: 4px;
|
||||
|
||||
h1 {
|
||||
font-size: 1.625rem;
|
||||
line-height: 1.3;
|
||||
margin-bottom: 0.375rem;
|
||||
|
||||
a {
|
||||
color: $defaultColor;
|
||||
&.plot {
|
||||
border-left: 3px solid rgba($light, .4);
|
||||
padding-left: 12px;
|
||||
margin: 12px 0 6px 0;
|
||||
}
|
||||
}
|
||||
|
||||
&.post {
|
||||
min-width: 0;
|
||||
a {
|
||||
color: $pink;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.5rem;
|
||||
line-height: 1.2;
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
.journal {
|
||||
.entry {
|
||||
margin: 24px 0;
|
||||
border-bottom: 1px solid rgba($light, .05);
|
||||
padding: 0 0 24px 0;
|
||||
|
||||
p {
|
||||
font-size: 1.125rem;
|
||||
line-height: 1.7;
|
||||
}
|
||||
h2 {
|
||||
font-size: 2rem;
|
||||
margin-bottom: 0;
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
margin-top: 3rem;
|
||||
}
|
||||
> a{
|
||||
color: $light;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
> code {
|
||||
background: rgba($pink, .25);
|
||||
padding: .1rem .2rem;
|
||||
font-size: 85%;
|
||||
border-radius: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.meta {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
opacity: .6;
|
||||
margin-bottom: 12px;
|
||||
|
||||
.split {
|
||||
margin: 0 12px;
|
||||
}
|
||||
|
||||
.date {
|
||||
font-family: $font-mono;
|
||||
text-transform: uppercase;
|
||||
font-size: .8rem;
|
||||
}
|
||||
|
||||
.tags {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.tag {
|
||||
font-family: $font-mono;
|
||||
text-transform: uppercase;
|
||||
font-size: .75rem;
|
||||
margin-right: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.article {
|
||||
.table-of-contents {
|
||||
padding-left: 12px;
|
||||
|
||||
// --------------------------------------------------
|
||||
// Blog — mobile
|
||||
// --------------------------------------------------
|
||||
|
||||
@media (max-width: 37.5rem) {
|
||||
padding-left: 0.75rem;
|
||||
|
||||
p {
|
||||
margin: 0.75rem 0;
|
||||
}
|
||||
|
||||
.header {
|
||||
display: block;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.logo {
|
||||
text-align: left;
|
||||
width: auto;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.blog {
|
||||
.entry {
|
||||
display: block;
|
||||
|
||||
.column-left {
|
||||
display: none;
|
||||
p {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
a {
|
||||
color: $light;
|
||||
font-size: 1.1rem;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
.column-right {
|
||||
.mobile {
|
||||
display: block;
|
||||
&.rustlings {
|
||||
> p {
|
||||
margin-bottom: 12px;
|
||||
|
||||
.tags {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
margin-bottom: 0.75rem;
|
||||
|
||||
> p {
|
||||
margin: 0 0.75rem 0 0;
|
||||
}
|
||||
}
|
||||
a {
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.post {
|
||||
h1 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
h1.title {
|
||||
font-size: 3.5rem;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1.125rem;
|
||||
line-height: 1.7;
|
||||
}
|
||||
.content {
|
||||
margin-top: 36px;
|
||||
|
||||
h2 {
|
||||
font-size: 2rem;
|
||||
margin: 48px 0 24px 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.5rem;
|
||||
margin: 24px 0 12px;
|
||||
}
|
||||
}
|
||||
|
||||
pre {
|
||||
padding: 12px;
|
||||
border: 1px solid rgba($light, .1);
|
||||
overflow: scroll;
|
||||
}
|
||||
|
||||
.table {
|
||||
ol {
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
font-size: 1.2rem;
|
||||
|
||||
a {
|
||||
color: $blue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footer {
|
||||
padding: 48px 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-family: $font-mono;
|
||||
font-size: .8rem;
|
||||
flex-grow: 1;
|
||||
|
||||
.middot {
|
||||
opacity: .3;
|
||||
margin: 0 12px;
|
||||
}
|
||||
}
|
||||
|
||||
a[target="_blank"]:hover {
|
||||
text-decoration: underline dotted;
|
||||
}
|
||||
|
||||
// --- small screens ---
|
||||
|
||||
@media (max-width: 600px) {
|
||||
.top {
|
||||
.header {
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
nav {
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
margin-left: 0;
|
||||
margin-top: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.main .opportunities {
|
||||
flex-direction: column;
|
||||
|
||||
.location {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.main .latest-writing {
|
||||
.entry {
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
margin-top: 24px;
|
||||
}
|
||||
}
|
||||
|
||||
.main .best {
|
||||
.entry {
|
||||
img {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footer {
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
margin: 48px 24px;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user