/*
Template Name: Mediumish
Copyright: sal, WowThemes.net, https://www.wowthemes.net
License: https://www.wowthemes.net/freebies-license/
*/

@font-face{
  font-family:CabifyCircular;
  font-style:normal;
  font-weight:600;
  src:url(https://assets.cabifil.es/fonts/CabifyCircularWeb-Bold.woff2) format("woff2"),url(https://assets.cabifil.es/fonts/CabifyCircularWeb-Bold.woff) format("woff")
}

@font-face{
  font-family:CabifyCircular;
  font-style:normal;
  font-weight:400;
  src:url(https://assets.cabifil.es/fonts/CabifyCircularWeb-Book.woff2) format("woff2"),url(https://assets.cabifil.es/fonts/CabifyCircularWeb-Book.woff) format("woff")
}

@font-face{
  font-family:CabifyCircular;
  font-style:normal;
  font-weight:300;
  src:url(https://assets.cabifil.es/fonts/CabifyCircularWeb-Light.woff2) format("woff2"),url(https://assets.cabifil.es/fonts/CabifyCircularWeb-Light.woff) format("woff")
}

body {
  text-rendering: optimizeLegibility;
  font-family: CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
  font-weight: 400;
  font-size: 16px;
  color: #292929;
}

.mainheading {
  padding: 1rem 0rem 0rem;
}

a {
  color: var(--action-primary);
  transition: all 0.2s;
}

a:hover {
  color: var(--state-primary-hover);
  text-decoration: none;
}

pre {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: #E3EDF3 1px solid;
  width: 100%;
  padding: 7px;
  font-family: CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
  font-size: .9rem;
  white-space: pre;
  overflow: auto;
  background: #fff;
  border-radius: 8px;
  line-height: 1.6;
  color: #333;
  margin-bottom: -rem;
}

.flex {
  display: flex;
}

.mediumnavigation {
  background: rgba(255, 255, 255, .97);
  transition: top 0.2s ease-in-out;
}

.main-content {
  min-height: 300px;
}

.p-re {
  position: relative;
}

.site-content {
  min-height: 60vh;
  padding-top: 1.5rem;
  margin-top: 57px;
  transition: all 0.4s;
}

section {
  margin-bottom: 1.5rem;
}

section.recent-posts {
  margin-bottom: 0;
  margin-top: 4rem;
}

.section-title span {
  display: inline-block;
}

.article-post ol,
.article-post ul {
  margin-bottom: 1.5rem;
}

.article-post ol ol,
.article-post ul ul {
  list-style: disc;
  margin-bottom: 0rem;
}

@media (min-width:576px) {
  .card-columns.listfeaturedtag {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }
  .container {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width:992px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.8rem;
    padding-left: 0.8rem;
  }
}

.navbar-light .navbar-nav .nav-link {
  color: var(--action-primary);
}

.navbar-light .navbar-nav .active > .nav-link {
  color: var(--text-primary);
}

.listfeaturedtag {
  border-radius: 8px;
  background-color: var(--background-subdued);
}

.listfeaturedtag .wrapthumbnail {
  flex: 0 0 auto;
}

.listfeaturedtag .card-group {
  align-items: center;
  flex-wrap: nowrap;
  align-content: center;
}

.maxthumb {
  max-height: 300px;
  overflow: hidden;
  margin-bottom: 1rem;
}

.card-footer {
  padding: 0;
  margin-top: 1.25rem;
}

.listfeaturedtag .card,
.card-footer {
  border: 0;
  background: none;
}

.listfeaturedtag .thumbnail {
  background-size: cover;
  height: 100%;
  display: block;
  background-position: 38% 22% !important;
  background-origin: border-box !important;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.listfeaturedtag .card-block {
  padding-left: 0;
}

.listfeaturedtag h2.card-title,
.listrecent h2.card-title {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.25;
  margin-bottom: .75rem;
}

.listfeaturedtag h4.card-text,
.listrecent h4.card-text {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
  margin-top: 10px;
}

.featured-box-img-cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 100%;
  border-radius: 8px 0 0 8px;
}

.listrecent .card-group {
  padding: 0;
}

.listrecent .card {
  border: none;
  padding: 1.5rem;
}

.listrecent .card-body {
  padding: 0;
}

.card-body {
  display: flex;
  flex-direction: column;
}

.card-body {
  padding: 2.5rem;
}

.meta-author-post .post-name, .meta-author-post .post-date, .meta-author-post .read-time {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--text-secondary);
}

.meta-author-post {
  flex-grow: 1;
}

@media (max-width:991px) {
  .featured-box-img-cover {
    height: auto;
    width: 100%;
  }
}

.wrapfooter {
  font-size: .8rem;
  display: flex;
  align-items: center;
}

.author-thumb {
  width: 40px;
  height: 40px;
  margin-right: 16px;
  border-radius: 100%;
}

.tag-category,
.post .tag-category
 {
  font-weight: 600;
  text-transform: uppercase;

  padding: 5px 12px 3px;
  /* Bound / Light | Primary [M50] */
  background: var(--surface-primary);
  border-radius: 4px;

  font-size: 14px;
  line-height: 24px;
  letter-spacing: -0.01em;
  display: inline-block;
  /* Action / Light | Primary [M500] */
  color: var(--action-primary);

}
  .tag-category:hover {
    box-shadow: 0px 0px 0px 2px inset #DDD5FF;
  }

.layout-post .row {
  justify-content: center;
}

.post-top-meta {
  margin: 3rem 0;
  text-align: left;
  display: flex;
  align-content: center;
  align-items: center;
}

.post-top-meta .author-thumb {
  width: 72px;
  height: 72px;
  border-radius: 72px;
  max-width: none;
}

.post-top-meta .author-info p {
  margin-bottom: 0;
}

.post-top-meta .author-description {
  color: var(--text-secondary);
}

.toc ul {
  list-style: decimal;
  font-weight: 400;
}

.author-meta {
  flex: 1 1 auto;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  overflow: hidden !important;
}

span.post-name,
span.post-date,
span.author-meta {
  display: inline-block;
}

span.post-date,
span.post-read {
  color: rgba(0, 0, 0, .44);
}

span.post-read-more {
  align-items: center;
  display: inline-block;
  float: right;
  margin-top: 8px;
}

span.post-read-more a {
  color: rgba(0, 0, 0, .44);
}

span.post-name a,
span.post-read-more a:hover {
  color: rgba(0, 0, 0, .8);
}

.dot:after {
  content: "·";
  margin-left: 3px;
  margin-right: 3px;
}

.mediumnavigation .form-control {
  font-size: 0.8rem;
  border-radius: 8px;
  overflow: hidden;
  min-width: 180px;
}

.mediumnavigation .form-inline {
  margin-left: 15px;
}

.mediumnavigation .form-inline .btn {
  margin-left: -50px;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
}

.mediumnavigation .form-inline .btn:hover,
.mediumnavigation .form-inline .btn:active {
  background: transparent;
  color: green;
}

.mediumnavigation .navbar-brand {
  font-weight: 500;
}

.dropdown-menu {
  margin: .5rem 0 0;
  border:0;
  border-radius: 8px;
  background-color: var(--background-base);
  box-shadow: 0 10px 20px rgb(68 48 122 / 16%);
  transition: max-height .3s;
  padding: 0;
  overflow: hidden;
}

.dropdown-item {
  padding: 12px 16px;
}
.dropdown-item:hover {
  color: var(--action-primary);
  background: var(--surface-primary);
}

.nav-link {
  font-weight: 600;
}

.mediumnavigation .nav-item,
.dropdown-menu {
  font-size: 0.9rem;
}

.mediumnavigation .search-icon {
  margin-left: -40px;
  display: inline-block;
  margin-top: 3px;
  cursor: pointer;
}

.mediumnavigation .navbar-brand img {
  margin-right: 5px;
}

.mainheading h1.sitetitle {
  font-family: CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
}

.mainheading h1.posttitle {
  font-weight: 600;
  margin-bottom: 1rem;
}

.hiring-container {
  padding: 40px;
  border-radius: 8px;
  background-color: var(--background-subdued);
}

.hiring-container span {
  font-weight: 600;
}

.post .hiring-container a {
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding: 0.75rem 1.5rem;
    border: 0;
    border-radius: 8px;
    background-color: var(--action-primary);
    box-shadow: 0 0 4px rgb(33 34 64 / 16%), 0 1px 2px rgb(33 34 64 / 8%);
    color: white;
    text-align: center;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    will-change: background-color;
}

.post .hiring-container a:hover {
  color: white;
}

.footer {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  background: transparent;
  text-align: center;
  color: var(--text-secondary);
}

.link-dark {
  color: rgba(0, 0, 0, .8);
}

.article-post {
  font-family: CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
  font-size: 1rem;
  line-height: 1.84;
  color: rgba(0, 0, 0, .8);
}

blockquote {
  border-left: 4px solid #00ab6b;
  padding: 0 20px;
  font-style: italic;
  color: rgba(0, 0, 0, .5);
}

.article-post p,
.article-post blockquote {
  margin: 0 0 1.5rem 0;
}

.featured-image {
  display: block;
  margin-bottom: 1.5rem;
}

.share {
  text-align: center;
}

.share p {
  margin-bottom: 10px;
  font-size: 0.95rem;
}

.share ul li {
  display: inline-block;
  margin-bottom: 9px;
}

.share ul {
  padding-left: 0;
  margin-left: 0;
}

.share ul li i.fa {
  border: 1px solid #ddd;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 50%;
}

.svgIcon {
  vertical-align: middle;
}

.sticky-top-offset {
  top: 100px;
}

@media (min-width:1024px) {
  .share ul li {
    display: block;
  }
}

@media (max-width:999px) {
  .featured-box-img-cover {
    height: 359px;
  }
    .listfeaturedtag .card .col-12,
    .listfeaturedtag .card .col-md-12,
    .listfeaturedtag .card .col-lg-7 {
    padding-left: 0;
  }

  .alertbar {
    position: relative !Important;
    margin-bottom: 20px;
    margin-top: 20px;
    box-shadow: none !Important;
    padding-right: 14px !Important;
  }

  #comments {
    margin-right: 15px;
  }

  .jumbotron.fortags {
    margin-bottom: 0 !Important;
  }

  .alertbar form {
    margin-top: 20px;
  }

  .alertbar span,
  .alertbar form {
    display: block;
  }

  .alertbar input[type="submit"] {
    border-radius: 8px !Important;
  }

  .alertbar input[type="email"] {
    margin-right: 0px !Important;
    display: block;
    border-right: 1px solid #ddd !Important;
    margin-bottom: 10px;
  }

  .jumbotron {
    margin-bottom: 0;
    border-radius: 0;
  }

  .listfeaturedtag .card {
    height: auto;
  }

  .listfeaturedtag .wrapfooter {
    position: relative;
    margin-top: 30px;
  }

  .listfeaturedtag .card-block {
    padding: 20px;
  }
}

@media (max-width:1024px) {
  .post-top-meta .col-md-10 {
    text-align: center;
  }
}

@media (max-width:767px) {
  .post-top-meta.authorpage {
    text-align: center;
  }
}
.share,
.share a {
  color: rgba(0, 0, 0, .44);
  fill: rgba(0, 0, 0, .44);
}

.graybg {
  background-color: #fafafa;
  padding: 40px 0 46px;
  position: relative;
}

.listrelated .card {
  border: 0;
}

ul.tags li {
  display: inline-block;
}

.margtop3rem {
  margin-top: 3rem;
}

.sep {
  height: 1px;
  width: 20px;
  background: #999;
  margin: 0px auto;
  margin-bottom: 1.2rem;
}

.btn.follow {
  text-align: center;
  display: inline-block;
  padding: 0;
}

.btn.subscribe {
  margin-left: 10px;
}

.post-top-meta .btn.follow {
  margin-top: -5px;
  margin-left: 10px;
}

.alertbar {
  box-shadow: 0 -3px 10px 0 rgba(0, 0, 0, .0785);
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: #fff;
  width: 100%;
  padding: 14px 0;
  z-index: 1;
  display: none;
}

.alertbar form {
  display: inline-block;
}

.alertbar input[type="email"] {
  font-size: 0.85rem;
  padding: 3px 5px 3px 10px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border: 1px solid #ddd;
  border-right: 0;
  margin-right: -10px;
  height: 34px;
  letter-spacing: 0.5px;
  margin-left: 5px;
}

.alertbar input[type="submit"] {
  background-color: #1C9963;
  border: 1px solid #1C9963;
  color: rgba(255, 255, 255, 1);
  fill: rgba(255, 255, 255, 1);
  font-size: 0.85rem;
  border-radius: 8px;
  padding: 4px 10px;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  font-weight: 600;
  height: 34px;
  letter-spacing: 0.5px;
  cursor: pointer;
}

.form-control::-webkit-input-placeholder {
  color: rgba(0, 0, 0, .5);
}

.form-control:-moz-placeholder {
  color: rgba(0, 0, 0, .5);
}

.form-control::-moz-placeholder {
  color: rgba(0, 0, 0, .5);
}

.form-control:-ms-input-placeholder {
  color: rgba(0, 0, 0, .5);
}

.form-control::-ms-input-placeholder {
  color: rgba(0, 0, 0, .5);
}

.authorpage h1 {
  font-weight: 600;
  font-size: 30px;
}

.post-top-meta.authorpage .author-thumb {
  float: none;
}

.authorpage .author-description {
  font-size: 1rem;
  color: rgba(0, 0, 0, .6);
}

.post-top-meta.authorpage .btn.follow {
  padding: 7px 20px;
  margin-top: 10px;
  margin-left: 0;
  font-size: 0.9rem;
}

.graybg.authorpage {
  border-top: 1px solid #f0f0f0;
}

.authorpostbox {
  width: 760px;
  margin: 0px auto;
  margin-bottom: 1.5rem;
  max-width: 100%;
}

.authorpostbox .img-thumb {
  width: 100%;
}

.sociallinks {
  margin: 1rem 0;
}

.sociallinks a {
  background: #666;
  color: #fff;
  width: 22px;
  height: 22px;
  display: inline-block;
  text-align: center;
  line-height: 22px;
  border-radius: 50%;
  font-size: 12px;
}

#comments {
  margin-top: 3rem;
  margin-bottom: 1.5rem;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'CabifyCircular', sans-serif;
  font-weight: 600;
}

