@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

body {
  line-height: 1; }

blockquote,
q {
  quotes: none; }

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

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

img {
  max-width: 100%; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

a {
  background-color: transparent; }

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

b,
strong {
  font-weight: bold; }

i,
em,
dfn {
  font-style: italic; }

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

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

mark {
  background-color: #fdffb6; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  /* 3 */
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */ }

button {
  overflow: visible;
  border: none; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  /* 3 */
  -webkit-appearance: button;
  /* 2 */ }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0; }

input {
  line-height: normal; }

input:focus {
  outline: none; }

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

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

input[type="search"] {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 2 */
  -webkit-appearance: textfield;
  /* 1 */ }

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

legend {
  padding: 0;
  /* 2 */
  border: 0;
  /* 1 */ }

textarea {
  overflow: auto; }

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

td,
th {
  padding: 0; }

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  overflow-x: hidden;
  overflow-y: scroll;
  font-size: 62.5%;
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  color: #333333;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  overflow-x: hidden;
  font-size: 1.6rem;
  line-height: 1.6em;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-font-feature-settings: "liga" on; }

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

textarea {
  resize: vertical; }

p,
ul,
ol,
dl,
blockquote {
  margin: 0 0 1.5em 0; }

ol,
ul {
  padding-left: 1.3em;
  padding-right: 1.5em; }

