@charset "UTF-8";
/*
  Theme Name: Ruffie
  Theme URI: https://gratisthemes.github.io/ruffie
  Author: Gratis Themes
  Author URI: https://gratisthemes.github.io/
  Description: Ruffie is a comic book inspired and responsive theme made with modern devices in mind. The theme has a variety of settings such as background-color, text-color, border-color, layout and social media icons.
  Version: 1.5.0
  License: GNU General Public License v3
  License URI: http://www.gnu.org/licenses/gpl-3.0.html  
  Tags: one-column, two-columns, three-columns, left-sidebar, right-sidebar, flexible-header, custom-background, custom-colors, custom-menu, featured-images, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
  Text Domain: ruffie

  Ruffie WordPress Theme, Copyright (C) 2016-2019, Gratis Themes
  Ruffie distributed under the terms of the GNU GPL v3
*/
/* Table of Contents
  -------------------------------
   1.0 Normalize
   2.0 Variables
   3.0 Layout
   4.0 Tags and Elements
     4.1 Form elements
     4.2 Media
   5.0 Navigation
     5.1 Header
     5.2 Footer
   6.0 Site header
   7.0 Content
     7.1 Headers
     7.2 Thumbnails
     7.3 Alignment
     7.4 Post formats
     7.5 Footers
   8.0 Comments
   9.0 Widgets
  10.0 Site footer
  11.0 Accessibility

  -------------------------------
*/
/* 1.0 Normalize */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
     -moz-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* 2.0 Variables */
:root {
  --font-family: 'Open Sans', sans-serif;
  --font-size: 12pt;
  --color-bg:        #CA2F2A;
  --color-text:      #191919;
  --color-anchor:    #191919;
  --color-border:    #191919;
  --color-highlight: #E9E9E9;
  --color-title:     #191919;
  --color-tagline:   #191919;
  font-size: var(--font-size);
}

/* 3.0 Layout */
#site-wrapper,
#main-content-container,
#site-main,
#site-main > section,
#footer-widget-areas-container,
.widget-area {
  display: grid;
  grid-template-columns: minmax(0, 100%);
  -webkit-align-content: start;
      -ms-flex-line-pack: start;
          align-content: start;
  grid-gap: 1em;
}

#site-wrapper {
  width: -webkit-calc(100% - 2em);
  width: calc(100% - 2em);
  max-width: -webkit-calc(1280px - 1em);
  max-width: calc(1280px - 1em);
  margin: 0 auto;
  padding: 1em;
}

@media (min-width: 640px) {
  #widget-area-above-content,
  #footer-widget-areas-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 960px) {
  #widget-area-above-content {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1280px) {
  #widget-area-above-content,
  #footer-widget-areas-container {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .has-right-sidebar #main-content-container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 300px);
  }
  .has-left-sidebar #main-content-container {
    grid-template-columns: minmax(0, 300px) minmax(0, 1fr);
  }
  .has-right-sidebar.has-left-sidebar #main-content-container {
    grid-template-columns: minmax(0, 300px) minmax(0, 1fr) minmax(0, 300px);
  }
}

/* 4.0 Tags and Elements */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: .5em 0;
}

h1,
h2,
h3 {
  font-weight: 800;
  text-transform: uppercase;
}

h4,
h5,
h6 {
  font-weight: 600;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 2.6rem;
}

h3 {
  font-size: 2rem;
}

h4 {
  font-size: 2.6rem;
}

h5 {
  font-size: 2rem;
}

h6 {
  font-size: 1.8rem;
}

p {
  line-height: 1.5em;
  margin: 0 0 1.5em;
}

blockquote {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 1em;
          border-radius: 1em;
  padding: 1em;
  margin: 0 0 .5em;
}

blockquote::before {
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  content: '\f10d';
}

blockquote p {
  margin: 0 0 .5em;
}

table,
td,
th {
  border: 0.125em solid var(--color-border);
}

table {
  background-color: var(--color-highlight);
  border-collapse: separate;
  border-spacing: 0;
  border-width: 0.125em 0 0 0.125em;
  max-width: 100%;
  margin-bottom: 1.5em;
  word-wrap: normal;
}

td,
th {
  border-width: 0 0.125em 0.125em 0;
  text-align: left;
  padding: 1em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 0 1em 1em;
}

ul,
ol {
  margin: 0 0 0 2em;
  padding: 0;
}

li {
  margin: .5em 0;
}

address {
  font-style: italic;
  margin-bottom: 1.5em;
}

