Files
website/sass/main.scss
T
2026-08-23 00:58:52 +02:00

403 lines
6.3 KiB
SCSS

$columnleft: 12rem;
$gap: 1.875rem;
$dark: #0b0b0b;
$grey: #a1a1a1;
$orange: #F39F5A;
$pink: #AE445A;
$bordeaux: #662549;
$purple: #451952;
$mainBg: #232323;
$defaultColor: #c9c9c9;
body {
margin: 0;
padding: 0.75rem 0.75rem 6.25rem 0;
background-color: $mainBg;
min-height: 100vh;
box-sizing: border-box;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 1.125rem;
line-height: 1.6;
color: $defaultColor;
a,
p,
h1,
h2,
h3,
h4 {
padding: 0;
margin: 0;
}
a,
p {
line-height: 1.6;
margin: 0.75rem 0;
}
a {
color: $orange;
}
ul,
ol {
margin: 0.75rem 0;
li {
margin: 0.5rem 0;
}
}
.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;
}
a {
color: $orange;
display: inline-block;
&.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;
}
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;
}
}
}
}
// --------------------------------------------------
// 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;
}
a {
text-decoration: none;
&: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;
color: $orange;
font-weight: 600;
font-size: 1.25rem;
a {
.firstname {
color: $orange;
}
.lastname {
color: $pink;
}
&:hover {
text-decoration: none;
}
}
}
// --------------------------------------------------
// Blog entries
// --------------------------------------------------
.blog {
margin-top: 1.5rem;
max-width: 75rem;
p.tag-link {
color: rgba($orange, 0.6);
margin-top: 0.25rem;
}
.entry {
display: grid;
grid-template-columns: $columnleft minmax(0, 1fr);
column-gap: $gap;
align-items: start;
margin-bottom: 2.25rem;
.column-left {
color: $grey;
margin-top: 0.25rem;
display: flex;
flex-direction: column;
align-items: flex-end;
line-height: 0;
p {
margin: 0 0 0.375rem;
}
}
.column-right {
min-width: 0;
.mobile {
display: none;
}
h1 {
font-size: 1.625rem;
line-height: 1.3;
margin-bottom: 0.375rem;
a {
color: $defaultColor;
}
}
&.post {
min-width: 0;
h1 {
font-size: 2.5rem;
line-height: 1.2;
margin-bottom: 1.5rem;
}
p {
font-size: 1.125rem;
line-height: 1.7;
}
h2,
h3 {
margin-top: 3rem;
}
}
}
}
}
// --------------------------------------------------
// 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;
}
.column-right {
.mobile {
display: block;
.tags {
display: flex;
flex-direction: row;
margin-bottom: 0.75rem;
> p {
margin: 0 0.75rem 0 0;
}
}
}
&.post {
h1 {
font-size: 2rem;
}
p {
font-size: 1.125rem;
line-height: 1.7;
}
}
}
}
}
}
}