ol ol,
ul ul,
ul ol,
ol ul {
  margin: 0.5em 0 1em; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

ul,
ol {
  /*max-width: 100%;*/ }

li {
  margin: 0.5em 0;
  padding-left: 0.3em;
  line-height: 1.6em; }

dt {
  float: left;
  margin: 0 20px 0 0;
  width: 120px;
  color: #15171A;
  font-weight: 500;
  text-align: right; }

dd {
  margin: 0 0 5px 0;
  text-align: left; }

blockquote {
  margin: 1.5em 0;
  padding: 0 1.6em 0 1.6em;
  border-left: #e5eff5 0.3em solid;
  font-size: 1em;
  font-style: italic;
  line-height: 1.6em; }

blockquote p {
  margin: 0.8em 0;
  font-size: 1.2em;
  font-weight: 300; }

blockquote small {
  display: inline-block;
  margin: 0.8em 0 0.8em 1.5em;
  font-size: 0.9em;
  opacity: 0.8; }

/* Quotation marks */
blockquote small:before {
  content: "\2014 \00A0"; }

blockquote cite {
  font-weight: bold; }

blockquote cite a {
  font-weight: normal; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  line-height: 1.15;
  font-weight: 700;
  text-rendering: optimizeLegibility; }

h1 {
  margin: 0 0 0.5em 0;
  font-size: 5rem;
  font-weight: 700; }

@media (max-width: 500px) {
  h1 {
    font-size: 2.2rem; } }

h2 {
  margin: 1.5em 0 0.5em 0;
  font-size: 2rem; }

@media (max-width: 500px) {
  h2 {
    font-size: 1.8rem; } }

h3 {
  margin: 1.5em 0 0.5em 0;
  font-size: 1.8rem;
  font-weight: 500; }

@media (max-width: 500px) {
  h3 {
    font-size: 1.7rem; } }

h4 {
  margin: 1.5em 0 0.5em 0;
  font-size: 1.6rem;
  font-weight: 500; }

h5 {
  margin: 1.5em 0 0.5em 0;
  font-size: 1.4rem;
  font-weight: 500; }

h6 {
  margin: 1.5em 0 0.5em 0;
  font-size: 1.4rem;
  font-weight: 500; }

a {
  text-decoration: none;
  color: #0cd5b1;
  cursor: pointer; }
  a:focus {
    outline: none; }
  a:hover {
    color: #333333 !important; }

header a:hover {
  color: #0DD5B2 !important;
  border-bottom: none !important; }

button {
  outline: none;
  cursor: pointer;
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif; }

img {
  height: auto; }

img {
  max-width: 100%; }

hr {
  position: relative;
  display: block;
  width: 60px;
  margin: 40px auto;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid lightgrey; }

table {
  width: 100%;
  background-color: inherit;
  border-collapse: collapse;
  border-spacing: 0;
  background: white;
  border: none;
  overflow: hidden;
  margin: 1.7em 0; }

tbody tr {
  border-bottom: 1px solid #d5d5d5;
  text-align: left; }
  tbody tr:hover {
    background: #f7f7f7; }
  tbody tr:last-child {
    border-bottom: none; }

thead tr {
  background: #e6e6e6;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 1px;
  text-align: left;
  border-bottom: none; }
  thead tr th {
    font-weight: unset;
    padding: 7px 15px;
    font-weight: 500; }

tfoot tr {
  background: #e6e6e6;
  border-bottom: none; }

td {
  font-weight: unset;
  padding: 10px 15px; }

.hidden {
  display: none !important; }

.button-type-1 {
  background: transparent;
  border: 2px solid #333333;
  border-radius: 20px;
  padding: 10px 20px;
  font-size: 14px;
  color: #333333;
  font-weight: 600; }
  .button-type-1:hover {
    border-color: #0cd5b1;
    color: #0cd5b1; }

.button {
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizelegibility;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
  font-weight: 500;
  position: relative;
  font-size: 14px;
  line-height: 16px;
  height: 40px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
  border: none !important;
  border-color: initial;
  -o-border-image: none;
     border-image: none;
  -o-border-image: initial;
     border-image: initial;
  outline: none;
  border-radius: .25rem;
  padding: 0 1.3rem; }

.button--green {
  color: #fff !important;
  -webkit-box-shadow: inset 0 0 0 1px rgba(33, 37, 41, 0.2), inset 0 -1px 1px 0 rgba(33, 37, 41, 0.2);
          box-shadow: inset 0 0 0 1px rgba(33, 37, 41, 0.2), inset 0 -1px 1px 0 rgba(33, 37, 41, 0.2);
  background: -webkit-gradient(linear, left bottom, left top, from(#2f9e44), to(#63d178)) #2f9e44;
  background: linear-gradient(0deg, #2f9e44, #63d178) #2f9e44; }

.button--primary {
  background: -webkit-gradient(linear, left bottom, left top, from(#4b0082), to(#7e40ab)) #4b0082;
  background: linear-gradient(0deg, #4b0082, #7e40ab) #4b0082;
  -webkit-box-shadow: inset 0 0 0 1px rgba(33, 37, 41, 0.2), inset 0 -1px 1px 0 rgba(33, 37, 41, 0.2);
          box-shadow: inset 0 0 0 1px rgba(33, 37, 41, 0.2), inset 0 -1px 1px 0 rgba(33, 37, 41, 0.2);
  color: white !important; }

.button--white {
  background-color: #fff;
  color: #212529 !important;
  background: -webkit-gradient(linear, left bottom, left top, from(#f1f3f5), to(#fff));
  background: linear-gradient(0deg, #f1f3f5, #fff);
  -webkit-box-shadow: inset 0 0 0 1px rgba(33, 37, 41, 0.2), inset 0 -1px 1px 0 rgba(33, 37, 41, 0.1);
          box-shadow: inset 0 0 0 1px rgba(33, 37, 41, 0.2), inset 0 -1px 1px 0 rgba(33, 37, 41, 0.1); }

.button--red {
  color: white !important;
  -webkit-box-shadow: rgba(33, 37, 41, 0.2) 0px 0px 0px 1px inset, rgba(33, 37, 41, 0.2) 0px -1px 1px 0px inset;
          box-shadow: rgba(33, 37, 41, 0.2) 0px 0px 0px 1px inset, rgba(33, 37, 41, 0.2) 0px -1px 1px 0px inset;
  text-decoration: none;
  background: -webkit-gradient(linear, left bottom, left top, from(#e03131), to(#eb7878)) #e03131;
  background: linear-gradient(to top, #e03131, #eb7878) #e03131; }

.button--orange {
  color: #212529 !important;
  -webkit-box-shadow: rgba(33, 37, 41, 0.2) 0px 0px 0px 1px inset, rgba(33, 37, 41, 0.2) 0px -1px 1px 0px inset;
          box-shadow: rgba(33, 37, 41, 0.2) 0px 0px 0px 1px inset, rgba(33, 37, 41, 0.2) 0px -1px 1px 0px inset;
  text-decoration: none;
  background: -webkit-gradient(linear, left bottom, left top, from(#f08c00), to(#ffb751)) #f08c00;
  background: linear-gradient(to top, #f08c00, #ffb751) #f08c00; }

.button-with-icon {
  padding: 7px 17px;
  padding-right: 14px; }
  .button-with-icon .button-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .button-with-icon .button-wrapper span {
      display: block; }
    .button-with-icon .button-wrapper span.icon {
      width: 24px;
      height: 24px; }
      .button-with-icon .button-wrapper span.icon svg {
        width: 100%;
        height: 100%;
        stroke-width: 2; }

.wrapper-full {
  width: 100%;
  max-width: none;
  padding: 0 45px; }

@media (max-width: 800px) {
  .wrapper-full {
    padding: 0 20px; } }

.wrapper-1280 {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto; }

@media (max-width: 1280px) {
  .wrapper-1280 {
    padding: 0 20px; } }

.wrapper-1120 {
  width: 100%;
  max-width: 1150px;
  margin: 0 auto;
  padding: 0 30px; }

@media (max-width: 600px) {
  .wrapper-1120 {
    padding: 0 20px; } }

.wrapper-1000 {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto; }

@media (max-width: 1200px) {
  .wrapper-1000 {
    padding: 0 20px; } }

.wrapper-700 {
  width: 100%;
  max-width: 790px;
  margin: 0 auto;
  padding: 0 20px; }

@media (max-width: 750px) {
  .wrapper-700 {
    padding: 0 20px; } }

.back-button {
  height: 65px;
  width: 65px; }
  .back-button button {
    display: block;
    text-decoration: none;
    color: #1e1e1e;
    height: 100%;
    width: 100%;
    background: none;
    border: none;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    cursor: pointer; }
  .back-button button:hover {
    background: inherit;
    color: #40aaff;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  .back-button svg {
    width: 100%;
    height: 100%;
    stroke-width: 0.7; }

.load-more-posts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 30px; }
  .load-more-posts .button-type-1 {
    padding: 9px 30px;
    border-radius: 6px;
    color: #525252;
    border-color: #525252;
    font-size: 14px;
    font-weight: 500; }
    .load-more-posts .button-type-1:hover {
      color: #333333;
      border-color: #333333; }
  .load-more-posts .message {
    font-size: 16px;
    font-style: italic;
    color: #969696;
    display: none;
    font-weight: 400; }

.load-more-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.35rem;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  background: none; }
  .load-more-button span.text {
    font-weight: 500;
    font-size: 15px;
    display: inline-block;
    margin-bottom: 12px;
    color: #112f39;
    opacity: 0.5; }
  .load-more-button span.icon {
    width: 50px;
    height: 50px;
    border: 2px solid #112f39;
    border-radius: 100%;
    display: inline-block;
    color: #112f39;
    opacity: 0.4;
    padding: 8px;
    position: relative;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    top: 0; }
    .load-more-button span.icon svg {
      width: 100%;
      height: 100%;
      display: inline-block; }
  .load-more-button:hover span.text {
    opacity: 0.8; }
  .load-more-button:hover span.icon {
    opacity: 0.8;
    top: 2px;
    background: #112f39;
    color: white; }

.site-content {
  padding-top: 99px; }

.button--primary {
  background: #0dd5b2 !important;
  color: white !important;
  font-weight: bold !important;
  font-family: "Work Sans", -apple-system, system-ui, "Segoe UI", "Helvetica Neue", sans-serif;
  -webkit-box-shadow: none !important;
          box-shadow: none !important; }

.button--primary:hover {
  background: rgba(13, 213, 178, 0.1) !important;
  color: #0dd5b2 !important; }

.grid {
  display: grid; }

.grid--add-gutter {
  grid-gap: 15px; }

.grid--columns-2 {
  grid-template-columns: 1fr 1fr; }

.grid--columns-3 {
  grid-template-columns: 1fr 1fr 1fr; }

.grid--columns-4 {
  grid-template-columns: 1fr 1fr 1fr 1fr; }

.grid--columns-5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }

@media (max-width: 850px) {
  .grid--tablet-columns-1 {
    grid-template-columns: 1fr; }
  .grid--tablet-columns-2 {
    grid-template-columns: 1fr 1fr; }
  .grid--tablet-columns-3 {
    grid-template-columns: 1fr 1fr 1fr; }
  .grid--tablet-columns-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr; }
  .grid--tablet-columns-5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; } }

@media (max-width: 650px) {
  .grid--mobile-columns-1 {
    grid-template-columns: 1fr; }
  .grid--mobile-columns-2 {
    grid-template-columns: 1fr 1fr; }
  .grid--mobile-columns-3 {
    grid-template-columns: 1fr 1fr 1fr; }
  .grid--mobile-columns-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr; }
  .grid--mobile-columns-5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; } }

.home-template {
  background: white; }

.site-content--home-page {
  padding-top: 85px; }

.custom-section__header, .recent-posts__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 45px;
  margin-top: 10px; }

.custom-section__title, .recent-posts__title {
  font-size: 3.7rem;
  font-weight: 500;
  color: #112f39;
  opacity: 0.26;
  letter-spacing: -0.01em; }

.custom-section__view-more a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.35rem;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }
  .custom-section__view-more a span.text {
    font-weight: 500;
    font-size: 14px;
    display: inline-block;
    margin-right: 9px;
    color: #112f39;
    opacity: 0.5; }
  .custom-section__view-more a span.icon {
    width: 40px;
    height: 40px;
    border: 2px solid #112f39;
    border-radius: 100%;
    display: inline-block;
    color: #112f39;
    opacity: 0.4;
    padding: 4px;
    position: relative;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    left: 0; }
    .custom-section__view-more a span.icon svg {
      width: 100%;
      height: 100%;
      display: inline-block; }
  .custom-section__view-more a:hover span.text {
    opacity: 0.8; }
  .custom-section__view-more a:hover span.icon {
    opacity: 0.8;
    left: 2px;
    background: #112f39;
    color: white; }

@media (max-width: 600px) {
  .site-content--home-page {
    padding-top: 80px; }
  .custom-section__title {
    max-width: 200px;
    line-height: 1.3em; } }

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

.post-card {
  width: 33.33%;
  padding: 0 15px 30px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }
  .post-card:hover {
    -webkit-transform: scale(0.995);
            transform: scale(0.995); }
    .post-card:hover .post-card__wrapper {
      -webkit-box-shadow: 0 1px 2px 0 rgba(45, 62, 80, 0.12);
              box-shadow: 0 1px 2px 0 rgba(45, 62, 80, 0.12); }

.post-card__wrapper {
  -webkit-box-shadow: 0 1px 5px 0 rgba(45, 62, 80, 0.12);
          box-shadow: 0 1px 5px 0 rgba(45, 62, 80, 0.12);
  border-radius: 6px;
  overflow: hidden;
  background: white;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 100%; }

.post-card__content {
  padding: 20px;
  padding-top: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.post-card__content h2 {
  color: #333333;
  font-weight: 500;
  font-size: 2.3rem;
  line-height: 1.3em;
  margin: 0px 0 7px; }

.post-card__excerpt {
  color: #525252;
  font-size: 1.6rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.post-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.post-card__tags {
  padding-right: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.post-card__tags a {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.07em;
  color: #112f39;
  padding-right: 5px; }

.post-card__tags a:hover {
  color: #0DD5B2 !important; }

.post-card__reading-time {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.07em;
  color: #333333; }

.post-card__extras {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 20px; }
  .post-card__extras .author-name a {
    font-size: 1.5rem;
    color: #333333;
    font-weight: 500; }
  .post-card__extras .date-and-reading-time {
    margin-top: -2px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    font-size: 1.3rem;
    color: #525252;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    line-height: 1.5em; }
    .post-card__extras .date-and-reading-time .middot {
      padding: 0 3px;
      font-size: 25px; }

.post-card__author img {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 10px;
  margin-bottom: -3px;
  -o-object-fit: cover;
     object-fit: cover; }

.post-card__image img {
  width: 100%;
  height: 220px;
  background: #c5d2d9 no-repeat 50%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: middle; }

.post-card--large {
  width: 66.66%;
  margin-bottom: 30px;
  padding-bottom: 0;
  max-height: 515px;
  min-height: 485px; }
  .post-card--large .post-card__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .post-card--large .post-card__image img {
    height: 100%; }
  .post-card--large .post-card__content {
    width: 40%;
    padding: 25px; }
  .post-card--large .post-card__title {
    font-size: 2.9rem;
    color: #333333;
    margin-top: 5px;
    line-height: 1.1em;
    padding-right: 10px; }
  .post-card--large .post-card__tags a {
    text-transform: uppercase;
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.07em;
    color: #112f39; }
  .post-card--large .post-card__excerpt {
    -webkit-line-clamp: initial; }
  .post-card--large .post-card__image {
    width: 60%; }

.featured-posts {
  width: 33.33%; }
  .featured-posts header {
    padding: 0 10px;
    margin: 10px 0 18px;
    font-size: 3.3rem;
    font-weight: 500;
    color: #112f39;
    opacity: 0.26;
    letter-spacing: -0.01em; }

.post-card--tiny {
  width: 100%;
  padding: 0 15px 14px; }
  .post-card--tiny .post-card__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    height: 123px; }
  .post-card--tiny .post-card__image img {
    width: 123px;
    height: 123px; }
  .post-card--tiny .post-card__content {
    width: 100%;
    height: 100%;
    padding: 6px 15px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .post-card--tiny .post-card__title-wrapper {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .post-card--tiny .post-card__title {
    margin-bottom: 1px;
    font-size: 16px;
    line-height: 20px;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    overflow: hidden;
    max-height: 64px; }
  .post-card--tiny .post-card__tags a {
    text-transform: uppercase;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.07em;
    color: #112f39; }
  .post-card--tiny .post-card--tiny__extras {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .post-card--tiny .post-card--tiny__extras .author-name a {
      font-size: 13px;
      color: #525252; }
    .post-card--tiny .post-card--tiny__extras .reading-time {
      font-size: 13px;
      color: #525252; }

.highlight-share-popover > ul > li {
  line-height: 0 !important;
  margin: 0 !important;
  padding-left: 0 !important; }

@media (max-width: 850px) {
  .post-card {
    width: 50%; }
  .post-card--large {
    width: 100%; }
    .post-card--large .post-card__title {
      font-size: 3rem; }
  .featured-posts {
    width: 50%;
    display: none; }
  .post-card--tiny {
    width: 100%; } }

@media (max-width: 600px) {
  .post-card {
    width: 100%; }
  .post-card__extras {
    margin-top: 10px; }
  .post-card__author {
    display: none; }
  .post-card__extras .author-name a {
    font-size: 1.3rem;
    color: #525252;
    font-weight: 400; }
  .post-card__extras .date-and-reading-time {
    margin-top: 0; }
  .post-card__extras .name-date-reading-time {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%; }
  .post-card__image img {
    height: auto; }
  .post-card--large {
    width: 100%;
    margin-bottom: 0px;
    padding: 0 15px 30px;
    max-height: none; }
    .post-card--large .post-card__wrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
    .post-card--large .post-card__image img {
      height: auto; }
    .post-card--large .post-card__content {
      width: 100%;
      padding: 20px;
      padding-top: 12px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .post-card--large .post-card__title {
      font-size: 2.3rem;
      color: #333333;
      margin: 0px 0 7px;
      line-height: 1.3em;
      padding-right: 0px; }
    .post-card--large .post-card__excerpt {
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      text-overflow: ellipsis;
      overflow: hidden; }
    .post-card--large .post-card__tags a {
      font-size: 12px; }
    .post-card--large .post-card__image {
      width: 100%; } }

.site-header {
  width: 100%;
  padding: 12px 0;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  z-index: 100;
  background: #112f39; }

.site-header.scrolled {
  padding: 7px 0;
  -webkit-box-shadow: 0 0px 5px 0 #00000028;
          box-shadow: 0 0px 5px 0 #00000028; }
  .site-header.scrolled .site-header__title a {
    font-size: 2.2rem; }

.site-header .wrapper-1120 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.site-header__logo {
  max-height: 40px; }

.site-header__title a {
  color: white;
  font-size: 2.2rem;
  font-weight: 500;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }

.site-header__nav .menu-item-wrapper {
  display: inline-block;
  padding-left: 15px; }
  .site-header__nav .menu-item-wrapper a {
    color: white;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    font-size: 1.5rem;
    line-height: 16px; }
    .site-header__nav .menu-item-wrapper a:hover {
      color: white;
      border-bottom: 1px solid white; }

.site-header__nav .menu-item-wrapper--dropdown {
  position: relative; }

.site-header .drawer {
  display: none; }

@media (max-width: 850px) {
  .site-header__nav {
    display: none; }
  .site-header .drawer {
    display: block; } }

.typeahead,
.tt-query,
.tt-hint {
  height: 30px;
  padding: 8px 12px;
  line-height: 30px;
  border-radius: 8px;
  outline: none; }

.tt-input {
  position: relative;
  vertical-align: top;
  background-color: transparent;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: inherit;
  font-family: 'Roboto','Noto',sans-serif;
  font-weight: 400;
  line-height: 24px;
  margin-left: 2px;
  max-width: 100%;
  outline: none;
  text-align: inherit;
  /* width: 100%; */
  -ms-flex: 1 1 .000000001px;
  -webkit-box-flex: 1;
          flex: 1;
  -ms-flex-preferred-size: .000000001px;
      flex-basis: .000000001px; }

.typeahead {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-weight: 500;
  line-height: 1.15em; }

.tt-query {
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }

.tt-hint {
  color: #999; }

.tt-menu {
  width: 422px;
  margin: 12px 0;
  padding: 8px 0;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }

.tt-suggestion {
  color: black;
  padding: 3px 20px;
  font-size: 18px;
  line-height: 24px; }

.tt-suggestion:hover {
  cursor: pointer;
  color: #0DD5B2 !important; }

.tt-suggestion.tt-cursor {
  color: black; }

.tt-suggestion p {
  margin: 0; }

.tt-anchor {
  color: black !important; }

.tt-heading-suggestion:hover a {
  color: #0DD5B2 !important; }

.tt-heading-suggestion {
  color: #0b0c0e !important; }
  .tt-heading-suggestion:hover {
    color: #0DD5B2 !important; }
  .tt-heading-suggestion a {
    color: #0b0c0e !important; }
    .tt-heading-suggestion a:hover {
      color: #0DD5B2 !important; }

.site-search > span > input.typeahead.tt-input {
  background-color: #F0EdE7 !important;
  border-bottom: 1px solid rgba(33, 37, 41, 0.1) !important;
  border-bottom-left-radius: 10px !important;
  border-top-left-radius: 10px !important; }

footer ul {
  list-style: none; }

footer ul li h4 {
  color: white;
  margin-bottom: 2rem; }

footer ul li {
  text-align: left;
  letter-spacing: 0.5px;
  margin: 0; }

footer ul li:last-child {
  margin: 0; }

footer a {
  text-decoration: none;
  color: white; }

footer i {
  font-size: 18px; }

/* utility */
footer .flex-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

footer .flex-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

footer .center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

footer .space-between-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

footer .bg-dark {
  background-color: #102e39;
  color: white; }

footer a:hover {
  color: #0cd5b1 !important;
  border-bottom: none; }

/* structure */
footer .wrapper {
  margin: 0 auto;
  width: 100%;
  max-width: 1200px; }

/* footer */
footer {
  width: 100%;
  bottom: 0; }

footer .info-wrapper {
  padding: 2rem 2rem; }

footer .footer-info {
  margin-top: 2rem;
  width: 100%; }

footer .info-container {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%; }

footer .info-container-extra {
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%; }

footer .footer-table-row {
  display: table;
  table-layout: fixed; }

footer .footer-table-column {
  display: table-cell;
  border-bottom: 2rem; }

.tp-logo {
  width: 100%; }

@media screen and (max-width: 565px) {
  footer .footer-info.flex-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .tp-logo {
    width: initial; }
  footer .footer-info.space-between-start {
    -webkit-box-align: left;
        -ms-flex-align: left;
            align-items: left;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left; }
  footer .info-container {
    text-align: center;
    margin-bottom: 2rem;
    width: 100%; }
  footer .info-container:last-child {
    margin-bottom: 0; } }

.site-content--post-view article {
  margin-top: 10px; }

.post-toc {
  display: none; }

.post-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 50px; }

.post-header__main {
  width: 33%;
  padding-right: 40px; }

.post-feature-image {
  width: 67%; }
  .post-feature-image img {
    border-radius: 4px;
    width: 100%;
    max-height: 500px;
    background: #c5d2d9 no-repeat 50%;
    -o-object-fit: cover;
    object-fit: cover;
    vertical-align: middle; }

.no-feature-image .post-header__main {
  width: 100%; }
  .no-feature-image .post-header__main .post-title {
    text-align: center;
    max-width: 600px;
    margin: 5px auto 12px; }
  .no-feature-image .post-header__main .post-excerpt {
    display: none; }
  .no-feature-image .post-header__main .post-header__meta {
    display: none; }

.page-template .post-header {
  display: block; }

.page-template .post-header__main {
  width: 100%; }

.page-template .post-feature-image {
  width: 100%; }

.page-template .post-title {
  text-align: center;
  margin: 5px 0 60px; }

.page-template .post-tags {
  text-align: center;
  font-size: 13px; }

.page-template .post-body {
  display: block;
  width: 100%;
  max-width: 670px;
  margin: 0 auto; }

.post-tags {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.07em;
  color: #112f39; }
  .post-tags a {
    color: #112f39; }

.post-title {
  font-weight: 500;
  font-size: 4.3rem;
  line-height: 1.15em;
  margin: 5px 0 12px; }

.post-header__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 20px; }
  .post-header__meta .author-name a {
    font-size: 1.5rem;
    color: #333333;
    font-weight: 500; }
  .post-header__meta .date-and-reading-time {
    margin-top: -2px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    font-size: 1.3rem;
    line-height: 1.4em;
    color: #525252;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .post-header__meta .date-and-reading-time .middot {
      padding: 0 3px;
      font-size: 25px; }

.post-excerpt {
  color: #525252;
  font-size: 1.6rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
  max-height: 100px; }

.post-body {
  display: grid;
  grid-template-columns: 355px auto 0px; }

.post-full-content {
  overflow: scroll; }

aside.toc-container {
  background-color: #F0EdE7; }

aside.post-meta .item--sharing-icons {
  width: 320px;
  word-wrap: break-word; }

aside.post-meta .item {
  margin-bottom: 20px; }

aside.post-meta .sticky {
  position: fixed;
  top: 65px;
  z-index: 1; }

aside.post-meta .item-header {
  color: #81878c;
  font-size: 14px;
  margin-bottom: 0px;
  margin-top: 1em; }

aside.post-meta .item-body {
  font-size: 14px;
  color: #2f363f;
  line-height: 1.3em; }
  aside.post-meta .item-body div {
    margin-bottom: 5px; }
    aside.post-meta .item-body div:last-item {
      margin-bottom: 0; }

.post-sharing-icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }
  .post-sharing-icons .icon {
    display: block;
    width: 20px;
    height: 20px;
    margin-right: 10px; }
    .post-sharing-icons .icon svg {
      fill: #4c4c4c;
      width: 100%;
      height: 100%; }
  .post-sharing-icons .title {
    display: none; }
  .post-sharing-icons .post-sharing-icon {
    -webkit-transition: all 0.2s;
    transition: all 0.2s; }
  .post-sharing-icons .post-sharing-icon:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }

.post-end-ellipses {
  color: #bdbdbd;
  font-size: 2.5rem;
  line-height: 1;
  overflow: visible;
  text-align: center;
  word-spacing: 1em;
  margin: 0; }

.author-details {
  max-width: 670px;
  margin: 30px auto 50px; }

.author-card {
  display: grid;
  grid-template-columns: 70px auto;
  background: #fafafa;
  margin-bottom: 20px;
  padding: 20px;
  border-radius: 6px; }
  .author-card:last-child {
    margin-bottom: 0; }
  .author-card .profile-image img {
    border-radius: 50%;
    display: block;
    width: 70px;
    height: 70px;
    -o-object-fit: cover;
       object-fit: cover; }
  .author-card .details {
    padding-left: 20px; }
    .author-card .details .name {
      font-size: 16px;
      font-weight: 500;
      margin-bottom: 5px; }
      .author-card .details .name a {
        color: #333333; }
    .author-card .details .bio {
      font-size: 14px;
      line-height: 19px;
      margin-bottom: 7px;
      color: #525252; }
    .author-card .details .read-more {
      font-size: 14px;
      line-height: 22px;
      color: #525252; }
      .author-card .details .read-more a {
        font-weight: 500;
        color: #525252;
        border-bottom: none; }
        .author-card .details .read-more a:hover {
          color: #333333;
          border-color: #333333; }
    .author-card .details .meta {
      text-align: left;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      margin-bottom: 7px;
      line-height: 25px; }
      .author-card .details .meta .social-links a {
        opacity: 0.7; }
        .author-card .details .meta .social-links a:hover {
          opacity: 1; }
      .author-card .details .meta .social-links .link-with-svg {
        margin-right: 4px; }
        .author-card .details .meta .social-links .link-with-svg .link-svg svg {
          fill: #333333;
          width: 15px;
          height: 15px; }
        .author-card .details .meta .social-links .link-with-svg .rss svg {
          width: 14px; }
        .author-card .details .meta .social-links .link-with-svg .link-text {
          display: none; }
      .author-card .details .meta .location,
      .author-card .details .meta .website {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        color: #333333; }
        .author-card .details .meta .location svg,
        .author-card .details .meta .website svg {
          opacity: 0.7;
          width: 15px;
          height: 15px;
          margin-right: 3px; }
        .author-card .details .meta .location .text,
        .author-card .details .meta .website .text {
          font-size: 14px;
          margin-bottom: -2px;
          margin-left: 3px;
          opacity: 0.7; }
          .author-card .details .meta .location .text a,
          .author-card .details .meta .website .text a {
            color: #333333; }
          .author-card .details .meta .location .text:hover,
          .author-card .details .meta .website .text:hover {
            opacity: 1; }
      .author-card .details .meta .separator {
        color: #525252;
        padding: 0 10px; }

@media (max-width: 800px) {
  .author-card {
    display: block; }
    .author-card .profile-image {
      width: 80px;
      margin-bottom: 10px; }
    .author-card .details {
      padding-left: 0; } }

.related-posts {
  border-top: #e2e5e8 1px solid; }

.related-posts__header {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  padding: 45px 0;
  font-size: 2.5rem;
  font-weight: 500; }

.next-prev-posts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto 50px;
  max-width: 680px; }
  .next-prev-posts .button-with-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0; }
    .next-prev-posts .button-with-icon svg {
      stroke-width: 2;
      color: #656565;
      position: relative;
      -webkit-transition: all 0.2s;
      transition: all 0.2s; }
    .next-prev-posts .button-with-icon .link-text {
      font-weight: 500;
      font-size: 16px;
      color: #656565;
      padding: 0 7px; }
  .next-prev-posts .newer-post .button-with-icon svg {
    right: 0; }
  .next-prev-posts .newer-post .button-with-icon:hover svg {
    right: 5px; }
  .next-prev-posts .older-post .link-text {
    text-align: right; }
  .next-prev-posts .older-post .button-with-icon svg {
    left: 0; }
  .next-prev-posts .older-post .button-with-icon:hover svg {
    left: 5px; }

article p {
  font-size: 1.7rem;
  line-height: 1.6em;
  margin: 0 0 2em 0; }

article .post-full-content a {
  color: #0cd5b1;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }
  article .post-full-content a:hover {
    color: #f0ede7; }

article p h2,
article p h3,
article p h4,
article p h5,
article p h6, article .kg-card h2,
article .kg-card h3,
article .kg-card h4,
article .kg-card h5,
article .kg-card h6 {
  margin: 1.3em 0 0.5em; }

article h1 {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-size: 4.3rem;
  margin: 0 0 0.5em 0;
  line-height: 1.3em;
  font-weight: 500; }

article h2 {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-size: 3.3rem;
  margin: 0 0 0.5em 0;
  line-height: 1.15em;
  font-weight: 500; }

article h3 {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-size: 2.8rem;
  margin: 0 0 0.5em 0;
  line-height: 1.3em;
  font-weight: 500; }

article h4 {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-size: 2.4rem;
  margin: 0 0 0.5em 0;
  line-height: 1.15em;
  font-weight: 500; }

article h5 {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-size: 2rem;
  margin: 0 0 0.5em 0;
  line-height: 1.15em;
  font-weight: 500; }

article h6 {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-size: 1.8rem;
  margin: 0 0 0.5em 0;
  line-height: 1.15em;
  font-weight: 500; }

article .title-subtitle h1, article .title-subtitle h2, article .title-subtitle h3, article .title-subtitle h4 {
  margin-bottom: 0.1em; }

article .title-subtitle p {
  opacity: 0.7;
  font-size: 1.7rem; }

article ul {
  margin: 0 0 2em 2em;
  padding: 0px 0px 0px 18px;
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif; }
  article ul li {
    font-size: 17px;
    line-height: 1.6em; }
    article ul li > ul {
      margin: 0; }

article ol {
  margin: 0 0 2em 2em;
  padding: 0px 0px 0px 18px;
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif; }
  article ol li {
    font-size: 17px;
    line-height: 1.6em; }
    article ol li > ol {
      margin: 0; }

article dl {
  margin: 0 0 2em 0.2em; }
  article dl dt {
    display: block;
    float: none;
    width: auto;
    text-align: left;
    font-weight: 700;
    margin: 0 0 1.5em 0;
    font-size: 1.8rem; }
  article dl dd {
    margin-left: 2em; }

article mark {
  background: #69ff85;
  padding: 3px;
  border-radius: 3px; }

article strong {
  font-weight: 500; }

article .button {
  margin-right: 5px;
  margin-bottom: 10px; }

article pre {
  display: block;
  overflow-x: auto;
  color: #000;
  background: 3ececec none repeat scroll 0% 0%;
  margin: 0px auto 20px;
  border-radius: 4px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-wrap: normal;
  font-size: 12.4px;
  line-height: 1.5em;
  font-family: Menlo, Monaco, Lucida Console, Liberation Mono, Courier New, monospace, serif;
  white-space: pre-wrap; }
  article pre code {
    display: block;
    padding: 14px;
    margin: 0; }

article code {
  border-radius: 4px;
  padding: 9px;
  display: inline-block;
  margin: 2px 0;
  color: #000000;
  background: #ececec none repeat scroll 0% 0%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 12.4px;
  line-height: 1.5em;
  font-family: Menlo, Monaco, Lucida Console, Liberation Mono, Courier New, monospace, serif; }

article hr {
  position: relative;
  display: block;
  width: 100%;
  margin: 3em auto;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid lightgrey; }

article img {
  display: block;
  margin: 0px auto;
  border-radius: 4px;
  height: auto; }

article figcaption {
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  padding: 10px 0px 0;
  text-align: center;
  font-size: 16px;
  color: #525252; }

article .kg-card {
  margin: 0 0 2em; }
  article .kg-card figcaption {
    font-size: 16px;
    color: #525252; }

article .kg-embed-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%; }

article .kg-image-card {
  margin: 30px auto; }

article .kg-width-wide {
  margin: 30px auto;
  margin-left: calc(-1090px / 2 + 670px / 2);
  margin-right: calc(-1090px / 2 + 670px / 2); }
  article .kg-width-wide img {
    z-index: 1;
    position: relative; }
  article .kg-width-wide figcaption {
    text-align: center; }

article .kg-width-full {
  margin: 30px auto;
  margin-left: calc(-100vw / 2 + 670px / 2);
  margin-right: calc(-100vw / 2 + 670px / 2); }
  article .kg-width-full img {
    border-radius: 0;
    z-index: 1;
    position: relative; }
  article .kg-width-full figcaption {
    text-align: center; }

article .image-float-right {
  float: right;
  max-width: 330px;
  margin-left: 20px; }

article .image-float-left {
  float: left;
  max-width: 330px;
  margin-right: 20px; }

.fluid-width-video-container {
  max-width: 800px;
  margin: 30px auto; }

.kg-gallery-card {
  max-width: none !important; }

.kg-gallery-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 1.5em auto; }

.kg-gallery-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.kg-gallery-image img {
  display: block;
  margin: 0;
  width: 100%;
  height: 100%; }

.kg-gallery-row:not(:first-of-type) {
  margin: 0.75em 0 0 0; }

.kg-gallery-image:not(:first-of-type) {
  margin: 0 0 0 0.75em; }

.kg-gallery-card figcaption {
  padding: 0; }

.kg-bookmark-card {
  margin-bottom: 30px; }

.kg-bookmark-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  color: #333333;
  text-decoration: none;
  border-radius: 6px;
  overflow: hidden;
  background: #f7f7f7;
  border: none; }

.kg-bookmark-content {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-flex: 999;
      -ms-flex-positive: 999;
          flex-grow: 999;
  min-width: 50%;
  padding: 20px; }

.kg-bookmark-title {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.4em;
  color: #000000 !important; }

.kg-bookmark-title:hover {
  color: #0CD5B1 !important; }

.kg-bookmark-description {
  color: #525252;
  margin-top: 7px;
  line-height: 1.5em; }

.kg-bookmark-metadata {
  margin-top: 12px;
  line-height: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.kg-bookmark-thumbnail {
  -ms-flex-preferred-size: 15rem;
      flex-basis: 15rem;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.kg-bookmark-thumbnail img {
  vertical-align: bottom;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: 0; }

.kg-bookmark-icon {
  width: 22px;
  height: 22px;
  vertical-align: bottom;
  margin: 0 8px 0 0; }

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

.kg-bookmark-publisher {
  color: #525252;
  font-size: 16px; }

@media (max-width: 1150px) {
  .post-toc {
    display: none; }
  article .kg-width-full, article .kg-width-wide {
    margin: 30px auto;
    width: 100%; }
    article .kg-width-full img, article .kg-width-wide img {
      border-radius: 4px; }
    article .kg-width-full figcaption, article .kg-width-wide figcaption {
      text-align: left; } }

@media (max-width: 980px) {
  .post-toc {
    display: block; }
  .post-feature-image img {
    min-height: 500px;
    -o-object-fit: cover;
       object-fit: cover;
    vertical-align: middle; }
  .post-body {
    grid-template-columns: 210px auto; } }

@media (min-width: 1001px) {
  .post-toc {
    display: none; } }

@media (max-width: 1000px) {
  .post-toc {
    display: block; } }

@media (max-width: 1000px) and (max-width: 850px) {
  .post-title {
    font-size: 3.7rem;
    margin-bottom: 30px; }
  .post-body {
    display: block;
    max-width: 600px;
    margin: 0 auto; }
    .post-body aside {
      display: none; } }

@media (max-width: 1000px) and (max-width: 650px) {
  .post-toc {
    display: block; }
  .post-template .site-content {
    padding-top: 75px; }
  .post-header {
    display: block;
    margin-bottom: 30px; }
  .post-header__main {
    width: 100%;
    padding-right: 0; }
  .post-feature-image {
    width: 100%; }
  .post-feature-image img {
    min-height: auto;
    -o-object-fit: contain;
       object-fit: contain; }
  .post-header__meta {
    display: none; }
  .post-excerpt {
    display: none; }
  article .image-float-right {
    float: none;
    max-width: 100%;
    width: 100%;
    margin: 20px 0; }
  article .image-float-left {
    float: none;
    max-width: 100%;
    width: 100%;
    margin: 20px 0; } }

.tag-template {
  background: white; }

.tag-header {
  margin-bottom: 35px;
  margin-top: 51px;
  background: #112f39;
  color: white;
  background: #f0ede7 no-repeat center center;
  background-size: cover; }
  .tag-header .overlay {
    padding: 35px 0;
    color: white; }
  .tag-header.with-cover-image .overlay {
    background: rgba(0, 0, 0, 0);
    padding: 35px 0;
    min-height: 300px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

.tag-header .wrapper-1120 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .tag-header .wrapper-1120.no-featured-post {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .tag-header .wrapper-1120.no-featured-post .tag-details {
      width: 100%;
      text-align: center;
      max-width: 600px;
      margin: 0 auto; }

.tag-header .featured-post {
  width: 66.66%; }
  .tag-header .featured-post .post-card--large {
    width: 100%;
    margin-bottom: 0;
    min-height: inherit; }
    .tag-header .featured-post .post-card--large .post-card__image img {
      max-height: 515px; }
    .tag-header .featured-post .post-card--large .post-card__title {
      font-size: 2.5rem; }
    .tag-header .featured-post .post-card--large .post-card__excerpt {
      display: -webkit-box;
      -webkit-line-clamp: 9;
      -webkit-box-orient: vertical;
      text-overflow: ellipsis;
      max-height: 225px; }

.tag-header .tag-details {
  width: 33.33%;
  padding-right: 15px; }
  .tag-header .tag-details .title {
    font-size: 4rem;
    line-height: 1.1em;
    font-weight: 500;
    margin-bottom: 10px;
    color: black; }
  .tag-header .tag-details .description {
    font-size: 1.8rem;
    line-height: 1.6em;
    opacity: 0.85;
    color: black; }
  .tag-header .tag-details small {
    display: block;
    margin-top: 5px; }

@media (max-width: 900px) {
  .tag-header .wrapper-1120 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .tag-header .tag-details {
    text-align: center;
    width: 100%;
    max-width: 700px;
    margin-bottom: 40px;
    padding-right: 0; }
  .tag-header .featured-post {
    width: 100%;
    max-width: 700px; } }

.author-template {
  background: white; }

.author-template-header {
  margin: 51px 0 50px;
  background-size: cover; }
  .author-template-header .overlay {
    padding: 50px 0 0; }
  .author-template-header.with-cover-image .overlay {
    padding: 45px 0;
    background: rgba(0, 0, 0, 0.4);
    color: white; }
  .author-template-header.with-cover-image .author-template__name, .author-template-header.with-cover-image .author-template__bio {
    color: white; }
  .author-template-header.with-cover-image .author-template__social-media .link-with-svg .link-svg svg {
    fill: white; }
  .author-template-header.with-cover-image .author-template__separator {
    color: white; }
  .author-template-header.with-cover-image .author-template__location, .author-template-header.with-cover-image .author-template__website {
    color: white; }
  .author-template-header.with-cover-image .author-template__website a {
    color: white;
    border-bottom: 1px solid white; }

.author-template__avatar {
  background: white no-repeat center center;
  background-size: cover;
  height: 115px;
  width: 115px;
  border-radius: 6px;
  border: 2px white solid;
  margin: 0 auto 10px;
  border-radius: 100%; }

.author-template__name {
  font-size: 3.4rem;
  line-height: 1.5em;
  font-weight: 500;
  text-align: center;
  margin: 0 auto; }

.author-template__bio {
  font-size: 1.65rem;
  line-height: 1.6em;
  color: #525252;
  text-align: center;
  max-width: 450px;
  margin: 10px auto 0; }

.author-template__meta {
  margin: 10px 0 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.author-template__social-media {
  margin: 0px 0px; }
  .author-template__social-media .link-with-svg {
    margin-right: 4px; }
    .author-template__social-media .link-with-svg .link-svg svg {
      fill: #525252;
      width: 19px;
      height: 19px;
      -webkit-transition: all 0.2s;
      transition: all 0.2s; }
      .author-template__social-media .link-with-svg .link-svg svg:hover {
        fill: #333333; }
    .author-template__social-media .link-with-svg .rss svg {
      width: 16px; }
    .author-template__social-media .link-with-svg .link-text {
      display: none; }

.author-template__location,
.author-template__website {
  margin: 0px 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #525252;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }
  .author-template__location:hover,
  .author-template__website:hover {
    color: #333333; }
  .author-template__location svg,
  .author-template__website svg {
    width: 19px;
    height: 19px;
    margin-right: 3px; }
  .author-template__location .text,
  .author-template__website .text {
    margin-left: 3px;
    font-size: 15px; }

.author-template__website a {
  color: #525252;
  border-bottom: 1px solid #525252; }
  .author-template__website a:hover {
    color: #333333; }

.author-template__separator {
  font-size: 24px;
  margin: 5px 10px;
  color: #525252; }

.author-template-content {
  margin-top: 55px; }

.error-page {
  height: 100vh;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .error-page button {
    padding: 8px 10px;
    border-radius: 3px;
    font-size: 14px; }
  .error-page .code {
    font-size: 50px;
    font-weight: 300;
    margin-bottom: 0px; }
  .error-page .message {
    font-size: 16px;
    margin-bottom: 10px; }

.lds-ripple {
  position: relative;
  width: 64px;
  height: 64px;
  display: none; }

.lds-ripple div {
  position: absolute;
  border: 4px solid #949494;
  opacity: 1;
  border-radius: 50%;
  -webkit-animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
          animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; }

.lds-ripple div:nth-child(2) {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s; }

@-webkit-keyframes lds-ripple {
  0% {
    top: 28px;
    left: 28px;
    width: 0;
    height: 0;
    opacity: 1; }
  100% {
    top: -1px;
    left: -1px;
    width: 58px;
    height: 58px;
    opacity: 0; } }

@keyframes lds-ripple {
  0% {
    top: 28px;
    left: 28px;
    width: 0;
    height: 0;
    opacity: 1; }
  100% {
    top: -1px;
    left: -1px;
    width: 58px;
    height: 58px;
    opacity: 0; } }

.progress {
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 2px;
  border: none;
  color: #112f39;
  background: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  z-index: 500; }

.progress::-webkit-progress-bar {
  background-color: transparent; }

.progress::-webkit-progress-value {
  background-color: #112f39; }

.progress::-moz-progress-bar {
  background-color: #112f39; }

.progress-container {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background-color: transparent; }

.progress-bar {
  display: block;
  width: 50%;
  height: inherit;
  background-color: #112f39; }

@media (max-width: 800px) {
  .floating-header-logo {
    margin-left: 10px; }
  .floating-header-logo a {
    color: #2e2e2e; }
  .floating-header-title,
  .floating-header-divider {
    visibility: hidden; } }

@media (max-width: 450px) {
  .floating-header-share-label {
    display: none; } }

.floating-navigation {
  visibility: hidden;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 100;
  background: white;
  color: #525252;
  -webkit-transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: translate3d(0, -120%, 0);
          transform: translate3d(0, -120%, 0);
  -webkit-box-shadow: 0px 2px 20px 0px #00000026;
          box-shadow: 0px 2px 20px 0px #00000026; }
  .floating-navigation .menu-item-wrapper {
    display: inline-block;
    padding: 15px; }
    .floating-navigation .menu-item-wrapper a {
      color: #525252;
      text-transform: uppercase;
      font-size: 12px;
      letter-spacing: 0.2em;
      -webkit-transition: all 0.2s;
      transition: all 0.2s;
      line-height: 1.5em; }
      .floating-navigation .menu-item-wrapper a:hover {
        color: #333333; }

.floating-navigation.active {
  visibility: visible;
  -webkit-transition: all 500ms cubic-bezier(0.22, 1, 0.27, 1);
  transition: all 500ms cubic-bezier(0.22, 1, 0.27, 1);
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.floating-navigation__desktop {
  text-align: center; }

.floating-navigation__mobile {
  display: none;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.floating-navigation__blog-title a {
  display: block;
  padding: 17px 20px;
  font-size: 14px;
  text-transform: uppercase;
  color: #333333;
  letter-spacing: 0.1em; }
  .floating-navigation__blog-title a:hover {
    color: #333333; }

@media (min-width: 850px) {
  .hide-in-desktop {
    display: none; } }

@media (max-width: 850px) {
  .show-in-mobile {
    display: flex-inline; }
  .floating-navigation__desktop {
    display: none; }
  .floating-navigation__mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .floating-navigation__mobile__inline {
    display: flex-inline; } }

.gh-subscribe {
  background: #112f39;
  padding: 50px 0;
  margin: 30px 0 30px;
  opacity: 90%; }
  .gh-subscribe .wrapper-1120 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .gh-subscribe .one {
    padding-right: 30px; }
    .gh-subscribe .one p {
      font-size: 27px;
      color: white;
      max-width: 400px;
      line-height: 1.4em;
      font-weight: 400;
      margin-bottom: 10px; }
  .gh-subscribe .two {
    width: 100%;
    max-width: 400px; }
  .gh-subscribe .subscribe-email {
    border: none;
    padding: 10px;
    border-radius: 4px 0 0 4px;
    background: rgba(255, 255, 255, 0.5);
    color: white;
    font-size: 14px;
    width: 100%; }
    .gh-subscribe .subscribe-email:hover {
      background: rgba(255, 255, 255, 0.45); }
    .gh-subscribe .subscribe-email:focus {
      background: rgba(255, 255, 255, 0.45); }
  .gh-subscribe .gh-subscribe-rss {
    display: block;
    padding-top: 2px;
    font-size: 14px;
    color: white; }
    .gh-subscribe .gh-subscribe-rss a {
      color: white;
      border-bottom: 1px solid white; }

.post-template .gh-subscribe {
  margin: 0; }

.signup-form .signup-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  width: 100%;
  height: 37px; }
  .signup-form .signup-box input[type="email"] {
    border: none;
    outline: none;
    background: rgba(255, 255, 255, 0.5);
    padding: 10px;
    height: 100%;
    width: 100%;
    border-radius: 4px 0 0 4px;
    font-size: 14px;
    color: white; }
    .signup-form .signup-box input[type="email"]::-webkit-input-placeholder {
      /* Chrome, Firefox, Opera, Safari 10.1+ */
      color: #fff;
      opacity: 1;
      /* Firefox */ }
    .signup-form .signup-box input[type="email"]::-moz-placeholder {
      /* Chrome, Firefox, Opera, Safari 10.1+ */
      color: #fff;
      opacity: 1;
      /* Firefox */ }
    .signup-form .signup-box input[type="email"]:-ms-input-placeholder {
      /* Chrome, Firefox, Opera, Safari 10.1+ */
      color: #fff;
      opacity: 1;
      /* Firefox */ }
    .signup-form .signup-box input[type="email"]::-ms-input-placeholder {
      /* Chrome, Firefox, Opera, Safari 10.1+ */
      color: #fff;
      opacity: 1;
      /* Firefox */ }
    .signup-form .signup-box input[type="email"]::placeholder {
      /* Chrome, Firefox, Opera, Safari 10.1+ */
      color: #fff;
      opacity: 1;
      /* Firefox */ }
    .signup-form .signup-box input[type="email"]:-ms-input-placeholder {
      /* Internet Explorer 10-11 */
      color: #fff; }
    .signup-form .signup-box input[type="email"]::-ms-input-placeholder {
      /* Microsoft Edge */
      color: #fff; }
  .signup-form .signup-box button {
    margin: 0;
    height: 100%;
    color: #333333;
    background: white;
    border-radius: 0;
    display: block;
    padding: 10px;
    border-radius: 0 4px 4px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 14px;
    font-weight: 400; }
  .signup-form .signup-box .button-loader {
    display: none; }

.signup-form .signin-link {
  margin: 0 0 30px;
  font-size: 14px; }

.signup-form .message-success, .signup-form .message-error {
  display: none;
  margin-top: 10px; }

.signup-form.loading .signup-box .button-content {
  display: none; }

.signup-form.loading .signup-box .button-loader {
  display: block; }

.signup-form.error .message-error {
  display: block;
  color: red;
  font-size: 14px; }

.signup-form.success .message-success {
  display: block;
  color: #4CAF50;
  font-size: 14px; }

.cta {
  color: #ffffff;
  background: #0cd4b0;
  border-radius: 20px;
  margin-left: 8px;
  font-weight: bold; }

.cta .button-content,
.cta .button-content:hover {
  color: #ffffff !important; }

.with-radius {
  border-radius: 20px; }

@media (max-width: 850px) {
  .gh-subscribe .wrapper-1120 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .gh-subscribe .one {
    padding-right: 0;
    padding-bottom: 20px; }
    .gh-subscribe .one p {
      font-size: 23px;
      text-align: center;
      max-width: 300px;
      margin-bottom: -5px; }
  .gh-subscribe .gh-subscribe-rss {
    text-align: center; } }

.illustrator-extension-banner {
  background: #f1e9fd;
  margin: 30px 0 30px;
  opacity: 90%; }
  .illustrator-extension-banner .wrapper-1120 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .illustrator-extension-banner .photo {
    padding-right: 30px; }
    .illustrator-extension-banner .photo img {
      font-size: 27px;
      color: white;
      max-width: 400px;
      line-height: 1.4em;
      font-weight: 400;
      margin-bottom: 10px; }
  .illustrator-extension-banner .text {
    margin-left: 36px;
    width: 100%;
    max-width: 400px; }
    .illustrator-extension-banner .text img.icon {
      height: 14px; }
    .illustrator-extension-banner .text h1,
    .illustrator-extension-banner .text h2 {
      font-weight: bold;
      font-size: 20px;
      line-height: 25px;
      margin: 0; }
    .illustrator-extension-banner .text h1 {
      color: #7C3AED;
      margin-bottom: 8px; }
    .illustrator-extension-banner .text h2 {
      color: black;
      margin-bottom: 32px; }
    .illustrator-extension-banner .text h3 {
      margin: 36px 0 8px 0;
      font-weight: 600;
      font-size: 12px;
      color: #000000; }
    .illustrator-extension-banner .text .cta {
      color: #ffffff !important;
      background: #7C3AED;
      border-radius: 20px;
      margin-bottom: 36px;
      font-weight: bold; }
  .illustrator-extension-banner .subscribe-email {
    border: none;
    padding: 10px;
    border-radius: 4px 0 0 4px;
    background: rgba(255, 255, 255, 0.5);
    color: white;
    font-size: 14px;
    width: 100%; }
    .illustrator-extension-banner .subscribe-email:hover {
      background: rgba(255, 255, 255, 0.45); }
    .illustrator-extension-banner .subscribe-email:focus {
      background: rgba(255, 255, 255, 0.45); }
  .illustrator-extension-banner .gh-subscribe-rss {
    display: block;
    padding-top: 2px;
    font-size: 14px;
    color: white; }
    .illustrator-extension-banner .gh-subscribe-rss a {
      color: white;
      border-bottom: 1px solid white; }

.drawer-handle {
  position: relative;
  z-index: 501;
  width: 30px;
  height: 35px;
  cursor: pointer;
  margin: 0 3px -13px 0; }
  .drawer-handle span {
    position: absolute;
    cursor: pointer;
    height: 1px;
    width: 30px;
    background: white;
    position: absolute;
    display: block;
    content: "";
    top: 0px; }
    .drawer-handle span:before, .drawer-handle span:after {
      cursor: pointer;
      height: 1px;
      width: 30px;
      background: white;
      position: absolute;
      display: block;
      content: "";
      top: 0px; }
  .drawer-handle span.second {
    top: 7px; }
  .drawer-handle span {
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease; }
    .drawer-handle span:after {
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease;
      top: 14px; }
    .drawer-handle span:before {
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease;
      top: 7px; }

.drawer-handle.open span {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 10px;
  background: white; }
  .drawer-handle.open span:before {
    background-color: transparent; }
  .drawer-handle.open span:after {
    background: white;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    top: 0px; }

.drawer-menu {
  position: fixed;
  z-index: 101;
  -webkit-transform: translateX(-150%);
          transform: translateX(-150%);
  width: 30%;
  padding-top: 52px;
  -webkit-transition: 400ms;
  transition: 400ms;
  text-align: left;
  font-family: "Work Sans", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", sans-serif;
  font-weight: 400;
  background: white;
  top: 0;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 30vw;
  -webkit-box-shadow: 0px 0 10px rgba(0, 0, 0, 0.3);
          box-shadow: 0px 0 10px rgba(0, 0, 0, 0.3);
  visibility: hidden; }
  .drawer-menu ul.nav {
    list-style: none;
    padding: 0; }
  .drawer-menu a {
    color: #333333;
    display: block;
    padding: 18px 20px;
    font-size: 16px; }
    .drawer-menu a:hover {
      background: #E4FFFA; }
  .drawer-menu a.active {
    background: #E4FFFA;
    border-left: 5px solid #112f39;
    padding-left: 15px; }
  .drawer-menu .nav-dropdown-menu {
    left: 15px; }
    .drawer-menu .nav-dropdown-menu .nav-dropdown-menu-wrapper::before {
      left: 20px; }
  .drawer-menu.open {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    visibility: visible; }

@media (max-width: 750px) {
  .drawer-menu {
    width: 70%;
    width: 70vw; } }

.nav-dropdown-menu {
  float: left;
  display: none;
  position: absolute;
  top: 45px;
  left: calc(50% - 87px);
  z-index: 99999; }
  .nav-dropdown-menu .nav-dropdown-menu-wrapper {
    background: #fff;
    border-radius: 6px;
    border: 2px solid #e6e6e6;
    -webkit-box-shadow: 0 12px 30px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 12px 30px 0 rgba(0, 0, 0, 0.1);
    overflow: hidden; }
    .nav-dropdown-menu .nav-dropdown-menu-wrapper a {
      display: block;
      padding: 11px 15px;
      line-height: 1.5em;
      width: 170px;
      text-align: left;
      border-bottom: 1px solid #eaeaea;
      font-size: 12px;
      letter-spacing: 0.1em;
      text-align: center;
      color: #525252; }
      .nav-dropdown-menu .nav-dropdown-menu-wrapper a:last-child {
        border-bottom: 0; }
      .nav-dropdown-menu .nav-dropdown-menu-wrapper a:hover {
        background: #ececec; }
  .nav-dropdown-menu .nav-dropdown-menu-wrapper::before {
    top: -21px;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: transparent;
    border-bottom-color: #e6e6e6;
    border-width: 11px;
    margin-left: -11px; }

.menu-item-wrapper:hover .nav-dropdown-menu {
  display: block; }

.menu-item-wrapper--dropdown {
  position: relative; }

/* Offset headings from fixed header */
.post-full-content h2::before,
.post-full-content h3::before {
  display: block;
  content: " ";
  height: 84px;
  margin-top: -84px;
  visibility: hidden; }

.post-full-content h1:focus,
.post-full-content h2:focus,
.post-full-content h3:focus,
.post-full-content h4:focus,
.post-full-content h5:focus,
.post-full-content h6:focus,
.post-full-content h7:focus {
  display: block;
  content: " ";
  height: 84px;
  margin-top: -84px;
  visibility: hidden; }

/* Adjust content wrapper */
.post-full-content {
  display: block; }

aside.toc-container, .post-toc {
  border-radius: 4px;
  padding: 10px; }
  aside.toc-container .toc, aside.toc-container .toc-2, .post-toc .toc, .post-toc .toc-2 {
    padding: 0.2em; }
    aside.toc-container .toc .toc-list li, aside.toc-container .toc-2 .toc-list li, .post-toc .toc .toc-list li, .post-toc .toc-2 .toc-list li {
      font-size: 1.6rem; }

.is-active-link::before {
  background-color: #102f39 !important; }

.is-active-link:hover {
  color: #0DD5B2 !important; }

.is-active-link {
  color: #0DD5B2 !important; }

.post-toc {
  padding: 2em;
  border-radius: 4px;
  color: black !important;
  background-color: #F0EdE7 !important; }
  .post-toc .toc-2 .toc-list li a {
    color: black !important;
    font-weight: 100; }