a {
  color: var(--color-anchor);
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
}

abbr {
  cursor: help;
}

acronym {
  cursor: help;
}

cite {
  font-style: italic;
}

code {
  background-color: var(--color-highlight);
  color: var(--color-text);
  border: 0.125em solid var(--color-border);
  padding: 0 .25em;
  -webkit-border-radius: 1em;
          border-radius: 1em;
  font-weight: normal;
}

hr {
  width: 100%;
  border: none;
  height: 0.125em;
  background-color: var(--color-border);
  margin: 1em 0;
}

ins {
  text-decoration: none;
  background-color: var(--color-text);
  color: var(--color-bg);
  padding: 0 .25em;
}

pre {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 2em;
          border-radius: 2em;
  max-width: 100%;
  overflow: auto;
  padding: 1em;
  word-wrap: normal;
  font-weight: normal;
}

q {
  font-style: italic;
}

@media only screen and (max-width: 768px) {
  table {
    display: inline-block;
    overflow: hidden;
    overflow-x: auto;
  }
}

/* 4.1 Tags and Elements: Form elements */
input,
textarea,
select {
  max-width: 100%;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
input[type="search"],
textarea,
select {
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 1em;
          border-radius: 1em;
  padding: .25em .5em;
  font-weight: 600;
  max-width: -webkit-calc(100% - 1.250em);
  max-width: calc(100% - 1.250em);
}

/* iOS not respecting border-radius */
input[type="search"] {
  -webkit-appearance: none;
}

input[type="color"],
input[type="submit"],
input[type="button"],
input[type="reset"],
button {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  color: var(--color-border);
  text-transform: uppercase;
  -webkit-border-radius: 1em;
          border-radius: 1em;
  padding: .25em .5em;
  font-weight: 800;
  cursor: pointer;
}

input[type="color"]:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
button:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

.ruffie-labeler:not(old) {
  height: 20px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  opacity: 0;
}

.ruffie-labeler:not(old) + label:after {
  position: relative;
  background-color: var(--color-highlight);
  color: var(--color-border);
  min-width: 16px;
  min-height: 16px;
  display: inline-block;
  margin-left: -16px;
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: .25em;
          border-radius: .25em;
  font-family: FontAwesome;
  content: ' ';
  line-height: 16px;
  top: 2px;
}

.ruffie-labeler[type="radio"]:not(old) + label:after {
  -webkit-border-radius: 16px;
          border-radius: 16px;
}

.ruffie-labeler[type="radio"]:not(old):checked + label:after {
  background-color: var(--color-border);
}

.ruffie-labeler[type="checkbox"]:not(old):checked + label:after {
  content: '\f00c';
  top: -2px;
}

fieldset {
  min-width: 0px;
  border: 0.125em solid var(--color-border);
}

.search-form,
.post-password-form p:nth-child(2) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.search-form .search-field,
.post-password-form input[type="password"] {
  max-width: 100%;
  border-right: 0;
  -webkit-border-top-right-radius: 0;
          border-top-right-radius: 0;
  -webkit-border-bottom-right-radius: 0;
          border-bottom-right-radius: 0;
}

.search-form .search-submit,
.post-password-form input[type="submit"] {
  -webkit-border-top-left-radius: 0;
          border-top-left-radius: 0;
  -webkit-border-bottom-left-radius: 0;
          border-bottom-left-radius: 0;
}

.post-password-form input[type="password"] {
  display: block;
}

.post-password-form input[type="submit"] {
  position: relative;
  height: 50%;
  bottom: 0;
  margin-top: auto;
}

/* 4.2 Tags and Elements: Media */
.wp-caption,
.gallery-item,
.entry-attachment,
img {
  max-width: 100%;
  height: auto;
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: .5em;
          border-radius: .5em;
}

.wp-caption,
.gallery-item,
.entry-attachment {
  background-color: var(--color-highlight);
  overflow: hidden;
}

.wp-caption img,
.gallery-item img,
.entry-attachment img {
  display: block;
  border: none;
  border-bottom: 0.125em solid var(--color-border);
  -webkit-border-radius: 0;
          border-radius: 0;
  margin: 0 auto;
}

.wp-caption {
  margin-bottom: .5em;
}

.gallery-caption,
.wp-caption-text {
  font-size: .8rem;
  padding: .5em;
}

figure {
  margin: 0;
}

img {
  vertical-align: bottom;
}

iframe,
embed,
object {
  max-width: 100%;
}

.gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, auto));
  max-width: 960px;
  /* content width */
  grid-gap: 1em;
  margin-bottom: 1em;
}