.article-post .h1,
.article-post .h2,
.article-post .h3,
.article-post .h4,
.article-post .h5,
.article-post .h6,
.article-post h1,
.article-post h2,
.article-post h3,
.article-post h4,
.article-post h5,
.article-post h6 {
  font-weight: 600;
  margin-bottom: 1.5rem;
}

.article-post img.shadow {
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.30);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.30);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.30);
}

.layout-page .article-post {
  font-family: CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
  font-size: 1rem;
}

.layout-page .article-post p {
  margin-bottom: 1rem;
}

img {
  max-width: 100%;
}

.bottompagination span.navigation {
  display: block;
  font-size: 0.93rem;
  padding: 15px 0 0 0;
  text-align: center;
  margin-bottom: 0rem;
}

.pointerup {
  margin-bottom: -17px;
  margin-left: 49%;
  font-size: 30px;
}

.pointerup i.fa {
  color: #eaeaea;
}

.bottompagination span.navigation i {
  display: inline-block;
}

span.navigation {
  display: inline-block;
  font-size: 0.93rem;
  font-weight: 600;
  text-align: center;
}

.pagination {
  display: block;
}

iframe {
  max-width: 100%;
}

.transpdark {
  background: rgba(0, 0, 0, 0.75);
  color: #fff;
}

