You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
806 lines
15 KiB
SCSS
806 lines
15 KiB
SCSS
$header-color: #2e2e2e;
|
|
$text: #3a4145;
|
|
$link-text: #4a4a4a;
|
|
$highlighted-link-text: #111;
|
|
$bg: #3a4145;
|
|
$arrow-bg: rgba(255, 255, 255, .7);
|
|
$white: #fff;
|
|
$page-bg: #3498db;
|
|
$header-link-color: #ccc;
|
|
$subtext-color: #666;
|
|
$footer-color: #3a4145;
|
|
|
|
@mixin respond-to($media) {
|
|
@if $media == handhelds {
|
|
@media only screen and (max-width: 767px) { @content; }
|
|
} @else if $media == medium-screens {
|
|
@media only screen and (min-width: 768px) and (max-width: 1199px) { @content; }
|
|
} @else if $media == semi-large-screens {
|
|
@media only screen and (min-width: 1200px) and (max-width: 1765px) { @content; }
|
|
}
|
|
}
|
|
|
|
html {
|
|
box-sizing: border-box;
|
|
font-size: 62.5%;
|
|
height: 100%;
|
|
max-height: 100%;
|
|
}
|
|
|
|
* {
|
|
&:before,
|
|
&:after {
|
|
box-sizing: inherit;
|
|
}
|
|
}
|
|
|
|
|
|
body {
|
|
color: $text;
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.8rem;
|
|
height: 100%;
|
|
letter-spacing: .01rem;
|
|
line-height: 1.75em;
|
|
max-height: 100%;
|
|
|
|
.post-title {
|
|
&:not(.post-template) {
|
|
font-size: 3.6rem;
|
|
}
|
|
}
|
|
|
|
&.page-template {
|
|
.post-title {
|
|
font-size: 5rem;
|
|
}
|
|
}
|
|
}
|
|
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h4,
|
|
h5,
|
|
h6 {
|
|
font-family: 'Catamaran', sans-serif;
|
|
line-height: 2em;
|
|
margin: 0 0 .4em;
|
|
}
|
|
|
|
h1 {
|
|
font-size: 5rem;
|
|
}
|
|
|
|
h2 {
|
|
font-size: 3.6rem;
|
|
}
|
|
|
|
h3 {
|
|
font-size: 3rem;
|
|
}
|
|
|
|
h4 {
|
|
font-size: 2.5rem;
|
|
}
|
|
|
|
h5 {
|
|
font-size: 2rem;
|
|
}
|
|
|
|
h6 {
|
|
font-size: 2rem;
|
|
}
|
|
|
|
a {
|
|
color: $link-text;
|
|
transition: color .3s ease;
|
|
|
|
&:hover {
|
|
color: $highlighted-link-text;
|
|
}
|
|
}
|
|
|
|
.site-wrapper {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
|
|
/**
|
|
* ===================
|
|
* FRONTPAGE DESIGN
|
|
* ===================
|
|
*/
|
|
.header-bg {
|
|
@include respond-to(handhelds) {
|
|
height: 110vh;
|
|
}
|
|
|
|
background: url('../img/bg.png');
|
|
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
background-size: cover;
|
|
height: 120vh;
|
|
position: relative;
|
|
width: 100%;
|
|
}
|
|
|
|
.header-overlay {
|
|
@include respond-to(handhelds) {
|
|
height: 110vh;
|
|
}
|
|
|
|
background: linear-gradient(180deg, transparent, $page-bg 85%);
|
|
height: 120vh;
|
|
left: 0;
|
|
opacity: 1;
|
|
position: absolute;
|
|
right: 0;
|
|
top: 0;
|
|
}
|
|
|
|
.below-header {
|
|
background: $page-bg;
|
|
position: relative;
|
|
|
|
&:before {
|
|
border-bottom: 2px solid $white;
|
|
border-right: 130vw solid $white;
|
|
border-top: 30vh solid $page-bg;
|
|
bottom: 0;
|
|
content: '';
|
|
position: absolute;
|
|
right: 0;
|
|
width: 0;
|
|
}
|
|
}
|
|
|
|
.header-text {
|
|
height: auto;
|
|
left: 0;
|
|
position: absolute;
|
|
top: 0;
|
|
width: 100%;
|
|
z-index: 50;
|
|
|
|
.top-content {
|
|
@include respond-to(handhelds) {
|
|
padding: 15vh 5vh 0;
|
|
}
|
|
|
|
@include respond-to(medium-screens) {
|
|
padding: 25vh 8vh 0;
|
|
}
|
|
|
|
color: $white;
|
|
padding: 35vh 10vw 0;
|
|
text-align: center;
|
|
|
|
h1 {
|
|
@include respond-to(handhelds) {
|
|
font-size: 4em;
|
|
}
|
|
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
font-size: 5em;
|
|
font-weight: 300;
|
|
line-height: 1.1em;
|
|
margin: 0;
|
|
}
|
|
|
|
h2 {
|
|
@include respond-to(handhelds) {
|
|
font-size: 1.2em;
|
|
}
|
|
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
font-size: 1.33em;
|
|
font-weight: 300;
|
|
line-height: 1.1em;
|
|
margin-bottom: 10px;
|
|
margin-top: 20px;
|
|
}
|
|
|
|
h4 {
|
|
@include respond-to(handhelds) {
|
|
font-size: .9em;
|
|
}
|
|
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
font-size: 1em;
|
|
font-weight: 300;
|
|
line-height: 1.4em;
|
|
margin-top: 30px;
|
|
}
|
|
|
|
a {
|
|
margin-top: 60px;
|
|
}
|
|
}
|
|
|
|
$top-layer-effect: rgba(0, 0, 0, .15);
|
|
$layer-effect: #eee;
|
|
|
|
.hidden-content {
|
|
@include respond-to(handhelds) {
|
|
width: 95vw;
|
|
}
|
|
@include respond-to(semi-large-screens) {
|
|
width: 80vw;
|
|
}
|
|
@include respond-to(medium-screens) {
|
|
width: 80vw;
|
|
}
|
|
|
|
margin: auto;
|
|
margin-top: 10vh;
|
|
max-width: 1140px;
|
|
transition: translateZ(0);
|
|
width: 60vw;
|
|
}
|
|
|
|
.grid {
|
|
@include respond-to(handhelds) {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
min-width: 0;
|
|
|
|
.col-7-12 {
|
|
@include respond-to(medium-screens) {
|
|
width: 100%;
|
|
}
|
|
|
|
@include respond-to(handhelds) {
|
|
width: 100%;
|
|
}
|
|
}
|
|
|
|
.col-4-12 {
|
|
@include respond-to(medium-screens) {
|
|
border-top: 2px dotted $page-bg;
|
|
margin: 5vh 0 0;
|
|
padding-top: 5vh;
|
|
width: 100%;
|
|
}
|
|
|
|
@include respond-to(handhelds) {
|
|
border-top: 2px dotted $page-bg;
|
|
margin: 5vh 0 0;
|
|
padding-top: 5vh;
|
|
width: 100%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.cv-box {
|
|
background: $white;
|
|
box-shadow:
|
|
// Top layer
|
|
0 1px 1px $top-layer-effect,
|
|
// Second layer
|
|
0 10px 0 -5px $layer-effect,
|
|
// Second layer shadow
|
|
0 10px 1px -4px $top-layer-effect,
|
|
// Third layer
|
|
0 20px 0 -10px $layer-effect,
|
|
// Third layer shadow
|
|
0 20px 1px -9px $top-layer-effect;
|
|
padding: 30px;
|
|
transition: translateZ(0);
|
|
|
|
p {
|
|
font-size: .9em;
|
|
line-height: 1.5em;
|
|
margin: 1em 0;
|
|
}
|
|
|
|
.right {
|
|
@include respond-to(handhelds) {
|
|
display: block;
|
|
font-size: .8em;
|
|
margin-bottom: 10px;
|
|
margin-top: -4px;
|
|
width: 100%;
|
|
}
|
|
|
|
display: inline-block;
|
|
float: right;
|
|
}
|
|
|
|
.subtext {
|
|
color: $subtext-color;
|
|
display: block;
|
|
font-size: .8em;
|
|
line-height: 1.3em;
|
|
width: 80%;
|
|
}
|
|
|
|
.languages {
|
|
p {
|
|
font-size: .8em;
|
|
line-height: 1.5em;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
}
|
|
|
|
.profile {
|
|
h6 {
|
|
font-size: 1.2em;
|
|
font-weight: 300;
|
|
margin: 1em 0 .4em;
|
|
}
|
|
|
|
p {
|
|
font-size: .8em;
|
|
line-height: 1.5em;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.full-width {
|
|
clear: both;
|
|
margin-top: 5vh;
|
|
width: 100%;
|
|
}
|
|
|
|
.small-footer {
|
|
color: $subtext-color;
|
|
}
|
|
|
|
.links {
|
|
list-style-type: none;
|
|
margin-bottom: 2.2em;
|
|
padding: 0;
|
|
|
|
li {
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
font-size: 16px;
|
|
line-height: 18px;
|
|
min-height: 22px;
|
|
padding: 2px 0 0;
|
|
|
|
a {
|
|
text-decoration: none;
|
|
|
|
&:hover {
|
|
text-decoration: underline;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.profile-picture {
|
|
float: left;
|
|
margin: 0 20px 20px 0;
|
|
}
|
|
|
|
h5 {
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.8rem;
|
|
font-weight: 600;
|
|
line-height: 3rem;
|
|
margin-bottom: 2vh;
|
|
}
|
|
|
|
h6 {
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.6rem;
|
|
line-height: 2rem;
|
|
}
|
|
}
|
|
|
|
$tag-bg: rgba(255, 255, 255, .3);
|
|
|
|
.tags {
|
|
color: $white;
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
|
|
line-height: 1.1em;
|
|
margin-top: 10vh;
|
|
text-align: center;
|
|
|
|
small {
|
|
font-size: .8em;
|
|
}
|
|
|
|
ul {
|
|
@include respond-to(semi-large-screens) {
|
|
max-width: 50%;
|
|
}
|
|
|
|
@include respond-to(medium-screens) {
|
|
max-width: 50%;
|
|
}
|
|
|
|
@include respond-to(handhelds) {
|
|
max-width: 80%;
|
|
}
|
|
|
|
line-height: 3em;
|
|
list-style: none;
|
|
margin: auto;
|
|
max-width: 30vw;
|
|
padding: 0;
|
|
}
|
|
|
|
li {
|
|
background: $tag-bg;
|
|
border-radius: 5px;
|
|
display: inline-block;
|
|
font-size: 16px;
|
|
line-height: 1.5em;
|
|
margin: 0 .5vw;
|
|
padding: 4px 10px;
|
|
|
|
&:hover {
|
|
opacity: .8;
|
|
}
|
|
}
|
|
|
|
a {
|
|
color: $white;
|
|
}
|
|
}
|
|
}
|
|
|
|
.profile-picture {
|
|
border-radius: 48px;
|
|
height: 96px;
|
|
width: 96px;
|
|
}
|
|
|
|
.main-header {
|
|
background: $bg no-repeat center center;
|
|
background-size: cover;
|
|
|
|
display: table;
|
|
height: 100vh;
|
|
overflow: hidden;
|
|
|
|
position: relative;
|
|
text-align: center;
|
|
width: 100%;
|
|
|
|
.inner {
|
|
width: 80%;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* =======================
|
|
* FRONT PAGE CONTENT
|
|
* =======================
|
|
*/
|
|
.scroll-down {
|
|
@include respond-to(handhelds) {
|
|
display: none;
|
|
}
|
|
|
|
animation: bounce 4s 2s infinite;
|
|
color: $arrow-bg;
|
|
|
|
display: block;
|
|
font-size: 24px;
|
|
height: 24px;
|
|
left: 50%;
|
|
margin-left: -12px;
|
|
position: relative;
|
|
text-align: center;
|
|
text-decoration: none;
|
|
transform: rotate(-90deg);
|
|
transition: translateZ(0);
|
|
width: 24px;
|
|
z-index: 100;
|
|
|
|
// Stop the bouncing while hovered
|
|
&:hover {
|
|
animation: none;
|
|
color: $white;
|
|
}
|
|
}
|
|
|
|
$button-shadow: rgba(0, 0, 0, .1);
|
|
|
|
.mobile-button {
|
|
@include respond-to(handhelds) {
|
|
display: inline-block;
|
|
}
|
|
|
|
background: $white;
|
|
box-shadow: 0 8px 15px $button-shadow;
|
|
color: $page-bg;
|
|
display: none;
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
font-size: .9em;
|
|
line-height: 1.2em;
|
|
padding: .8em 2em;
|
|
width: auto;
|
|
|
|
&:hover {
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
|
|
.blog-title {
|
|
border-bottom: 2px solid $page-bg;
|
|
display: inline-block;
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.3em;
|
|
font-weight: 300;
|
|
line-height: 1.7em;
|
|
padding: 0 .2em;
|
|
text-align: center;
|
|
}
|
|
|
|
.blog-title-container {
|
|
text-align: center;
|
|
}
|
|
|
|
.index-content {
|
|
margin-top: 0;
|
|
position: relative;
|
|
z-index: 52;
|
|
}
|
|
|
|
|
|
// FOOTER
|
|
|
|
.footer {
|
|
background: $footer-color;
|
|
min-height: 5vh;
|
|
|
|
.container {
|
|
@include respond-to(handhelds) {
|
|
text-align: center;
|
|
}
|
|
|
|
color: $white;
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: .6em;
|
|
height: auto;
|
|
line-height: 1.8em;
|
|
padding: 2vh 0;
|
|
|
|
a {
|
|
color: $white;
|
|
text-decoration: none;
|
|
|
|
&:hover {
|
|
text-shadow:
|
|
-.2px -.2px 0 $white,
|
|
.2px -.2px 0 $white,
|
|
-.2px .2px 0 $white,
|
|
.2px .2px 0 $white;
|
|
transition: all .5s;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.container {
|
|
@include respond-to(handhelds) {
|
|
width: 90vw;
|
|
}
|
|
@include respond-to(semi-large-screens) {
|
|
width: 80vw;
|
|
}
|
|
@include respond-to(medium-screens) {
|
|
width: 80vw;
|
|
}
|
|
|
|
height: auto;
|
|
margin: auto;
|
|
max-width: 1140px;
|
|
width: 60vw;
|
|
|
|
.right {
|
|
@include respond-to(handhelds) {
|
|
display: block;
|
|
float: none;
|
|
}
|
|
|
|
float: right;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* =================
|
|
* DEFAULT PAGE DESIGN
|
|
* =================
|
|
*/
|
|
|
|
$post-bg: $white;
|
|
$post-border: #ebf2f6;
|
|
$post-after-border: #e7eef2;
|
|
$post-meta: #9eabb3;
|
|
$post-meta-link: #9eabb3;
|
|
|
|
main {
|
|
flex-grow: 1;
|
|
margin-top: 5rem;
|
|
}
|
|
|
|
// HEADER
|
|
.top-header {
|
|
background: $page-bg;
|
|
height: auto;
|
|
|
|
.container {
|
|
@include respond-to(handhelds) {
|
|
text-align: center;
|
|
}
|
|
|
|
color: $white;
|
|
font-family: 'Source Sans Pro', sans-serif;
|
|
font-size: 1.2em;
|
|
font-weight: 600;
|
|
line-height: 1.5em;
|
|
padding: 2vh 0;
|
|
|
|
a {
|
|
color: $white;
|
|
text-decoration: none;
|
|
|
|
&:hover {
|
|
border-bottom: 2px solid $white;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// This class is applied to all posts
|
|
.post {
|
|
border-bottom: $post-border 1px solid;
|
|
margin: 4rem auto;
|
|
max-width: 710px;
|
|
padding-bottom: 4rem;
|
|
position: relative;
|
|
width: 80%;
|
|
word-wrap: break-word;
|
|
}
|
|
|
|
.post-title {
|
|
line-height: 1.2em;
|
|
|
|
a {
|
|
text-decoration: none;
|
|
}
|
|
}
|
|
|
|
.post-excerpt {
|
|
p {
|
|
font-size: .9em;
|
|
line-height: 1.7em;
|
|
margin: 0;
|
|
}
|
|
}
|
|
|
|
.read-more {
|
|
text-decoration: none;
|
|
}
|
|
|
|
.post-meta {
|
|
color: $post-meta;
|
|
display: block;
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.5rem;
|
|
line-height: 2.2rem;
|
|
margin: 1.75rem 0;
|
|
word-spacing: .2rem;
|
|
|
|
a {
|
|
color: $post-meta-link;
|
|
text-decoration: none;
|
|
|
|
&:hover {
|
|
text-decoration: underline;
|
|
}
|
|
}
|
|
}
|
|
|
|
$post-date-border: #d5dbde;
|
|
|
|
.post-date {
|
|
border-left: $post-date-border 1px solid;
|
|
display: inline-block;
|
|
font-size: 1.3rem;
|
|
margin-left: 8px;
|
|
padding-left: 12px;
|
|
text-transform: uppercase;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.author-thumb {
|
|
border-radius: 100%;
|
|
float: left;
|
|
height: 24px;
|
|
margin-right: 9px;
|
|
width: 24px;
|
|
}
|
|
|
|
.author-profile .author-image {
|
|
margin-top: 50px;
|
|
}
|
|
|
|
.author-image-cover {
|
|
margin-top: -100px;
|
|
}
|
|
|
|
.user-meta {
|
|
min-height: 77px;
|
|
padding: .3rem 40px 0 100px;
|
|
position: relative;
|
|
}
|
|
|
|
.user-image {
|
|
left: 0;
|
|
position: absolute;
|
|
top: 0;
|
|
}
|
|
|
|
.user-name {
|
|
display: block;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.user-bio {
|
|
display: block;
|
|
font-size: 1.4rem;
|
|
line-height: 1.5rem;
|
|
max-width: 440px;
|
|
}
|
|
|
|
.publish-meta {
|
|
padding: 4.3rem 0 4rem;
|
|
position: absolute;
|
|
right: 0;
|
|
text-align: right;
|
|
top: 0;
|
|
}
|
|
|
|
.publish-heading {
|
|
display: block;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.publish-date {
|
|
display: block;
|
|
font-size: 1.4rem;
|
|
line-height: 1.5rem;
|
|
}
|
|
|
|
.no-cover {
|
|
display: none;
|
|
}
|
|
|
|
.page-title {
|
|
line-height: 1.2em;
|
|
|
|
.description {
|
|
color: $post-meta;
|
|
display: block;
|
|
font-size: .5em;
|
|
font-weight: 300;
|
|
}
|
|
}
|
|
|
|
.main-header-content {
|
|
hr {
|
|
margin: 2em 0;
|
|
}
|
|
}
|
|
|
|
.extra-pagination {
|
|
&:after {
|
|
display: none;
|
|
}
|
|
}
|