.gallery-columns-1 {
  grid-template-columns: minmax(0, 1fr);
}

.gallery-caption {
  font-style: italic;
}

@media (min-width: 768px) {
  .gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .gallery-columns-1 {
    grid-template-columns: minmax(0, 1fr);
  }
  .gallery-columns-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gallery-columns-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .gallery-columns-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .gallery-columns-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .gallery-columns-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .gallery-columns-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .gallery-columns-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .gallery-columns-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .gallery-columns-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
}

/* 5.0 Navigation */
.nav-links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.nav-links a {
  text-decoration: none;
  color: var(--color-border);
}

.nav-links a:hover {
  text-decoration: none !important;
}

.nav-previous,
.nav-next {
  margin-bottom: .5em;
}

.nav-previous a,
.nav-next a {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 32px;
          border-radius: 32px;
  text-transform: uppercase;
  font-weight: 800;
  padding: 0 .5em;
}

.nav-previous a:hover,
.nav-next a:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

.nav-previous a::before,
.nav-next a::after {
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
}

.nav-previous a::before {
  content: '\f177';
  padding-right: .5em;
}

.nav-next a::after {
  content: '\f178';
  padding-left: .5em;
}

.pagination .nav-links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.pagination .nav-links > * {
  margin: 0 1em;
}

.pagination .nav-links .page-numbers.current {
  font-weight: 600;
}

.page-links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.page-links > * {
  background-color: var(--color-highlight);
  color: var(--color-text);
  border: 0.125em solid var(--color-border);
  width: 1em;
  height: 1em;
  line-height: 1em;
  padding: .125em;
  text-align: center;
  -webkit-border-radius: 100%;
          border-radius: 100%;
  margin: 0 0 .5em .5em;
  text-decoration: none;
  font-weight: 600;
}

.page-links > span,
.page-links > a:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

/* 5.1 Navigation: Header */
#header-nav-toggle {
  display: none;
}

#header-nav-toggle-label {
  position: relative;
  display: block;
  cursor: pointer;
  text-align: center;
  font-size: 2rem;
  text-transform: uppercase;
  font-weight: 800;
}

#header-nav-toggle:checked ~ #header-nav-toggle-label {
  position: absolute;
  z-index: 20;
  font-size: 1rem;
}

#header-nav {
  background-color: var(--color-bg);
  position: absolute;
  left: 0;
  right: 0;
  display: none;
  margin: 0;
  padding: 0;
  text-align: center;
  border-bottom: 0.125em solid var(--color-border);
  z-index: 10;
}

#header-nav a {
  background-color: var(--color-bg);
  color: #953C5B;
  text-decoration: none;
}

#header-nav > li {
  font-weight: 800;
  text-transform: uppercase;
}

#header-nav li {
  line-height: 2em;
}

#header-nav li > *:not(ul) {
  border: 0.125em solid transparent;
  -webkit-border-radius: 1em;
          border-radius: 1em;
  padding: .25em .5em;
}

#header-nav li:hover > *:not(ul) {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

#header-nav .current-menu-item > *:not(ul) {
  background-color: var(--color-highlight);
  color: var(--color-border);
  border: 0.125em solid var(--color-border);
}

#header-nav li {
  list-style: none;
  white-space: nowrap;
}

#header-nav ul {
  margin: 0;
}

#header-nav-toggle:checked ~ #header-nav {
  display: block;
}

@media (min-width: 640px) {
  #header-nav-toggle-label {
    display: none;
  }
  #header-nav {
    background-color: transparent;
    position: relative;
    left: auto;
    right: auto;
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    border: none;
    text-align: left;
  }
  #header-nav > li {
    position: relative;
    margin-right: 1rem;
  }
  #header-nav > li:hover > ul {
    display: block;
  }
  #header-nav > li.menu-item-has-children:hover > *:not(ul) {
    -webkit-border-bottom-right-radius: 0;
            border-bottom-right-radius: 0;
    -webkit-border-bottom-left-radius: 0;
            border-bottom-left-radius: 0;
  }
  #header-nav > li > ul {
    background-color: var(--color-border);
    color: var(--color-highlight);
    display: none;
    position: absolute;
    left: 0;
    padding: 0;
    z-index: 10;
    -webkit-border-bottom-right-radius: 1em;
            border-bottom-right-radius: 1em;
    -webkit-border-bottom-left-radius: 1em;
            border-bottom-left-radius: 1em;
  }
  #header-nav > li > ul a {
    color: var(--color-highlight);
  }
  #header-nav ul {
    margin: 0;
  }
  #header-nav ul ul {
    padding-left: 1rem;
  }
}