@media (min-width:768px) {
  .jumbotron.fortags {
    margin-bottom: -50px;
    margin-top: 3rem;
    padding: 0;
    height: 350px;
    border-radius: 8px;
    background-image: url(../images/jumbotron.jpg);
    background-size: cover;
  }

  .jumbotron.fortags .col-md-4 {
    background: rgba(0, 0, 0, 0.75);
    color: #fff;
  }

  .jumbotron.fortags .row {
    margin: 0;
  }

  .container {
    padding-left: 0;
    padding-right: 0;
  }
}

.jumbotron.fortags {
  margin-top: 3rem;
  padding: 0;
  border-radius: 8px;
  background-image: url(../images/jumbotron.jpg);
  background-size: cover;
}

.jumbotron.fortags a {
  padding: 5px 10px 7px;
  background: #222;
  border-radius: 8px;
  color: #fff;
  font-weight: 500;
  text-transform: lowercase;
  font-size: 0.8rem;
  display: inline-block;
}

.layout-page .jumbotron.fortags {
  display: none;
}

.mb-30px {
  margin-bottom: 2rem;
}

.flex-first {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  -ms-flex-order: -1;
  order: -1;
}

@media (min-width: 768px) {
  .flex-md-unordered {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }

  .flex-first {
    -webkit-box-ordinal-group: 0;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }
}

