/**
 * WildBird 2.0.0
 * By Just Good Themes - https://justgoodthemes.com/
 */
/**
 * Table of Contents
 *
 * 1. Reset
 * 2. General
 * 3. Structure
 * 4. Site Navigation
 * 5. Site Header
 * 6. Content
 *   6.1 Posts and Pages
 *   6.2 Comments
 *   6.3 Pagination
 *   6.4 Post Navigation
 * 7. Error Template
 * 8. Widgets
 * 9. Site Footer
 * 10. Site Search
 * 11. Members
 * 12. Animations
 * 13. Rainbow Code Highlighter
 * 14. Slick Carousel
 * 15. SimpleLightbox
*/
/**
 * 0. Reset
 * normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css
 */
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
  display: block; }

summary {
  display: list-item; }

figure {
  margin: 0; }

pre,
code,
kbd,
samp {
  font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
  font-size: 1em; }

audio,
canvas,
video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

a:focus {
  outline: thin dotted; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border: 0;
  vertical-align: middle; }

svg:not(:root) {
  overflow: hidden; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html [type="button"],
[type="reset"],
[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; }

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

[type="text"],
[type="email"],
[type="url"],
[type="password"],
textarea {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

progress {
  display: inline-block;
  vertical-align: baseline; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/**
 * 1. General
 */
html {
  font-family: "Lato", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility; }

body {
  background: #fff;
  color: #343434;
  line-height: 1.625;
  position: relative; }

a {
  color: #9B0000;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s; }
  a:hover {
    color: #B20000; }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #1d1e1f;
  font-family: "Playfair Display", serif;
  font-weight: 700;
  line-height: 1.25;
  margin: 36px 0 18px; }
  h1:first-child,
  h2:first-child,
  h3:first-child,
  h4:first-child,
  h5:first-child,
  h6:first-child {
    margin-top: 0; }

h1 {
  font-size: 30px; }

h2 {
  font-size: 24px; }

h3 {
  font-size: 21px; }

h4 {
  font-size: 18px; }

h5,
h6 {
  font-size: 16px; }

p {
  margin: 0 0 24px; }

address {
  font-style: italic;
  margin: 0 0 24px; }

mark,
ins {
  background: #fce3db;
  color: #343434;
  padding: 0 3px;
  text-decoration: none; }

code {
  font-size: 14px; }

pre {
  background: #f6f6f6;
  color: #3a3b3d;
  font-size: 14px;
  margin: 0 0 24px;
  overflow-x: auto;
  padding: 24px;
  white-space: pre;
  line-height: 1.5;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none; }

blockquote {
  color: #1d1e1f;
  font-family: "Playfair Display", serif;
  font-size: 24px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.5;
  margin: 36px 0; }
  blockquote:first-child {
    margin-top: 0; }
  blockquote p {
    margin-bottom: 12px; }
    blockquote p:last-child {
      margin-bottom: 0; }
  blockquote small,
  blockquote cite {
    color: #b6b6b6;
    display: block;
    font-family: "Lato", sans-serif;
    font-size: 14px;
    font-style: normal;
    letter-spacing: 2px;
    margin-top: 12px;
    text-transform: uppercase; }

dl,
dd {
  margin: 0 0 24px; }

dt {
  font-weight: 700; }

ul,
ol {
  margin: 0 0 24px;
  padding: 0 0 0 24px; }

li > ul,
li > ol {
  margin-bottom: 0; }

hr {
  background-color: #eee;
  border: 0;
  height: 1px;
  margin: 24px 0; }

table {
  display: inline-block;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 24px;
  max-width: 100%;
  overflow-x: auto;
  text-align: left;
  width: auto; }

caption {
  color: #b6b6b6;
  font-style: italic;
  margin-bottom: 6px;
  text-align: left; }

th,
td {
  border-bottom: 1px solid #eee;
  padding: 8px 5px; }

th {
  color: #3a3b3d;
  font-weight: 700; }

/* Form fields */
label {
  color: #3a3b3d;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase; }

input,
select,
textarea {
  background: #fff;
  box-sizing: border-box;
  border: 1px solid #eee;
  border-radius: 0;
  color: #343434;
  font-family: "Lato", sans-serif;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.5;
  max-width: 100%;
  padding: 7px 10px;
  text-transform: none;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
  vertical-align: baseline; }
  input:focus,
  select:focus,
  textarea:focus {
    border-color: #b6b6b6;
    outline: 0; }

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
select,
textarea {
  display: block;
  width: 100%; }

button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.button {
  background-color: #9B0000;
  border: 1px solid #9B0000;
  border-radius: 0;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-family: "Lato", sans-serif;
  font-size: 12px;
  font-weight: 700;
  height: 40px;
  letter-spacing: 1px;
  line-height: 1.5;
  padding: 0 20px;
  text-transform: uppercase;
  -webkit-transition: .3s;
  transition: .3s;
  vertical-align: middle; }
  button:hover, button:focus, button:active,
  input[type="submit"]:hover,
  input[type="submit"]:focus,
  input[type="submit"]:active,
  input[type="button"]:hover,
  input[type="button"]:focus,
  input[type="button"]:active,
  input[type="reset"]:hover,
  input[type="reset"]:focus,
  input[type="reset"]:active,
  .button:hover,
  .button:focus,
  .button:active {
    background-color: #B20000;
    border-color: #B20000;
    color: #fff;
    outline: 0; }
  button.button-icon,
  input[type="submit"].button-icon,
  input[type="button"].button-icon,
  input[type="reset"].button-icon,
  .button.button-icon {
    line-height: 40px;
    padding: 0;
    width: 40px; }
  button.button-fancy,
  input[type="submit"].button-fancy,
  input[type="button"].button-fancy,
  input[type="reset"].button-fancy,
  .button.button-fancy {
    border-width: 2px;
    box-shadow: inset 0 0 0 1px #fff; }
  button.button-outlined,
  input[type="submit"].button-outlined,
  input[type="button"].button-outlined,
  input[type="reset"].button-outlined,
  .button.button-outlined {
    background: 0;
    color: #9B0000; }
    button.button-outlined:hover, button.button-outlined:focus, button.button-outlined:active,
    input[type="submit"].button-outlined:hover,
    input[type="submit"].button-outlined:focus,
    input[type="submit"].button-outlined:active,
    input[type="button"].button-outlined:hover,
    input[type="button"].button-outlined:focus,
    input[type="button"].button-outlined:active,
    input[type="reset"].button-outlined:hover,
    input[type="reset"].button-outlined:focus,
    input[type="reset"].button-outlined:active,
    .button.button-outlined:hover,
    .button.button-outlined:focus,
    .button.button-outlined:active {
      color: #B20000; }

a.button {
  padding-bottom: 10px;
  padding-top: 10px;
  text-align: center; }
  a.button.button-fancy {
    padding-bottom: 9px;
    padding-top: 9px; }

/* Placeholder text color */
::-webkit-input-placeholder {
  color: #b6b6b6; }

:-moz-placeholder {
  color: #b6b6b6; }

::-moz-placeholder {
  color: #b6b6b6;
  opacity: 1; }

:-ms-input-placeholder {
  color: #b6b6b6; }

/* Videos, audios and embeds */
embed,
iframe,
object,
video {
  max-width: 100%; }

:not(.kg-card) > .fluid-width-video-wrapper {
  margin: 0 0 24px; }

/* Images */
img {
  height: auto;
  max-width: 100%; }

/* Koenig cards */
.kg-card,
.caption {
  margin: 0 0 24px; }

.kg-card figcaption,
.caption-text {
  color: #b6b6b6;
  display: block;
  font-size: 14px;
  font-style: italic;
  line-height: 1.5;
  margin: 6px 0 0;
  text-align: left; }

.kg-bookmark-card {
  background: #f6f6f6;
  width: 100%; }

.kg-bookmark-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  color: #343434;
  min-height: 140px; }

.kg-bookmark-content {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-justify-content: start;
  -ms-flex-pack: start;
  justify-content: start;
  padding: 24px; }

.kg-bookmark-title {
  color: #1d1e1f;
  font-family: "Playfair Display", serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 12px;
  -webkit-transition: .3s;
  transition: .3s; }

.kg-bookmark-container:hover .kg-bookmark-title {
  color: #343434; }

.kg-bookmark-description {
  color: #343434;
  display: -webkit-box;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  max-height: 48px;
  overflow-y: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; }

.kg-bookmark-thumbnail {
  position: relative;
  min-width: 33%;
  max-height: 100%; }
  .kg-bookmark-thumbnail img {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%; }

.kg-bookmark-metadata {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #3a3b3d;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 18px; }

.kg-bookmark-icon {
  height: 24px;
  margin-right: 8px;
  width: 24px; }

.kg-bookmark-author:after {
  content: "\00b7";
  margin: 0 6px; }

.kg-bookmark-publisher {
  overflow: hidden;
  line-height: 1.5;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 240px; }

.kg-gallery-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 720px; }

.kg-gallery-row {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .kg-gallery-row:not(:first-of-type) {
    margin: 2px 0 0; }

.kg-gallery-image:not(:first-of-type) {
  margin: 0 0 0 2px; }
.kg-gallery-image img {
  cursor: zoom-in;
  display: block;
  height: 100%;
  margin: 0;
  width: 100%; }

.kg-width-full,
.kg-width-wide {
  margin: 0 0 24px; }

/* Footnotes */
.footnotes-list {
  color: #343434;
  font-size: 14px;
  line-height: 1.5; }

.footnote-item p {
  margin-bottom: 5px; }

/* Alignments */
.alignleft {
  float: left;
  margin: 6px 35px 12px 0;
  max-width: 48%; }

.alignright {
  float: right;
  margin: 6px 0 12px 35px;
  max-width: 48%; }

.alignleft p,
.alignright p {
  margin: 0; }

/* Icons */
.icon-arrow-left,
.icon-arrow-right,
.icon-arrow-up {
  background: 0;
  color: inherit;
  display: inline-block;
  height: 12px;
  position: relative;
  width: 12px; }
  .icon-arrow-left:before, .icon-arrow-left:after,
  .icon-arrow-right:before,
  .icon-arrow-right:after,
  .icon-arrow-up:before,
  .icon-arrow-up:after {
    border-color: currentColor;
    border-style: solid;
    border-width: 1px 1px 0 0;
    box-sizing: border-box;
    content: "";
    height: 6px;
    left: 50%;
    margin-left: -3px;
    margin-top: -3px;
    position: absolute;
    top: 50%;
    width: 6px; }

.icon-arrow-left:before, .icon-arrow-left:after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg); }
.icon-arrow-left:after {
  margin-left: 1px; }

.icon-arrow-right:before, .icon-arrow-right:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }
.icon-arrow-right:after {
  margin-left: -7px; }

.icon-arrow-up:before, .icon-arrow-up:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }
.icon-arrow-up:after {
  margin-top: 1px; }

.icon-close {
  background: 0;
  color: inherit;
  display: inline-block;
  height: 1px;
  position: relative;
  width: 20px; }
  .icon-close:before, .icon-close:after {
    background: currentColor;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%; }
  .icon-close:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .icon-close:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }

.icon-menu {
  background: currentColor;
  color: inherit;
  display: inline-block;
  height: 1px;
  position: relative;
  width: 16px; }
  .icon-menu:before, .icon-menu:after {
    background: currentColor;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0; }
  .icon-menu:before {
    margin-top: -5px; }
  .icon-menu:after {
    margin-top: 5px; }

.button-icon,
.widget-social a,
.share-post a {
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }

.button-icon svg,
.widget-social svg,
.share-post svg {
  fill: currentColor;
  height: 16px; }

.pagination .icon,
.top-link .icon {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.top-link,
.older-posts {
  padding-right: 14px; }
  .top-link .icon,
  .older-posts .icon {
    right: 0; }

.newer-posts {
  padding-left: 14px; }
  .newer-posts .icon {
    left: 0; }

.author-links svg {
  display: inline-block;
  fill: currentColor;
  height: 12px;
  margin-right: 3px;
  position: relative;
  top: 0.1em; }

/* Cover images */
.cover {
  position: relative; }

.cover-img {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

.archive-header .cover-img,
.error-template .cover-img {
  -webkit-animation-delay: .15s;
  animation-delay: .15s;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeTo20;
  animation-name: fadeTo20;
  opacity: .2; }

/* Highlight */
.highlight {
  color: #3a3b3d;
  font-weight: 700; }

/* Text meant only for screen readers */
.screen-reader-text,
.site-logo + .site-title {
  border: 0 none;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px; }

/* Clearing floats */
.post-content:after {
  clear: both; }

.post-content:before,
.post-content:after {
  content: "";
  display: table; }

/* Text selection */
::-moz-selection {
  background: #fdeae5;
  color: #1d1e1f;
  text-shadow: none; }

::selection {
  background: #fdeae5;
  color: #1d1e1f;
  text-shadow: none; }

@media only screen and (max-width: 640px) {
  h1 {
    font-size: 26px; }

  h2 {
    font-size: 22px; }

  h3,
  blockquote {
    font-size: 20px; }

  .alignleft,
  .alignright {
    clear: both;
    float: none;
    margin: 0 0 24px;
    max-width: none; } }
@media only screen and (max-width: 480px) {
  .kg-bookmark-container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }

  .kg-bookmark-thumbnail {
    min-height: 160px;
    order: 1;
    width: 100%; }

  .kg-bookmark-content {
    order: 2; }

  .kg-bookmark-description {
    display: block;
    max-height: none;
    overflow-y: visible;
    -webkit-line-clamp: none;
    -webkit-box-orient: inline-axis; } }
/**
 * 3. Structure
 */
.outer {
  padding-left: 30px;
  padding-right: 30px; }

.inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1050px; }

.inner-small {
  margin-left: auto;
  margin-right: auto;
  max-width: 720px; }

.site {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh;
  position: relative; }

.site-main {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1; }

.primary {
  padding-top: 48px;
  padding-bottom: 24px; }

@media only screen and (min-width: 781px) {
  .site-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding-bottom: 18px;
    padding-top: 18px; }

  .primary {
    -webkit-flex: 0 0 68.5%;
    -ms-flex: 0 0 68.5%;
    flex: 0 0 68.5%;
    overflow: hidden;
    padding-left: 35px;
    padding-top: 42px; }

  .widget-area {
    padding: 48px 0 24px;
    top: 0; }

  .right-sidebar .site-content {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row; }
  .right-sidebar .primary {
    padding-left: 0;
    padding-right: 35px; } }
@supports (position: sticky) or (position: -webkit-sticky) {
  @media only screen and (min-width: 781px) {
    .fixed-sidebar .widget-area {
      position: -webkit-sticky;
      position: sticky;
      top: 0; }
    .fixed-sidebar.fixed-nav .widget-area {
      top: 48px; } } }
@media only screen and (min-width: 961px) {
  .primary {
    border-left: 1px solid #eee; }

  .sidebar {
    padding-right: 35px; }

  .right-sidebar .primary {
    border-left: 0;
    border-right: 1px solid #eee; }
  .right-sidebar .sidebar {
    padding-left: 35px;
    padding-right: 0; } }
@media only screen and (max-width: 640px) {
  .outer {
    padding-left: 20px;
    padding-right: 20px; }

  .primary {
    padding-top: 36px; } }
/**
 * 4. Site Navigation
 */
.site-navigation {
  background-color: #fff;
  position: relative; }
  .site-navigation:after {
    background: rgba(255, 255, 255, 0.8);
    content: "";
    height: 100vh;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    -webkit-transition: opacity .25s, visibility 0s .25s;
    transition: opacity .25s, visibility 0s .25s;
    visibility: hidden;
    width: 100%; }

.fixed-nav .site-navigation {
  box-sizing: border-box;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100; }
.fixed-nav.is--scrolled .site-navigation {
  background-color: rgba(255, 255, 255, 0.95);
  border-bottom: 1px solid #eee; }

.site-nav-inside {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 9px;
  padding-top: 9px; }

.menu {
  list-style: none;
  padding: 0; }

.menu-item {
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.2;
  text-transform: uppercase; }
  .menu-item a {
    color: inherit;
    display: inline-block; }
    .menu-item a:hover {
      color: #9B0000; }

.site-navigation .menu-item {
  color: #3a3b3d; }

.actions {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin-bottom: 0;
  margin-left: auto;
  padding: 0; }
  .actions li {
    margin-left: 6px; }
  .actions .button-outlined {
    height: 30px;
    padding: 5px 8px; }
  .actions .button-icon {
    height: 30px;
    width: 30px; }

@media only screen and (min-width: 801px) {
  #menu-open,
  #menu-close {
    display: none; }

  .site-navigation .menu {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0; }
  .site-navigation .menu-item {
    border-left: 1px solid #eee;
    padding-left: 12px;
    padding-right: 12px; }
    .site-navigation .menu-item:first-child {
      border: 0;
      padding-left: 0; } }
@media only screen and (max-width: 800px) {
  #menu-open {
    background: 0;
    border: 0;
    color: #3a3b3d;
    height: 30px;
    padding: 0 0 0 21px;
    position: relative; }
    #menu-open .icon-menu {
      left: 0;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%); }

  .menu-wrap {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: #fff;
    border-right: 1px solid #eee;
    bottom: 0;
    left: -100%;
    max-width: 360px;
    -webkit-overflow-scrolling: touch;
    position: fixed;
    top: 0;
    -webkit-transition: left 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
    transition: left 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
    visibility: hidden;
    width: 100%;
    z-index: 9999; }

  .menu--opened {
    overflow: hidden; }
    .menu--opened .site-navigation:after {
      opacity: 1;
      -webkit-transition: opacity .25s;
      transition: opacity .25s;
      visibility: visible;
      z-index: 1; }
    .menu--opened .menu-wrap {
      left: 0;
      transition: left 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
      visibility: visible; }

  #menu-close {
    height: 30px;
    position: absolute;
    right: 9px;
    top: 9px;
    width: 30px; }

  .menu-scrollable {
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    position: relative; }

  .menu-inside {
    padding: 48px 9px 36px;
    position: relative; }

  .site-navigation .menu {
    border-top: 1px solid #eee; }
  .site-navigation .menu-item {
    border-bottom: 1px solid #eee;
    padding: 0 18px; }
    .site-navigation .menu-item a {
      display: block;
      padding: 12px 0; } }
@media only screen and (max-width: 360px) {
  .menu-wrap {
    border: 0; } }
/**
 * 5. Site Header
 */
.site-header {
  background: #fcfcfc;
  text-align: center; }
  .site-header .inner {
    max-width: 600px;
    padding-bottom: 0px;
    padding-top: 15px; }

.fixed-nav .site-header {
  padding-top: 48px; }

.site-title {
  color: #1d1e1f;
  font-family: "Playfair Display", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 24px; }
  .site-title:first-child:nth-last-child(2) {
    margin-bottom: 12px; }
  .site-title a {
    color: inherit;
    display: inline-block; }

.site-description {
  color: #3a3b3d;
  font-family: "Playfair Display", serif;
  font-size: 18px;
  font-style: italic; }

@media only screen and (max-width: 800px) {
  .site-header .inner {
    max-width: 450px; }

  .site-title {
    font-size: 30px; }

  .site-description {
    font-size: 16px; } }
@media only screen and (max-width: 640px) {
  .site-header .inner {
    padding-bottom: 36px;
    padding-top: 48px; }

  .site-title {
    font-size: 26px; } }
@media only screen and (max-width: 560px) {
  .site-header .inner {
    padding-bottom: 24px;
    padding-top: 36px; } }
/**
 * 6. Content
 * 6.1 Posts and Pages
 */
.post {
  margin-bottom: 48px; }

.post-feed .post {
  border-bottom: 1px solid #eee;
  padding-bottom: 36px; }

.post-header {
  margin-bottom: 24px; }

.post-thumbnail {
  display: block;
  margin-top: 24px; }

.post-tags {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.5;
  margin-bottom: 12px;
  text-transform: uppercase; }

.post-title {
  font-size: 30px;
  margin: 0 0 6px; }
  .post-title a {
    color: inherit; }
    .post-title a:hover {
      color: #343434; }

.post-meta {
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 24px; }
  .post-meta .sep {
    color: #b6b6b6;
    font-family: 'Playfair Display', serif;
    font-style: italic; }
  .post-meta a {
    color: inherit; }
    .post-meta a:hover {
      color: #9B0000; }

.post-feed .post-footer {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 24px 0 0; }

.read-more {
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  margin-right: 24px; }
  .read-more a.button {
    height: 36px;
    padding: 7px 15px; }

.share-post {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #3a3b3d;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  font-size: 14px;
  font-weight: 700; }
  .share-post a {
    color: #3a3b3d;
    height: 30px;
    line-height: 30px;
    margin: 0 0 0 3px;
    width: 30px; }
    .share-post a:hover {
      color: #343434; }

.post-template .share-post {
  margin-bottom: 48px;
  margin-top: 24px; }

.authors-box {
  background-color: #f6f6f6;
  border: 15px solid #f6f6f6;
  box-shadow: inset 0 0 0 1px #fff;
  margin-bottom: 48px;
  padding: 20px;
  position: relative; }

.authors-box-title {
  background: #fff;
  color: #3a3b3d;
  font-family: "Playfair Display", serif;
  font-size: 12px;
  font-weight: 700;
  left: 50%;
  letter-spacing: 1px;
  line-height: 1;
  padding: 3px 7px;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: 0;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.author-item {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin: 12px 0; }
  .author-item + .author-item {
    margin-top: 36px; }
  .author-item .author-avatar {
    -ms-flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 30px; }
  .author-item .avatar {
    border-radius: 50%;
    height: 80px;
    width: 80px; }

.author-title {
  font-size: 18px;
  margin: 0; }
  .author-title a {
    color: inherit; }
    .author-title a:hover {
      color: #343434; }

.author-description {
  font-style: italic;
  line-height: 1.5;
  margin: 12px 0 0; }

.author-links {
  color: #3a3b3d;
  font-size: 12px;
  letter-spacing: 1px;
  margin: 12px 0 0;
  text-transform: uppercase; }
  .author-links span {
    display: inline-block;
    margin-right: 10px;
    white-space: nowrap; }
  .author-links a {
    color: inherit;
    display: inline-block; }
    .author-links a:hover {
      color: #343434; }

/* Featured posts */
.hero {
  margin-top: 15px;
  position: relative; }
  .hero .post-tags {
    margin-bottom: 12px; }
  .hero .post-title {
    font-size: 24px; }
  .hero .sep {
    color: #343434; }

.slider-loading {
  background-color: #fff;
  height: 510px;
  position: relative; }
  .slider-loading:before {
    -webkit-animation-name: spin;
    animation-name: spin;
    -webkit-animation-duration: .7s;
    animation-duration: .7s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    box-sizing: border-box;
    border: 4px solid #b6b6b6;
    border-radius: 50%;
    border-right-color: transparent;
    border-top-color: transparent;
    content: "";
    height: 36px;
    left: 50%;
    margin: -18px 0 0 -18px;
    position: absolute;
    top: 50%;
    width: 36px; }

.featured-slider {
  display: none; }
  .featured-slider .slick-slide {
    height: 510px;
    margin: 0 7px;
    position: relative;
    width: 1050px; }
  .featured-slider .cover-img {
    opacity: .5;
    transition: opacity 1s ease; }
  .featured-slider .slide-inside {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    text-align: center; }
  .featured-slider .slide-overlay {
    border: 14px solid rgba(255, 255, 255, 0.8);
    margin-left: auto;
    margin-right: auto;
    max-width: 80%;
    opacity: 0;
    padding: 1px;
    transition: opacity 1s ease; }
  .featured-slider .slide-content {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 30px; }
  .featured-slider .slick-center .cover-img,
  .featured-slider .slick-center .slide-overlay {
    opacity: 1; }

/* Archive pages */
.tag-template .site-header,
.author-template .site-header {
  padding-bottom: 120px; }
.tag-template .site-main,
.author-template .site-main {
  margin-top: -132px; }

.archive-header {
  background: #fcfcfc;
  border-style: solid;
  border-width: 15px 15px 0 15px;
  border-color: #fff;
  margin-left: -15px;
  margin-right: -15px; }

.archive-header-inside {
  border: 15px solid transparent;
  box-shadow: inset 0 0 0 1px #fff;
  color: #3a3b3d;
  padding: 24px 30px 36px;
  position: relative;
  text-align: center; }

.archive-meta {
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.5;
  margin-bottom: 12px;
  text-transform: uppercase; }

.archive-title {
  font-size: 30px;
  margin: 0; }

.archive-description {
  font-size: 18px;
  font-style: italic;
  margin: 18px 0 0; }

.archive-header .author-avatar {
  margin: 0 0 24px; }
.archive-header .avatar {
  border-radius: 50%;
  height: 125px;
  width: 125px; }
.archive-header .author-links {
  margin: 18px 0 0; }
  .archive-header .author-links span {
    margin-left: 5px;
    margin-right: 5px; }

/* Authors page */
.authors-list:not(:first-child) {
  margin-top: 36px; }
.authors-list .author-item {
  margin: 0 0 24px; }
  .authors-list .author-item + .author-item {
    margin-top: 36px; }
.authors-list .avatar {
  height: 125px;
  width: 125px; }

@media only screen and (max-width: 780px) {
  .featured-slider .slick-slide {
    margin: 0; } }
@media only screen and (max-width: 640px) {
  .post-feed .post {
    padding-bottom: 24px; }

  .post-title,
  .archive-title {
    font-size: 26px; }

  .archive-description {
    font-size: 16px; }

  .authors-box {
    border-width: 10px; }

  .authors-box-title {
    padding-bottom: 1px;
    padding-top: 1px; }

  .author-item .author-avatar {
    margin-right: 24px; }

  .tag-template .site-header,
  .author-template .site-header {
    padding-bottom: 90px; }
  .tag-template .site-main,
  .author-template .site-main {
    margin-top: -90px; }

  .archive-header {
    border-width: 10px 10px 0 10px;
    margin-left: -10px;
    margin-right: -10px; }

  .archive-header-inside {
    border-width: 10px;
    padding-left: 15px;
    padding-right: 15px; }

  .slider-loading,
  .featured-slider .slick-slide {
    height: 400px; }

  .hero {
    margin-top: 10px; }
    .hero .post-title {
      font-size: 22px; }
    .hero .post-meta {
      margin: 0; }
    .hero .read-more {
      display: none; }

  .featured-slider .slide-overlay {
    border-width: 10px; }
  .featured-slider .slide-content {
    padding: 24px; } }
@media only screen and (max-width: 560px) {
  .archive-title {
    font-size: 22px; }

  .slider-loading,
  .featured-slider .slick-slide {
    height: 320px; }

  .featured-slider .slide-content {
    padding-left: 18px;
    padding-right: 18px; } }
@media only screen and (max-width: 480px) {
  .authors-box {
    padding-left: 15px;
    padding-right: 15px; }

  .author-item {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center; }
    .author-item .author-avatar {
      margin: 0 0 18px; } }
/**
 * 6.2 Comments
 */
.comments-area {
  border-top: 1px solid #eee;
  margin-bottom: 48px;
  padding-top: 24px; }

.comments-title {
  font-size: 21px;
  margin: 0 0 36px; }

/**
 * 6.3 Pagination
 */
.pagination {
  color: #b6b6b6;
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 48px;
  text-align: center; }

.page-number {
  display: block; }

.newer-posts,
.older-posts {
  color: #343434;
  display: inline-block;
  font-size: 12px;
  letter-spacing: 2px;
  line-height: 1.75;
  position: relative;
  text-transform: uppercase; }
  .newer-posts:hover,
  .older-posts:hover {
    color: #9B0000; }

.newer-posts {
  margin-bottom: 12px; }

.older-posts {
  margin-top: 12px; }

@media only screen and (min-width: 361px) {
  .pagination {
    padding: 0 90px;
    position: relative; }

  .newer-posts,
  .older-posts {
    margin: 0;
    position: absolute;
    top: 0; }

  .newer-posts {
    left: 0; }

  .older-posts {
    right: 0; } }
/**
 * 6.4 Post Navigation
 */
.post-navigation {
  margin-bottom: 24px; }

.nav-next,
.nav-previous {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 24px; }

.nav-next + .nav-previous {
  border-top: 1px solid #eee;
  padding-top: 24px; }

.nav-inside {
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto; }

.nav-before {
  font-size: 12px;
  letter-spacing: 1px;
  margin-bottom: 6px;
  text-transform: uppercase; }

.nav-title {
  font-size: 18px;
  margin: 0 0 6px; }
  .nav-title a {
    color: inherit; }
    .nav-title a:hover {
      color: #343434; }

.nav-meta {
  font-size: 14px; }
  .nav-meta .sep {
    color: #b6b6b6;
    font-family: "Playfair Display", serif;
    font-style: italic; }

.nav-thumb {
  border-radius: 50%;
  display: block;
  -ms-flex: 0 0 auto;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  height: 96px;
  margin-left: 24px;
  position: relative;
  width: 96px; }
  .nav-thumb img {
    border-radius: 50%;
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%; }

@media only screen and (max-width: 640px) {
  .nav-title {
    font-size: 16px; } }
/**
 * 7. Error Template
 */
.error-template {
  background: #fcfcfc;
  min-height: 100vh; }
  .error-template .site {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .error-template .site-main {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto; }
  .error-template .site-content {
    background: #fff;
    border: 15px solid #fff;
    box-shadow: inset 0 0 0 1px #eee;
    margin-bottom: 60px;
    margin-top: 60px;
    padding: 60px 30px 36px;
    text-align: center; }
  @media only screen and (max-width: 640px) {
    .error-template .site-content {
      border-width: 10px;
      padding: 48px 15px 24px; } }

/**
 * 8. Widgets
 */
.widget {
  font-size: 14px;
  margin-bottom: 48px; }
  .widget input[type="text"],
  .widget input[type="email"],
  .widget input[type="url"],
  .widget input[type="password"],
  .widget input[type="search"],
  .widget select,
  .widget textarea {
    font-size: 14px; }
  .widget button[type="submit"],
  .widget input[type="submit"] {
    width: 100%; }

.widget-title {
  font-size: 16px;
  letter-spacing: 1px;
  margin: 0 0 24px;
  overflow: hidden;
  text-align: center;
  text-transform: uppercase; }
  .widget-title:before, .widget-title:after {
    background-color: #eee;
    content: "";
    display: inline-block;
    height: 1px;
    position: relative;
    vertical-align: middle;
    width: 50%; }
  .widget-title:before {
    right: 15px;
    margin-left: -50%; }
  .widget-title:after {
    left: 15px;
    margin-right: -50%; }

/* Social links */
.widget-social .social-links {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }
.widget-social a {
  color: #3a3b3d;
  height: 30px;
  line-height: 30px;
  margin: 0 3px 6px;
  width: 30px; }
  .widget-social a:hover {
    color: #343434; }
.widget-social svg {
  height: 16px; }

/* Latest posts */
.widget-recent-posts ul {
  list-style: none;
  padding: 0; }
.widget-recent-posts li {
  margin-bottom: 18px; }
.widget-recent-posts .recent-title {
  font-family: "Lato", sans-serif;
  font-size: 14px;
  margin: 0 0 3px; }
.widget-recent-posts a {
  color: inherit; }
  .widget-recent-posts a:hover {
    color: #343434; }
.widget-recent-posts .recent-date {
  font-size: 12px; }

/* Tagcloud */
.widget-tags a {
  border: 1px solid #eee;
  color: #9B0000;
  display: inline-block;
  font-size: 11px;
  letter-spacing: 1px;
  line-height: 1.5;
  margin: 0 6px 8px 0;
  padding: 7px 10px;
  text-transform: uppercase;
  transition: .3s; }
  .widget-tags a:hover {
    border-color: #B20000;
    color: #B20000; }

/* RWD */
@media only screen and (max-width: 780px) {
  .widget {
    margin-left: auto;
    margin-right: auto;
    max-width: 480px;
    text-align: center; } }
/**
 * 9. Site Footer
 */
.site-footer {
  border-top: 1px solid #eee;
  color: #343434;
  padding-bottom: 24px;
  padding-top: 24px;
  text-align: center; }

.footer-navigation .menu-item {
  margin: 0 0 12px; }

.site-info {
  font-size: 12px;
  line-height: 1.5;
  margin: 0 0 12px; }
  .site-info a {
    color: inherit; }
    .site-info a:hover {
      color: #9B0000; }

.top-link {
  color: inherit;
  display: inline-block;
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.2;
  margin: 0 0 12px;
  position: relative;
  text-transform: uppercase; }
  .top-link:hover {
    color: #9B0000; }

@media only screen and (min-width: 481px) {
  .footer-navigation .menu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 12px; }
  .footer-navigation .menu-item {
    border-left: 1px solid #eee;
    padding: 0 8px; }
    .footer-navigation .menu-item:first-child {
      border: 0; } }
@media only screen and (min-width: 641px) {
  .site-footer {
    text-align: left; }
    .site-footer .inner {
      box-sizing: border-box;
      padding-right: 120px;
      position: relative; }

  .footer-navigation .menu {
    -webkit-justify-content: start;
    -ms-flex-pack: start;
    justify-content: start; }
  .footer-navigation .menu-item:first-child {
    padding-left: 0; }

  .top-link {
    margin: 0;
    position: absolute;
    right: 0;
    top: 0; } }
/**
 * 10. Site Search
 */
.site-search {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: #fff;
  bottom: 0;
  -webkit-overflow-scrolling: touch;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
  transition: -webkit-transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
  transition: transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
  visibility: hidden;
  width: 100%;
  z-index: 9999; }

.search--opened {
  overflow: hidden; }
  .search--opened .site-search {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
    transition: transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
    visibility: visible; }

.search-scrollable {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  position: relative; }

.search-inside {
  padding-bottom: 60px;
  padding-top: 120px;
  position: relative; }

#search-close {
  position: absolute;
  right: 9px;
  top: 9px; }

#search-field {
  border-width: 0 0 1px 0;
  color: #1d1e1f;
  display: block;
  font-size: 30px;
  font-weight: 700;
  height: 72px;
  padding: 8px 0; }

.search-info {
  color: #b6b6b6;
  font-size: 14px;
  margin: 12px 0 36px; }

.result-item {
  color: #b6b6b6;
  display: block;
  margin-bottom: 18px; }
  .result-item .result-title {
    color: #1d1e1f;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 6px;
    transition: color .3s; }
  .result-item .result-meta {
    font-size: 14px; }
  .result-item:hover {
    color: #b6b6b6; }
    .result-item:hover .result-title {
      color: #343434; }

@media only screen and (max-width: 640px) {
  #search-close {
    right: 0;
    top: 0; }

  #search-field {
    font-size: 26px; } }
@media only screen and (max-width: 480px) {
  #search-close {
    height: 30px;
    width: 30px; } }
/**
 * 11. Members
 */
/* Member forms */
form[data-members-form] .button {
  margin: 12px 0 0;
  position: relative;
  width: 100%; }
form[data-members-form] .button-content {
  position: relative;
  -webkit-transition: padding .3s;
  transition: padding .3s;
  white-space: nowrap; }
form[data-members-form] .message {
  display: none;
  font-size: 14px;
  margin-top: 12px; }
form[data-members-form] .message-signup-success,
form[data-members-form] .message-signin-success {
  color: #3a3b3d; }
form[data-members-form] .message-invalid,
form[data-members-form] .message-error {
  color: #9B0000; }
form[data-members-form].loading .button-content {
  padding-right: 20px; }
  form[data-members-form].loading .button-content:after {
    -webkit-animation-name: fadeIn, spin;
    animation-name: fadeIn, spin;
    -webkit-animation-duration: .3s, .7s;
    animation-duration: .3s, .7s;
    -webkit-animation-iteration-count: 1, infinite;
    animation-iteration-count: 1, infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    box-sizing: border-box;
    border: 2px solid rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    border-right-color: transparent;
    border-top-color: transparent;
    content: "";
    height: 16px;
    margin-top: -8px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 16px; }
form[data-members-form].invalid .message-invalid, form[data-members-form].error .message-error {
  display: block; }
form[data-members-form].success.signup-form .message-signup-success, form[data-members-form].success.subscribe-form .message-signup-success {
  display: block; }
form[data-members-form].success.signin-form .message-signin-success {
  display: block; }

/* Notifications */
.notification {
  background: #9B0000;
  box-sizing: border-box;
  color: #fff;
  left: 0;
  line-height: 1.5;
  padding: 12px 75px 12px 30px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transform: translateY(-150%);
  transform: translateY(-150%);
  -webkit-transition: -webkit-transform .35s ease-in-out .5s, visibility .35s ease-in-out .5s;
  -webkit-transition: transform .35s ease-in-out .5s, visibility .35s ease-in-out .5s;
  transition: transform .35s ease-in-out .5s, visibility .35s ease-in-out .5s;
  visibility: hidden;
  z-index: 99999; }
  .notification .notification-close {
    background: 0;
    border: 0;
    color: #fff;
    height: 30px;
    position: absolute;
    right: 30px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 30px; }

.subscribe-success .notification-subscribe,
.signup-success .notification-signup,
.signin-success .notification-signin,
.checkout-success .notification-checkout {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  visibility: visible; }
  .subscribe-success .notification-subscribe.closed,
  .signup-success .notification-signup.closed,
  .signin-success .notification-signin.closed,
  .checkout-success .notification-checkout.closed {
    -webkit-transform: translateY(-150%);
    transform: translateY(-150%);
    visibility: hidden; }

/* Member signin/signout panel */
.member-menu {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: #fff;
  border-left: 1px solid #eee;
  bottom: 0;
  right: -100%;
  max-width: 360px;
  -webkit-overflow-scrolling: touch;
  position: fixed;
  top: 0;
  -webkit-transition: right 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
  transition: right 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), visibility 0s 0.3s;
  visibility: hidden;
  width: 100%;
  z-index: 9999; }

.member--menu--opened {
  overflow: hidden; }
  .member--menu--opened .site-navigation:after {
    opacity: 1;
    -webkit-transition: opacity .25s;
    transition: opacity .25s;
    visibility: visible;
    z-index: 1; }
  .member--menu--opened .member-menu {
    right: 0;
    -webkit-transition: right 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
    transition: right 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
    visibility: visible; }

#member-menu-close {
  height: 30px;
  position: absolute;
  right: 9px;
  top: 9px;
  width: 30px; }

.member-menu-scrollable {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  position: relative; }

.member-menu-inside {
  padding: 48px 9px 36px;
  position: relative;
  text-align: center; }

.member-menu-info {
  border-bottom: 1px solid #eee;
  color: #3a3b3d;
  margin-bottom: 24px;
  padding: 12px 18px; }

.member-menu-actions {
  list-style: none;
  padding: 0; }
  .member-menu-actions li {
    margin: 0 0 12px;
    padding: 0 18px; }
  .member-menu-actions .button {
    display: block;
    height: 40px;
    padding: 10px 12px; }

/* Member templates */
.site-members .primary {
  text-align: center; }
.site-members .page-content {
  margin-bottom: 48px; }
.site-members form[data-members-form] {
  margin-top: 36px; }

.membership-plans {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: -15px;
  margin-right: -15px; }
  .membership-plans:not(:first-child) {
    margin-top: 36px; }

.membership-plan {
  border: 1px solid #eee;
  box-sizing: border-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 1 0 240px;
  -ms-flex: 1 0 240px;
  flex: 1 0 240px;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 0 15px 24px;
  padding: 24px; }

.membership-plan-header {
  margin-bottom: 24px; }
  .membership-plan-header h2 {
    font-size: 30px;
    margin: 0 0 12px; }
  .membership-plan-header small {
    color: #3a3b3d;
    font-size: 32px;
    line-height: 1.2; }

.membership-plan-content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  line-height: 1.5;
  text-align: left; }
  .membership-plan-content ul,
  .membership-plan-content ol {
    list-style: none;
    padding: 0; }
  .membership-plan-content li {
    margin-bottom: 6px;
    padding-left: 20px;
    position: relative; }
    .membership-plan-content li:before {
      background: #9B0000;
      box-sizing: border-box;
      content: "";
      display: inline-block;
      height: 6px;
      left: 0;
      position: absolute;
      top: 9px;
      width: 6px; }

.membership-plan-footer {
  margin-top: 12px; }
  .membership-plan-footer .button {
    display: block;
    padding-left: 10px;
    padding-right: 10px; }

.account-info {
  border: 1px solid #eee;
  padding: 30px; }
  .account-info:not(:first-child) {
    margin-top: 36px; }
  .account-info h2 {
    font-size: 16px;
    letter-spacing: 1px;
    text-transform: uppercase; }

.account-detail-label {
  font-size: 12px;
  margin-right: 6px; }

.account-notification {
  font-size: 18px;
  font-style: italic; }

.account-cancel {
  margin-top: 18px; }
  .account-cancel:not(:last-child) {
    margin-bottom: 36px; }
  .account-cancel .cancel-error {
    color: #9B0000;
    display: block; }

/* Members only posts */
.post-excerpt {
  position: relative; }
  .post-excerpt:before {
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, white 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, white 100%);
    bottom: 0;
    content: "";
    height: 90%;
    left: 0;
    position: absolute;
    right: 0; }

.subscribe-box {
  background: #fcfcfc;
  border: 15px solid #fcfcfc;
  box-shadow: inset 0 0 0 1px #fff;
  margin-top: 48px;
  margin-bottom: 48px;
  padding: 30px 20px;
  text-align: center; }
  .subscribe-box.paid .subscribe-box-members {
    display: none; }
  .subscribe-box.members .subscribe-box-paid {
    display: none; }
  .subscribe-box .button {
    margin-bottom: 12px; }
  .subscribe-box .note {
    font-size: 14px;
    margin: 0; }
    .subscribe-box .note a {
      color: #3a3b3d; }
      .subscribe-box .note a:hover {
        color: #9B0000; }

.subscribe-box-title {
  font-size: 21px;
  margin-bottom: 12px; }

@media only screen and (min-width: 481px) {
  .subscribe-box form[data-members-form] .form-group,
  .page-content form[data-members-form] .form-group {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; }
  .subscribe-box form[data-members-form] .subscribe-email,
  .page-content form[data-members-form] .subscribe-email {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto; }
  .subscribe-box form[data-members-form] .button,
  .page-content form[data-members-form] .button {
    margin: 0 0 0 12px;
    min-width: 180px;
    width: auto; } }
@media only screen and (min-width: 781px) {
  .site-members.site-content {
    padding-bottom: 0;
    padding-top: 0; }
  .site-members .primary {
    border: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    padding: 48px 0 24px; } }
@media only screen and (max-width: 640px) {
  .notification {
    padding-left: 20px;
    padding-right: 65px; }
    .notification .notification-close {
      right: 20px; }

  .membership-plans {
    margin-left: -10px;
    margin-right: -10px; }

  .membership-plan {
    margin-left: 10px;
    margin-right: 10px; }

  .membership-plan-header h2 {
    font-size: 26px; }
  .membership-plan-header small {
    font-size: 28px; }

  .account-info {
    padding: 24px; }

  .account-notification {
    font-size: 16px; }

  .subscribe-box {
    border-width: 10px; }

  .subscribe-box-title {
    font-size: 18px; } }
@media only screen and (max-width: 480px) {
  .subscribe-box {
    padding-left: 15px;
    padding-right: 15px; } }
@media only screen and (max-width: 360px) {
  .member-menu {
    border: 0; } }
/**
 * 12. Structure
 */
@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg); } }
@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeTo20 {
  0% {
    opacity: 0; }
  100% {
    opacity: .2; } }
@keyframes fadeTo20 {
  0% {
    opacity: 0; }
  100% {
    opacity: .2; } }
/**
 * 12. Rainbow Code Highlighter
 * https://craig.is/making/rainbows
 */
pre .constant {
  color: #66cc33; }
pre .storage,
pre .keyword,
pre .selector {
  color: #cc7833; }
pre .string {
  color: #3387cc; }
pre .support {
  color: #c83730; }
pre .comment,
pre .support.tag {
  color: #858585; }
pre .support.tag-name,
pre .support.css-value,
pre .keyword.operator,
pre .keyword.unit,
pre .constant.numeric,
pre .constant.language,
pre .constant.hex-color {
  color: #3a3b3d; }

/**
 * 13. Slick Carousel
 * https://kenwheeler.github.io/slick/
 */
.slick-slider {
  box-sizing: border-box;
  display: block;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  display: block;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: relative; }

.slick-list:focus,
.slick-slide:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  display: block;
  left: 0;
  position: relative;
  top: 0; }

.slick-track:before,
.slick-track:after {
  content: '';
  display: table; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  border: 1px solid transparent;
  display: block;
  height: auto; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 1; }

.slick-prev {
  left: 0; }

.slick-next {
  right: 0; }

.slick-dots {
  bottom: 12px;
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  text-align: center;
  width: 100%; }
  .slick-dots li {
    display: inline-block;
    margin: 0 3px;
    position: relative; }
  .slick-dots button {
    background-color: transparent;
    border: 0;
    color: transparent;
    font-size: 0;
    height: 20px;
    line-height: 0;
    margin: 0;
    padding: 0;
    position: relative;
    width: 20px; }
    .slick-dots button:before {
      background-color: rgba(255, 255, 255, 0.6);
      border-radius: 100%;
      content: "";
      height: 6px;
      left: 8px;
      position: absolute;
      top: 8px;
      width: 6px; }
  .slick-dots .slick-active button:before {
    background-color: #fff; }

/**
 * 15. SimpleLightbox
 * https://github.com/andreknieriem/simplelightbox
 */
body.hidden-scroll {
  overflow: hidden; }

.sl-overlay {
  background: #fff;
  bottom: 0;
  display: none;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1035; }

.sl-wrapper {
  z-index: 1040; }
  .sl-wrapper button {
    height: 40px;
    padding: 0;
    width: 40px; }
    .sl-wrapper button .icon {
      left: 50%;
      position: absolute;
      right: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .sl-wrapper .sl-close {
    display: none;
    position: fixed;
    right: 9px;
    top: 9px;
    z-index: 1060; }
  .sl-wrapper .sl-navigation {
    display: none;
    width: 100%; }
  .sl-wrapper .sl-next,
  .sl-wrapper .sl-prev {
    display: block;
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1060; }
  .sl-wrapper .sl-next {
    right: 9px; }
  .sl-wrapper .sl-prev {
    left: 9px; }
  .sl-wrapper .sl-counter {
    color: #3a3b3d;
    bottom: 12px;
    display: none;
    font-size: 12px;
    letter-spacing: 1px;
    position: fixed;
    right: 9px;
    text-transform: uppercase;
    z-index: 1060; }
  .sl-wrapper .sl-current {
    padding-right: 3px; }
  .sl-wrapper .sl-total {
    padding-left: 3px; }
  .sl-wrapper .sl-image {
    position: fixed;
    -ms-touch-action: none;
    touch-action: none;
    z-index: 10000; }
    .sl-wrapper .sl-image img {
      border: 0;
      display: block;
      margin: 0;
      padding: 0; }

.sl-scrollbar-measure {
  height: 50px;
  overflow: scroll;
  position: absolute;
  top: -9999px;
  width: 50px; }

.sl-spinner {
  -webkit-animation-name: spin;
  animation-name: spin;
  -webkit-animation-duration: .7s;
  animation-duration: .7s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  border: 4px solid #b6b6b6;
  border-radius: 50%;
  border-right-color: transparent;
  border-top-color: transparent;
  box-sizing: border-box;
  height: 36px;
  left: 50%;
  margin: -18px 0 0 -18px;
  position: fixed;
  top: 50%;
  width: 36px;
  z-index: 1007; }

@media only screen and (max-width: 640px) {
  .sl-wrapper .sl-close {
    right: 0;
    top: 0; }
  .sl-wrapper .sl-next {
    right: 0; }
  .sl-wrapper .sl-prev {
    left: 0; } }
@media only screen and (max-width: 480px) {
  .sl-wrapper button {
    height: 30px;
    width: 30px; } }