/* 5.2 Navigation: Footer */
#footer-nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  list-style: none;
  color: var(--color-border);
}

#footer-nav a {
  color: var(--color-border);
}

#footer-nav > * {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 32px;
          border-radius: 32px;
  text-transform: uppercase;
  padding: 0 .5em;
  margin: 0 .5em .5em 0;
  font-weight: 800;
}

#footer-nav > *:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

#footer-nav > *:hover a {
  color: var(--color-highlight);
  text-decoration: none !important;
}

/* 6.0 Site header */
#site-branding {
  display: grid;
  grid-gap: 1em;
}

.custom-logo {
  border: none;
  -webkit-border-radius: 0px;
          border-radius: 0px;
}

.site-title {
  background-color: var(--color-highlight);
  color: var(--color-title);
  text-decoration: none;
  margin: 0 auto;
  text-transform: uppercase;
  padding: 0 .5em;
  border: 0.125em solid var(--color-title);
  -webkit-border-radius: 1em;
          border-radius: 1em;
  font-size: 3rem;
  font-weight: 800;
}

.site-title:hover {
  text-decoration: none;
}

#social-links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: auto;
}

#social-links a {
  background-color: var(--color-highlight);
  color: var(--color-border);
  border: 0.125em solid var(--color-border);
  margin: 0 .25em .25em;
  font-size: 2rem;
  -webkit-border-radius: 100%;
          border-radius: 100%;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5em;
  text-align: center;
}

#social-links a:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

.site-tagline {
  color: var(--color-tagline);
  font-size: 2.4rem;
  text-transform: uppercase;
  text-align: center;
  font-weight: 800;
  border-top: 0.125em solid var(--color-border);
  border-bottom: 0.125em solid var(--color-border);
  padding: .5em 0;
}

@media (min-width: 640px) {
  #site-branding {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  #site-branding > *:not(:last-child) {
    margin: 0 1em .5em 0;
  }
  .site-title {
    margin: 0 auto 0 0;
  }
  .site-tagline {
    font-size: 4rem;
  }
}

@media (min-width: 960px) {
  #social-links {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .site-tagline {
    text-align: left;
    font-size: 8rem;
    padding: .25em 0;
  }
}

/* 7.0 Content */
body {
  background-color: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-family);
  font-weight: 600;
  word-wrap: break-word;
}

.read-more-link {
  position: relative;
  display: table-cell;
  background-color: var(--color-highlight);
  color: var(--color-border);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 32px;
          border-radius: 32px;
  top: .5em;
  padding: 0 .5em;
  text-decoration: none;
  font-weight: 800;
  text-transform: uppercase;
}

.read-more-link:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
  text-decoration: none;
}

/* 7.1 Content: Headers */
.page-header,
.entry-header {
  display: grid;
  grid-template-columns: minmax(0, 100%);
  grid-gap: .5em;
}

.page-header h1,
.page-header h3,
.entry-header h1,
.entry-header h3 {
  margin: 0;
}

.page-header a,
.entry-header a {
  text-decoration: none;
  color: var(--color-text);
}

.page-header a:hover,
.entry-header a:hover {
  text-decoration: underline;
}

.entry-meta {
  display: grid;
  grid-gap: .5em;
}

.sticky .entry-header h3::before,
.entry-meta > span::before,
.post-edit-link::before {
  background-color: var(--color-highlight);
  display: inline-block;
  color: var(--color-border);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 100%;
          border-radius: 100%;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  line-height: 1.5em;
  text-align: center;
  margin-right: .25em;
  width: 1.5em;
  height: 1.5em;
}

.sticky .entry-header h3::before {
  content: '\f08d';
  font-size: 1.5rem;
  font-weight: 600;
}

.entry-meta-author::before {
  content: '\f007';
}

.entry-meta-date::before {
  content: '\f073';
}

.entry-meta-comments::before {
  content: '\f0e5';
}

.entry-meta-categories::before {
  content: '\f114';
}

.entry-meta-image-size::before {
  content: '\f030';
}

.format-gallery .entry-meta-post-format::before,
.format-image .entry-meta-post-format::before {
  content: '\f03e';
}