@media (max-width: 768px) {
  .share {
    margin-top: 30px;
  }
}

.card .img-fluid {
  width: 100%;
  aspect-ratio: 16 / 9;
  background-color: #F7F7FC;
  object-fit: cover;
  border-radius: 8px;
}

.sticky-top-80 {
  top: 80px;
}

.spoiler {
  color: transparent;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  transition: all .4s;
  cursor: pointer;
  position: relative;
}

.spoiler:after {
  position: absolute;
  opacity: 0;
  content: 'Click to reveal spoiler';
  top: 45%;
  left: calc(50% - 100px);
  text-shadow: none;
  background: #222;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  line-height: 1;
  padding: 2px 3px;
  width: 150px;
  font-family: CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
  text-align: center;
  border-radius: 8px;
  transition: all .4s;
}

.spoiler:hover:after {
  opacity: 1;
}

/** Lazy img **/
.lazyimg {
  display: block;
  border: 0 none;
  opacity: 1;
  transition: opacity .25s;
  background: #f2f2f2;
  outline: 0 none;
}

.lazyimg[data-src],
.lazyimg[data-srcset] {
  opacity: 0;
  transition: opacity .25s;
}

/*
table {
  margin-bottom: 20px;
}

table {
  color: #333;
  background: white;
  border: 1px solid grey;
  font-size: 12pt;
  border-collapse: collapse;
}
table thead th,
table tfoot th {
  color: #777;
  background: rgba(0,0,0,.1);
}
table caption {
  padding:.5em;
}
table th,
table td {
  padding: .5em;
  border: 1px solid lightgrey;
}

/* Zebra Table Style */
[data-table-theme*=zebra] tbody tr:nth-of-type(odd) {
  background: rgba(0,0,0,.05);
}
[data-table-theme*=zebra][data-table-theme*=dark] tbody tr:nth-of-type(odd) {
  background: rgba(255,255,255,.05);
}
/* Dark Style */
[data-table-theme*=dark] {
  color: #ddd;
  background: #333;
  font-size: 12pt;
  border-collapse: collapse;
}
[data-table-theme*=dark] thead th,
[data-table-theme*=dark] tfoot th {
  color: #aaa;
  background: rgba(0255,255,255,.15);
}
[data-table-theme*=dark] caption {
  padding:.5em;
}
[data-table-theme*=dark] th,
[data-table-theme*=dark] td {
  padding: .5em;
  border: 1px solid grey;
}

:root {
  --font-base : 16px;
}

