1575 lines
32 KiB
CSS
1575 lines
32 KiB
CSS
/* ==========================================================================
|
|
Table of Contents
|
|
========================================================================== */
|
|
|
|
/*
|
|
|
|
0. Normalize
|
|
1. Icons
|
|
2. General
|
|
3. Utilities
|
|
4. General
|
|
5. Single Post
|
|
6. Author Profile
|
|
7. Read More
|
|
8. Third Party Elements
|
|
9. Pagination
|
|
10. Subscribe
|
|
11. Footer
|
|
12. Media Queries (Tablet)
|
|
13. Media Queries (Mobile)
|
|
14. Animations
|
|
|
|
*/
|
|
|
|
/* ==========================================================================
|
|
0. normalize.css v3.0.3 | MIT License | git.io/normalize | (minified)
|
|
========================================================================== */
|
|
|
|
html {
|
|
font-family: sans-serif;
|
|
-ms-text-size-adjust: 100%;
|
|
-webkit-text-size-adjust: 100%
|
|
}
|
|
body { margin: 0; }
|
|
article, aside, details,
|
|
figcaption, figure,
|
|
footer, header,
|
|
main, menu, nav,
|
|
section, summary { display:block; }
|
|
audio, canvas, progress, video {
|
|
display: inline-block;
|
|
vertical-align: baseline;
|
|
}
|
|
audio:not([controls]) { display: none; height: 0; }
|
|
[hidden], template { display: none; }
|
|
a { background-color: transparent;}
|
|
a:active, a:hover { outline: 0; }
|
|
abbr[title] { border-bottom: 1px dotted; }
|
|
b, strong { font-weight: bold; }
|
|
dfn { font-style: italic; }
|
|
h1 { font-size: 2em; margin: 0.67em 0; }
|
|
mark { background: #ff0; color: #000; }
|
|
small { font-size: 80%; }
|
|
sub, sup {
|
|
font-size: 75%;
|
|
line-height: 0;
|
|
position: relative;
|
|
vertical-align: baseline;
|
|
}
|
|
sup { top: -0.5em; }
|
|
sub { bottom: -0.25em; }
|
|
img { border: 0; }
|
|
svg:not(:root) { overflow: hidden; }
|
|
figure { margin: 1em 40px; }
|
|
hr { box-sizing: content-box; height: 0; }
|
|
pre { overflow: auto; }
|
|
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
|
|
button, input, optgroup, select, textarea {
|
|
color: inherit;
|
|
font: inherit;
|
|
margin: 0;
|
|
}
|
|
button { overflow: visible; }
|
|
button, select { text-transform: none; }
|
|
button, html input[type="button"],
|
|
input[type="reset"], input[type="submit"] {
|
|
-webkit-appearance: button;
|
|
cursor: pointer;
|
|
}
|
|
button[disabled], html input[disabled] { cursor: default; }
|
|
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
|
|
input { line-height: normal; }
|
|
input[type="checkbox"],
|
|
input[type="radio"] { box-sizing: border-box; padding: 0; }
|
|
input[type="number"]::-webkit-inner-spin-button,
|
|
input[type="number"]::-webkit-outer-spin-button { height: auto; }
|
|
input[type="search"] { -webkit-appearance: textfield; }
|
|
input[type="search"]::-webkit-search-cancel-button,
|
|
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
|
|
fieldset {
|
|
border: 1px solid #c0c0c0;
|
|
margin: 0 2px;
|
|
padding: 0.35em 0.625em 0.75em;
|
|
}
|
|
legend { border: 0; padding: 0; }
|
|
textarea { overflow: auto; }
|
|
optgroup { font-weight: bold; }
|
|
table{ border-collapse: collapse; border-spacing: 0; }
|
|
td, th{ padding: 0; }
|
|
|
|
|
|
/* ==========================================================================
|
|
1. Icons - Sets up the icon font and respective classes
|
|
========================================================================== */
|
|
|
|
/* Import the font file with the icons in it */
|
|
@font-face {
|
|
font-family: "casper-icons";
|
|
src:url("../fonts/casper-icons.eot?v=1");
|
|
src:url("../fonts/casper-icons.eot?v=1#iefix") format("embedded-opentype"),
|
|
url("../fonts/casper-icons.woff?v=1") format("woff"),
|
|
url("../fonts/casper-icons.ttf?v=1") format("truetype"),
|
|
url("../fonts/casper-icons.svg?v=1#icons") format("svg");
|
|
font-weight: normal;
|
|
font-style: normal;
|
|
}
|
|
|
|
/* Apply these base styles to all icons */
|
|
[class^="icon-"]:before, [class*=" icon-"]:before {
|
|
font-family: "casper-icons", "Open Sans", sans-serif;
|
|
speak: none;
|
|
font-style: normal;
|
|
font-weight: normal;
|
|
font-variant: normal;
|
|
text-transform: none;
|
|
line-height: 1;
|
|
text-decoration: none !important;
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
}
|
|
|
|
/* Each icon is created by inserting the correct character into the
|
|
content of the :before pseudo element. Like a boss. */
|
|
.icon-ghost:before {
|
|
content: "\f600";
|
|
}
|
|
.icon-feed:before {
|
|
content: "\f601";
|
|
}
|
|
.icon-twitter:before {
|
|
content: "\f602";
|
|
font-size: 1.1em;
|
|
}
|
|
.icon-google-plus:before {
|
|
content: "\f603";
|
|
}
|
|
.icon-facebook:before {
|
|
content: "\f604";
|
|
}
|
|
.icon-arrow-left:before {
|
|
content: "\f605";
|
|
}
|
|
.icon-stats:before {
|
|
content: "\f606";
|
|
}
|
|
.icon-location:before {
|
|
content: "\f607";
|
|
margin-left: -3px; /* Tracking fix */
|
|
}
|
|
.icon-link:before {
|
|
content: "\f608";
|
|
}
|
|
.icon-menu:before {
|
|
content: "\f609";
|
|
}
|
|
/*
|
|
IMPORTANT: When making any changes to the icon font, be sure to increment
|
|
the version number by 1 in the @font-face rule. `?v=1` becomes `?v=2`
|
|
This forces browsers to download the new font file.
|
|
*/
|
|
|
|
|
|
/* ==========================================================================
|
|
2. General - Setting up some base styles
|
|
========================================================================== */
|
|
|
|
p, ul, ol, dl {
|
|
margin: 0 0 1.75em 0;
|
|
}
|
|
|
|
ol, ul {
|
|
padding-left: 3rem;
|
|
}
|
|
|
|
ol ol, ul ul,
|
|
ul ol, ol ul {
|
|
margin: 0 0 0.4em 0;
|
|
padding-left: 2em;
|
|
}
|
|
|
|
dl dt {
|
|
float: left;
|
|
width: 180px;
|
|
overflow: hidden;
|
|
clear: left;
|
|
text-align: right;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
font-weight: 700;
|
|
margin-bottom: 1em;
|
|
}
|
|
|
|
dl dd {
|
|
margin-left: 200px;
|
|
margin-bottom: 1em
|
|
}
|
|
|
|
li {
|
|
margin: 0.4em 0;
|
|
}
|
|
|
|
li li {
|
|
margin: 0;
|
|
}
|
|
|
|
li > p:last-of-type {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
hr {
|
|
display: block;
|
|
height: 1px;
|
|
border: 0;
|
|
border-top: #EFEFEF 1px solid;
|
|
margin: 3.2em 0;
|
|
padding: 0;
|
|
}
|
|
|
|
blockquote {
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
margin: 1.75em 0 1.75em -2.2em;
|
|
padding: 0 0 0 1.75em;
|
|
border-left: #4A4A4A 0.4em solid;
|
|
}
|
|
|
|
blockquote p {
|
|
margin: 0.8em 0;
|
|
font-style: italic;
|
|
}
|
|
|
|
blockquote small {
|
|
display: inline-block;
|
|
margin: 0.8em 0 0.8em 1.5em;
|
|
font-size: 0.9em;
|
|
color: #CCC;
|
|
}
|
|
|
|
blockquote small:before { content: "\2014 \00A0"; }
|
|
|
|
blockquote cite {
|
|
font-weight: 700;
|
|
}
|
|
|
|
blockquote cite a { font-weight: normal; }
|
|
|
|
mark {
|
|
background-color: #fdffb6;
|
|
}
|
|
|
|
code, tt {
|
|
padding: 1px 3px;
|
|
font-family: Inconsolata, monospace, sans-serif;
|
|
font-size: 0.85em;
|
|
white-space: pre-wrap;
|
|
border: #E3EDF3 1px solid;
|
|
background: #F7FAFB;
|
|
border-radius: 2px;
|
|
-webkit-font-feature-settings: "liga" 0;
|
|
-moz-font-feature-settings: "liga" 0;
|
|
font-feature-settings: "liga" 0;
|
|
}
|
|
|
|
pre {
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
margin: 0 0 1.75em 0;
|
|
border: #E3EDF3 1px solid;
|
|
width: 100%;
|
|
padding: 10px;
|
|
font-family: Inconsolata, monospace, sans-serif;
|
|
font-size: 0.9em;
|
|
white-space: pre;
|
|
overflow: auto;
|
|
background: #F7FAFB;
|
|
border-radius: 3px;
|
|
}
|
|
|
|
pre code, pre tt {
|
|
font-size: inherit;
|
|
white-space: pre-wrap;
|
|
background: transparent;
|
|
border: none;
|
|
padding: 0;
|
|
}
|
|
|
|
kbd {
|
|
display: inline-block;
|
|
margin-bottom: 0.4em;
|
|
padding: 1px 8px;
|
|
border: #CCC 1px solid;
|
|
color: #666;
|
|
text-shadow: #FFF 0 1px 0;
|
|
font-size: 0.9em;
|
|
font-weight: 700;
|
|
background: #F4F4F4;
|
|
border-radius: 4px;
|
|
box-shadow:
|
|
0 1px 0 rgba(0, 0, 0, 0.2),
|
|
0 1px 0 0 #fff inset;
|
|
}
|
|
|
|
table {
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
margin: 1.75em 0;
|
|
width: 100%;
|
|
max-width: 100%;
|
|
background-color: transparent;
|
|
}
|
|
|
|
table th,
|
|
table td {
|
|
padding: 8px;
|
|
line-height: 20px;
|
|
text-align: left;
|
|
vertical-align: top;
|
|
border-top: #EFEFEF 1px solid;
|
|
}
|
|
|
|
table th { color: #000; }
|
|
|
|
table caption + thead tr:first-child th,
|
|
table caption + thead tr:first-child td,
|
|
table colgroup + thead tr:first-child th,
|
|
table colgroup + thead tr:first-child td,
|
|
table thead:first-child tr:first-child th,
|
|
table thead:first-child tr:first-child td {
|
|
border-top: 0;
|
|
}
|
|
|
|
table tbody + tbody { border-top: #EFEFEF 2px solid; }
|
|
|
|
table table table { background-color: #FFF; }
|
|
|
|
table tbody > tr:nth-child(odd) > td,
|
|
table tbody > tr:nth-child(odd) > th {
|
|
background-color: #F6F6F6;
|
|
}
|
|
|
|
table.plain tbody > tr:nth-child(odd) > td,
|
|
table.plain tbody > tr:nth-child(odd) > th {
|
|
background: transparent;
|
|
}
|
|
|
|
iframe, .fluid-width-video-wrapper {
|
|
display: block;
|
|
margin: 1.75em 0;
|
|
}
|
|
|
|
/* When a video is inside the fitvids wrapper, drop the
|
|
margin on the iframe, cause it breaks stuff. */
|
|
.fluid-width-video-wrapper iframe {
|
|
margin: 0;
|
|
}
|
|
|
|
textarea, select, input {
|
|
width: 260px;
|
|
padding: 6px 9px;
|
|
margin: 0 0 5px 0;
|
|
outline: 0;
|
|
font-family: 'Open Sans', sans-serif;
|
|
font-size: 1.6rem;
|
|
font-weight: 100;
|
|
line-height: 1.4em;
|
|
background: #fff;
|
|
border: #e7eef2 1px solid;
|
|
border-radius: 4px;
|
|
box-shadow: none;
|
|
-webkit-appearance: none;
|
|
}
|
|
|
|
textarea {
|
|
width: 100%;
|
|
max-width: 340px;
|
|
min-width: 250px;
|
|
height: auto;
|
|
min-height: 80px;
|
|
}
|
|
|
|
input[type="text"]:focus,
|
|
input[type="email"]:focus,
|
|
input[type="search"]:focus,
|
|
input[type="tel"]:focus,
|
|
input[type="url"]:focus,
|
|
input[type="password"]:focus,
|
|
input[type="number"]:focus,
|
|
input[type="date"]:focus,
|
|
input[type="month"]:focus,
|
|
input[type="week"]:focus,
|
|
input[type="time"]:focus,
|
|
input[type="datetime"]:focus,
|
|
input[type="datetime-local"]:focus,
|
|
textarea:focus {
|
|
border: #bbc7cc 1px solid;
|
|
background: #fff;
|
|
outline: none;
|
|
outline-width: 0;
|
|
}
|
|
|
|
select {
|
|
width: 270px;
|
|
height: 30px;
|
|
line-height: 30px;
|
|
}
|
|
|
|
button {
|
|
min-height: 35px;
|
|
width: auto;
|
|
display: inline-block;
|
|
padding: 0.1rem 1.5rem;
|
|
cursor: pointer;
|
|
outline: none;
|
|
text-decoration: none;
|
|
color: #fff;
|
|
font-family: 'Open Sans', sans-serif;
|
|
font-size: 11px; /* Hacks targeting Firefox. */
|
|
line-height: 13px; /* Hacks targeting Firefox. */
|
|
font-weight: 300;
|
|
text-align: center;
|
|
letter-spacing: 1px;
|
|
text-transform: uppercase;
|
|
text-shadow: none;
|
|
border-radius: 0.3rem;
|
|
border: rgba(0,0,0,0.05) 0.1em solid;
|
|
background: #5ba4e5;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
3. Utilities - These things get used a lot
|
|
========================================================================== */
|
|
|
|
/* Clears shit */
|
|
.clearfix:before,
|
|
.clearfix:after {
|
|
content: " ";
|
|
display: table;
|
|
}
|
|
.clearfix:after { clear: both; }
|
|
.clearfix { zoom: 1; }
|
|
|
|
/* Hides shit */
|
|
.hidden {
|
|
text-indent: -9999px;
|
|
visibility: hidden;
|
|
display: none;
|
|
}
|
|
|
|
/* Creates a responsive wrapper that makes our content scale nicely */
|
|
.inner {
|
|
position: relative;
|
|
width: 80%;
|
|
max-width: 710px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
/* Centres vertically yo. (IE8+) */
|
|
.vertical {
|
|
display: table-cell;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
/* Wraps the main content & footer */
|
|
.site-wrapper {
|
|
position: relative;
|
|
z-index: 10;
|
|
min-height: 100%;
|
|
background: #fff;
|
|
transition: transform 0.5s ease;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
5. Single Post - When you click on an individual post
|
|
========================================================================== */
|
|
|
|
.post-template .post-header,
|
|
.page-template .post-header {
|
|
margin-bottom: 3.4rem;
|
|
}
|
|
|
|
.post-template .post-title,
|
|
.page-template .post-title {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.post-template .post-meta,
|
|
.page-template .post-meta {
|
|
margin: 0;
|
|
}
|
|
|
|
.post-template .post-date,
|
|
.page-template .post-date {
|
|
padding: 0;
|
|
margin: 0;
|
|
border: none;
|
|
}
|
|
|
|
/* Stop elements, such as img wider than the post content, from
|
|
creating horizontal scroll - slight hack due to imperfections
|
|
with browser width % calculations and rounding */
|
|
.post-template .content,
|
|
.page-template .content {
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* Tweak the .post wrapper style */
|
|
.post-template .post,
|
|
.page-template .post {
|
|
margin-top: 0;
|
|
border-bottom: none;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
/* Kill that stylish little circle that was on the border, too */
|
|
.post-template .post:after,
|
|
.page-template .post:after {
|
|
display: none;
|
|
}
|
|
|
|
/* Keep images centered, and allow images wider than the main
|
|
text column to break out. */
|
|
.post-content img {
|
|
display: block;
|
|
max-width: 126%;
|
|
height: auto;
|
|
padding: 0.6em 0;
|
|
/* Centers an image by (1) pushing its left edge to the
|
|
center of its container and (2) shifting the entire image
|
|
in the opposite direction by half its own width.
|
|
Works for images that are larger than their containers. */
|
|
position: relative;
|
|
left: 50%;
|
|
-webkit-transform: translateX(-50%); /* for Safari and iOS */
|
|
-ms-transform: translateX(-50%); /* for IE9 */
|
|
transform: translateX(-50%);
|
|
}
|
|
|
|
.footnotes {
|
|
font-style: italic;
|
|
font-size: 1.3rem;
|
|
line-height: 1.6em;
|
|
}
|
|
|
|
.footnotes li {
|
|
margin: 0.6rem 0;
|
|
}
|
|
|
|
.footnotes p {
|
|
margin: 0;
|
|
}
|
|
|
|
.footnotes p a:last-child {
|
|
text-decoration: none;
|
|
}
|
|
|
|
|
|
/* The author credit area after the post */
|
|
.post-footer {
|
|
position: relative;
|
|
margin: 6rem 0 0 0;
|
|
padding: 3rem 0 0 0;
|
|
border-top: #EBF2F6 1px solid;
|
|
}
|
|
|
|
.post-footer h4 {
|
|
font-size: 1.8rem;
|
|
margin: 0;
|
|
}
|
|
|
|
.post-footer p {
|
|
margin: 1rem 0;
|
|
font-size: 1.4rem;
|
|
line-height: 1.75em;
|
|
}
|
|
|
|
/* list of author links - location / url */
|
|
.author-meta {
|
|
padding: 0;
|
|
margin: 0;
|
|
list-style: none;
|
|
font-size: 1.4rem;
|
|
line-height: 1;
|
|
font-style: italic;
|
|
color: #9EABB3;
|
|
}
|
|
|
|
.author-meta a {
|
|
color: #9EABB3;
|
|
}
|
|
.author-meta a:hover {
|
|
color: #111;
|
|
}
|
|
|
|
/* Create some space to the right for the share links */
|
|
.post-footer .author {
|
|
margin-right: 180px;
|
|
}
|
|
|
|
.post-footer h4 a {
|
|
color: #2e2e2e;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.post-footer h4 a:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
/* Drop the share links in the space to the right.
|
|
Doing it like this means it's easier for the author bio
|
|
to be flexible at smaller screen sizes while the share
|
|
links remain at a fixed width the whole time */
|
|
.post-footer .share {
|
|
position: absolute;
|
|
top: 3rem;
|
|
right: 0;
|
|
width: 140px;
|
|
}
|
|
|
|
.post-footer .share a {
|
|
font-size: 1.8rem;
|
|
display: inline-block;
|
|
margin: 1rem 1.6rem 1.6rem 0;
|
|
color: #BBC7CC;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.post-footer .share .icon-twitter:hover {
|
|
color: #55acee;
|
|
}
|
|
.post-footer .share .icon-facebook:hover {
|
|
color: #3b5998;
|
|
}
|
|
.post-footer .share .icon-google-plus:hover {
|
|
color: #dd4b39;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
6. Author profile
|
|
========================================================================== */
|
|
|
|
.post-head.main-header {
|
|
height: 65vh;
|
|
min-height: 180px;
|
|
}
|
|
|
|
.no-cover.post-head.main-header {
|
|
height: 85px;
|
|
min-height: 0;
|
|
margin-bottom: 0;
|
|
background: transparent;
|
|
}
|
|
|
|
.tag-head.main-header {
|
|
height: 40vh;
|
|
min-height: 180px;
|
|
}
|
|
|
|
.author-head.main-header {
|
|
height: 40vh;
|
|
min-height: 180px;
|
|
}
|
|
|
|
.no-cover.author-head.main-header {
|
|
height: 10vh;
|
|
min-height: 100px;
|
|
background: transparent;
|
|
}
|
|
|
|
.author-profile {
|
|
padding: 0 15px 5rem 15px;
|
|
border-bottom: #EBF2F6 1px solid;
|
|
text-align: center;
|
|
}
|
|
|
|
/* Add a little circle in the middle of the border-bottom */
|
|
.author-profile:after {
|
|
display: block;
|
|
content: "";
|
|
width: 7px;
|
|
height: 7px;
|
|
border: #E7EEF2 1px solid;
|
|
position: absolute;
|
|
bottom: -5px;
|
|
left: 50%;
|
|
margin-left: -5px;
|
|
background: #FFF;
|
|
border-radius: 100%;
|
|
box-shadow: #FFF 0 0 0 5px;
|
|
}
|
|
|
|
.author-image {
|
|
-webkit-box-sizing: border-box;
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
display: block;
|
|
position: absolute;
|
|
top: -40px;
|
|
left: 50%;
|
|
margin-left: -40px;
|
|
width: 80px;
|
|
height: 80px;
|
|
border-radius: 100%;
|
|
overflow: hidden;
|
|
padding: 6px;
|
|
background: #fff;
|
|
z-index: 2;
|
|
box-shadow: #E7EEF2 0 0 0 1px;
|
|
}
|
|
|
|
.author-image .img {
|
|
position: relative;
|
|
display: block;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-size: cover;
|
|
background-position: center center;
|
|
border-radius: 100%;
|
|
}
|
|
|
|
.author-profile .author-image {
|
|
position: relative;
|
|
left: auto;
|
|
top: auto;
|
|
width: 120px;
|
|
height: 120px;
|
|
padding: 3px;
|
|
margin: -100px auto 0 auto;
|
|
box-shadow: none;
|
|
}
|
|
|
|
.author-title {
|
|
margin: 1.5rem 0 1rem;
|
|
}
|
|
|
|
.author-bio {
|
|
font-size: 1.8rem;
|
|
line-height: 1.5em;
|
|
font-weight: 200;
|
|
color: #50585D;
|
|
letter-spacing: 0;
|
|
text-indent: 0;
|
|
}
|
|
|
|
.author-meta {
|
|
margin: 1.6rem 0;
|
|
}
|
|
/* Location, website, and link */
|
|
.author-profile .author-meta {
|
|
margin: 2rem 0;
|
|
letter-spacing: 0.01rem;
|
|
font-size: 1.7rem;
|
|
}
|
|
.author-meta span {
|
|
display: inline-block;
|
|
margin: 0 2rem 1rem 0;
|
|
word-wrap: break-word;
|
|
}
|
|
.author-meta a {
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* Turn off meta for page2+ to make room for extra
|
|
pagination prev/next links */
|
|
.paged .author-profile .author-meta {
|
|
display: none;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
7. Read More - Next/Prev Post Links
|
|
========================================================================== */
|
|
|
|
.read-next {
|
|
display: -webkit-box;
|
|
display: -webkit-flex;
|
|
display: -ms-flexbox;
|
|
display: flex;
|
|
-webkit-box-align: stretch;
|
|
-webkit-align-items: stretch;
|
|
-ms-flex-align: stretch;
|
|
align-items: stretch;
|
|
margin-top: 10rem;
|
|
}
|
|
|
|
.read-next-story {
|
|
display: -webkit-box;
|
|
display: -webkit-flex;
|
|
display: -ms-flexbox;
|
|
display: flex;
|
|
-webkit-box-flex: 1;
|
|
-webkit-flex-grow: 1;
|
|
-ms-flex-positive: 1;
|
|
flex-grow: 1;
|
|
min-width: 50%;
|
|
text-decoration: none;
|
|
position: relative;
|
|
text-align: center;
|
|
color: #fff;
|
|
background: #222 no-repeat center center;
|
|
background-size: cover;
|
|
overflow: hidden;
|
|
}
|
|
.read-next-story:hover:before {
|
|
background: rgba(0,0,0,0.8);
|
|
transition: all 0.2s ease;
|
|
}
|
|
.read-next-story:hover .post:before {
|
|
color: #222;
|
|
background: #fff;
|
|
transition: all 0.2s ease;
|
|
}
|
|
|
|
.read-next-story:before {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
background: rgba(0,0,0,0.7);
|
|
transition: all 0.5s ease;
|
|
}
|
|
|
|
.read-next-story .post {
|
|
padding-top: 6rem;
|
|
padding-bottom: 6rem;
|
|
}
|
|
|
|
.read-next-story .post:before {
|
|
content: "Read This Next";
|
|
padding: 4px 10px 5px;
|
|
text-transform: uppercase;
|
|
font-size: 1.1rem;
|
|
font-family: 'Lato', sans-serif;
|
|
color: rgba(255,255,255,0.8);
|
|
border: rgba(255,255,255,0.5) 1px solid;
|
|
border-radius: 4px;
|
|
transition: all 0.5s ease;
|
|
}
|
|
.read-next-story.prev .post:before {
|
|
content: "You Might Enjoy";
|
|
}
|
|
|
|
.read-next-story h2 {
|
|
margin-top: 1rem;
|
|
color: #fff;
|
|
}
|
|
|
|
.read-next-story p {
|
|
margin: 0;
|
|
color: rgba(255,255,255,0.8);
|
|
}
|
|
|
|
/* Special styles for posts with no cover images */
|
|
.read-next-story.no-cover {
|
|
background: #f5f8fa;
|
|
}
|
|
|
|
.read-next-story.no-cover:before {
|
|
display: none;
|
|
}
|
|
|
|
.read-next-story.no-cover .post:before {
|
|
color: rgba(0,0,0,0.5);
|
|
border-color: rgba(0,0,0,0.2);
|
|
}
|
|
|
|
.read-next-story.no-cover h2 {
|
|
color: rgba(0,0,0,0.8);
|
|
}
|
|
|
|
.read-next-story.no-cover p {
|
|
color: rgba(0,0,0,0.5);
|
|
}
|
|
|
|
/* if there are two posts without covers, put a border between them */
|
|
.read-next-story.no-cover + .read-next-story.no-cover {
|
|
border-left: rgba(0,0,100,0.04) 1px solid;
|
|
-webkit-box-sizing: border-box;
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* Correctly position site-footer when next to the .read-next container */
|
|
.read-next + .site-footer {
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
/* ==========================================================================
|
|
8. Third Party Elements - Embeds from other services
|
|
========================================================================== */
|
|
|
|
/* Github */
|
|
.gist table {
|
|
margin: 0;
|
|
font-size: 1.4rem;
|
|
text-rendering: auto;
|
|
}
|
|
.gist td {
|
|
line-height: 1.4;
|
|
}
|
|
.gist .line-number {
|
|
min-width: 25px;
|
|
}
|
|
|
|
/* Pastebin */
|
|
.content .embedPastebin {
|
|
margin-bottom: 1.75em;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
9. Pagination - Tools to let you flick between pages
|
|
========================================================================== */
|
|
|
|
/* The main wrapper for our pagination links */
|
|
.pagination {
|
|
position: relative;
|
|
width: 80%;
|
|
max-width: 710px;
|
|
margin: 4rem auto;
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.3rem;
|
|
color: #9EABB3;
|
|
text-align: center;
|
|
}
|
|
|
|
.pagination a {
|
|
color: #9EABB3;
|
|
transition: all 0.2s ease;
|
|
}
|
|
|
|
/* Push the previous/next links out to the left/right */
|
|
.older-posts,
|
|
.newer-posts {
|
|
position: absolute;
|
|
display: inline-block;
|
|
padding: 0 15px;
|
|
border: #bfc8cd 1px solid;
|
|
text-decoration: none;
|
|
border-radius: 4px;
|
|
transition: border 0.3s ease;
|
|
}
|
|
|
|
.older-posts {
|
|
right: 0;
|
|
}
|
|
|
|
.page-number {
|
|
display: inline-block;
|
|
padding: 2px 0;
|
|
min-width: 100px;
|
|
}
|
|
|
|
.newer-posts {
|
|
left: 0;
|
|
}
|
|
|
|
.older-posts:hover,
|
|
.newer-posts:hover {
|
|
color: #889093;
|
|
border-color: #98a0a4;
|
|
}
|
|
|
|
.extra-pagination {
|
|
display: none;
|
|
border-bottom: #EBF2F6 1px solid;
|
|
}
|
|
.extra-pagination:after {
|
|
display: block;
|
|
content: "";
|
|
width: 7px;
|
|
height: 7px;
|
|
border: #E7EEF2 1px solid;
|
|
position: absolute;
|
|
bottom: -5px;
|
|
left: 50%;
|
|
margin-left: -5px;
|
|
background: #FFF;
|
|
border-radius: 100%;
|
|
box-shadow: #FFF 0 0 0 5px;
|
|
}
|
|
.extra-pagination .pagination {
|
|
width: auto;
|
|
}
|
|
|
|
/* On page2+ make all the headers smaller */
|
|
.paged .main-header {
|
|
max-height: 30vh;
|
|
}
|
|
|
|
/* On page2+ show extra pagination controls at the top of post list */
|
|
.paged .extra-pagination {
|
|
display: block;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
10. Subscribe - Generate those email subscribers
|
|
========================================================================== */
|
|
|
|
.gh-subscribe {
|
|
border: #e7eef2 1px solid;
|
|
padding: 3rem;
|
|
margin-top: 3rem;
|
|
text-align: center;
|
|
background: #f5f8fa;
|
|
border-radius: 5px;
|
|
}
|
|
|
|
.gh-subscribe-title {
|
|
margin-bottom: 0;
|
|
font-size: 2.4rem
|
|
}
|
|
|
|
.gh-subscribe p {
|
|
margin-top: 0;
|
|
font-size: 1.5rem;
|
|
}
|
|
|
|
.gh-subscribe form {
|
|
display: flex;
|
|
justify-content: center;
|
|
margin: 20px 0 0 0;
|
|
}
|
|
|
|
.gh-subscribe .form-group {
|
|
flex-grow: 1;
|
|
max-width: 300px;
|
|
}
|
|
|
|
.gh-subscribe .subscribe-email {
|
|
box-sizing: border-box;
|
|
width: 100%;
|
|
margin: 0;
|
|
border-radius: 4px 0 0 4px;
|
|
transition: all ease 0.5s;
|
|
}
|
|
|
|
.gh-subscribe .subscribe-email:focus {
|
|
border: #5ba4e5 1px solid;
|
|
transition: all ease 0.2s;
|
|
}
|
|
|
|
.gh-subscribe button {
|
|
margin-left: -1px;
|
|
border-radius: 0 4px 4px 0;
|
|
}
|
|
|
|
.gh-subscribe-rss {
|
|
font-family: 'Lato', sans-serif;
|
|
font-size: 1.2rem;
|
|
line-height: 1.4em;
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
12. Media Queries - Smaller than 900px
|
|
========================================================================== */
|
|
|
|
@media only screen and (max-width: 900px) {
|
|
|
|
blockquote {
|
|
margin-left: 0;
|
|
}
|
|
|
|
.main-header {
|
|
-webkit-box-sizing: border-box;
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
height: auto;
|
|
min-height: 240px;
|
|
height: 60vh;
|
|
}
|
|
|
|
.scroll-down,
|
|
.home-template .main-header:after { display: none; }
|
|
|
|
.paged .main-header {
|
|
min-height: 180px;
|
|
padding: 10% 0;
|
|
}
|
|
|
|
.blog-logo img {
|
|
padding: 4px 0;
|
|
}
|
|
|
|
.page-title {
|
|
font-size: 4rem;
|
|
letter-spacing: -1px;
|
|
}
|
|
|
|
.page-description {
|
|
font-size: 1.8rem;
|
|
line-height: 1.5em;
|
|
}
|
|
|
|
.post {
|
|
font-size: 0.95em
|
|
}
|
|
|
|
body:not(.post-template) .post-title {
|
|
font-size: 3.2rem;
|
|
}
|
|
|
|
body.page-template .post-title {
|
|
font-size: 4.5rem;
|
|
}
|
|
|
|
hr {
|
|
margin: 2.4em 0;
|
|
}
|
|
|
|
ol, ul {
|
|
padding-left: 2em;
|
|
}
|
|
|
|
h1 {
|
|
font-size: 4.5rem;
|
|
text-indent: -2px;
|
|
}
|
|
|
|
h2 {
|
|
font-size: 3.6rem;
|
|
}
|
|
|
|
h3 {
|
|
font-size: 3.1rem;
|
|
}
|
|
|
|
h4 {
|
|
font-size: 2.5rem;
|
|
}
|
|
|
|
h5 {
|
|
font-size: 2.2rem;
|
|
}
|
|
|
|
h6 {
|
|
font-size: 1.8rem;
|
|
}
|
|
|
|
.author-profile {
|
|
padding-bottom: 4rem;
|
|
}
|
|
|
|
.author-profile .author-bio {
|
|
font-size: 1.6rem;
|
|
}
|
|
|
|
.author-meta span {
|
|
display: block;
|
|
margin: 1.5rem 0;
|
|
}
|
|
.author-profile .author-meta span {
|
|
font-size: 1.6rem;
|
|
}
|
|
|
|
.post-head.main-header {
|
|
height:45vh;
|
|
}
|
|
|
|
.tag-head.main-header,
|
|
.author-head.main-header {
|
|
height: 30vh;
|
|
}
|
|
|
|
.no-cover.post-head.main-header {
|
|
height: 55px;
|
|
padding: 0;
|
|
}
|
|
|
|
.no-cover.author-head.main-header {
|
|
padding: 0;
|
|
}
|
|
|
|
.gh-subscribe {
|
|
padding: 2rem;
|
|
}
|
|
|
|
.gh-subscribe-title {
|
|
font-size: 2rem
|
|
}
|
|
|
|
.gh-subscribe p {
|
|
font-size: 1.4rem;
|
|
}
|
|
|
|
.read-next {
|
|
-webkit-box-orient: vertical;
|
|
-webkit-box-direction: normal;
|
|
-webkit-flex-direction: column;
|
|
-ms-flex-direction: column;
|
|
flex-direction: column;
|
|
margin-top: 4rem;
|
|
}
|
|
|
|
.read-next p {
|
|
display: none;
|
|
}
|
|
|
|
.read-next-story.no-cover + .read-next-story.no-cover {
|
|
border-top: rgba(0,0,100,0.06) 1px solid;
|
|
border-left: none;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
13. Media Queries - Smaller than 500px
|
|
========================================================================== */
|
|
|
|
@media only screen and (max-width: 500px) {
|
|
|
|
.main-header {
|
|
margin-bottom: 15px;
|
|
height: 40vh;
|
|
}
|
|
|
|
.no-cover.main-header {
|
|
height: 30vh;
|
|
}
|
|
|
|
.paged .main-header {
|
|
max-height: 20vh;
|
|
min-height: 160px;
|
|
padding: 10% 0;
|
|
}
|
|
|
|
.main-nav {
|
|
padding: 5px;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.blog-logo {
|
|
padding: 5px;
|
|
}
|
|
|
|
.blog-logo img {
|
|
height: 30px;
|
|
}
|
|
|
|
.menu-button {
|
|
padding: 0 5px;
|
|
border-radius: 0;
|
|
border-width: 0;
|
|
color: #2e2e2e;
|
|
background: transparent;
|
|
}
|
|
.menu-button:hover {
|
|
color: #2e2e2e;
|
|
border-color: transparent;
|
|
background: none;
|
|
}
|
|
body.nav-opened .menu-button {
|
|
background: none;
|
|
border: transparent;
|
|
}
|
|
|
|
.main-nav.overlay a:hover {
|
|
color: #fff;
|
|
border-color: transparent;
|
|
background: transparent;
|
|
}
|
|
|
|
.no-cover .main-nav.overlay {
|
|
background: none;
|
|
}
|
|
.no-cover .main-nav.overlay .menu-button {
|
|
border: none;
|
|
}
|
|
|
|
.main-nav.overlay .menu-button {
|
|
border-color: transparent;
|
|
}
|
|
|
|
.nav-title {
|
|
top: 25px;
|
|
|
|
}
|
|
|
|
.nav-close {
|
|
position: absolute;
|
|
top: 18px;
|
|
}
|
|
|
|
.nav ul {
|
|
padding: 60px 9% 5%;
|
|
}
|
|
|
|
.inner,
|
|
.pagination {
|
|
width: auto;
|
|
margin: 2rem auto;
|
|
}
|
|
|
|
.post {
|
|
width: auto;
|
|
margin-top: 2rem;
|
|
margin-bottom: 2rem;
|
|
margin-left: 16px;
|
|
margin-right: 16px;
|
|
padding-bottom: 2rem;
|
|
line-height: 1.65em;
|
|
}
|
|
|
|
.post-date {
|
|
display: none;
|
|
}
|
|
|
|
.post-template .post-header,
|
|
.page-template .post-header {
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.post-template .post-date,
|
|
.page-template .post-date {
|
|
display: inline-block;
|
|
}
|
|
|
|
hr {
|
|
margin: 1.75em 0;
|
|
}
|
|
|
|
p, ul, ol, dl {
|
|
font-size: 0.95em;
|
|
margin: 0 0 2.5rem 0;
|
|
}
|
|
|
|
.page-title {
|
|
font-size: 3rem;
|
|
}
|
|
|
|
.post-excerpt p {
|
|
font-size: 0.85em;
|
|
}
|
|
|
|
.page-description {
|
|
font-size: 1.6rem;
|
|
}
|
|
|
|
h1, h2, h3,
|
|
h4, h5, h6 {
|
|
margin: 0 0 0.3em 0;
|
|
}
|
|
|
|
h1 {
|
|
font-size: 2.8rem;
|
|
letter-spacing: -1px;
|
|
}
|
|
|
|
h2 {
|
|
font-size: 2.4rem;
|
|
letter-spacing: 0;
|
|
}
|
|
|
|
h3 {
|
|
font-size: 2.1rem;
|
|
}
|
|
|
|
h4 {
|
|
font-size: 1.9rem;
|
|
}
|
|
|
|
h5 {
|
|
font-size: 1.8rem;
|
|
}
|
|
|
|
h6 {
|
|
font-size: 1.8rem;
|
|
}
|
|
|
|
body:not(.post-template) .post-title {
|
|
font-size: 2.5rem;
|
|
}
|
|
|
|
body.page-template .post-title {
|
|
font-size: 2.8rem;
|
|
}
|
|
|
|
.post-template .site-footer,
|
|
.page-template .site-footer {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.post-content img {
|
|
padding: 0;
|
|
width: calc(100% + 32px); /* expand with to image + margins */
|
|
min-width: 0;
|
|
max-width: 112%; /* fallback when calc doesn't work */
|
|
}
|
|
|
|
.post-meta {
|
|
font-size: 1.3rem;
|
|
margin-top: 1rem;
|
|
}
|
|
|
|
.post-footer {
|
|
padding: 5rem 0 3rem 0;
|
|
text-align: center;
|
|
}
|
|
|
|
.post-footer .author {
|
|
margin: 0 0 2rem 0;
|
|
padding: 0 0 1.6rem 0;
|
|
border-bottom: #EBF2F6 1px dashed;
|
|
}
|
|
|
|
.post-footer .share {
|
|
position: static;
|
|
width: auto;
|
|
}
|
|
|
|
.post-footer .share a {
|
|
margin: 1.4rem 0.8rem 0 0.8rem;
|
|
}
|
|
|
|
.author-meta li {
|
|
float: none;
|
|
margin: 0;
|
|
line-height: 1.75em;
|
|
}
|
|
|
|
.author-meta li:before {
|
|
display: none;
|
|
}
|
|
|
|
.older-posts,
|
|
.newer-posts {
|
|
position: static;
|
|
margin: 10px 0;
|
|
}
|
|
|
|
.page-number {
|
|
display: block;
|
|
}
|
|
|
|
.site-footer {
|
|
margin-top: 3rem;
|
|
}
|
|
|
|
.author-profile {
|
|
padding-bottom: 2rem;
|
|
}
|
|
|
|
.post-head.main-header {
|
|
height: 30vh;
|
|
}
|
|
|
|
.tag-head.main-header,
|
|
.author-head.main-header {
|
|
height: 20vh;
|
|
}
|
|
|
|
.post-footer .author-image {
|
|
top: -60px;
|
|
}
|
|
|
|
.author-profile .author-image {
|
|
margin-top: -70px;
|
|
}
|
|
|
|
.author-profile .author-meta span {
|
|
font-size: 1.4rem;
|
|
}
|
|
|
|
.paged .main-header .page-description {
|
|
display: none;
|
|
}
|
|
|
|
.gh-subscribe {
|
|
padding: 15px;
|
|
}
|
|
|
|
.gh-subscribe form {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.read-next {
|
|
margin-top: 2rem;
|
|
margin-bottom: -37px;
|
|
}
|
|
|
|
.read-next .post {
|
|
width: 100%;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
14. Animations
|
|
========================================================================== */
|
|
|
|
/* Used to fade in title/desc on the home page */
|
|
@-webkit-keyframes fade-in-down {
|
|
0% {
|
|
opacity: 0;
|
|
-webkit-transform: translateY(-10px);
|
|
transform: translateY(-10px);
|
|
}
|
|
100% {
|
|
opacity: 1;
|
|
-webkit-transform: translateY(0);
|
|
transform: translateY(0);
|
|
}
|
|
}
|
|
@keyframes fade-in-down {
|
|
0% {
|
|
opacity: 0;
|
|
-webkit-transform: translateY(-10px);
|
|
transform: translateY(-10px);
|
|
}
|
|
100% {
|
|
opacity: 1;
|
|
-webkit-transform: translateY(0);
|
|
transform: translateY(0);
|
|
}
|
|
}
|
|
|
|
/* Used to bounce .scroll-down on home page */
|
|
@-webkit-keyframes bounce {
|
|
0%, 10%, 25%, 40%, 50% {
|
|
-webkit-transform: translateY(0) rotate(-90deg);
|
|
transform: translateY(0) rotate(-90deg);
|
|
}
|
|
20% {
|
|
-webkit-transform: translateY(-10px) rotate(-90deg);
|
|
transform: translateY(-10px) rotate(-90deg);
|
|
}
|
|
30% {
|
|
-webkit-transform: translateY(-5px) rotate(-90deg);
|
|
transform: translateY(-5px) rotate(-90deg);
|
|
}
|
|
}
|
|
@keyframes bounce {
|
|
0%, 10%, 25%, 40%, 50% {
|
|
-webkit-transform: translateY(0) rotate(-90deg);
|
|
transform: translateY(0) rotate(-90deg);
|
|
}
|
|
20% {
|
|
-webkit-transform: translateY(-10px) rotate(-90deg);
|
|
transform: translateY(-10px) rotate(-90deg);
|
|
}
|
|
30% {
|
|
-webkit-transform: translateY(-5px) rotate(-90deg);
|
|
transform: translateY(-5px) rotate(-90deg);
|
|
}
|
|
}
|
|
|
|
|
|
/* ==========================================================================
|
|
End of file. Animations should be the last thing here. Do not add stuff
|
|
below this point, or it will probably fuck everything up.
|
|
========================================================================== */
|