.format-audio .entry-meta-post-format::before {
  content: '\f001';
}

.format-video .entry-meta-post-format::before {
  content: '\f1c8';
}

.format-aside .entry-meta-post-format::before {
  content: '\f249';
}

.format-status .entry-meta-post-format::before {
  content: '\f12a';
}

.format-link .entry-meta-post-format::before {
  content: '\f0c1';
}

.format-quote .entry-meta-post-format::before {
  content: '\f10e';
}

.format-chat .entry-meta-post-format::before {
  content: '\f086';
}

.post-edit-link::before {
  content: '\f040';
}

@media (min-width: 640px) {
  .entry-meta {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .entry-meta > *:not(:last-child) {
    margin-right: 1em;
  }
}

/* 7.2 Content: Post thumbnail */
/* 7.3 Content: Alignment */
.alignright {
  float: right;
  margin: 0 0 1em 1em;
}

.alignleft {
  float: left;
  margin: 0 1em 1em 0;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Clear floats */
.entry-content::after {
  content: "";
  display: table;
  clear: both;
}

.page-links {
  clear: both;
}

/* 7.4 Content: Post formats */
.format-audio,
.format-video,
.format-aside,
.format-status,
.format-link,
.format-quote,
.format-chat .entry-content {
  background-color: var(--color-highlight);
  color: var(--color-border);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 1em;
          border-radius: 1em;
  padding: 1em;
}

.format-audio .entry-content,
.format-status .entry-content,
.format-link .entry-content {
  font-size: 2rem;
  font-weight: 700;
}

/* Post format: Video */
.js .format-video iframe,
.js .format-video embed,
.js .format-video object {
  width: 100%;
}

/* Post format: Aside */
.format-aside .entry-meta {
  font-size: .8rem;
}

/* Post format: Status */
.format-status .entry-meta {
  font-size: .8rem;
}

.format-status .entry-content {
  font-size: 1.2rem;
  font-weight: 600;
}

/* Post format: Link */
.format-link .entry-content {
  text-align: center;
}

/* Post format: Quote */
.format-quote .entry-content {
  font-size: 1.2rem;
  font-weight: 600;
}

.format-quote blockquote {
  border: none;
  padding: 0 2em;
  position: relative;
  display: inline-block;
}

.format-quote blockquote::before, .format-quote blockquote::after {
  font-family: var(--font-family);
  position: absolute;
  font-size: 3rem;
}

.format-quote blockquote::before {
  content: '“';
  top: 0;
  left: 0;
}

.format-quote blockquote::after {
  content: '”';
  bottom: 0;
  right: 0;
}

/* Post format: Chat */
.format-chat .entry-content {
  border: 0.0625em solid var(--color-border);
  padding: 1em;
  font-style: italic;
}

/* 7.5 Content: Footers */
.entry-footer {
  display: grid;
  grid-gap: 2em;
}

.entry-footer a {
  text-decoration: none;
}

.entry-footer a:hover {
  text-decoration: underline;
}

.author-bio {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr);
  margin-right: auto;
}

.author-bio .avatar {
  background-color: var(--color-highlight);
  position: relative;
  -webkit-border-radius: 100%;
          border-radius: 100%;
  z-index: 10;
}

.author-bio h5,
.author-bio p {
  font-size: .8rem;
  margin: 0;
}

.author-bio h5 {
  font-weight: 800;
  text-transform: uppercase;
}

.author-bio > div {
  position: relative;
  left: -50px;
  margin-right: -50px;
  background-color: var(--color-highlight);
  display: grid;
  -webkit-align-content: start;
      -ms-flex-line-pack: start;
          align-content: start;
  grid-gap: .5em;
  height: -webkit-calc(100px - 2em);
  height: calc(100px - 2em);
  border: 0.125em solid var(--color-border);
  -webkit-border-top-right-radius: 50px;
          border-top-right-radius: 50px;
  -webkit-border-bottom-right-radius: 50px;
          border-bottom-right-radius: 50px;
  padding: 1em 2em 1em -webkit-calc(50px + 1em);
  padding: 1em 2em 1em calc(50px + 1em);
}

.post-tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.post-tags a {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 1em;
          border-radius: 1em;
  color: var(--color-border);
  text-transform: uppercase;
  padding: .25em .5em;
  margin: 0 .5em .5em 0;
  font-weight: 800;
  font-size: .8rem;
}

.post-tags a:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
  text-decoration: none;
}