@media (min-width:0em) {
  :root {
   --typography-font-size-heading-lead:3rem;
   --typography-line-height-heading-lead:1.25;
   --typography-letter-spacing-heading-lead:-0.01em;
   --typography-font-size-heading-0:2.375rem;
   --typography-line-height-heading-0:1.16;
   --typography-letter-spacing-heading-0:-0.01em;
   --typography-font-size-heading-1:2.0625rem;
   --typography-line-height-heading-1:1.34;
   --typography-letter-spacing-heading-1:-0.01em;
   --typography-font-size-heading-2:1.75rem;
   --typography-line-height-heading-2:1.29;
   --typography-letter-spacing-heading-2:-0.01em;
   --typography-font-size-heading-3:1.4375rem;
   --typography-line-height-heading-3:1.4;
   --typography-letter-spacing-heading-3:-0.01em;
   --typography-font-size-heading-4:1.1875rem;
   --typography-line-height-heading-4:1.48;
   --typography-letter-spacing-heading-4:-0.01em;
   --typography-font-size-heading-5:1.0875rem;
   --typography-line-height-heading-5:1.48;
   --typography-letter-spacing-heading-5:-0.01em;
   --typography-font-size-body-super-lead:1.1875rem;
   --typography-line-height-body-super-lead:1.48;
   --typography-letter-spacing-body-super-lead:-0.0121052632em;
   --typography-font-size-body-lead:1.1875rem;
   --typography-line-height-body-lead:1.48;
   --typography-letter-spacing-body-lead:-0.0105263158em;
   --typography-font-size-body:1rem;
   --typography-line-height-body:1.5;
   --typography-letter-spacing-body:-0.01em;
   --typography-font-size-body-small:0.875rem;
   --typography-line-height-body-small:1.43;
   --typography-letter-spacing-body-small:-0.01em;
   --typography-font-size-body-extra-small:0.6875rem;
   --typography-line-height-body-extra-small:1.46;
   --typography-letter-spacing-body-extra-small:-0.01em;
   --typography-font-size-menu:1rem;
   --typography-line-height-menu:1.5;
   --typography-letter-spacing-menu:-0.01em;
   --typography-font-size-link:1rem;
   --typography-line-height-link:1.5;
   --typography-letter-spacing-link:-0.01em;
   --typography-font-size-link-small:0.875rem;
   --typography-line-height-link-small:1.43;
   --typography-letter-spacing-link-small:-0.01em;
   --typography-font-size-button:1rem;
   --typography-line-height-button:1.5;
   --typography-letter-spacing-button:-0.01em;
   --typography-font-size-overline:0.875rem;
   --typography-line-height-overline:1.43;
   --typography-letter-spacing-overline:0.025em
  }
 }
 @media (min-width:48em) {
  :root {
   --typography-font-size-heading-lead:3.75rem;
   --typography-line-height-heading-lead:1.27;
   --typography-letter-spacing-heading-lead:-0.01em;
   --typography-font-size-heading-0:3.125rem;
   --typography-line-height-heading-0:1.36;
   --typography-letter-spacing-heading-0:-0.01em;
   --typography-font-size-heading-1:2.5625rem;
   --typography-line-height-heading-1:1.27;
   --typography-letter-spacing-heading-1:-0.01em;
   --typography-font-size-heading-2:2.1875rem;
   --typography-line-height-heading-2:1.26;
   --typography-letter-spacing-heading-2:-0.01em;
   --typography-font-size-heading-3:1.8125rem;
   --typography-line-height-heading-3:1.38;
   --typography-letter-spacing-heading-3:-0.01em;
   --typography-font-size-heading-4:1.5rem;
   --typography-line-height-heading-4:1.34;
   --typography-letter-spacing-heading-4:-0.01em;
   --typography-font-size-body-super-lead:1.8125rem;
   --typography-line-height-body-super-lead:1.38;
   --typography-letter-spacing-body-super-lead:-0.01em;
   --typography-font-size-body-lead:1.4375rem;
   --typography-line-height-body-lead:1.4;
   --typography-letter-spacing-body-lead:-0.01em;
   --typography-font-size-body:1.1875rem;
   --typography-line-height-body:1.48;
   --typography-letter-spacing-body:-0.01em;
   --typography-font-size-body-small:1rem;
   --typography-line-height-body-small:1.5;
   --typography-letter-spacing-body-small:-0.01em;
   --typography-font-size-body-extra-small:0.875rem;
   --typography-line-height-body-extra-small:1.43;
   --typography-letter-spacing-body-extra-small:-0.0092857143em;
   --typography-font-size-link:1.1875rem;
   --typography-line-height-link:1.48;
   --typography-letter-spacing-link:-0.01em;
   --typography-font-size-link-small:1rem;
   --typography-line-height-link-small:1.5;
   --typography-letter-spacing-link-small:-0.01em;
   --typography-font-size-button:1.25rem;
   --typography-line-height-button:1.4;
   --typography-letter-spacing-button:-0.01em;
   --typography-font-size-overline:0.9375rem;
   --typography-line-height-overline:1.34;
   --typography-letter-spacing-overline:0.016em
  }
 }

 .typography-heading-lead {
  font-size:var(--typography-font-size-heading-lead);
  line-height:var(--typography-line-height-heading-lead);
  letter-spacing:var(--typography-letter-spacing-heading-lead);
  font-weight:700
 }
 .typography-heading-0 {
  font-size:var(--typography-font-size-heading-0);
  line-height:var(--typography-line-height-heading-0);
  letter-spacing:var(--typography-letter-spacing-heading-0);
  font-weight:700
 }
 .typography-heading-1 {
  font-size:var(--typography-font-size-heading-1);
  line-height:var(--typography-line-height-heading-1);
  letter-spacing:var(--typography-letter-spacing-heading-1);
  font-weight:700
 }
 .typography-heading-2 {
  font-size:var(--typography-font-size-heading-2);
  line-height:var(--typography-line-height-heading-2);
  letter-spacing:var(--typography-letter-spacing-heading-2);
  font-weight:700
 }
 .typography-heading-3 {
  font-size:var(--typography-font-size-heading-3);
  line-height:var(--typography-line-height-heading-3);
  letter-spacing:var(--typography-letter-spacing-heading-3);
  font-weight:700
 }
 .typography-heading-4 {
  font-size:var(--typography-font-size-heading-4);
  line-height:var(--typography-line-height-heading-4);
  letter-spacing:var(--typography-letter-spacing-heading-4);
  font-weight:700
 }
 .typography-body-super-lead {
  font-size:var(--typography-font-size-body-super-lead);
  line-height:var(--typography-line-height-body-super-lead);
  letter-spacing:var(--typography-letter-spacing-body-super-lead);
  font-weight:400
 }
 .typography-body-lead {
  font-size:var(--typography-font-size-body-lead);
  line-height:var(--typography-line-height-body-lead);
  letter-spacing:var(--typography-letter-spacing-body-lead);
  font-weight:400
 }

 .typography-body,
 .post .meta-author-post *,
.bottompagination span.navigation {
  font-size:var(--typography-font-size-body);
  line-height:var(--typography-line-height-body);
  letter-spacing:var(--typography-letter-spacing-body);
  font-weight:400
 }
 .typography-body-small,
 .footer {
  font-size:var(--typography-font-size-body-small);
  line-height:var(--typography-line-height-body-small);
  letter-spacing:var(--typography-letter-spacing-body-small);
  font-weight:400
 }
 .typography-body-extra-small {
  font-size:var(--typography-font-size-body-extra-small);
  line-height:var(--typography-line-height-body-extra-small);
  letter-spacing:var(--typography-letter-spacing-body-extra-small);
  font-weight:400
 }
 .typography-menu {
  font-size:var(--typography-font-size-menu);
  line-height:var(--typography-line-height-menu);
  letter-spacing:var(--typography-letter-spacing-menu);
  font-weight:400
 }
 .typography-link {
  font-size:var(--typography-font-size-link);
  line-height:var(--typography-line-height-link);
  letter-spacing:var(--typography-letter-spacing-link);
  font-weight:400
 }
 .typography-link-small {
  font-size:var(--typography-font-size-link-small);
  line-height:var(--typography-line-height-link-small);
  letter-spacing:var(--typography-letter-spacing-link-small);
  font-weight:400
 }
 .typography-button {
  font-size:var(--typography-font-size-button);
  line-height:var(--typography-line-height-button);
  letter-spacing:var(--typography-letter-spacing-button);
  font-weight:700
 }
 .typography-overline {
  font-size:var(--typography-font-size-overline);
  line-height:var(--typography-line-height-overline);
  letter-spacing:var(--typography-letter-spacing-overline);
  font-weight:700;
  text-transform:uppercase
 }

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color:#44307a;

}

