@charset "UTF-8";
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

article,
aside,
footer,
header,
hgroup,
main,
nav,
section {
  display: block; }

li {
  list-style: none; }

img {
  height: auto;
  max-width: 100%;
  vertical-align: top; }

button,
input,
select,
textarea {
  font: inherit; }

address {
  font-style: normal; }

html {
  font-size: 1rem;
  font-smooth: always;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth; }

body {
  background: #ffffff;
  color: #6a7081;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: 400;
  line-height: 1.7;
  -ms-scroll-chaining: none;
  overscroll-behavior: none; }

a {
  color: #2d61c9;
  text-decoration: none;
  -webkit-transition: all 0.14s ease-out;
  -o-transition: all 0.14s ease-out;
  transition: all 0.14s ease-out; }

a:hover {
  color: #343a41; }

a:active {
  color: #343a41; }

a:focus {
  color: #343a41; }

p,
ul,
ol,
dl {
  margin-top: calc(1.06667rem + 0.25vw); }

blockquote,
figure,
hr {
  margin-top: calc(1.86667rem + 0.25vw);
  margin-bottom: calc(1.86667rem + 0.25vw); }

pre,
table {
  margin-top: calc(1.06667rem + 0.25vw);
  margin-bottom: calc(1.86667rem + 0.25vw); }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #343a41;
  font-weight: 400;
  line-height: 1.2;
  margin-top: calc(2.13333rem + 0.5vw); }

h1 {
  margin-top: calc(1.86667rem + 1vw); }
  h1 {
    font-size: 1.60181rem; }
    @media screen and (min-width: 20rem) {
      h1 {
        font-size: calc(1.60181rem + 1.2847 * ((100vw - 20rem) / 113)); } }
    @media screen and (min-width: 133rem) {
      h1 {
        font-size: 2.88651rem; } }

h2 {
  font-size: 1.26562rem; }
  @media screen and (min-width: 20rem) {
    h2 {
      font-size: calc(1.26562rem + 0.76166 * ((100vw - 20rem) / 113)); } }
  @media screen and (min-width: 133rem) {
    h2 {
      font-size: 2.02729rem; } }

h3 {
  font-size: 1.125rem; }
  @media screen and (min-width: 20rem) {
    h3 {
      font-size: calc(1.125rem + 0.47681 * ((100vw - 20rem) / 113)); } }
  @media screen and (min-width: 133rem) {
    h3 {
      font-size: 1.60181rem; } }

h4 {
  font-size: 1rem; }
  @media screen and (min-width: 20rem) {
    h4 {
      font-size: calc(1rem + 0.42383 * ((100vw - 20rem) / 113)); } }
  @media screen and (min-width: 133rem) {
    h4 {
      font-size: 1.42383rem; } }

h5 {
  font-size: 1rem; }
  @media screen and (min-width: 20rem) {
    h5 {
      font-size: calc(1rem + 0.26562 * ((100vw - 20rem) / 113)); } }
  @media screen and (min-width: 133rem) {
    h5 {
      font-size: 1.26562rem; } }

h6 {
  font-size: 1rem; }
  @media screen and (min-width: 20rem) {
    h6 {
      font-size: calc(1rem + 0.125 * ((100vw - 20rem) / 113)); } }
  @media screen and (min-width: 133rem) {
    h6 {
      font-size: 1.125rem; } }

h2 + p,
h3 + p,
h4 + p,
h5 + p,
h6 + p {
  margin-top: calc(0.53333rem + 0.25vw); }

b,
strong {
  font-weight: 600; }

blockquote {
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 1.125rem;
  font-style: italic;
  padding: 0.26667rem 0 0 2.66667rem;
  position: relative; }
  blockquote > :nth-child(1) {
    margin-top: 0; }
  blockquote:before {
    color: #2d61c9;
    content: "“";
    font: normal 400%/0.9 Georgia, Times, Times New Roman, serif;
    position: absolute;
    left: 0;
    top: 0; }

ul,
ol {
  margin-left: 2rem; }
  ul > li,
  ol > li {
    list-style: inherit;
    padding: 0 0 0.53333rem 0.53333rem; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: calc(0.53333rem + 0.5vw);
    margin-top: calc(0.53333rem + 0.5vw); }

dl dt {
  font-weight: 700; }

pre {
  background-color: #f7f8fb;
  max-height: 30rem;
  padding: 1.6rem;
  white-space: pre-wrap;
  word-wrap: break-word; }
  pre > code {
    color: #6a7081;
    display: inline-block; }

code {
  background-color: #f7f8fb;
  color: #DF6F27;
  font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
  font-size: 0.8888em; }

table {
  border: 1px solid #e3e3e4;
  border-collapse: collapse;
  border-spacing: 0;
  vertical-align: top;
  text-align: left;
  width: 100%; }
  table th {
    font-weight: 600;
    padding: 0.66667rem 1.06667rem; }
  table td {
    border-top: 1px solid #e3e3e4;
    padding: 0.66667rem 1.06667rem; }

.table-striped tr:nth-child(2n) {
  background: #f7f8fb; }

.table-bordered th,
.table-bordered td {
  border: 1px solid #e3e3e4; }

.table-title th {
  background: #f7f8fb; }

figcaption {
  color: #6a7081;
  font-weight: 400;
  font-size: 0.79012rem;
  margin-top: 1.06667rem;
  font-style: italic; }

kbd {
  background: #2a2734;
  border-radius: 2px;
  color: #ffffff;
  font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
  font-size: 0.8888em;
  padding: 0.13333rem 0.4rem; }

sub,
sup {
  font-size: 65%; }

small {
  font-size: 0.79012rem; }

hr {
  background: 0 0;
  border: none;
  height: auto;
  line-height: 1;
  max-width: none;
  text-align: center; }
  hr::before {
    content: "\2022 \2022 \2022";
    color: #343a41;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1rem;
    padding-left: 1rem; }

.btn, [type=button],
[type=submit],
button {
  background: #2d61c9;
  border: 1px solid #2d61c9;
  border-radius: 30px;
  -webkit-box-shadow: 0 4px 6px rgba(50, 50, 93, 0.1), 0 1px 1px rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.1), 0 1px 1px rgba(0, 0, 0, 0.08);
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  font: 400 0.88889rem -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  padding: 0.69333rem 1.33333rem;
  vertical-align: middle;
  text-align: center;
  -webkit-transition: all 0.24s ease;
  -o-transition: all 0.24s ease;
  transition: all 0.24s ease;
  overflow: hidden;
  will-change: transform; }
  @media all and (max-width: 19.9375em) {
    .btn, [type=button],
    [type=submit],
    button {
      width: 100%; } }
  @media all and (max-width: 37.4375em) {
    .btn, [type=button],
    [type=submit],
    button {
      margin-bottom: 0.53333rem; } }
  .btn:hover, :hover[type=button],
  :hover[type=submit],
  button:hover, .btn:active, :active[type=button],
  :active[type=submit],
  button:active, .btn:focus, :focus[type=button],
  :focus[type=submit],
  button:focus {
    -webkit-box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.08);
    box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.08);
    color: #ffffff;
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    text-decoration: none !important; }
  @media all and (min-width: 20em) {
    .btn + .btn, [type=button] + .btn, [type=submit] + .btn, button + .btn, .btn + [type=button], [type=button] + [type=button], [type=submit] + [type=button], button + [type=button],
    .btn + [type=submit],
    [type=button] + [type=submit],
    [type=submit] + [type=submit],
    button + [type=submit],
    .btn + button,
    [type=button] + button,
    [type=submit] + button,
    button + button {
      margin-left: 0.53333rem; } }
  .btn--white {
    background: #ffffff !important;
    border-color: #ffffff !important;
    color: #6a7081 !important; }
    .btn--white > svg {
      fill: #6a7081; }
  .btn--yellow {
    background: #FFC439 !important;
    border-color: #FFC439 !important;
    color: #ffffff !important; }
    .btn--yellow > svg {
      fill: #ffffff; }
  .btn--green {
    background: #5cb85c !important;
    border-color: #5cb85c !important;
    color: #ffffff !important; }
    .btn--green > svg {
      fill: #ffffff; }
  .btn--outline {
    background: none !important;
    border: 1px solid #e3e3e4 !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #6a7081; }
    .btn--outline:hover, .btn--outline:active, .btn--outline:focus {
      border-color: #9ea2ad !important;
      -webkit-box-shadow: none;
      box-shadow: none;
      color: #343a41; }
  .btn--icon {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: nowrap; }
    @media all and (max-width: 37.4375em) {
      .btn--icon {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }
  .btn:disabled, :disabled[type=button],
  :disabled[type=submit],
  button:disabled {
    background-color: #f5f5f6;
    border-color: #ccced0;
    color: #85898d;
    cursor: not-allowed; }
  .btn > svg, [type=button] > svg, [type=submit] > svg, button > svg {
    margin-right: 0.8rem;
    vertical-align: middle; }

[type=button],
[type=submit],
button {
  -webkit-appearance: none;
  -moz-appearance: none; }

fieldset {
  border: 1px solid #d6d8d9;
  margin: 0 0 1.6rem;
  padding: 1.6rem; }
  fieldset > legend {
    margin-left: -1rem;
    padding: 0 1rem; }

legend {
  font-weight: 700; }

label {
  font-weight: 600;
  margin: 0 1.06667rem 0.8rem 0; }

option {
  font-weight: 400; }

[type=text],
[type=url],
[type=tel],
[type=number],
[type=email],
[type=search],
textarea,
select {
  background-color: #ffffff;
  border: 1px solid #d6d8d9;
  border-radius: 0;
  font-size: 0.88889rem;
  outline: none;
  padding: 0.53333rem 0.8rem;
  width: 100%;
  -webkit-transition: all 0.24s ease;
  -o-transition: all 0.24s ease;
  transition: all 0.24s ease;
  -webkit-appearance: none;
  -moz-appearance: none; }
  @media all and (min-width: 20em) {
    [type=text],
    [type=url],
    [type=tel],
    [type=number],
    [type=email],
    [type=search],
    textarea,
    select {
      width: auto; } }
  [type=text]:focus,
  [type=url]:focus,
  [type=tel]:focus,
  [type=number]:focus,
  [type=email]:focus,
  [type=search]:focus,
  textarea:focus,
  select:focus {
    border-color: #6a7081; }

input[type=checkbox],
input[type=radio] {
  opacity: 0;
  position: absolute; }
  input[type=checkbox] + label,
  input[type=radio] + label {
    position: relative;
    margin-left: -1px;
    cursor: pointer;
    padding: 0; }
    input[type=checkbox] + label:before,
    input[type=radio] + label:before {
      background-color: #ffffff;
      border: 1px solid #d6d8d9;
      border-radius: 2px;
      content: '';
      display: inline-block;
      height: 1.33333rem;
      line-height: 1.33333rem;
      margin-right: 0.8rem;
      vertical-align: middle;
      text-align: center;
      width: 1.33333rem; }
  input[type=checkbox]:checked + label:before,
  input[type=radio]:checked + label:before {
    content: "";
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 8'%3e%3cpolygon points='9.53 0 4.4 5.09 1.47 2.18 0 3.64 2.93 6.54 4.4 8 5.87 6.54 11 1.46 9.53 0' fill='%232d61c9'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 11px 8px;
    background-position: 50% 50%;
    border-color: #2d61c9; }

select {
  max-width: 100%;
  width: auto;
  position: relative; }
  select:not([multiple]) {
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 6"><polygon points="3 6 3 6 0 0 6 0 3 6" fill="%238a8b8c"/></svg>') no-repeat 90% 50%;
    background-size: 8px;
    padding-right: 3.2rem; }

select[multiple] {
  padding: 1.6rem;
  width: 100%; }
  select[multiple]:hover {
    border-color: #d6d8d9; }
  select[multiple]:focus {
    border-color: #6a7081; }
    select[multiple]:focus option:checked {
      background: #2d61c9 -webkit-gradient(linear, left bottom, left top, from(#2d61c9), to(#2d61c9));
      background: #2d61c9 -webkit-linear-gradient(bottom, #2d61c9 0%, #2d61c9 100%);
      background: #2d61c9 -o-linear-gradient(bottom, #2d61c9 0%, #2d61c9 100%);
      background: #2d61c9 linear-gradient(0deg, #2d61c9 0%, #2d61c9 100%); }
  select[multiple]:disabled {
    background-color: #f5f5f6;
    cursor: not-allowed; }
    select[multiple]:disabled:hover {
      border-color: #d6d8d9; }

textarea {
  display: block;
  overflow: auto;
  resize: vertical;
  max-width: 100%; }

/* Wrapper + Header ------------------------ */
.header {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #ffffff;
  border-bottom: 1px solid #e3e3e4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 1;
  height: 5.33333rem;
  padding: 0 2rem;
  position: absolute;
  top: 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: background .5s, color .1s, -webkit-transform .5s .5s;
  transition: background .5s, color .1s, -webkit-transform .5s .5s;
  -o-transition: transform .5s .5s, background .5s, color .1s;
  transition: transform .5s .5s, background .5s, color .1s;
  transition: transform .5s .5s, background .5s, color .1s, -webkit-transform .5s .5s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
  z-index: 999; }
  @media all and (min-width: 56.25em) {
    .header {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .header.is-visible {
    border: none;
    -webkit-box-shadow: 0 4px 6px rgba(50, 50, 93, 0.05), 0 1px 1px rgba(0, 0, 0, 0.04);
    box-shadow: 0 4px 6px rgba(50, 50, 93, 0.05), 0 1px 1px rgba(0, 0, 0, 0.04);
    opacity: 1;
    position: fixed;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: height .3s, background .4s, opacity .3s, -webkit-transform .3s;
    transition: height .3s, background .4s, opacity .3s, -webkit-transform .3s;
    -o-transition: transform .3s, height .3s, background .4s, opacity .3s;
    transition: transform .3s, height .3s, background .4s, opacity .3s;
    transition: transform .3s, height .3s, background .4s, opacity .3s, -webkit-transform .3s;
    width: 100%; }
  .header.is-hidden {
    opacity: 0;
    -webkit-transform: translate(0, -86px);
    -ms-transform: translate(0, -86px);
    transform: translate(0, -86px);
    -webkit-transition: background .3s, color .3s, opacity 0 .3s, -webkit-transform .2s;
    transition: background .3s, color .3s, opacity 0 .3s, -webkit-transform .2s;
    -o-transition: transform .2s, background .3s, color .3s, opacity 0 .3s;
    transition: transform .2s, background .3s, color .3s, opacity 0 .3s;
    transition: transform .2s, background .3s, color .3s, opacity 0 .3s, -webkit-transform .2s; }

.logo {
  font-size: 1.26562rem;
  font-weight: 700;
  line-height: 1;
  margin-right: auto;
  position: relative;
  z-index: 999; }
  .logo > img {
    max-height: 2rem;
    max-width: 5rem; }

@media all and (max-width: 56.1875em) {
  .slack,
  .github {
    display: none !important; } }

@media all and (min-width: 56.25em) {
  .slack,
  .github {
    margin-left: 1.06667rem; } }

.slack:hover,
.github:hover {
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0); }
  .slack:hover > svg,
  .github:hover > svg {
    fill: #343a41; }

.navbar__menu {
  margin: 0;
  max-height: 0;
  overflow: hidden;
  padding: 0; }
  @media all and (max-width: 56.1875em) {
    .navbar__menu {
      border-top: 1px solid transparent;
      font-size: 1.125rem;
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media all and (min-width: 56.25em) {
    .navbar__menu {
      max-height: none;
      overflow: visible; } }
  .navbar__menu li {
    color: #6a7081;
    list-style: none;
    padding: 0rem 0;
    position: relative; }
    @media all and (min-width: 56.25em) {
      .navbar__menu li {
        display: inline-block;
        line-height: 3.2; } }
    .navbar__menu li:hover, .navbar__menu li[aria-expanded="true"] {
      cursor: pointer; }
      @media all and (min-width: 56.25em) {
        .navbar__menu li:hover > ul, .navbar__menu li[aria-expanded="true"] > ul {
          opacity: 1;
          -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
          transform: translate(0, 0);
          visibility: visible;
          will-change: transform; }
          .navbar__menu li:hover > ul li, .navbar__menu li[aria-expanded="true"] > ul li {
            display: block; } }
    .navbar__menu li a,
    .navbar__menu li span {
      display: block;
      color: #6a7081;
      margin: 0 0.8rem;
      white-space: nowrap; }
      @media all and (max-width: 56.1875em) {
        .navbar__menu li a,
        .navbar__menu li span {
          padding: 1.06667rem 0; } }
      .navbar__menu li a:after,
      .navbar__menu li span:after {
        content: "";
        display: block;
        margin: 0 auto; }
      .navbar__menu li a:hover:not(span),
      .navbar__menu li span:hover:not(span) {
        color: #2d61c9;
        text-decoration: none; }
    .navbar__menu li span:hover {
      cursor: default; }
  .navbar__menu.is-visible {
    background: #ffffff;
    left: 0;
    height: 100vh;
    max-height: 100vh;
    opacity: 1;
    overflow: auto;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%;
    margin-top: 5.33333rem;
    padding-top: 1.6rem;
    -webkit-transition: all .24s ease-out;
    -o-transition: all .24s ease-out;
    transition: all .24s ease-out;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    visibility: visible; }
    .navbar__menu.is-visible li {
      padding: 0;
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
      .navbar__menu.is-visible li[aria-expanded="true"] > ul {
        display: block; }
      .navbar__menu.is-visible li.is-focused > ul {
        height: auto;
        opacity: 1;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        visibility: visible; }

@media all and (max-width: 56.1875em) {
  .navbar__submenu {
    margin: 0; } }

@media all and (min-width: 56.25em) {
  .navbar__submenu {
    background: #ffffff;
    -webkit-box-shadow: 0 0 6px rgba(52, 58, 65, 0.15);
    box-shadow: 0 0 6px rgba(52, 58, 65, 0.15);
    left: auto;
    line-height: 1.7;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 100%;
    -webkit-transition: all 0.36s cubic-bezier(0.17, 0.67, 0.22, 0.91);
    -o-transition: all 0.36s cubic-bezier(0.17, 0.67, 0.22, 0.91);
    transition: all 0.36s cubic-bezier(0.17, 0.67, 0.22, 0.91);
    -webkit-transform: translate(0, -10px);
    -ms-transform: translate(0, -10px);
    transform: translate(0, -10px);
    width: auto;
    z-index: 2000;
    visibility: hidden; }
    .navbar__submenu li {
      border-bottom: 1px solid #eee;
      font-weight: normal;
      line-height: inherit;
      margin: 0; }
      .navbar__submenu li > a,
      .navbar__submenu li > span {
        padding: 0.26667rem 0; } }
      @media all and (min-width: 56.25em) and (min-width: 56.25em) {
        .navbar__submenu li > a,
        .navbar__submenu li > span {
          padding: 0.53333rem 1.6rem; } }

@media all and (min-width: 56.25em) {
      .navbar__submenu li:hover > a {
        background: #f7f8fb; }
        .navbar__submenu li:hover > a:hover {
          color: #343a41; }
      .navbar__submenu li ul {
        left: 90%;
        top: 0;
        -webkit-transform: translate(-10%, 0);
        -ms-transform: translate(-10%, 0);
        transform: translate(-10%, 0); }
        .navbar__submenu li ul.navbar__submenu--reversed {
          left: auto;
          right: 90%;
          top: 0; }
    .col-2 .navbar__submenu {
      -webkit-column-count: 2;
      column-count: 2;
      -webkit-column-gap: 2px;
      column-gap: 2px; }
    .col-3 .navbar__submenu {
      -webkit-column-count: 3;
      column-count: 3;
      -webkit-column-gap: 2px;
      column-gap: 2px; } }

.navbar__toggle {
  background: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: none;
  border-radius: 0;
  display: inline-block;
  cursor: pointer;
  margin: 0;
  overflow: visible;
  padding: 1rem;
  text-transform: none;
  z-index: 2004;
  right: 1rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%) !important;
  -ms-transform: translate(0, -50%) !important;
  transform: translate(0, -50%) !important; }
  @media all and (min-width: 56.25em) {
    .navbar__toggle {
      display: none; } }
  .navbar__toggle:hover, .navbar__toggle:focus {
    background: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none; }
  .navbar__toggle:hover {
    opacity: 0.7; }
  .navbar__toggle-box {
    width: 24px;
    height: 14px;
    display: inline-block;
    position: relative; }
  .navbar__toggle-inner {
    display: block;
    top: 50%; }
    .navbar__toggle-inner::before {
      content: "";
      display: block;
      top: -6px; }
    .navbar__toggle-inner::after {
      content: "";
      display: block;
      bottom: -6px; }
  .navbar__toggle-inner, .navbar__toggle-inner::before, .navbar__toggle-inner::after {
    width: 24px;
    height: 2px;
    background-color: #343a41;
    position: absolute;
    -webkit-transition: opacity .14s ease-out, -webkit-transform;
    transition: opacity .14s ease-out, -webkit-transform;
    -o-transition: transform, opacity .14s ease-out;
    transition: transform, opacity .14s ease-out;
    transition: transform, opacity .14s ease-out, -webkit-transform; }
  .navbar__toggle-inner {
    -webkit-transition-duration: .075s;
    -o-transition-duration: .075s;
    transition-duration: .075s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .navbar__toggle-inner::before {
    -webkit-transition: top .075s ease .12s, opacity .075s ease;
    -o-transition: top .075s ease .12s, opacity .075s ease;
    transition: top .075s ease .12s, opacity .075s ease; }
  .navbar__toggle-inner::after {
    -webkit-transition: bottom 0.075s ease 0.12s, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s ease 0.12s, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: bottom 0.075s ease 0.12s, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s ease 0.12s, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s ease 0.12s, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .navbar__toggle.is-active .navbar__toggle-inner {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition-delay: .12s;
    -o-transition-delay: .12s;
    transition-delay: .12s;
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
    .navbar__toggle.is-active .navbar__toggle-inner::before {
      top: 0;
      opacity: 0;
      -webkit-transition: top 0.075s ease, opacity 0.075s ease .12s;
      -o-transition: top 0.075s ease, opacity 0.075s ease .12s;
      transition: top 0.075s ease, opacity 0.075s ease .12s; }
    .navbar__toggle.is-active .navbar__toggle-inner::after {
      bottom: 0;
      -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
      transform: rotate(-90deg);
      -webkit-transition: bottom 0.075s ease, -webkit-transform 0.075s cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
      transition: bottom 0.075s ease, -webkit-transform 0.075s cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
      -o-transition: bottom 0.075s ease, transform 0.075s cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
      transition: bottom 0.075s ease, transform 0.075s cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
      transition: bottom 0.075s ease, transform 0.075s cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s, -webkit-transform 0.075s cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s; }

.container {
  margin: 0 2rem 0 0;
  padding-top: 5.33333rem; }
  @media all and (max-width: 56.1875em) {
    .container {
      margin: 0 2rem calc(1.86667rem + 1vw); } }
  @media all and (min-width: 56.25em) {
    .container {
      display: grid;
      grid-column-gap: 3rem;
      grid-template-columns: minmax(-webkit-min-content, 18.2rem) 1fr;
      grid-template-columns: minmax(min-content, 18.2rem) 1fr; } }

.content {
  padding-bottom: calc(1.86667rem + 1vw); }
  .content--center {
    max-width: 46.8rem;
    margin: 0 auto;
    width: 100%; }
  .content--left {
    max-width: 46.8rem;
    margin: 0;
    width: 100%; }
  .content a:hover {
    text-decoration: underline;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip: ink; }

.sidebar {
  padding-top: 2rem;
  z-index: 1; }
  @media all and (min-width: 56.25em) {
    .sidebar {
      border-right: 1px solid #e3e3e4;
      max-height: 100vh;
      overflow-y: auto;
      position: -webkit-sticky;
      position: sticky;
      top: 0;
      -webkit-overflow-scrolling: touch;
      -ms-overflow-style: -ms-autohiding-scrollbar; }
      .sidebar::-webkit-scrollbar {
        display: none; } }
  .sidebar__search {
    padding-bottom: 1.06667rem; }
    @media all and (min-width: 56.25em) {
      .sidebar__search {
        padding: 0 2rem 1.06667rem; } }
    .sidebar__search input[type=search] {
      background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 23'%3e%3cpath class='color' d='M23.565 20.458l-6.847-6.847a8.974 8.974 0 1 0-1.935 2.28l6.674 6.675a1.49 1.49 0 0 0 2.107-2.107zM9 16a7 7 0 1 1 7-7 7.008 7.008 0 0 1-7 7z' fill='070707'/%3e%3c/svg%3e");
      background-position: 92% 50%;
      background-repeat: no-repeat;
      background-size: 16px 15px;
      border-radius: 30px;
      padding-right: 2.66667rem;
      width: 100%; }
  .sidebar__menu {
    margin-bottom: 1.6rem; }
    @media all and (max-width: 56.1875em) {
      .sidebar__menu {
        background: #f7f8fb;
        margin: 0.53333rem 0 1.6rem;
        padding: 1.33333rem 1.06667rem; } }
    .sidebar__menu ul {
      margin: 0;
      padding: 0; }
      .sidebar__menu ul li {
        font-size: 0.88889rem;
        list-style: none;
        margin-bottom: 0.26667rem;
        padding: 0.4rem 2rem;
        position: relative; }
        @media all and (max-width: 56.1875em) {
          .sidebar__menu ul li {
            padding: 0.26667rem 2rem; } }
        .sidebar__menu ul li a {
          display: block; }
          .sidebar__menu ul li a {
            color: #6a7081;
            text-decoration: none;
            -webkit-transition: all 0.14s ease-out;
            -o-transition: all 0.14s ease-out;
            transition: all 0.14s ease-out; }
          .sidebar__menu ul li a:hover {
            color: #2d61c9; }
          .sidebar__menu ul li a:active {
            color: #2d61c9; }
          .sidebar__menu ul li a:focus {
            color: #2d61c9; }
        .sidebar__menu ul li li {
          padding: 0.34667rem 0; }
          @media all and (max-width: 56.1875em) {
            .sidebar__menu ul li li {
              padding: 0.26667rem 0; } }
        .sidebar__menu ul li.active > a {
          color: #343a41;
          font-weight: 600; }
        @media all and (max-width: 56.1875em) {
          .sidebar__menu ul li.active > ul {
            display: block;
            opacity: 1 !important;
            margin-bottom: 1.06667rem !important; } }
        .sidebar__menu ul li.favorite {
          background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='%23FFC439' d='M12,15.494228 L15.5203787,17.3429447 L14.8480462,13.4273 L17.6960925,10.6542251 L13.7601894,10.0829402 L12,6.520369 L10.2398106,10.0829402 L6.30390755,10.6542251 L9.15195377,13.4273 L8.47962126,17.3429447 L12,15.494228 Z M12,17.7544125 L5.81966011,21 L7,14.1257354 L2,9.25735421 L8.90983006,8.25441253 L12,2 L15.0901699,8.25441253 L22,9.25735421 L17,14.1257354 L18.1803399,21 L12,17.7544125 Z'/%3e%3c/svg%3e");
          background-repeat: no-repeat;
          background-position: 90% 50%;
          background-size: 18px 18px; }
      .sidebar__menu ul ul {
        margin: 0; }
        @media all and (max-width: 56.1875em) {
          .sidebar__menu ul ul {
            display: none;
            margin: 1.06667rem 0;
            opacity: 0;
            -webkit-transition: opacity 1s;
            -o-transition: opacity 1s;
            transition: opacity 1s; } }
        .sidebar__menu ul ul ul {
          margin-bottom: 0.53333rem;
          margin-left: 1.5rem; }
    @media all and (min-width: 56.25em) {
      .sidebar__menu > ul > .has-submenu {
        margin-bottom: 1.6rem;
        padding-bottom: 1.6rem;
        border-bottom: 1px solid #e3e3e4; }
        .sidebar__menu > ul > .has-submenu:last-child {
          padding: none;
          border: none; } }
    .sidebar__menu-in {
      opacity: 1 !important;
      margin-bottom: 1.06667rem !important; }
  @media all and (max-width: 56.1875em) {
    .sidebar .has-submenu {
      cursor: pointer;
      padding-left: 2rem !important; }
      .sidebar .has-submenu::before {
        content: "\002B";
        left: 1rem;
        line-height: 1.6;
        position: absolute; }
      .sidebar .has-submenu.active::before {
        content: "\2212"; } }
  .sidebar .has-submenu > a,
  .sidebar .has-submenu > span {
    color: #343a41;
    display: block;
    font-weight: 600; }
    @media all and (min-width: 56.25em) {
      .sidebar .has-submenu > a,
      .sidebar .has-submenu > span {
        color: #343a41;
        font-size: 1.125rem;
        font-weight: 400;
        margin: 0.53333rem 0 0.53333rem; } }
  @media all and (min-width: 56.25em) {
    .sidebar .sub-title > span,
    .sidebar .sub-title > a {
      font-size: 1rem !important; } }

.card {
  -webkit-box-shadow: 0 -1px 0 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0 -1px 0 0px rgba(0, 0, 0, 0.1);
  padding: 1rem 0 0;
  position: relative;
  -webkit-transition: all 0.46s cubic-bezier(0.17, 0.67, 0.22, 0.91);
  -o-transition: all 0.46s cubic-bezier(0.17, 0.67, 0.22, 0.91);
  transition: all 0.46s cubic-bezier(0.17, 0.67, 0.22, 0.91); }
  @media all and (min-width: 56.25em) {
    .card {
      border-radius: 4px;
      -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
      box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
      padding: 1rem 2rem 3rem; }
      .card::after {
        background: #2d61c9;
        content: "";
        height: 1px;
        width: 15%;
        position: absolute;
        top: -1px;
        left: 0;
        -webkit-transition: all 0.46s cubic-bezier(0.17, 0.67, 0.22, 0.91);
        -o-transition: all 0.46s cubic-bezier(0.17, 0.67, 0.22, 0.91);
        transition: all 0.46s cubic-bezier(0.17, 0.67, 0.22, 0.91); } }
  @media all and (min-width: 56.25em) {
    .card:hover {
      -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.075);
      box-shadow: 0 0 30px rgba(0, 0, 0, 0.075); }
      .card:hover::after {
        background: #2d61c9;
        width: 100%;
        height: 3px; } }
  .card--with-image .card__title {
    margin-top: 0.53333rem; }
  .card-container {
    display: grid;
    grid-gap: 2rem;
    margin-top: calc(1.86667rem + 0.5vw); }
    @media all and (min-width: 56.25em) {
      .card-container {
        grid-template-columns: repeat(auto-fill, minmax(26rem, 1fr)); } }
  .card a {
    color: #343a41;
    text-decoration: none;
    -webkit-transition: all 0.14s ease-out;
    -o-transition: all 0.14s ease-out;
    transition: all 0.14s ease-out; }
  .card a:hover {
    color: #2d61c9; }
  .card a:active {
    color: #2d61c9; }
  .card a:focus {
    color: #2d61c9; }
  .card a:hover {
    text-decoration: none; }
  .card__image {
    display: block;
    max-height: 17rem;
    overflow: hidden;
    position: relative; }
    @media all and (min-width: 56.25em) {
      .card__image {
        margin: -1rem -2rem 2rem; } }
    .card__image img {
      max-height: 17rem;
      -o-object-fit: cover;
      object-fit: cover;
      -o-object-position: center;
      object-position: center;
      -webkit-transition: all 0.5s;
      -o-transition: all 0.5s;
      transition: all 0.5s;
      width: 100%; }
  .card__date {
    font-size: 0.79012rem;
    margin-top: 1.06667rem;
    display: inline-block; }
  .card__title {
    font-size: 1.125rem; }
    @media screen and (min-width: 20rem) {
      .card__title {
        font-size: calc(1.125rem + 0.47681 * ((100vw - 20rem) / 113)); } }
    @media screen and (min-width: 133rem) {
      .card__title {
        font-size: 1.60181rem; } }
  .card .btn, .card [type=button],
  .card [type=submit],
  .card button {
    margin-top: 1.6rem; }

.listing__desc {
  color: rgba(106, 112, 129, 0.7);
  margin-top: 0.53333rem; }

.post__image--left {
  float: left;
  margin-right: 2.13333rem;
  margin-top: 0.53333rem;
  max-width: 50%; }

.post__image--right {
  float: right;
  margin-left: 2.13333rem;
  margin-top: 0.53333rem;
  max-width: 50%; }

.post__image--center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }

.post-desc {
  margin-top: 0.8rem; }

.post__toc h3 {
  font-size: 1rem; }
  @media screen and (min-width: 20rem) {
    .post__toc h3 {
      font-size: calc(1rem + 0.26562 * ((100vw - 20rem) / 113)); } }
  @media screen and (min-width: 133rem) {
    .post__toc h3 {
      font-size: 1.26562rem; } }

.post__toc ul {
  counter-reset: item;
  list-style: decimal;
  margin: calc(0.26667rem + 0.25vw) 0 0 1.06667rem; }
  .post__toc ul li {
    counter-increment: item;
    padding: 0; }
  .post__toc ul ul {
    margin-top: 0; }
    .post__toc ul ul li {
      display: block; }
      .post__toc ul ul li:before {
        content: counters(item, ".") ". ";
        margin-left: -1.06667rem; }

.post__note {
  border-radius: 2px;
  border: 1px solid #e3e3e4;
  margin-top: calc(1.06667rem + 0.25vw);
  padding: 1.6rem; }
  @media all and (min-width: 37.5em) {
    .post__note {
      float: right;
      font-size: 0.88889rem;
      margin: calc(1.06667rem + 0.25vw) 0 1.06667rem 1.6rem;
      max-width: 18.2rem;
      position: relative;
      z-index: 1; } }
  .post__note > :nth-child(1) {
    margin: 0; }
  @media all and (min-width: 37.5em) {
    .post__note--left {
      float: left;
      margin: 0.53333rem 1.6rem 1.06667rem 0; } }

.post__footer {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  border-top: 3px solid #2d61c9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 0.88889rem;
  margin-top: calc(3.2rem + 0.5vw);
  padding: 0.53333rem 2rem 1.6rem;
  position: relative; }
  .post__footer::before {
    background: #2d61c9;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0.03;
    position: absolute;
    top: 0;
    width: 100%; }

.post__meta {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 30%;
  flex: 1 0 30%;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  z-index: 1; }
  .post__meta dt,
  .post__meta dd {
    padding: 0 0.53333rem 0.26667rem 0; }
    .post__meta dt + dt,
    .post__meta dd + dt {
      margin-top: 0.53333rem; }

.post__share {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  margin-left: auto; }
  @media all and (min-width: 37.5em) {
    .post__share {
      -ms-flex-preferred-size: 10%;
      flex-basis: 10%;
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
      text-align: right; } }
  .post__share-button {
    background: none !important;
    border: 0;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    width: auto;
    padding: 0; }
    .post__share-button > svg {
      fill: #6a7081;
      margin: 0; }
    .post__share-button:hover > svg {
      fill: #2d61c9;
      opacity: 1; }
    .post__share-button:focus {
      outline: 0; }
  .post__share-popup {
    background: #ffffff;
    -webkit-box-shadow: 0 0 8px rgba(52, 58, 65, 0.15);
    box-shadow: 0 0 8px rgba(52, 58, 65, 0.15);
    border-radius: 3px;
    bottom: 95%;
    display: none;
    padding: 1rem;
    position: absolute;
    right: 0;
    text-align: left; }
    .post__share-popup.is-visible {
      display: block; }
    .post__share-popup a {
      color: #6a7081;
      display: block;
      font-size: 0.88889rem;
      padding: 0.26667rem 0.53333rem; }
      .post__share-popup a:hover {
        background: #f7f8fb;
        border-radius: 4px;
        text-decoration: none; }
    .post__share-popup .icon {
      display: inline-block;
      height: 1.06667rem;
      margin-right: 0.53333rem;
      pointer-events: none;
      vertical-align: middle;
      width: 1.06667rem; }

.post__tag {
  margin-left: 0;
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  z-index: 1; }
  @media all and (min-width: 37.5em) {
    .post__tag {
      -webkit-box-flex: 1;
      -ms-flex: 1 0 60%;
      flex: 1 0 60%;
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2; } }
  .post__tag dt {
    display: block;
    margin-bottom: 0.26667rem; }
  .post__tag dd {
    display: inline-block;
    margin-right: 0.26667rem; }
    .post__tag dd::after {
      content: ","; }
    .post__tag dd:last-child::after {
      content: none; }

.post__related > h3 {
  font-size: 1.26562rem; }

.post__related ul {
  margin: 0.8rem 0 0 1.06667rem; }
  .post__related ul li {
    padding-bottom: 0; }

.post__nav {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  border-top: 1px solid #e3e3e4;
  color: #343a41;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  list-style: none;
  margin: calc(1.86667rem + 0.5vw) 0 0;
  padding-top: 2.13333rem; }
  @media all and (max-width: 37.4375em) {
    .post__nav {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }
  .post__nav-prev {
    margin-right: 0.26667rem; }
  .post__nav-prev + .post__nav-next {
    text-align: right; }
  .post__nav-prev, .post__nav-next {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    padding: 0; }
    @media all and (max-width: 37.4375em) {
      .post__nav-prev, .post__nav-next {
        margin-bottom: 0.53333rem;
        width: 100%; } }
    .post__nav-prev a, .post__nav-next a {
      margin-left: 0.26667rem; }

.comments > h3 {
  border-top: 3px solid #2d61c9;
  padding-top: 1.6rem;
  margin-bottom: 1.6rem; }

.author-note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .author-note > img {
    border-radius: 50%;
    display: inline-block;
    height: 4rem;
    margin-top: calc(1.86667rem + 1vw);
    margin-right: 1.6rem;
    width: 4rem; }

.search__form {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.search__input {
  border-radius: 30px; }
  @media all and (max-width: 37.4375em) {
    .search__input {
      margin-bottom: 0.53333rem; } }
  @media all and (min-width: 20em) {
    .search__input {
      -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto;
      margin-right: 0.53333rem; } }

.align-left {
  text-align: left; }

.align-right {
  text-align: right; }

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

.align-justify {
  text-align: justify; }

.frame {
  border: 1px solid #e3e3e4; }

.ordered-list {
  counter-reset: listCounter; }
  .ordered-list li {
    counter-increment: listCounter;
    list-style: none;
    position: relative; }
    .ordered-list li::before {
      color: #2d61c9;
      content: counter(listCounter, decimal-leading-zero) ".";
      font-weight: 600;
      left: -2rem;
      position: absolute; }

.msg {
  border-left: 3px solid transparent;
  padding: 1.06667rem 2.13333rem; }
  .msg--highlight {
    background-color: #fdfaf1;
    border-color: #e2ac4f; }
  .msg--info {
    background: rgba(45, 97, 201, 0.03);
    border-color: #2d61c9; }
  .msg--success {
    background: #f7fbf6;
    border-color: #5ab44b; }
  .msg--warning {
    background: #fff3f3;
    border-color: #c06367;
    color: #a94442; }

.pagination {
  margin-top: calc(1.86667rem + 0.5vw); }
  @media all and (min-width: 37.5em) {
    .pagination > a {
      margin: 0 0.13333rem 0; } }

.footer {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #ffffff;
  border-top: 1px solid #e3e3e4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 0.88889rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 2.66667rem 2rem; }
  .footer > div {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: center; }
    @media all and (max-width: 74.9375em) {
      .footer > div {
        width: 100%; } }
    @media all and (min-width: 75em) {
      .footer > div {
        line-height: 1; } }
    .footer > div:first-child {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
  .footer__logo {
    font-size: 1rem;
    font-weight: 700;
    margin-right: 3.2rem; }
    .footer__logo {
      color: #6a7081;
      text-decoration: none;
      -webkit-transition: all 0.14s ease-out;
      -o-transition: all 0.14s ease-out;
      transition: all 0.14s ease-out; }
    .footer__logo:hover {
      color: #2d61c9; }
    .footer__logo:active {
      color: #2d61c9; }
    .footer__logo:focus {
      color: #2d61c9; }
    @media all and (max-width: 37.4375em) {
      .footer__logo {
        margin: 0 auto 1.6rem;
        width: 100%; } }
    .footer__logo > img {
      max-height: 2rem;
      max-width: 5rem; }
  .footer__nav {
    margin: 0 auto; }
    @media all and (min-width: 37.5em) {
      .footer__nav {
        margin: 0; } }
    .footer__nav li {
      display: inline-block;
      margin: 0 1.33333rem 0 0;
      padding: 0; }
      .footer__nav li:last-child {
        margin: 0; }
      .footer__nav li a {
        color: #343a41;
        text-decoration: none;
        -webkit-transition: all 0.14s ease-out;
        -o-transition: all 0.14s ease-out;
        transition: all 0.14s ease-out; }
      .footer__nav li a:hover {
        color: #2d61c9; }
      .footer__nav li a:active {
        color: #2d61c9; }
      .footer__nav li a:focus {
        color: #2d61c9; }
  @media all and (max-width: 74.9375em) {
    .footer__copy {
      border-top: 1px solid #e3e3e4;
      margin: 2.4rem 0 1.6rem;
      padding-top: 2.4rem;
      width: 100%; } }
  @media all and (max-width: 74.9375em) {
    .footer__social {
      width: 100%; } }
  @media all and (min-width: 75em) {
    .footer__social {
      margin-left: 1.6rem; } }
  .footer__social a {
    display: inline-block;
    -webkit-transition: all 0.24s ease;
    -o-transition: all 0.24s ease;
    transition: all 0.24s ease;
    will-change: transform; }
    .footer__social a > svg {
      display: inline-block;
      height: 1rem;
      margin: 0 0 0 0.8rem;
      pointer-events: none;
      -webkit-transition: all 0.12s linear 0s;
      -o-transition: all 0.12s linear 0s;
      transition: all 0.12s linear 0s;
      width: 1rem; }
    .footer__social a:hover {
      text-decoration: none;
      -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
      transform: translateY(-2px); }

.newsletter-popup {
  background: #ffffff;
  bottom: -100%;
  -webkit-box-shadow: 0 0 2rem rgba(0, 0, 0, 0.07);
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.07);
  display: block;
  font-size: 0.88889rem;
  width: 26rem;
  opacity: 0;
  padding: 2.66667rem 2.13333rem 2.13333rem;
  position: fixed;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: all .8s ease-out;
  -o-transition: all .8s ease-out;
  transition: all .8s ease-out;
  z-index: 1000; }
  @media all and (max-height: 48.0625em) {
    .newsletter-popup {
      display: none; } }
  @media all and (max-width: 37.4375em) {
    .newsletter-popup {
      margin-left: calc((100% - 26rem) / 2); } }
  @media all and (min-width: 37.5em) {
    .newsletter-popup {
      right: 2rem; } }
  .newsletter-popup.is-visible {
    bottom: 2rem;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  .newsletter-popup__close {
    background: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 0;
    color: #6a7081;
    font-size: 1.125rem;
    position: absolute;
    right: 0;
    top: 0;
    width: auto; }
    .newsletter-popup__close:hover {
      color: #ef5350;
      -webkit-transform: translate(0);
      -ms-transform: translate(0);
      transform: translate(0); }
  @media all and (min-width: 37.5em) {
    .newsletter-popup form {
      font-size: 90%; } }
  .newsletter-popup svg {
    fill: #2d61c9; }
  .newsletter-popup h3 {
    margin-top: 0; }
  .newsletter-popup a {
    text-decoration: underline;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip: ink; }
  .newsletter-popup p {
    margin: 0.53333rem 0 1.06667rem; }
  .newsletter-popup input[type=email],
  .newsletter-popup input[type=text] {
    margin-top: 0.53333rem;
    width: 100%; }
    .newsletter-popup input[type=email]:focus,
    .newsletter-popup input[type=text]:focus {
      -webkit-box-shadow: inset 0 0 2px #2d61c9;
      box-shadow: inset 0 0 2px #2d61c9;
      border: 1px solid #2d61c9; }
  .newsletter-popup__agree {
    margin: 1.06667rem 0 0;
    text-align: left; }
    .newsletter-popup__agree li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      padding: 0; }
      .newsletter-popup__agree li label {
        font-weight: 400;
        margin-left: 2.1rem;
        margin-right: 0; }
        .newsletter-popup__agree li label:before {
          margin-left: -2.1rem; }

.gallery {
  margin: calc(1.6rem + 1vw) -0.53333rem; }
  @media all and (min-width: 20em) {
    .gallery {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; } }
  @media all and (min-width: 20em) {
    .gallery[data-columns="1"] .gallery__item {
      width: 100%; } }
  @media all and (min-width: 30em) {
    .gallery[data-columns="2"] .gallery__item {
      width: 50%; } }
  @media all and (min-width: 37.5em) {
    .gallery[data-columns="3"] .gallery__item {
      width: 33%; } }
  @media all and (min-width: 56.25em) {
    .gallery[data-columns="4"] .gallery__item {
      width: 25%; } }
  @media all and (min-width: 56.25em) {
    .gallery[data-columns="5"] .gallery__item {
      width: 20%; } }
  @media all and (min-width: 56.25em) {
    .gallery[data-columns="6"] .gallery__item {
      width: 16.666%; } }
  @media all and (min-width: 56.25em) {
    .gallery[data-columns="7"] .gallery__item {
      width: 14.285%; } }
  @media all and (min-width: 56.25em) {
    .gallery[data-columns="8"] .gallery__item {
      width: 12.5%; } }
  .gallery__item {
    margin: 0;
    padding: 0.53333rem; }
    @media all and (min-width: 20em) {
      .gallery__item {
        width: 50%; } }
    @media all and (min-width: 30em) {
      .gallery__item {
        width: 33.333%; } }
    @media all and (min-width: 37.5em) {
      .gallery__item {
        width: 25%; } }
    .gallery__item img {
      display: block;
      width: 100%; }

.pswp--dark .pswp__bg {
  background: #000; }

.pswp--light .pswp__bg {
  background: #ffffff; }

.pswp--light .pswp__counter {
  color: #343a41; }

.pswp--light .pswp__caption__center {
  color: #6a7081; }

        a {
               color: #73000A;
        }

        .footer__nav li a:hover {
               color: #73000A;
        }

        .footer__nav li a:active {
               color: #73000A;
        }

        .footer__nav li a:focus {
               color: #73000A;
        }
        .btn,
        [type=button],
        [type=submit],
        button {
               background: #73000A;
               border-color: #73000A;
        }

        input[type=checkbox]:checked + label:before,
        input[type=radio]:checked + label:before {  
               background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 8'%3e%3cpolygon points='9.53 0 4.4 5.09 1.47 2.18 0 3.64 2.93 6.54 4.4 8 5.87 6.54 11 1.46 9.53 0' fill='%2373000A'/%3e%3c/svg%3e");
               border-color: #73000A;
        }

        select[multiple]:focus option:checked {
               background: #73000A linear-gradient(0deg, #73000A 0%, #73000A 100%);

        }

        blockquote:before {
               color: #73000A;
        }

        .card a:hover {
               color: #73000A;
        }

        .card a:active {
               color: #73000A;
        }

        .card a:focus {
               color: #73000A;
        }

        @media all and (max-width: 56.1875em) {   
               .navbar .has-submenu:after {      
                     border-color: #73000A;
      
               }
               .navbar .has-submenu:before {       
                     border-color: #73000A;
               }
        }

        @media all and (min-width: 56.25em) {      
               .card::after {
                     background: #73000A;      
               }
        }

        @media all and (min-width: 56.25em) {   
               .card:hover::after {
                     background: #73000A;    
               }
        }

        .post__footer {
               border-color: #73000A;   
        }

        .post__footer::before {
              background: #73000A;   
        }

        .post__share-button:hover > svg {
               fill: #73000A;   
        }

        .ordered-list li::before {
               color: #73000A; 
        }

        .subscribe svg {
               fill: #73000A; 
        }

        .subscribe input[type=email]:focus,
        .subscribe input[type=text]:focus {
               -webkit-box-shadow: inset 0 0 2px #73000A; 
               box-shadow: inset 0 0 2px #73000A; 
               border-color: #73000A; 
        }

        .algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight {   
               -webkit-box-shadow: inset 0 -2px 0 0 #73000A !important; 
               box-shadow: inset 0 -2px 0 0 #73000A !important;  
        }

        .algolia-autocomplete .algolia-docsearch-suggestion--title .algolia-docsearch-suggestion--highlight {
               color: #73000A !important;  
       } 
        .lazyload,
        .lazyloading {
               opacity: 0;
        }
        .lazyloaded {
               opacity: 1;
               transition: opacity 2s cubic-bezier(0.215, 0.61, 0.355, 1); 
          }/*
 * Put your custom CSS code here
 */

/** .article **/
cite.article {
  font-style: normal;
  quotes: "\201C" "\201D" "\2018" "\2019";
}

cite.article:before {
  content: open-quote;
}

cite.article:after {
  content: close-quote;
}

/** .citation **/
ul.citation, li.citation {
  list-style-type: none;
  margin-left: 1em;
  text-indent: -1em;
}

ul.citation li, li.citation {
  margin-bottom: .5em;
}

ul.non-citation {
  margin-left: -1em;
  text-indent: 0;
}

ul.no-list {
 list-style-type: none; 
}

/* abstract/callout blocks */

div.abstract {
 color: #40434d;
 background-color: #efefef;
 padding: .5em 1em;
 width: 80%;
 margin-left: auto;
 margin-right: auto;
}


/* floating divs */

.floats_left {
 float: left; 
}

.floats_right {
 float: right; 
}

.portrait {
 padding: 0em .5em .5em 1em; 
}

img.shrunken {
  min-width: 25%;
 max-width: 30%; 
 padding: 1.75em 1em 1em 0;
}