/* 8.0 Comments */
.comments-area {
  display: grid;
  grid-template-columns: minmax(0, 100%);
  border-top: 0.125em solid var(--color-border);
}

.comments-title {
  margin: 0;
  padding: .5em 0;
}

.comment-list {
  display: grid;
  grid-template-columns: minmax(0, 100%);
  margin: 0;
}

.comment,
.pingback {
  list-style: none;
  border-top: 0.125em solid var(--color-border);
  padding: 1em 0;
}

.comment-meta {
  margin-bottom: 1em;
}

.comment-meta a {
  text-decoration: none;
}

.comment-meta a:hover {
  text-decoration: underline;
}

.bypostauthor .comment-author .says {
  display: none;
}

.comment-author .avatar {
  background-color: var(--color-highlight);
  position: relative;
  float: left;
  margin-right: .5em;
  -webkit-border-radius: 100%;
          border-radius: 100%;
}

.comment-metadata {
  font-size: .7rem;
  margin-top: 1em;
}

.comment-reply-link,
.bypostauthor .comment-author .fn {
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 1em;
          border-radius: 1em;
  text-transform: uppercase;
  font-weight: 800;
  padding: 0 .5em;
  text-decoration: none;
}

.bypostauthor .comment-author .fn::before {
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  content: '\f040';
  padding-right: .5em;
}

.comment-reply-link:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
}

.comment-respond {
  margin-top: 2em;
  padding-top: 1em;
  border-top: 0.125em solid var(--color-border);
}

.comment-form label {
  display: block;
}

.comment-form p {
  margin: 0 0 1em;
}

.comment-reply-title {
  margin: 0;
}

/* 9.0 Widgets */
.widget-title {
  margin: 0;
}

.widget ul {
  padding: 0;
}

.widget ul ul {
  margin: 0 0 0 .5em;
}

.widget li {
  line-height: 2;
  margin: 0;
}

.widget a {
  text-decoration: none;
}

.widget a:hover {
  text-decoration: underline;
}

.widget_calendar table {
  width: 100%;
  display: table !important;
  table-layout: fixed;
}

.widget_calendar td,
.widget_calendar th {
  text-align: center;
  padding: .5em;
}

.widget_calendar #prev,
.widget_calendar #prev + .pad {
  border-right: 0;
}

.widget_calendar #prev {
  text-align: left;
}

.widget_calendar #next {
  text-align: right;
}

.widget_calendar a {
  font-weight: 800;
}

.tag-cloud-link {
  position: relative;
  background-color: var(--color-highlight);
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 32px;
          border-radius: 32px;
  text-transform: uppercase;
  padding: 0 .5em;
}

.tag-cloud-link:hover {
  background-color: var(--color-border);
  color: var(--color-highlight);
  text-decoration: none !important;
  z-index: 10;
}

/* 10.0 Site footer */
#site-footer,
#site-footer-information {
  display: grid;
  grid-gap: .5em;
}

#site-footer a {
  text-decoration: none;
}

#site-footer a:hover {
  text-decoration: underline;
}

#site-footer-information {
  grid-gap: 1em;
  text-align: center;
  font-size: .8rem;
  font-weight: 800;
}

#scroll-to-top {
  background-color: var(--color-highlight);
  position: fixed;
  bottom: -2000px;
  right: 20px;
  cursor: pointer;
  width: 30px;
  height: 30px;
  border: 0.125em solid var(--color-border);
  -webkit-border-radius: 100%;
          border-radius: 100%;
  overflow: hidden;
  -webkit-transition: bottom 1s ease-in-out;
  -o-transition: bottom 1s ease-in-out;
  transition: bottom 1s ease-in-out;
}

#scroll-to-top::before, #scroll-to-top::after {
  background-color: var(--color-border);
  position: absolute;
  content: "";
  width: 43%;
  height: 2px;
}

#scroll-to-top::before {
  top: 50%;
  right: 15%;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

#scroll-to-top::after {
  top: 50%;
  left: 15%;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

#scroll-to-top:hover {
  background-color: var(--color-border);
}

#scroll-to-top:hover::before, #scroll-to-top:hover::after {
  background-color: var(--color-highlight);
}

@media (min-width: 768px) {
  #site-footer-information {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  #site-footer-information > *:not(:last-child) {
    margin: 0 .5em .25em 0;
    padding-right: .5em;
    border-right: 0.125em solid var(--color-border);
  }
}

/* 11.0 Accessibility */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}