.post,
.post > div > div:first-child {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

@media (min-width:0em) {
 .post :root {
  --typography-font-size-heading-lead:3rem;
  --typography-line-height-heading-lead:1.25;
  --typography-letter-spacing-heading-lead:-0.01em;
  --typography-font-size-heading-0:2.375rem;
  --typography-line-height-heading-0:1.16;
  --typography-letter-spacing-heading-0:-0.01em;
  --typography-font-size-heading-1:2.0625rem;
  --typography-line-height-heading-1:1.34;
  --typography-letter-spacing-heading-1:-0.01em;
  --typography-font-size-heading-2:1.75rem;
  --typography-line-height-heading-2:1.29;
  --typography-letter-spacing-heading-2:-0.01em;
  --typography-font-size-heading-3:1.4375rem;
  --typography-line-height-heading-3:1.4;
  --typography-letter-spacing-heading-3:-0.01em;
  --typography-font-size-heading-4:1.1875rem;
  --typography-line-height-heading-4:1.48;
  --typography-letter-spacing-heading-4:-0.01em;
  --typography-font-size-body-super-lead:1.1875rem;
  --typography-line-height-body-super-lead:1.48;
  --typography-letter-spacing-body-super-lead:-0.0121052632em;
  --typography-font-size-body-lead:1.1875rem;
  --typography-line-height-body-lead:1.48;
  --typography-letter-spacing-body-lead:-0.0105263158em;
  --typography-font-size-body:1rem;
  --typography-line-height-body:1.5;
  --typography-letter-spacing-body:-0.01em;
  --typography-font-size-body-small:0.875rem;
  --typography-line-height-body-small:1.43;
  --typography-letter-spacing-body-small:-0.01em;
  --typography-font-size-body-extra-small:0.6875rem;
  --typography-line-height-body-extra-small:1.46;
  --typography-letter-spacing-body-extra-small:-0.01em;
  --typography-font-size-menu:1rem;
  --typography-line-height-menu:1.5;
  --typography-letter-spacing-menu:-0.01em;
  --typography-font-size-link:1rem;
  --typography-line-height-link:1.5;
  --typography-letter-spacing-link:-0.01em;
  --typography-font-size-link-small:0.875rem;
  --typography-line-height-link-small:1.43;
  --typography-letter-spacing-link-small:-0.01em;
  --typography-font-size-button:1rem;
  --typography-line-height-button:1.5;
  --typography-letter-spacing-button:-0.01em;
  --typography-font-size-overline:0.875rem;
  --typography-line-height-overline:1.43;
  --typography-letter-spacing-overline:0.025em
 }
}
@media (min-width:48em) {
 .post :root {
  --typography-font-size-heading-lead:3.75rem;
  --typography-line-height-heading-lead:1.27;
  --typography-letter-spacing-heading-lead:-0.01em;
  --typography-font-size-heading-0:3.125rem;
  --typography-line-height-heading-0:1.36;
  --typography-letter-spacing-heading-0:-0.01em;
  --typography-font-size-heading-1:2.5625rem;
  --typography-line-height-heading-1:1.27;
  --typography-letter-spacing-heading-1:-0.01em;
  --typography-font-size-heading-2:2.1875rem;
  --typography-line-height-heading-2:1.26;
  --typography-letter-spacing-heading-2:-0.01em;
  --typography-font-size-heading-3:1.8125rem;
  --typography-line-height-heading-3:1.38;
  --typography-letter-spacing-heading-3:-0.01em;
  --typography-font-size-heading-4:1.5rem;
  --typography-line-height-heading-4:1.34;
  --typography-letter-spacing-heading-4:-0.01em;
  --typography-font-size-body-super-lead:1.8125rem;
  --typography-line-height-body-super-lead:1.38;
  --typography-letter-spacing-body-super-lead:-0.01em;
  --typography-font-size-body-lead:1.4375rem;
  --typography-line-height-body-lead:1.4;
  --typography-letter-spacing-body-lead:-0.01em;
  --typography-font-size-body:1.1875rem;
  --typography-line-height-body:1.48;
  --typography-letter-spacing-body:-0.01em;
  --typography-font-size-body-small:1rem;
  --typography-line-height-body-small:1.5;
  --typography-letter-spacing-body-small:-0.01em;
  --typography-font-size-body-extra-small:0.875rem;
  --typography-line-height-body-extra-small:1.43;
  --typography-letter-spacing-body-extra-small:-0.0092857143em;
  --typography-font-size-link:1.1875rem;
  --typography-line-height-link:1.48;
  --typography-letter-spacing-link:-0.01em;
  --typography-font-size-link-small:1rem;
  --typography-line-height-link-small:1.5;
  --typography-letter-spacing-link-small:-0.01em;
  --typography-font-size-button:1.25rem;
  --typography-line-height-button:1.4;
  --typography-letter-spacing-button:-0.01em;
  --typography-font-size-overline:0.9375rem;
  --typography-line-height-overline:1.34;
  --typography-letter-spacing-overline:0.016em
 }
}
.post *,
body,
.listfeaturedtag h4.card-text,
.listrecent h4.card-text {
 font-size:var(--typography-font-size-body);
 line-height:var(--typography-line-height-body);
 letter-spacing:var(--typography-letter-spacing-body);
 font-weight:400;
 margin:0;
 color: var(--text-primary);
 font-family:CabifyCircular,Avenir Next,Avenir,Segoe UI,sans-serif;
 overflow-wrap:break-word
}
.post *,
.post :before {
 box-sizing:border-box
}
.post *+* {
 margin-top:1rem
}
@media (min-width:48em) {
 .post *+* {
  margin-top:1.5rem
 }
}

.post h1,
.post h2,
.post h3,
.post h4,
.post h5,
.post h6,
.port h1 + .meta-author-post {
 margin:0
}
.post h1 {
 font-size:var(--typography-font-size-heading-1);
 line-height:var(--typography-line-height-heading-1);
 letter-spacing:var(--typography-letter-spacing-heading-1);
 font-weight:700
}
.post *+h1 {
 margin-top:2.5rem
}
.post h2,
.section-title h2,
.listfeaturedtag h2.card-title {
 font-size:var(--typography-font-size-heading-2);
 line-height:var(--typography-line-height-heading-2);
 letter-spacing:var(--typography-letter-spacing-heading-2);
 font-weight:700
}
.post *+h2 {
 margin-top:2rem
}
.post h1+h2,
.post h2+h2 {
 margin-top:1rem
}
.post h3 {
 font-size:var(--typography-font-size-heading-3);
 line-height:var(--typography-line-height-heading-3);
 letter-spacing:var(--typography-letter-spacing-heading-3);
 font-weight:700
}
.post *+h3 {
 margin-top:2rem
}
.post h1+h3,
.post h2+h3,
.post h3+h3 {
 margin-top:.5rem
}
.post h4,
.post h5,
.post h6,
.listrecent h2.card-title {
 font-size:var(--typography-font-size-heading-4);
 line-height:var(--typography-line-height-heading-4);
 letter-spacing:var(--typography-letter-spacing-heading-4);
 font-weight:700
}
.post h5,
.post h6 {
  font-size:var(--typography-font-size-heading-5);
  line-height:var(--typography-line-height-heading-5);
  letter-spacing:var(--typography-letter-spacing-heading-5);
}

.post *+h4,
.post *+h5,
.post *+h6 {
 margin-top:1rem
}
.post h1+h4,
.post h1+h5,
.post h1+h6,
.post h2+h4,
.post h2+h5,
.post h2+h6,
.post h3+h4,
.post h3+h5,
.post h3+h6,
.post h4+h4,
.post h4+h5,
.post h4+h6,
.post h5+h4,
.post h5+h5,
.post h5+h6,
.post h6+h4,
.post h6+h5,
.post h6+h6 {
 margin-top:.5rem
}
@media (min-width:48em) {
 .post *+h1 {
  margin-top:3.5rem
 }
 .post *+h2 {
  margin-top:2.5rem
 }
 .post h1+h2,
 .post h2+h2 {
  margin-top:1.5rem
 }
 .post *+h3 {
  margin-top:2.5rem
 }
 .post h1+h3,
 .post h2+h3,
 .post h3+h3 {
  margin-top:1rem
 }
 .post *+h4,
 .post *+h5,
 .post *+h6 {
  margin-top:1.5rem
 }
 .post h1+h4,
 .post h1+h5,
 .post h1+h6,
 .post h2+h4,
 .post h2+h5,
 .post h2+h6,
 .post h3+h4,
 .post h3+h5,
 .post h3+h6,
 .post h4+h4,
 .post h4+h5,
 .post h4+h6 {
  margin-top:1rem
 }
}
.post h1+*,
.post h2+* {
 margin-top:1rem
}
.post h3+*,
.post h4+*,
.post h5+*,
.post h6+* {
 margin-top:.5rem
}
@media (min-width:48em) {
 .post h1+*,
 .post h2+* {
  margin-top:1.5rem
 }
 .post h3+*,
 .post h4+*,
 .post h5+*,
 .post h6+* {
  margin-top:1rem
 }
}
.post strong {
 font-weight:700
}
.post em,
.post i {
 font-style:italic
}
.post del {
 text-decoration:line-through
}
.post a {
 color: var(--action-primary);
 text-decoration:none;
 font-size:inherit
}
.post a:hover {
 color: var(--state-primary-hover);
}
.post a:active {
 color: var(--state-primary-active);
}
.post ol,
.post ul {
 margin-left:0;
 padding:0;
 list-style:none
}
.post ol li,
.post ul li {
 position:relative;
 padding-left:2rem
}
.post ol li:before,
.post ul li:before {
 position:absolute;
 left:0
}
.post ol li li,
.post ul li li {
 padding-left:1.5rem
}
.post ol li li+li,
.post ul li li+li {
 margin-top:0
}
.post ol li+li,
.post ul li+li {
 margin-top:.5rem
}
.post ol ol,
.post ol ul,
.post ul ol,
.post ul ul {
 margin-top:.5rem;
 padding-left:1.25rem
}
.post ol ol:last-child,
.post ol ul:last-child,
.post ul ol:last-child,
.post ul ul:last-child {
 margin-bottom:.5rem
}
@media (min-width:48em) {
 .post ol li,
 .post ul li {
  padding-left:2.5rem
 }
 .post ol li li,
 .post ul li li {
  padding-left:1.5rem
 }
 .post ol li li+li,
 .post ul li li+li {
  margin-top:.5rem
 }
 .post ol li+li,
 .post ul li+li {
  margin-top:1rem
 }
 .post ol ol,
 .post ol ul,
 .post ul ol,
 .post ul ul {
  margin-top:1rem;
  padding-left:2rem
 }
 .post ol ol:last-child,
 .post ol ul:last-child,
 .post ul ol:last-child,
 .post ul ul:last-child {
  margin-bottom:1rem
 }
 .post ol ol ol,
 .post ol ol ul,
 .post ol ul ol,
 .post ol ul ul,
 .post ul ol ol,
 .post ul ol ul,
 .post ul ul ol,
 .post ul ul ul {
  margin-top:.5rem
 }
 .post ol ol ol:last-child,
 .post ol ol ul:last-child,
 .post ol ul ol:last-child,
 .post ol ul ul:last-child,
 .post ul ol ol:last-child,
 .post ul ol ul:last-child,
 .post ul ul ol:last-child,
 .post ul ul ul:last-child {
  margin-bottom:.5rem
 }
}

.post ul>li:before {
 content:"";
 top:calc(.5em + .125rem);
 width:1rem;
 height:.125rem;
 border-radius:8px;
 background-color:currentColor
}

.after-post-cats ul>li:before {
  display: none;
}

.post ol {
 counter-reset:list
}
.post ol>li:before {
 font-size:var(--typography-font-size-body);
 line-height:var(--typography-line-height-body);
 letter-spacing:var(--typography-letter-spacing-body);
 font-weight:400;
 content:counters(list,".") ".";
 top:0;
 color:#44307a;
 counter-increment:list;
 letter-spacing:-.1em;
 font-weight:700;
 font-feature-settings:"tnum";
 font-variant-numeric:tabular-nums
}
.post li ol>li {
 padding-left:calc(3ch + .5rem)
}

.post li li ol>li {
 padding-left:calc(4.5ch + .5rem)
}
.post li li li ol>li {
 padding-left:calc(6ch + .5rem)
}
.post li ul>li:before {
 width:.5rem
}
.after-post-cats ul li {
  padding-left: 0;
  margin-bottom: .5rem;
  margin-right: 1rem;
}

.post li>input[type=checkbox] {
 margin-right:.5rem
}
.post img {
 display:block;
 margin-top:1.5rem;
 margin-bottom:1.5rem;
 width:100%;
 border-radius:8px
}
@media (min-width:48em) {
 .post img {
  margin-top:2.5rem;
  margin-bottom:2.5rem
 }
}
.post blockquote {
 margin-top:1.5rem;
 margin-bottom:1.5rem
}
.post blockquote,
.post blockquote>* {
 font-size:var(--typography-font-size-heading-4);
 line-height:var(--typography-line-height-heading-4);
 letter-spacing:var(--typography-letter-spacing-heading-4);
}
@media (min-width:48em) {
 .post blockquote {
  margin-top:2.5rem;
  margin-bottom:2.5rem
 }
}
.post hr {
 margin-top:1.5rem;
 margin-bottom:1.5rem;
 border:0;
 border-top:1px solid #cbcbeb
}
@media (min-width:48em) {
 .post hr {
  margin-top:2rem;
  margin-bottom:2rem
 }
}
.post table {
 display:block;
 overflow-x:auto;
 margin-top:1.5rem;
 margin-bottom:1.5rem;
 max-width:100%;
 width:100%;
 border:0;
 border-spacing:0;
 border-collapse:collapse;
 table-layout:fixed;
 text-align:left
}
.post table,
.post table td,
.post table th {
 font-size:var(--typography-font-size-body-small);
 line-height:var(--typography-line-height-body-small);
 letter-spacing:var(--typography-letter-spacing-body-small);
 font-weight:400
}
.post table tbody,
.post table td,
.post table th,
.post table thead,
.post table tr {
 margin:0
}
.post table th {
 padding:1rem .75rem;
 border-top:1px solid #f7f7fc;
 border-bottom:1px solid #f7f7fc;
 color:#979fbd;
 vertical-align:top
}
.post table th:first-of-type {
 padding-left:0
}
.post table th:last-of-type {
 padding-right:0
}
.post table td {
 padding:1rem .75rem;
 vertical-align:top
}
.post table td:first-of-type {
 padding-left:0
}
.post table td:last-child,
.post table td:last-of-type {
 padding-right:0
}
.post table tr:not(:first-child) td {
 padding-top:.5rem
}
@media (min-width:48em) {
 .post table {
  margin-top:2.5rem;
  margin-bottom:2.5rem
 }
 .post table,
 .post table td,
 .post table th,
 .meta-author-post .post-name, .meta-author-post .post-date, .meta-author-post .read-time {
  font-size:var(--typography-font-size-body-small);
  line-height:var(--typography-line-height-body-small);
  letter-spacing:var(--typography-letter-spacing-body-small);
  font-weight:400
 }
 .post table td {
  padding-top:1.5rem;
  padding-bottom:1.5rem
 }
 .post table table tr:not(:first-child) td {
  padding-top:1.5rem
 }
}
.post code {
 display:inline-block;
 padding:0 .5rem;
 border:1px solid #cbcbeb;
 border-radius:4px;
 background-color:#f7f7fc;
 font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;
 font-size:.8421em;
 line-height:1.7501
}
.post pre>code {
 display:block;
 overflow-x:auto;
 margin-top:1rem;
 margin-bottom:1rem;
 padding:1rem;
 border-radius:8px;
 font-size:.875rem
}

.port .meta-author-post .post-date {
  color: #44307a;
}

.author-info {
  margin: 0;
  margin-left: 1.25rem;
}
.author-description {
  margin-top: 0.25rem;
}

.post h1 + .meta-author-post {
  margin-top: .5rem;
}

.listrecent h2.card-title a {
  color: var(--text-primary);
}

.post-name-date {
  margin-bottom: 0.75rem;
}

.h-full {
  height: 100%;
}

*[class^="col-"] {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

.row {
  margin-right: -1.5rem;
  margin-left: -1.5rem;
}

.section-title h2 {
  margin-bottom: 1.5rem;
}

.listrecent {
  margin-top: -1.5rem;
}

.container {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}
