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

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

body {
  font-family: sans-serif;
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1;
}

html,
body {
  height: 100%;
}

@media (max-width: 768px) {
  .hide-m {
    display: none;
  }
}

@media (max-width: 640px) {
  .hide-s {
    display: none;
  }
}

@media (max-width: 530px) {
  .hide-xs {
    display: none;
  }
}

html {
  font-size: 21px;
}
@media (max-width: 1800px) {
  html {
    font-size: 20px;
  }
}
@media (max-width: 1600px) {
  html {
    font-size: 19px;
  }
}
@media (max-width: 1440px) {
  html {
    font-size: 18px;
  }
}
@media (max-width: 1024px) {
  html {
    font-size: 17px;
  }
}
@media (max-width: 768px) {
  html {
    font-size: 16px;
  }
}

body {
  font-size: 100%;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 410;
}

@font-face {
  font-family: "Merriweather";
  src: url(/static/fonts/merriweather/Merriweather-Regular.ttf?3548876d37f5);
  font-weight: 400;
}
@font-face {
  font-family: "Merriweather";
  src: url(/static/fonts/merriweather/Merriweather-Italic.ttf?3548876d37f5);
  font-style: italic;
  font-weight: 400;
}
@font-face {
  font-family: "Merriweather";
  src: url(/static/fonts/merriweather/Merriweather-SemiBold.ttf);
  font-weight: 500;
}
@font-face {
  font-family: "Merriweather";
  src: url(/static/fonts/merriweather/Merriweather-SemiBoldItalic.ttf);
  font-style: italic;
  font-weight: 500;
}
@font-face {
  font-family: "Merriweather";
  src: url(/static/fonts/merriweather/Merriweather-Bold.ttf?3548876d37f5);
  font-weight: 700;
}
@font-face {
  font-family: "Merriweather";
  src: url(/static/fonts/merriweather/Merriweather-BoldItalic.ttf?3548876d37f5);
  font-style: italic;
  font-weight: 700;
}
body,
html {
  scroll-behavior: auto;
  height: 100%;
  color: #101010;
  background-color: #f4f4f4;
}

.main-content {
  background-color: #f4f4f4;
}

a {
  color: #465afa;
}

em {
  font-style: italic;
}

strong {
  font-weight: 820;
}

p {
  line-height: 150%;
  font-size: 1.1rem;
}
p.l, p.big {
  font-size: 1.2rem;
  line-height: 150%;
}
p.xl {
  font-size: 1.3rem;
  line-height: 150%;
}
p:not(:last-child) {
  margin-bottom: 1.5rem;
}

ul.textual {
  padding-left: 1rem;
}
ul.textual li {
  line-height: 170%;
  list-style: disc;
}
ul.textual li:not(:last-child) {
  margin-bottom: 1.5rem;
}

.codehilite .hll {
  background-color: #333333;
  display: block;
}

.codehilite {
  background: rgb(12.75, 12.75, 12.75);
  color: #ffffff;
}

.codehilite .c {
  color: rgb(142.8, 142.8, 142.8);
} /* Comment */
.codehilite .err {
  color: #ffffff;
} /* Error */
.codehilite .g {
  color: #ffffff;
} /* Generic */
.codehilite .k {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Keyword */
.codehilite .l {
  color: #ffffff;
} /* Literal */
.codehilite .n {
  color: #ffffff;
} /* Name */
.codehilite .o {
  color: rgb(142.8, 142.8, 142.8);
} /* Operator */
.codehilite .x {
  color: #ffffff;
} /* Other */
.codehilite .p {
  color: #ffffff;
} /* Punctuation */
.codehilite .ch {
  color: rgb(142.8, 142.8, 142.8);
} /* Comment.Hashbang */
.codehilite .cm {
  color: rgb(142.8, 142.8, 142.8);
} /* Comment.Multiline */
.codehilite .cp {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Comment.Preproc */
.codehilite .cpf {
  color: rgb(142.8, 142.8, 142.8);
} /* Comment.PreprocFile */
.codehilite .c1 {
  color: rgb(142.8, 142.8, 142.8);
} /* Comment.Single */
.codehilite .cs {
  color: rgb(142.8, 142.8, 142.8);
} /* Comment.Special */
.codehilite .gd {
  color: #8b080b;
} /* Generic.Deleted */
.codehilite .ge {
  color: #ffffff;
  text-decoration: underline;
} /* Generic.Emph */
.codehilite .gr {
  color: #ffffff;
} /* Generic.Error */
.codehilite .gh {
  color: #ffffff;
  font-weight: bold;
} /* Generic.Heading */
.codehilite .gi {
  color: #ffffff;
  font-weight: bold;
} /* Generic.Inserted */
.codehilite .go {
  color: #44475a;
} /* Generic.Output */
.codehilite .gp {
  color: #ffffff;
} /* Generic.Prompt */
.codehilite .gs {
  color: #ffffff;
} /* Generic.Strong */
.codehilite .gu {
  color: #ffffff;
  font-weight: bold;
} /* Generic.Subheading */
.codehilite .gt {
  color: #ffffff;
} /* Generic.Traceback */
.codehilite .kc {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Keyword.Constant */
.codehilite .kd {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Keyword.Declaration */
.codehilite .kn {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Keyword.Namespace */
.codehilite .kp {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Keyword.Pseudo */
.codehilite .kr {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Keyword.Reserved */
.codehilite .kt {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Keyword.Type */
.codehilite .ld {
  color: #ffffff;
} /* Literal.Date */
.codehilite .m {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number */
.codehilite .na {
  color: rgb(9.5, 180.5, 141.1330935252);
} /* Name.Attribute */
.codehilite .nb {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Builtin */
.codehilite .nc {
  color: rgb(9.5, 180.5, 141.1330935252);
} /* Name.Class */
.codehilite .no {
  color: #ffffff;
} /* Name.Constant */
.codehilite .nd {
  color: #ffffff;
} /* Name.Decorator */
.codehilite .ni {
  color: #ffffff;
} /* Name.Entity */
.codehilite .ne {
  color: #ffffff;
} /* Name.Exception */
.codehilite .nf {
  color: rgb(9.5, 180.5, 141.1330935252);
} /* Name.Function */
.codehilite .nl {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Label */
.codehilite .nn {
  color: #ffffff;
} /* Name.Namespace */
.codehilite .nx {
  color: #ffffff;
} /* Name.Other */
.codehilite .py {
  color: #ffffff;
} /* Name.Property */
.codehilite .nt {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Name.Tag */
.codehilite .nv {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Variable */
.codehilite .ow {
  color: rgb(222.6387096774, 174.0967741935, 252.3032258065);
} /* Operator.Word */
.codehilite .pm {
  color: #ffffff;
} /* Punctuation.Marker */
.codehilite .w {
  color: #ffffff;
} /* Text.Whitespace */
.codehilite .mb {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number.Bin */
.codehilite .mf {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number.Float */
.codehilite .mh {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number.Hex */
.codehilite .mi {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number.Integer */
.codehilite .mo {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number.Oct */
.codehilite .s {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String */
.codehilite .sa {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Affix */
.codehilite .sb {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Backtick */
.codehilite .sc {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Char */
.codehilite .dl {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Delimiter */
.codehilite .sd {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Doc */
.codehilite .s2 {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Double */
.codehilite .se {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Escape */
.codehilite .sh {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Heredoc */
.codehilite .si {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Interpol */
.codehilite .sx {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Other */
.codehilite .sr {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Regex */
.codehilite .s1 {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Single */
.codehilite .ss {
  color: rgb(255, 227.3636363636, 141);
} /* Literal.String.Symbol */
.codehilite .bp {
  color: #ffffff;
  font-style: italic;
} /* Name.Builtin.Pseudo */
.codehilite .fm {
  color: rgb(9.5, 180.5, 141.1330935252);
} /* Name.Function.Magic */
.codehilite .vc {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Variable.Class */
.codehilite .vg {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Variable.Global */
.codehilite .vi {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Variable.Instance */
.codehilite .vm {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
  font-style: italic;
} /* Name.Variable.Magic */
.codehilite .il {
  color: rgb(139.5384615385, 206.3846153846, 251.9615384615);
} /* Literal.Number.Integer.Long */
.text-body {
  font-family: Merriweather, georgia, serif;
}
.text-body.serif {
  font-family: "Merriweather", Spectral, georgia, serif;
}
.text-body .intro p {
  font-size: 1.3rem;
}
.text-body h1,
.text-body h2,
.text-body h3,
.text-body h4,
.text-body h5 {
  margin: 4.25rem 0 0.75rem;
  font-weight: 820;
  font-family: Inter, helvetica, sans-serif;
  line-height: 130%;
  position: relative;
}
.text-body h1 b,
.text-body h2 b,
.text-body h3 b,
.text-body h4 b,
.text-body h5 b {
  font-weight: 820;
}
.text-body h1:first-child,
.text-body h2:first-child,
.text-body h3:first-child,
.text-body h4:first-child,
.text-body h5:first-child {
  margin-top: 0;
}
.text-body h1 .permalink,
.text-body h2 .permalink,
.text-body h3 .permalink,
.text-body h4 .permalink,
.text-body h5 .permalink {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-100%, -50%);
  padding-right: 0.3rem;
  text-decoration: none;
  display: inline-block;
  visibility: hidden;
  opacity: 0.3;
}
.text-body h1 .permalink, .text-body h1 .permalink:hover,
.text-body h2 .permalink,
.text-body h2 .permalink:hover,
.text-body h3 .permalink,
.text-body h3 .permalink:hover,
.text-body h4 .permalink,
.text-body h4 .permalink:hover,
.text-body h5 .permalink,
.text-body h5 .permalink:hover {
  color: #9a9ca5;
}
.text-body h1:hover .permalink,
.text-body h2:hover .permalink,
.text-body h3:hover .permalink,
.text-body h4:hover .permalink,
.text-body h5:hover .permalink {
  visibility: visible;
}
.text-body h2 {
  font-size: 2rem;
}
.text-body h3 {
  margin-top: 3rem;
  font-size: 1.6rem;
}
.text-body h4 {
  margin-top: 2.5rem;
  font-size: 1.2rem;
}
.text-body h5 {
  margin-top: 1.25rem;
  font-size: 1rem;
  text-transform: uppercase;
}
.text-body h1 + h2,
.text-body h2 + h3,
.text-body h3 + h4,
.text-body h4 + h5 {
  margin-top: 1.25rem;
}
.text-body dt,
.text-body dl,
.text-body li,
.text-body p {
  font-size: 1rem;
  line-height: 170%;
}
.text-body i,
.text-body em {
  font-style: italic;
}
.text-body b,
.text-body strong {
  font-weight: 700;
}
.text-body a {
  color: inherit;
  text-decoration: underline;
}
.text-body p {
  margin-bottom: 1.6666666667rem;
}
.text-body aside,
.text-body div.info,
.text-body div.warning,
.text-body div.note,
.text-body .MathJax_Display,
.text-body img,
.text-body blockquote,
.text-body table,
.text-body pre {
  margin: 1.6666666667rem 0;
}
.text-body .table-wrapper {
  overflow-x: auto;
  max-width: 100%;
  margin: 1.6666666667rem 0;
}
.text-body table {
  line-height: 150%;
  border-collapse: collapse;
  font-size: 1.1rem;
  margin-left: auto;
  margin-right: auto;
}
.text-body table thead {
  text-align: left;
  font-weight: 460;
}
.text-body table table,
.text-body table tr,
.text-body table td,
.text-body table th {
  border: 1px solid #ccc;
}
.text-body table td,
.text-body table th {
  padding: 0.75rem;
}
.text-body img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}
.text-body figure figcaption {
  font-size: 0.85rem;
  text-align: center;
  margin-top: -1rem;
  opacity: 0.7;
}
.text-body dl {
  margin: 0 0 2.5rem;
}
.text-body dl dt:not(:first-child) {
  margin-top: 0.75rem;
}
.text-body ul,
.text-body ol {
  margin: 0 0 2.5rem;
  padding-left: 1.5rem;
}
.text-body ul li,
.text-body ol li {
  margin-bottom: 0.75rem;
}
.text-body ul li ul,
.text-body ul li ol,
.text-body ol li ul,
.text-body ol li ol {
  margin: 0.75rem 0 0;
  padding-left: 2rem;
}
.text-body ul li {
  position: relative;
}
.text-body ul li::before {
  content: "•";
  position: absolute;
  left: -1rem;
  font-size: 1.2rem;
}
.text-body ul > li > ul > li::before {
  content: "◦";
  left: -1.15rem;
}
.text-body ul > li > ul > li > ul > li::before {
  content: "▪";
  left: -1.15rem;
}
.text-body ol {
  list-style: decimal;
}
.text-body ol ol {
  list-style-type: lower-alpha;
}
.text-body ol ol ol {
  list-style: decimal;
}
.text-body pre {
  line-height: 160%;
  padding: 1.2rem;
  font-family: "Liberation Mono", monospace;
  border-radius: 0.125rem;
  white-space: pre;
  word-wrap: normal;
  overflow: auto;
  font-size: 14px;
}
@media (max-width: 768px) {
  .text-body pre {
    font-size: 12px;
  }
}
.text-body blockquote {
  padding: 0.2rem 1.2rem;
  border-left: 5px solid rgba(16, 16, 16, 0.3);
}
.text-body blockquote p {
  font-style: italic;
}
.text-body blockquote p:last-child {
  margin-bottom: 0;
}
.text-body blockquote a {
  font-style: normal;
  color: inherit;
}
.text-body li > code,
.text-body p > code,
.text-body a > code {
  line-height: normal;
  display: inline-block;
  background-color: rgb(231.25, 231.25, 231.25);
  padding: 0.2rem 0.3rem;
  font-family: "Liberation Mono", monospace;
  font-size: 0.9rem;
}
.text-body.dark .code,
.text-body.dark aside, .dark .text-body .code,
.dark .text-body aside {
  background-color: rgb(12.75, 12.75, 12.75) !important;
}
.text-body.dark li > code,
.text-body.dark p > code,
.text-body.dark a > code, .dark .text-body li > code,
.dark .text-body p > code,
.dark .text-body a > code {
  background-color: rgb(20.4, 20.4, 20.4) !important;
}
.text-body.dark blockquote, .dark .text-body blockquote {
  border-left-color: rgb(161.9769230769, 182.1395604396, 209.0230769231);
}
.text-body.dark a, .dark .text-body a {
  color: #41affa;
}
.text-body.dark .hljs, .dark .text-body .hljs {
  color: rgb(214.7355769231, 222.4622252747, 232.7644230769);
}
.text-body aside {
  background-color: rgb(231.25, 231.25, 231.25);
}
.text-body aside p {
  max-width: none !important;
}
.text-body aside p br {
  margin-bottom: 1.5rem !important;
}
.text-body .code {
  background-color: rgb(231.25, 231.25, 231.25);
}
.text-body aside,
.text-body .warning,
.text-body .info,
.text-body .note {
  padding: 1.6rem;
  font-family: helvetica, Inter, helvetica, sans-serif;
  font-family: "Liberation Mono", monospace;
  font-size: 0.9rem;
  border-radius: 0.25rem;
}
.text-body aside.note, .text-body aside.info,
.text-body .warning.note,
.text-body .warning.info,
.text-body .info.note,
.text-body .info.info,
.text-body .note.note,
.text-body .note.info {
  background-color: rgb(231.25, 231.25, 231.25);
}
.text-body aside.note code, .text-body aside.info code,
.text-body .warning.note code,
.text-body .warning.info code,
.text-body .info.note code,
.text-body .info.info code,
.text-body .note.note code,
.text-body .note.info code {
  background-color: rgb(218.5, 218.5, 218.5);
}
.text-body aside.warning,
.text-body .warning.warning,
.text-body .info.warning,
.text-body .note.warning {
  color: #000;
  background-color: rgb(255, 233.5454545455, 166.5);
}
.text-body aside.warning code,
.text-body .warning.warning code,
.text-body .info.warning code,
.text-body .note.warning code {
  background-color: rgb(255, 226.1272727273, 135.9);
}
.text-body aside strong,
.text-body .warning strong,
.text-body .info strong,
.text-body .note strong {
  font-weight: 460;
}
.text-body aside dt,
.text-body aside dl,
.text-body aside li,
.text-body aside p,
.text-body .warning dt,
.text-body .warning dl,
.text-body .warning li,
.text-body .warning p,
.text-body .info dt,
.text-body .info dl,
.text-body .info li,
.text-body .info p,
.text-body .note dt,
.text-body .note dl,
.text-body .note li,
.text-body .note p {
  font-size: 0.9rem;
}
.text-body aside li:before,
.text-body .warning li:before,
.text-body .info li:before,
.text-body .note li:before {
  font-family: "Merriweather", Spectral, georgia, serif;
}
.text-body aside *:last-child,
.text-body .warning *:last-child,
.text-body .info *:last-child,
.text-body .note *:last-child {
  margin-bottom: 0;
}
@media (max-width: 1600px) {
  .text-body li,
  .text-body p {
    font-size: 1.1rem;
  }
}

.image-carousel-wrapper {
  overflow: hidden;
  padding: 1rem 0 !important;
}
@media (max-width: 768px) {
  .image-carousel-wrapper {
    padding: 0 !important;
  }
}

.image-carousel {
  width: 120%;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.5rem;
  margin: 0 auto;
}
.image-carousel .image {
  position: relative;
  padding-top: 140%;
}
.image-carousel .image img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0.25rem;
  filter: grayscale(100%);
  transition: filter 0.1s linear;
}
.image-carousel .image .caption {
  display: block;
  pointer-events: none;
  font-size: 0.9rem;
  line-height: 150%;
  font-weight: 690;
  text-transform: uppercase;
  opacity: 0.8;
  letter-spacing: -0.1px;
  position: absolute;
  color: #fff;
  padding: 0.4rem;
  opacity: 1;
  background: #c6ccfa;
  color: #000;
  padding: 0.25rem 0.6rem;
  border-radius: 0.1rem;
  background: rgba(0, 0, 0, 0.4);
  background: rgba(0, 0, 0, 0.2666666667);
  color: #fff;
}
.image-carousel .image .caption.top-left {
  top: 0.5rem;
  left: 0.5rem;
}
.image-carousel .image .caption.top-right {
  top: 0.5rem;
  right: 0.5rem;
}
.image-carousel .image .caption.bottom-right {
  bottom: 0.5rem;
  right: 0.5rem;
}
.image-carousel .image .caption.bottom-left {
  bottom: 0.5rem;
  left: 0.5rem;
}
.image-carousel .image .caption.vertical-top-right {
  top: 0.5rem;
  right: 0.5rem;
  transform: rotate(90deg) translateX(100%);
  transform-origin: top right;
}
.image-carousel .image .caption.vertical-bottom-right {
  bottom: 0.5rem;
  right: 0.5rem;
  transform: rotate(90deg) translateY(100%);
  transform-origin: bottom right;
}
.image-carousel .image .caption.vertical-bottom-left {
  bottom: 0;
  left: 0;
  writing-mode: vertical-rl;
  text-orientation: sideways;
}
@media (max-width: 1024px) {
  .image-carousel {
    width: 160%;
  }
}
@media (max-width: 768px) {
  .image-carousel {
    width: 180%;
  }
}
@media (max-width: 640px) {
  .image-carousel {
    width: 280%;
    gap: 0.75rem;
    padding-right: 0.75rem;
  }
  .image-carousel .image {
    padding-top: 140%;
  }
}
.service-boxes {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr;
}
.service-boxes .service-box {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: inherit;
  text-decoration: none;
  position: relative;
}
.service-boxes .service-box:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  right: -1.2rem;
  bottom: 0;
  width: 1px;
  background: #ddd;
}
.service-boxes .service-box .title {
  margin-top: 1rem;
  font-size: 1.2rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  line-height: 130%;
}
.service-boxes .service-box .title a {
  color: inherit;
}
.service-boxes .service-box .service-image {
  position: relative;
  padding-top: 100%;
  border-radius: 0.25rem;
  overflow: hidden;
}
.service-boxes .service-box .service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
  transition: transform 500ms, filter 500ms;
  filter: grayscale(0.8);
}
.service-boxes .service-box ul {
  display: none;
}
.service-boxes .service-box .footer {
  margin-top: auto;
}
.service-boxes .service-box:hover .service-image img {
  transform: scale(1.1);
  filter: grayscale(0);
}
.service-boxes .service-box.product-development-box .service-image img {
  object-position: top center;
}
@media (max-width: 640px) {
  .service-boxes {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .service-boxes .service-box:not(:last-child)::after {
    content: "";
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0;
    bottom: -1.2rem;
    height: 1px;
    width: 100%;
    background: #ddd;
  }
  .service-boxes .service-box .service-image {
    margin-top: 0.8rem;
    padding-top: 61.8%;
  }
}

.service-navigation .service-boxes .service-box .text-box p {
  font-size: 0.9rem;
}
.service-navigation .service-boxes .service-box .service-image {
  padding-top: 50%;
}
@media (max-height: 700px) {
  .service-navigation .service-boxes .service-box .text-box {
    display: none;
  }
}

.container {
  padding: 6rem 0;
}
.container.no-padding {
  padding: 0;
}
.container.reduced-padding {
  padding: 1.8rem 0;
}
.container.extra-padding {
  padding: 9rem 0;
}
.container.with-border {
  position: relative;
}
.container.with-border::before {
  content: "";
  position: absolute;
  left: 1.5rem;
  right: 1.5rem;
  bottom: 0;
  height: 1px;
}
.container > .content {
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto 6rem;
  padding: 0 6rem;
  max-width: 1440px;
}
.container > .content.no-padding {
  padding: 0;
}
.container > .content.reduced-margin {
  margin-bottom: 2.5rem;
}
.container > .content:last-child {
  margin-bottom: 0;
}
.container > .content.edge {
  max-width: 95rem;
  padding: 0;
}
.container > .content.extra-wide {
  max-width: 95rem;
}
.container > .content.wide {
  max-width: 85rem;
}
.container > .content.semi-wide {
  max-width: calc(1440px + 12rem);
}
.container > .content.semi-narrow {
  max-width: 60rem;
}
.container > .content.narrow {
  max-width: 52rem;
}
.container > .content.ultra-narrow {
  max-width: 40rem;
}
.container > .content.full {
  max-width: none;
  padding: 0;
}
.container > .content > .title {
  font-size: 2rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  margin-bottom: 1.5rem;
}
@media (max-width: 768px) {
  .container.extra-padding {
    padding: 6rem 0;
  }
  .container.mobile-remove-bottom-padding {
    padding-bottom: 0;
  }
  .container.mobile-remove-top-padding {
    padding-top: 0;
  }
  .container > .content {
    padding: 0 1.4rem;
  }
  .container > .content.reduced-margin-on-mobile {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 640px) {
  .container {
    padding: 4.2rem 0;
  }
}

.picture-grid {
  margin-bottom: 2rem;
  position: relative;
  padding-top: 54%;
}
.picture-grid.landscape {
  padding-top: 36%;
}
.picture-grid.no-height {
  padding-top: 0;
}
.picture-grid.no-height .grid-contents {
  position: static;
}
.picture-grid .grid-contents {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: grid;
  grid-gap: 1rem;
}
.picture-grid .grid-contents.extra-gap {
  grid-gap: 2rem;
}
.picture-grid .grid-contents picture {
  position: relative;
  width: 100%;
  height: 100%;
}
.picture-grid .grid-contents picture a,
.picture-grid .grid-contents picture img {
  color: inherit;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.picture-grid .grid-contents picture img {
  object-fit: cover;
  border-radius: 0.25rem;
}
.picture-grid .grid-contents.fiddy {
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr;
}
.picture-grid .grid-contents.one-and-one {
  grid-template-areas: "main second";
  grid-template-columns: 1fr 0.75fr;
  grid-template-rows: 1fr;
}
.picture-grid .grid-contents.one-and-one picture:nth-child(1) {
  grid-area: main;
}
.picture-grid .grid-contents.one-and-one picture:nth-child(2) {
  grid-area: second;
}
.picture-grid .grid-contents.squares {
  grid-template-columns: repeat(4, 1fr);
  margin: 0 auto;
  max-width: 1600px;
}
.picture-grid .grid-contents.squares picture {
  height: 0;
  padding-top: 100%;
}
.picture-grid .grid-contents.squares picture:first-child img {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.picture-grid .grid-contents.squares picture:last-child img {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
@media (min-width: 1600px) {
  .picture-grid .grid-contents.squares picture img {
    border-radius: 0.3rem !important;
  }
}
.picture-grid .grid-contents.one-and-two {
  grid-template-areas: "main second" "main third";
  grid-template-columns: 1fr 0.65fr;
  grid-template-rows: 1fr 0.9fr;
}
.picture-grid .grid-contents.one-and-two picture:nth-child(1) {
  grid-area: main;
}
.picture-grid .grid-contents.one-and-two picture:nth-child(2) {
  grid-area: second;
}
.picture-grid .grid-contents.one-and-two picture:nth-child(3) {
  grid-area: third;
}
@media (max-width: 640px) {
  .picture-grid .grid-contents.squares {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0;
  }
  .picture-grid .grid-contents.squares picture img {
    border-radius: 0;
  }
}

.image-grid {
  padding-top: 50%;
  position: relative;
}
.image-grid .image-content {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  grid-template-rows: auto;
  grid-template-areas: "tl middle tr" "bl middle br";
  grid-gap: 1rem;
}
.image-grid .image-content figure {
  position: relative;
}
.image-grid .image-content figure a {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  border-radius: 0.25rem;
  overflow: hidden;
}
.image-grid .image-content figure:nth-child(1) {
  grid-area: tl;
}
.image-grid .image-content figure:nth-child(2) {
  grid-area: tr;
}
.image-grid .image-content figure:nth-child(3) {
  grid-area: middle;
}
.image-grid .image-content figure:nth-child(4) {
  grid-area: bl;
}
.image-grid .image-content figure:nth-child(5) {
  grid-area: br;
}
@keyframes super-button-glow {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
.super-button {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  border: 0;
  cursor: pointer;
  white-space: nowrap;
  font-size: 1rem;
  font-size: 0.9rem;
  padding: 0.9rem 1.1rem;
  position: relative;
  z-index: 0;
}
.super-button::after {
  border-radius: 0.25rem;
  transition: background 200ms;
  z-index: 0;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.super-button::before {
  z-index: -1;
  content: "";
  position: absolute;
  top: -0.3rem;
  left: -0.3rem;
  bottom: -0.3rem;
  right: -0.3rem;
  border-radius: 0.38rem;
  animation: super-button-glow 5s ease infinite;
  background: linear-gradient(30deg, #7b86fb, #d192fc, #9382fb, #6ea6e2, #d192fc);
  transition: opacity 0.3s ease;
  background-size: 300%;
  opacity: 0;
}
.super-button.perma-glow::before {
  opacity: 0.8;
}
.super-button span {
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.super-button span svg {
  height: 0.6rem;
  width: auto;
  display: block;
}
.super-button:hover::before {
  opacity: 1;
}
.super-button:hover::after {
  background: rgb(35.7, 35.7, 35.7);
}

@keyframes fancy-button-glow {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
.fancy-button {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  background: linear-gradient(70deg, #c369fa, #7d64fa, #41affa);
  background-size: 200%;
  color: #fff;
  transition: background 200ms, color 200ms;
  border: 0;
  cursor: pointer;
  white-space: nowrap;
  font-size: 1rem;
  border-radius: 0.4rem;
  padding: 0.9rem 1.1rem;
  position: relative;
}
.fancy-button span {
  z-index: 1;
}
.fancy-button.slim {
  padding: 0.7rem 0.8rem;
  font-size: 0.9rem;
}
.fancy-button.solid {
  color: #f4f4f4;
}
.fancy-button.solid:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border-radius: 0.4rem;
  z-index: 0;
  background: #000;
}
.fancy-button.outline {
  color: #101010;
}
.fancy-button.outline:after {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  bottom: 1px;
  right: 1px;
  border-radius: 0.4rem;
  background: #f4f4f4;
}
.fancy-button:hover {
  color: #fff !important;
  animation: fancy-button-glow 2s ease;
  animation-iteration-count: 1;
}
.fancy-button:hover:after {
  display: none;
}
.dark .fancy-button {
  color: #fff;
}
.dark .fancy-button.outline:after {
  background: #000;
}
.dark .fancy-button.solid {
  color: #000;
}
.dark .fancy-button.solid:after {
  background: rgb(231.25, 231.25, 231.25);
}

.button {
  border-radius: 1.3rem;
  height: 2.6rem;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 1.3rem;
  font-size: 0.9rem;
  text-decoration: none;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  background: #101010;
  color: #fff;
  transition: background 200ms, color 200ms;
  border: 0;
  cursor: pointer;
  white-space: nowrap;
}
.button.square {
  border-radius: 0.25rem;
  padding: 0 1.1rem;
}

.instagram-feed .heading {
  text-align: center;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  font-size: 1.5rem;
  line-height: 200%;
  margin-bottom: 1.5rem;
}
.instagram-feed .heading a {
  color: inherit;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.instagram-feed .heading a svg {
  margin-right: 0.5rem;
  width: 2rem;
  height: auto;
}
.instagram-feed .cta {
  margin-top: 2.5rem;
}

.form .field-container {
  margin-bottom: 1.5rem;
}
.form .field-group {
  display: flex;
  margin: 0 -1rem;
}
.form .field-group .field-container {
  flex: 1 1 0;
  margin-left: 1rem;
  margin-right: 1rem;
}
.form label {
  display: block;
  font-weight: 460;
  margin-bottom: 0.5rem;
}
.form .field-container.required label::after {
  content: " *";
  color: #fa4b50;
}
.form select,
.form textarea,
.form input[type=text],
.form input[type=email] {
  box-sizing: border-box;
  width: 100%;
  padding: 0.6rem;
  background: #fff;
  border: 1px solid rgb(205.75, 205.75, 205.75);
  font-family: Inter, helvetica, sans-serif;
  font-size: 1rem;
  border-radius: 0.25rem;
}
.form .submit {
  text-align: right;
}
@media (max-width: 768px) {
  .form .field-group {
    display: block;
  }
}

.social-icons {
  display: flex;
  gap: 0.5rem;
}
.social-icons li svg {
  transition: transform 300ms;
  width: 2rem;
  height: auto;
}
.social-icons li svg:hover {
  transform: translate(0, -4px);
}

.information {
  background: rgb(231.25, 231.25, 231.25);
  padding: 3rem;
  border-radius: 0.25rem;
  margin: 6rem 0;
}

.teamtailor-jobs__job-wrapper,
.job-list {
  margin-bottom: 1.5rem;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job,
.teamtailor-jobs__job-wrapper li,
.job-list .teamtailor-jobs__job,
.job-list li {
  position: relative;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job:not(:last-child),
.teamtailor-jobs__job-wrapper li:not(:last-child),
.job-list .teamtailor-jobs__job:not(:last-child),
.job-list li:not(:last-child) {
  margin-bottom: 0.4rem;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job .teamtailor-jobs__job-info,
.teamtailor-jobs__job-wrapper li .teamtailor-jobs__job-info,
.job-list .teamtailor-jobs__job .teamtailor-jobs__job-info,
.job-list li .teamtailor-jobs__job-info {
  display: none;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job a,
.teamtailor-jobs__job-wrapper li a,
.job-list .teamtailor-jobs__job a,
.job-list li a {
  display: flex;
  align-items: center;
  text-decoration: none;
  padding: 1.2rem 1.4rem;
  line-height: 150%;
  background: #fff;
  color: #101010;
  position: relative;
  border-radius: 0.25rem;
  transition: color 400ms, background 400ms, transform 250ms;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job a:hover,
.teamtailor-jobs__job-wrapper li a:hover,
.job-list .teamtailor-jobs__job a:hover,
.job-list li a:hover {
  background: #465afa;
  color: #fff;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job a::after,
.teamtailor-jobs__job-wrapper li a::after,
.job-list .teamtailor-jobs__job a::after,
.job-list li a::after {
  content: "➝";
  font-size: 1.4rem;
  font-weight: normal;
  position: absolute;
  right: 1.4rem;
  top: 50%;
  transform: translate(0, -50%);
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job a .title,
.teamtailor-jobs__job-wrapper li a .title,
.job-list .teamtailor-jobs__job a .title,
.job-list li a .title {
  width: 55%;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.teamtailor-jobs__job-wrapper .teamtailor-jobs__job a .location,
.teamtailor-jobs__job-wrapper li a .location,
.job-list .teamtailor-jobs__job a .location,
.job-list li a .location {
  font-weight: normal;
  padding-left: 1rem;
}
@media (max-width: 640px) {
  .teamtailor-jobs__job-wrapper li a,
  .job-list li a {
    display: block;
  }
  .teamtailor-jobs__job-wrapper li a .title,
  .teamtailor-jobs__job-wrapper li a .location,
  .job-list li a .title,
  .job-list li a .location {
    width: 90%;
    display: block;
    padding: 0;
  }
}

.map {
  width: 100%;
  height: 100%;
}

.form-content .success {
  display: none;
  font-size: 1.2rem;
  text-align: center;
  font-weight: 460;
}

.accordion .item .title {
  padding: 1rem 0;
  line-height: 130%;
  font-size: 1.2rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.accordion .item .title::after {
  content: "+";
  font-size: 1.4rem;
  font-weight: 410;
}
.accordion .item .body {
  line-height: 150%;
  overflow: hidden;
  transition-property: height, visibility;
  transition-timing-function: ease;
  visibility: hidden;
}
.accordion .item:not(:last-child) {
  border-bottom: 1px solid rgb(218.5, 218.5, 218.5);
}
.accordion .item.is-active .title::after {
  content: "–";
}
.accordion .item.is-active .body {
  visibility: visible;
  margin-bottom: 1.5rem;
}
section.container.dark .accordion .item {
  border-color: #444 !important;
}

.cascade {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
.two-col-content .cascade {
  grid-template-columns: repeat(1, 1fr);
}
.cascade .item .title {
  line-height: 130%;
  font-size: 1.2rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  margin-bottom: 1rem;
}
.cascade .item .body p,
.cascade .item .body {
  line-height: 150%;
  font-size: 1.1rem;
}
@media (max-width: 768px) {
  .cascade {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .cascade {
    grid-template-columns: repeat(1, 1fr);
  }
}

.entry .label {
  border-radius: 0.9rem;
  height: 1.8rem;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
  text-decoration: none;
  font-size: 0.9rem;
  color: #c369fa !important;
  background: rgba(195, 105, 250, 0.1);
}

.entry-toc {
  font-size: 1.2rem;
  column-count: 2;
  column-gap: 4rem;
}
.entry-toc a {
  color: inherit;
}
.entry-toc > ul {
  margin-bottom: 3rem;
  break-inside: avoid;
}
.entry-toc > ul > li {
  margin-bottom: 1rem;
  line-height: 140%;
}
.entry-toc > ul > li > a {
  text-decoration: none;
}
.entry-toc > ul > li > a:hover {
  text-decoration: underline;
}
.entry-toc > ul > li ul > li {
  margin-bottom: 0.5rem;
}
.entry-toc > ul > li ul > li > a {
  text-decoration: none;
}
.entry-toc > ul > li ul > li > a:hover {
  text-decoration: underline;
}
.entry-toc .grouper {
  font-size: 1.6rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
}
.entry-toc .entries .meta {
  color: #9a9ca5;
  font-size: 0.9rem;
  display: flex;
}
.entry-toc .entries .meta > span {
  margin-right: 0.7rem;
}
@media (max-width: 768px) {
  .entry-toc {
    columns: 1;
  }
}

.entry-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 1fr;
  grid-gap: 2rem;
}
.entry-list .entry {
  height: 25rem;
  background: #fff;
  border-radius: 0.25rem;
  text-decoration: none;
  color: inherit;
  transition: color 400ms, background 400ms, transform 250ms;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.entry-list .entry:hover {
  transform: translateY(-0.5rem);
}
.entry-list .entry .info {
  padding: 1.8rem;
  display: flex;
  flex-direction: column;
  flex: 0;
}
.entry-list .entry .info .header {
  margin-bottom: 1rem;
}
.entry-list .entry .info .content {
  flex: 1 100%;
}
.entry-list .entry .info .content .title {
  font-size: 1.3rem;
  line-height: 140%;
  margin-bottom: 0.5rem;
  font-weight: 460;
  font-family: Inter, helvetica, sans-serif;
  text-decoration: none;
}
.entry-list .entry .info .footer {
  margin-top: 1rem;
  opacity: 0.5;
  display: flex;
  justify-content: space-between;
}
.entry-list .cover {
  flex: 1;
  clip-path: polygon(0% 6%, 100% 0%, 100% 100%, 0% 100%);
  background-size: cover;
  background-position: center center;
}
@media (max-width: 1024px) {
  .entry-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .entry-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
body.dark .entry-list .entry {
  background: rgb(12.75, 12.75, 12.75);
  color: #fff;
}

.entry-preview .entry {
  display: table;
  width: 100%;
  table-layout: fixed;
  box-sizing: border-box;
}
.entry-preview .entry:not(.with-cover) {
  background: rgb(231.25, 231.25, 231.25);
  border-radius: 0.25rem;
}
.entry-preview .entry > * {
  display: table-cell;
  vertical-align: middle;
}
.entry-preview .entry .cover img {
  width: 100%;
  height: auto;
  border-radius: 0.125rem;
}
.entry-preview .entry .info {
  padding: 2rem;
  padding-bottom: 0;
}
.entry-preview .entry .info .pre-title {
  text-transform: uppercase;
  color: #465afa;
  margin-bottom: 0.5rem;
  font-size: 0.9rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
}
.entry-preview .entry .info .title {
  font-size: 2rem;
  line-height: 150%;
  margin-bottom: 0.5rem;
  text-align: left;
}
.entry-preview .entry .info .title a {
  text-decoration: none;
  color: #101010;
  color: inherit;
  font-weight: 820;
}
.entry-preview .entry .info .intro {
  margin-bottom: 1rem;
}
.entry-preview .entry .info .meta {
  color: #5b5675;
  font-size: 0.9rem;
  margin-bottom: 1rem;
  line-height: 150%;
}
.entry-preview .entry .info .meta a {
  color: #101010;
  text-decoration: none;
}
.entry-preview .entry .info .read {
  line-height: 150%;
}
@media (max-width: 768px) {
  .entry-preview .entry.with-cover {
    display: block;
  }
  .entry-preview .entry.with-cover > * {
    display: block;
  }
}
@media (max-width: 640px) {
  .entry-preview.preview {
    margin: -1rem;
  }
  .entry-preview.preview .entry {
    padding: 0 1rem;
  }
  .entry-preview.preview .entry .info {
    padding: 1rem;
  }
  .entry-preview.preview .entry .info .title {
    font-size: 1.2rem;
  }
}
@media (max-width: 530px) {
  .entry-preview.preview .entry {
    width: 100%;
  }
}

.tag {
  color: #101010;
  display: inline-block;
  font-family: "Liberation Mono", monospace;
  font-weight: normal;
  text-decoration: none;
  margin: 0.25rem 0.25rem;
}
a.tag {
  padding: 0.5rem 0.6rem;
  border-radius: 0.25rem;
  background-color: rgb(231.25, 231.25, 231.25);
  color: #101010;
}

.dark .tag {
  background: rgb(20.4, 20.4, 20.4);
  color: rgb(181.8798076923, 195.9114010989, 214.6201923077);
}

.cta {
  text-align: center;
  margin: 3rem 0;
}
.cta.left {
  text-align: left;
}

.cta-box {
  background-image: linear-gradient(to right, transparent 20%, rgb(222, 224.75, 254)), linear-gradient(to bottom, rgb(240.4196428571, 220.4508928571, 254.0491071429), rgb(203.5, 223.3896551724, 244.7));
  background-repeat: no-repeat;
  background-size: cover;
  padding: 3rem;
  border-radius: 0.25rem;
}

.codehilite {
  border-radius: 0.25rem;
}

.bullet-list {
  margin: 1.25rem 0;
}
.bullet-list li {
  font-size: 1em;
  line-height: 150%;
  margin-bottom: 0.75rem;
  padding-left: 1.7rem;
  position: relative;
}
.bullet-list li:before {
  content: url(/static/images/icons/check.svg?a78bb2601854);
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  left: 0;
  top: 0.15rem;
}
.bullet-list.pink li:before {
  content: url(/static/images/icons/check-pink.svg?a78bb2601854);
}
.bullet-list.indigo li:before {
  content: url(/static/images/icons/check-indigo.svg?a78bb2601854);
}
.bullet-list.purple li:before {
  content: url(/static/images/icons/check-purple.svg?a78bb2601854);
}
.bullet-list.blue li:before {
  content: url(/static/images/icons/check-blue.svg?a78bb2601854);
}

.sharing {
  display: flex;
  gap: 0.5rem;
}
.sharing a {
  display: block;
  color: inherit;
  color: inherit;
}
.sharing a svg {
  transition: transform 300ms;
  width: 2rem;
  height: auto;
}
.sharing a svg:hover {
  transform: translate(0, -4px);
}

.area-name {
  display: inline-block;
  color: #fff;
  background: linear-gradient(60deg, #41affa, #7d64fa);
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  text-transform: uppercase;
  padding: 0.4rem 0.5rem;
  border-radius: 0.2rem;
  font-size: 0.75rem;
  text-decoration: none;
}
.area-name:is(a):hover {
  text-decoration: underline;
}
.area-name.area-design-and-product {
  background-image: linear-gradient(60deg, #7d64fa, #c369fa);
}
.area-name.area-inside-helicon {
  background-image: linear-gradient(20deg, #7d64fa, #41affa);
}
.area-name.area-tech-notes {
  background-image: linear-gradient(30deg, #c369fa, #465afa);
}
.area-name.area-energy-and-business {
  background-image: linear-gradient(60deg, #ffd75a -20%, #c369fa 15%, #7d64fa);
}
.area-name.area-engineering {
  background-image: linear-gradient(60deg, #41affa, #7d64fa);
}
.area-name.light.area-design-and-product {
  background: rgb(240.4196428571, 220.4508928571, 254.0491071429);
  color: #c369fa;
}
.area-name.light.area-inside-helicon {
  background: rgba(125, 100, 250, 0.15);
  color: #7d64fa;
}
.area-name.light.area-tech-notes {
  background: rgba(70, 90, 250, 0.15);
  color: rgb(103.0539473684, 118.5419590643, 242.4460526316);
}
.area-name.light.area-energy-and-business {
  background: rgba(13.9, 125.1, 99.5, 0.15);
  color: rgb(5.55, 31.45, 25.4874100719);
}
.area-name.light.area-engineering {
  background: linear-gradient(60deg, #41affa, #7d64fa);
  background: rgba(65, 175, 250, 0.15);
  color: rgb(52.2076923077, 147.0958419958, 211.7923076923);
}
.area-name.plain {
  background: none;
  padding: 0;
}
.area-name.plain.area-design-and-product {
  color: #c369fa;
}
.area-name.plain.area-inside-helicon {
  color: #7d64fa;
}
.area-name.plain.area-tech-notes {
  color: #465afa;
}
.area-name.plain.area-energy-and-business {
  color: #41affa;
}
.area-name.plain.area-engineering {
  color: rgb(0, 88, 67.7410071942);
}
.area-name.simple {
  color: transparent;
  background-clip: text;
  padding: 0;
}

.center-left {
  padding-left: calc((100vw - (1440px - 12rem)) / 2);
}
@media (max-width: 1440px) {
  .center-left {
    padding-left: 6rem;
  }
}
@media (max-width: 768px) {
  .center-left {
    padding-left: 1.4rem;
  }
  .center-left .left {
    max-width: calc(100vw - 1.4rem);
  }
}

.client-wrapper .client-list {
  display: flex;
  gap: 1.5rem;
  overflow: hidden;
  justify-content: space-between;
  flex-wrap: wrap;
}
.client-wrapper .client-list li {
  position: relative;
  align-items: center;
  justify-content: center;
  display: flex;
  flex-direction: column;
  height: 3rem;
  opacity: 0.6;
}
.client-wrapper .client-list svg {
  display: block;
  height: 100%;
  width: auto;
  margin: 0 auto;
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  .client-wrapper .client-list li {
    height: 2.5rem;
  }
}
@media (max-width: 640px) {
  .client-wrapper .client-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.all-clients {
  overflow: hidden;
}
.all-clients .client-list {
  display: grid;
  grid-template-columns: repeat(12, 12vw);
  gap: 2rem;
}
.all-clients .client-list.to-right {
  transform: translateX(-50vw);
}
.all-clients .client-list li {
  position: relative;
  align-items: center;
  justify-content: center;
  display: flex;
  flex-direction: column;
  height: 5rem;
  opacity: 0.6;
}
.all-clients .client-list svg {
  display: block;
  width: 100%;
  margin: 0 auto;
  height: auto;
  max-width: 9.5rem;
}
@media (max-width: 768px) {
  .all-clients .client-list {
    grid-template-columns: repeat(12, 8rem);
  }
  .all-clients .client-list.to-right {
    transform: translateX(-56rem);
  }
}

.clients-marquee {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  overflow: hidden;
}
.clients-marquee li {
  position: relative;
  align-items: center;
  justify-content: center;
  display: flex;
  flex-direction: column;
  height: 5rem;
  opacity: 0.6;
}
.clients-marquee svg {
  display: block;
  width: 100%;
  margin: 0 auto;
  height: auto;
  max-width: 9.5rem;
}

.heading .no-margin, .heading:not(:last-child) {
  margin-bottom: 2rem;
}
.heading .pre-title {
  font-weight: 690;
  letter-spacing: -0.02rem;
  margin-bottom: 0.5rem;
  opacity: 0.5;
}
.heading .sub-title {
  font-weight: 460;
  margin-bottom: 0.5rem;
  max-width: 35rem;
  margin: 0 auto;
  letter-spacing: -0.015em;
  text-align: center;
  line-height: 135%;
  font-size: 1.2rem;
}
.heading .sub-title:not(:first-child) {
  margin-top: 1.5rem;
}
.heading .sub-title a {
  color: inherit;
}
.heading .title {
  font-size: 2.3rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  max-width: 35rem;
  margin: 0 auto;
  letter-spacing: -0.03em;
  line-height: 115%;
  text-align: center;
}
.heading .title.bold {
  font-weight: 820;
}
.heading .title.semi {
  font-weight: 690;
}
.heading .title a {
  color: inherit;
}
.heading .title.x-small {
  font-size: 1.1rem;
  line-height: 120%;
}
.heading .title.small {
  font-size: 1.6rem;
  line-height: 120%;
}
.heading .title.medium {
  font-size: 2rem;
  line-height: 120%;
}
.heading .title.large {
  font-size: 3rem;
}
.heading .title.x-large {
  font-size: 3.6rem;
}
.heading.wide .title {
  max-width: 45rem;
}
.heading.left .narrow-title,
.heading.left .sub-title,
.heading.left .title {
  margin-left: 0;
  margin-right: 0;
  text-align: left;
}
@media (max-width: 768px) {
  .heading .title.large {
    font-size: 3rem;
  }
}

.case-container {
  position: relative;
}
@media (min-width: 768px) {
  .case-container .case-image-left {
    position: absolute;
    left: 0;
    top: 0;
    width: calc(50% - 2rem);
    height: 100%;
    object-fit: cover;
  }
  .case-container .case-image-left img {
    height: 100%;
    border-radius: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    object-fit: cover;
  }
}
.case-container .case-image-full {
  z-index: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.case-container .case-image-full img {
  height: 100%;
  border-radius: 0;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  object-fit: cover;
}
.case-container.kr-case-container {
  overflow: hidden;
}
.case-container.kr-case-container .content {
  position: relative;
}
.case-container.kr-case-container .content .case-image-full img {
  object-position: bottom center;
}
@media (min-width: 768px) {
  .case-container.kr-case-container .right .one-image img {
    transform: translateX(-5%);
    width: 120%;
    height: 120%;
  }
}
.case-container .case-buttons {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.case-container .case-logo {
  margin-bottom: 1rem;
}
.case-container .case-logo svg {
  width: 100%;
  height: auto;
}
.case-container .case-logo.se {
  max-width: 7.5rem;
}
.case-container .case-logo.hitachi {
  max-width: 7rem;
  opacity: 0.6;
}
.case-container .case-logo.polarium {
  max-width: 6rem;
}
.case-container .case-logo.kr {
  max-width: 9rem;
}

.two-col-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}
.two-col-content.extra-spacing {
  gap: 4rem;
}
.two-col-content.align-bottom {
  align-items: end;
}
.two-col-content.align-center {
  align-items: center;
}
.two-col-content .left .text-box,
.two-col-content .left .heading-new {
  padding-right: 2rem;
}
@media (max-width: 768px) {
  .two-col-content {
    gap: 2rem;
    grid-template-columns: 1fr;
  }
  .two-col-content .first {
    grid-row: 1;
  }
}

.three-col-content {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
  align-items: start;
}
.three-col-content.extra-spacing {
  gap: 4rem;
}
.three-col-content.align-bottom {
  align-items: end;
}
.three-col-content.align-center {
  align-items: center;
}
@media (max-width: 768px) {
  .three-col-content {
    gap: 2rem;
    grid-template-columns: 1fr;
  }
}

.navigation .nav-item {
  background: #e0e0e0;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 1.1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  line-height: normal;
  font-weight: 460;
  font-size: 1.2rem;
  user-select: none;
}
.navigation .nav-item svg {
  height: 0.6rem;
  width: auto;
}
.navigation .nav-item svg path {
  stroke-width: 1.7;
}
.navigation .nav-item.swiper-button-disabled {
  opacity: 0.5;
  cursor: default;
}

.horizontal {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.horizontal.align-center {
  justify-content: center;
}
.horizontal.align-right {
  justify-content: end;
}
@media (max-width: 768px) {
  .horizontal.align-right-on-mobile {
    justify-content: end;
    padding-right: 1.4rem;
  }
}

.text-box:not(.no-margin):not(:last-child) {
  margin-bottom: 2rem;
}
.text-box:not(.no-margin):not(:last-child).reduced-margin {
  margin-bottom: 1rem;
}
.text-box a {
  text-decoration: underline;
}
.text-box.small p {
  font-size: 0.9rem;
}
.text-box.medium p {
  font-size: 1.3rem;
}
.text-box.large p {
  font-size: 1.4rem;
}
.text-box.wrap {
  max-width: 40rem;
}
.text-box.narrow-wrap {
  max-width: 30rem;
}
.text-box.muted {
  opacity: 0.9;
}
.text-box.faded {
  opacity: 0.8;
}
.text-box b,
.text-box strong {
  font-weight: 460;
}
.text-box ul {
  padding-left: 1rem;
  list-style-type: disc;
}
.text-box ul:not(:last-child) {
  margin-bottom: 1.5rem;
}
.text-box ul:not(:first-child) {
  margin-top: 1.5rem;
}
.text-box li,
.text-box p {
  line-height: 150%;
  margin: 0;
}
.text-box li:not(:last-child):is(p),
.text-box p:not(:last-child):is(p) {
  margin-bottom: 1.5rem;
}
.text-box li:not(:last-child):is(li),
.text-box p:not(:last-child):is(li) {
  margin-bottom: 1rem;
}
.text-box li b,
.text-box li strong,
.text-box p b,
.text-box p strong {
  font-weight: 690;
}

.testimonial-container .testimonials {
  display: flex;
}

.testimonial {
  flex-shrink: 0;
  box-sizing: border-box;
  width: calc(100% - 1.4rem);
  max-width: 35rem;
  flex-shrink: 0;
  padding: 2.8rem 2rem 2rem;
  background: #fff;
  background: rgb(231.25, 231.25, 231.25);
  border-radius: 0.25rem;
  margin-right: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.testimonial.pink:before {
  color: #d192fc;
}
.testimonial.purple:before {
  color: #9382fb;
}
.testimonial .quote {
  font-size: 1.2rem;
  font-family: Inter, helvetica, sans-serif;
  line-height: 150%;
  margin-bottom: 2rem;
}
.testimonial .quote.pink:before {
  color: #d192fc;
}
.testimonial .quote.purple:before {
  color: #9382fb;
}
.testimonial .quote:before {
  font-style: normal;
  display: block;
  content: "“";
  color: #7b86fb;
  font-family: georgia;
  font-weight: bold;
  font-size: 3.8rem;
  margin-bottom: 0.5rem;
}
.testimonial .quotee {
  display: flex;
  align-items: center;
}
.testimonial .quotee .photo {
  width: 3.6rem;
}
.testimonial .quotee .photo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 50%;
}
.testimonial .quotee .bio {
  line-height: 150%;
  padding-left: 1rem;
}
.testimonial .quotee .bio .name {
  font-size: 1rem;
  font-weight: 690;
}
.testimonial .quotee .bio .position {
  opacity: 0.6;
  font-size: 0.9rem;
}
.testimonial .quotee .bio .company {
  font-weight: 460;
}
@media (max-width: 640px) {
  .testimonial {
    padding: 1.8rem;
  }
  .testimonial .quote {
    font-size: 1.2rem;
  }
  .testimonial .quote:before {
    padding-top: 0.6rem;
    font-size: 3rem;
  }
}

.link-cluster {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.special-link,
.link-cluster a {
  font-weight: 460;
  color: inherit;
  text-decoration: none;
  display: inline-block;
  position: relative;
  padding: calc(0.5rem + 2px) 0 0.5rem;
}
.special-link span,
.link-cluster a span {
  gap: 0.4rem;
  display: flex;
  align-items: center;
}
.special-link svg,
.link-cluster a svg {
  height: 0.6em;
  width: auto;
}
.special-link svg path,
.link-cluster a svg path {
  stroke-width: 1.7;
}
.special-link.large,
.link-cluster a.large {
  font-size: 1.6rem;
  font-weight: 690;
}
.special-link.large svg,
.link-cluster a.large svg {
  height: 0.5em;
}
.special-link::after,
.link-cluster a::after {
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  background: #101010;
  right: 0;
  bottom: 0;
  width: 0;
  transition: width 300ms ease-in-out;
  transform-origin: 0 100%;
}
.special-link.perma-line::before,
.link-cluster a.perma-line::before {
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  background: #101010;
  left: 0;
  bottom: 0;
  width: 100%;
  opacity: 0.2;
}
.special-link-trigger:hover .special-link:after, .special-link:hover:after,
.special-link-trigger:hover .link-cluster a:after,
.link-cluster a:hover:after {
  width: 100%;
  left: 0;
  right: auto;
  transform: translate(0, 0);
}
section.container.dark .special-link::after,
section.container.dark .link-cluster a::after {
  background: #ffffff;
}

.metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 2rem;
}
.metrics .number-wrapper {
  display: flex;
  flex-direction: column;
}
.metrics .number-wrapper .intro {
  line-height: 140%;
  margin-top: 2rem;
}
.metrics .number-wrapper .intro::before {
  content: "";
  height: 1px;
  width: 100%;
  display: block;
  background: rgb(218.5, 218.5, 218.5);
  margin-bottom: 2rem;
}
.metrics .number-wrapper .number .value {
  font-family: Inter, helvetica, sans-serif;
  font-weight: 820;
  font-size: 2.6rem;
}
.metrics .number-wrapper .number .unit {
  margin-top: 0.5rem;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  opacity: 0.7;
  display: flex;
  align-items: center;
  line-height: 1.3;
}
.metrics .number-wrapper .number .unit .info {
  display: block;
  cursor: default;
  padding: 0.5rem;
}
@media (max-width: 768px) {
  .metrics {
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem 1rem;
  }
}
@media (max-width: 640px) {
  .metrics {
    grid-template-columns: 1fr;
  }
  .metrics .number-wrapper .number .value {
    font-size: 3rem;
  }
}

.cases {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
.cases .case {
  text-decoration: none;
  color: inherit;
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-areas: "first second";
  gap: 4rem;
}
.cases .case:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -3rem;
  left: 0;
  height: 1px;
  width: 100%;
  background: #ddd;
}
.cases .case .cover {
  overflow: hidden;
  position: relative;
  border-radius: 0.25rem;
  grid-area: second;
}
.cases .case .cover img {
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: transform 500ms;
}
.cases .case .body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.cases .case .body .logo {
  height: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  margin-bottom: 1rem;
}
.cases .case .body .logo img {
  width: auto;
  height: 100%;
  display: block;
}
.cases .case .body .logo.ferro img {
  max-height: 1.8rem;
}
.cases .case .body .logo.polarium img {
  max-height: 1.6rem;
}
.cases .case .body .logo.abb img {
  max-height: 1.3rem;
}
.cases .case .body .logo.kr img {
  max-height: 1.4rem;
}
.cases .case .body .logo.hitachi img {
  max-height: 1.1rem;
}
.cases .case .body .name {
  font-family: Inter, helvetica, sans-serif;
  font-weight: 690;
  margin-bottom: 0.5rem;
  font-size: 1.3rem;
  line-height: 120%;
}
.cases .case .body p {
  line-height: 150%;
  font-size: 1.4rem;
  font-weight: 460;
}
.cases .case .body .footer {
  margin-top: auto;
}
.cases .case:hover .cover img {
  transform: scale(1.1);
}
@media (max-width: 768px) {
  .cases .case {
    grid-template-columns: 1fr;
    gap: 2rem;
    grid-template-areas: "second" "first";
  }
}

.cta-container {
  position: relative;
}
.cta-container::after {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  background: linear-gradient(30deg, rgba(0, 0, 10, 0.8), rgba(0, 0, 0, 0) 60%);
  z-index: 0;
}
.cta-container video {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cta-container .content {
  position: relative;
  z-index: 1;
  padding-top: 8rem;
}

.two-images {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.two-images img {
  width: 100%;
  height: auto;
  border-radius: 0.25rem;
}

.one-image {
  border-radius: 0.25rem;
}
.one-image.with-zoom {
  overflow: hidden;
}
.one-image img {
  width: 100%;
  height: auto;
}
.one-image.sixteen-nine picture, .one-image.four-three picture, .one-image.square picture {
  position: relative;
  width: 100%;
  display: block;
}
.one-image.sixteen-nine picture img, .one-image.four-three picture img, .one-image.square picture img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.one-image.sixteen-nine picture {
  padding-top: 56.25%;
}
.one-image.four-three picture {
  padding-top: 75%;
}
.one-image.square picture {
  padding-top: 100%;
}
.one-image.with-cta {
  position: relative;
}
.one-image.with-cta .heading {
  position: absolute;
  z-index: 1;
  top: 2rem;
  left: 2rem;
}

.video {
  padding-top: 56.25%;
  position: relative;
}
.video iframe {
  border-radius: 0.25rem;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map-container {
  height: 18rem;
  width: 100%;
  margin-bottom: 1.5rem;
  border-radius: 0.25rem;
  overflow: hidden;
}

img.bw {
  filter: grayscale(1);
}

img.tmp-bw {
  transition: filter 0.5s ease;
  filter: grayscale(100%);
}

.box-list {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  gap: 0.75rem;
}
.box-list li {
  white-space: nowrap;
  background: #fff;
  font-weight: 460;
  font-size: 0.9rem;
  padding: 0.5rem;
  border-radius: 0.25rem;
}
.box-list:not(:last-child) {
  margin-bottom: 2rem;
}

.side-list {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.side-list .row {
  display: grid;
  grid-template-columns: 20rem auto;
  gap: 2rem;
  position: relative;
}
.side-list .row:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -2rem;
  height: 1px;
  width: 100%;
  background: #ddd;
}
@media (max-width: 768px) {
  .side-list .row {
    grid-template-columns: auto;
  }
}

@keyframes purple-to-pink-to-indigo {
  0% {
    background-color: #9382fb;
  }
  25% {
    background-color: #d192fc;
  }
  50% {
    background-color: #7b86fb;
  }
  75% {
    background-color: #d192fc;
  }
  100% {
    background-color: #9382fb;
  }
}
.heading .title,
.hero-title {
  position: relative;
  z-index: 0;
}
.heading .title span,
.hero-title span {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  --underline-width: 0%;
}
.heading .title span::before,
.hero-title span::before {
  z-index: -1;
  height: 33%;
  position: absolute;
  bottom: 0;
  left: 0;
  width: var(--underline-width);
  content: "";
  background: #9382fb;
  transform: rotate(-0.1deg);
  opacity: 0.4;
}
.heading .title span.indigo::before,
.hero-title span.indigo::before {
  background: #7b86fb;
}
.heading .title span.blue::before,
.hero-title span.blue::before {
  background: #6ea6e2;
}
.heading .title span.pink::before,
.hero-title span.pink::before {
  background: #d192fc;
}

.hero-title {
  line-height: 110%;
  letter-spacing: -0.06rem;
  font-size: 4.6vw;
  font-weight: 690;
  margin-bottom: 1rem;
}
@media (max-width: 1024px) {
  .hero-title {
    font-size: 7vw;
  }
  .hero-title br {
    display: none;
  }
}
@media (max-width: 768px) {
  .hero-title {
    font-size: 6.3vw;
    font-size: 9vw;
  }
}
@media (max-width: 640px) {
  .hero-title {
    font-size: 8.9vw;
  }
}
@media (min-width: 1440px) {
  .hero-title {
    font-size: 3.6rem;
  }
}
@media (min-width: 1600px) {
  .hero-title {
    font-size: 3.4rem;
  }
}

.panel {
  padding: 2.5rem 2rem;
  border-radius: 0.25rem;
  background: #fff;
}

.check-list {
  font-weight: 460;
}
.check-list .title {
  font-weight: 690;
  margin-bottom: 2rem;
  font-size: 1.1rem;
}
.check-list ul li {
  display: flex;
  gap: 0.5rem;
  line-height: 130%;
  font-size: 1.1rem;
}
.check-list ul li:not(:last-child) {
  margin-bottom: 1.5rem;
}
.check-list ul li::before {
  content: "→ ";
}

.brand-assets-container .brand-assets {
  display: flex;
}
.brand-assets-container .brand-assets img {
  display: block;
  height: 25rem;
  width: auto;
  margin-right: 1rem;
}

.regular-form div:not(:last-child) {
  margin-bottom: 1.5rem;
}
.regular-form div textarea,
.regular-form div input:not([type=button]) {
  width: 100%;
  box-sizing: border-box;
  font-family: Inter, helvetica, sans-serif;
  font-size: 1rem;
  border: 0;
  background: transparent;
}
.regular-form div label {
  display: block;
  background: #fff;
  border: 1px solid rgb(218.5, 218.5, 218.5);
  border-radius: 0.25rem;
  position: relative;
  line-height: normal;
}
.regular-form div label .label {
  position: absolute;
  top: 1.2rem;
  left: 1rem;
  transition: all 0.2s ease;
  transform-origin: left center 0px;
  opacity: 0.6;
  cursor: text;
  pointer-events: none;
}
.regular-form div label input,
.regular-form div label textarea {
  padding: 1.6rem 1rem 0.8rem;
}
.regular-form div label input::placeholder,
.regular-form div label textarea::placeholder {
  color: transparent;
}
.regular-form div label input:focus + .label, .regular-form div label input:not(:placeholder-shown) + .label,
.regular-form div label textarea:focus + .label,
.regular-form div label textarea:not(:placeholder-shown) + .label {
  transform: translateY(-0.9rem) scale(0.85);
}
.regular-form div.submit {
  display: flex;
  gap: 0.5rem;
  justify-content: end;
}

#klaro .title {
  font-weight: 690;
  letter-spacing: -0.05rem;
}
#klaro .cm-modal {
  background: #000;
  padding: 1rem;
}

body {
  background: #000;
}

.content-wrapper {
  background: #f4f4f4;
}

.main-header {
  position: relative;
}

.main-navigation-container {
  border-bottom: 1px solid #eee;
  position: relative;
  z-index: 5;
  transition-property: background-color, border-color;
  transition-duration: 0.25s;
  transition-timing-function: ease;
}
@media (max-width: 640px) {
  .main-navigation-container {
    padding: 2rem 0 2.4rem;
  }
}

.dark {
  border-color: black !important;
}

.main-navigation {
  font-family: Inter, helvetica, sans-serif;
  position: relative;
  display: flex;
  align-items: center;
}
.main-navigation a {
  text-decoration: none;
}
.main-navigation .logo {
  display: block;
  width: 9rem;
  margin-right: auto;
  color: inherit;
  z-index: 100;
  transition: color 250ms ease;
}
.main-navigation .logo svg {
  display: block;
  width: 100%;
  height: auto;
}
.main-navigation .logo svg path {
  fill: currentColor;
}
.main-navigation ul {
  display: flex;
  align-items: center;
  z-index: 1;
  position: relative;
}
.main-navigation ul li {
  margin-left: 2rem;
  overflow: hidden;
}
.main-navigation ul li.small-devices {
  display: none;
}
.main-navigation ul li.dropdown {
  position: relative;
  overflow: visible;
}
.main-navigation ul li.dropdown::before {
  content: "";
  position: absolute;
  left: -2rem;
  top: -2rem;
  bottom: -2rem;
  right: -2rem;
  display: none;
  cursor: poiner;
}
.main-navigation ul li.dropdown.active::before {
  display: block;
}
.main-navigation ul li .trigger {
  cursor: pointer;
}
.main-navigation ul li .trigger,
.main-navigation ul li > a:not(.button) {
  display: inline-block;
  padding: calc(0.5rem + 2px) 0 0.5rem;
  font-weight: 460;
  color: inherit;
}
.main-navigation ul li .trigger,
.main-navigation ul li > a:not(.button) {
  transition: all 300ms;
  position: relative;
  letter-spacing: -0.018em;
}
.main-navigation ul li .trigger::after,
.main-navigation ul li > a:not(.button)::after {
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  background: #101010;
  right: 0;
  bottom: 0;
  width: 0;
  transition: width 300ms ease-in-out;
}
.main-navigation ul li .trigger:hover, .main-navigation ul li.active .trigger,
.main-navigation ul li > a:not(.button):hover,
.main-navigation ul li > a:not(.button):active, .main-navigation ul li.active > a:not(.button) {
  color: #465afa;
}
.main-navigation ul li .trigger:hover:after, .main-navigation ul li.active .trigger:after,
.main-navigation ul li > a:not(.button):hover:after,
.main-navigation ul li > a:not(.button):active:after, .main-navigation ul li.active > a:not(.button):after {
  width: 100%;
  left: 0;
  right: auto;
  background: #465afa;
  transform: translate(0, 0);
  transform-origin: 0 100%;
}
.main-navigation .toggle-menu {
  height: 1.6rem;
  padding: 0.4rem;
  margin-left: 1.5rem;
  padding-left: 1.5rem;
  border-left: 1px solid #eee;
  color: inherit;
  transition: color 300ms ease-in-out, border-color 250ms ease;
  z-index: 100;
}
.main-navigation .toggle-menu svg {
  display: block;
  height: 100%;
  width: auto;
}
.main-navigation .toggle-menu:hover {
  color: #465afa;
}
@media (max-width: 768px) {
  .main-navigation ul {
    right: 1.8rem;
  }
}
@media (max-width: 640px) {
  .main-navigation > ul {
    display: none;
  }
  .main-navigation .toggle-menu {
    display: block;
  }
}
@media (max-width: 640px) {
  .main-navigation .logo {
    max-width: 10rem;
    width: 75%;
  }
}

.service-navigation {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  transition: transform 600ms ease;
  transform: translateY(-100%);
  z-index: 1;
}
.service-navigation .container {
  padding-bottom: 0;
  margin-top: -2rem;
}
.service-navigation .container .content {
  padding-top: 2.5rem;
  padding-bottom: 3rem;
}
.service-navigation.active {
  transform: translateY(0);
}

.mobile-navigation {
  position: fixed;
  display: none;
  z-index: 30000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #000;
  box-sizing: border-box;
  overflow: auto;
}
.mobile-navigation a {
  text-decoration: none;
}
.mobile-navigation header {
  position: absolute;
  top: 1.8rem;
  right: 1.8rem;
}
.mobile-navigation header .toggle-menu {
  margin-left: auto;
  font-size: 2.5rem;
  color: #fff;
}
.mobile-navigation ul {
  box-sizing: border-box;
  padding: 1.5rem 2rem;
  width: 100%;
  max-width: 50rem;
  margin: 0 auto;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
}
.mobile-navigation ul li {
  display: block;
}
.mobile-navigation ul li a {
  display: block;
  line-height: 120%;
  font-size: 3.5vh;
  color: #fff;
  padding: 0.5rem 1rem;
}
.mobile-navigation ul li.active a {
  color: #465afa;
}
.mobile-navigation ul li.back-home-link a, .mobile-navigation ul li.blog-link a, .mobile-navigation ul li.jobs-link a {
  font-size: 2.5vh;
  opacity: 0.8;
  padding: 0.5rem 1rem;
}

body.menu-open {
  overflow: hidden;
}
body.menu-open .mobile-navigation {
  display: block;
}

.pre-footer {
  display: none;
  text-align: center;
  font-size: 1.6rem;
  line-height: 150%;
  padding: 2rem 0;
}

.container.main-footer {
  position: relative;
  margin: 0 !important;
  padding: 6rem 0 !important;
  background: #000;
}
.container.main-footer .content {
  color: #ffffff;
  margin-bottom: 0;
}
.container.main-footer .footer-content {
  margin-bottom: 6rem;
  display: flex;
}
.container.main-footer .footer-content > * {
  flex: 1 1 25%;
}
.container.main-footer .footer-content li {
  margin-bottom: 0.5rem;
}
.container.main-footer .footer-content a {
  text-decoration: none;
  color: #ffffff;
  font-weight: normal;
}
.container.main-footer .footer-content li.active a {
  opacity: 1;
}
.container.main-footer .footer-content .logo {
  display: block;
  width: 3.5rem;
  position: relative;
}
.container.main-footer .footer-content .logo::before {
  content: "";
  position: absolute;
  transition: background 200ms, opacity 250ms;
  animation: super-button-glow 5s ease infinite;
  background: linear-gradient(40deg, #7b86fb, #9382fb, #d192fc);
  background-size: 300%;
  top: -0.8rem;
  bottom: -0.8rem;
  left: -0.8rem;
  right: -0.8rem;
  opacity: 0;
}
.container.main-footer .footer-content .logo svg {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
}
.container.main-footer .footer-content .logo svg path {
  fill: #fff !important;
  transition: fill 250ms;
}
.container.main-footer .footer-content .logo:hover::before {
  opacity: 1;
}
.container.main-footer .footer-content .logo:hover svg path {
  fill: #000 !important;
}
.container.main-footer .footer-content address li {
  line-height: 150%;
  margin-bottom: 0;
  opacity: 0.85;
}
.container.main-footer .footer-content address li:first-child {
  font-weight: 820;
  opacity: 1;
}
.container.main-footer .footer-content .vat {
  line-height: 150%;
  opacity: 0.85;
}
.container.main-footer .footer-aux .copyright {
  opacity: 0.7;
  text-align: center;
}
.container.main-footer .footer-aux .sub-links {
  margin-top: 0.5rem;
  text-align: center;
  font-size: 0.9rem;
}
.container.main-footer .footer-aux .sub-links a {
  color: inherit;
}
.container.main-footer .social-navigation {
  text-align: right;
  margin-left: auto;
}
.container.main-footer .social-navigation .social-icons {
  justify-content: end;
}
.container.main-footer .social-navigation .social-icons li {
  max-width: 2.3rem;
}
.dark .container.main-footer {
  background: black;
}
@media (max-width: 768px) {
  .container.main-footer .footer-content {
    flex-wrap: wrap;
  }
  .container.main-footer .footer-content > * {
    flex: 1 1 50%;
  }
  .container.main-footer .footer-content .branding {
    display: none;
  }
  .container.main-footer .footer-content .social-navigation {
    margin-top: 3rem;
    margin-bottom: 0;
    text-align: center;
  }
}

section.container.white {
  background: #fff;
  color: #101010;
  border-color: #e6e6e6;
}
section.container.white.with-border::before {
  background: #e6e6e6;
}
section.container.white .text-box.muted, section.container.white .text-box.faded {
  color: #434343;
}
section.container.white .service-boxes .service-box:not(:last-child)::after {
  background: #e6e6e6;
}
section.container.white .button {
  background: #000;
  color: #fff;
}
section.container.white .cases .case::after {
  background: #e6e6e6;
}
section.container.white .accordion .item {
  border-color: #e6e6e6;
}
section.container.white .super-button {
  color: #fff;
}
section.container.white .super-button::after {
  background: #000;
}
section.container.white .main-navigation .toggle-menu {
  border-color: #e6e6e6;
}
section.container.white .metrics .number-wrapper .intro::before {
  background: #e6e6e6;
}
section.container.white .heading .sub-title {
  color: #434343;
}
section.container.white .box-list li {
  background: #f2f2f2;
}
section.container.white .side-list .row::after {
  background: #e6e6e6;
}
section.container.light {
  background: #f4f4f4;
  color: #101010;
  border-color: #dddddd;
}
section.container.light.with-border::before {
  background: #dddddd;
}
section.container.light .text-box.muted, section.container.light .text-box.faded {
  color: rgb(77.2, 77.2, 77.2);
}
section.container.light .service-boxes .service-box:not(:last-child)::after {
  background: #dddddd;
}
section.container.light .button {
  background: #000;
  color: #fff;
}
section.container.light .cases .case::after {
  background: #dddddd;
}
section.container.light .accordion .item {
  border-color: #dddddd;
}
section.container.light .super-button {
  color: #fff;
}
section.container.light .super-button::after {
  background: #000;
}
section.container.light .main-navigation .toggle-menu {
  border-color: #dddddd;
}
section.container.light .metrics .number-wrapper .intro::before {
  background: #dddddd;
}
section.container.light .heading .sub-title {
  color: rgb(77.2, 77.2, 77.2);
}
section.container.light .box-list li {
  background: #fff;
}
section.container.light .side-list .row::after {
  background: #dddddd;
}
section.container.darker {
  background: rgb(238.9, 238.9, 238.9);
  color: #101010;
  border-color: #c9c9c9;
}
section.container.darker.with-border::before {
  background: #c9c9c9;
}
section.container.darker .text-box.muted, section.container.darker .text-box.faded {
  color: rgb(82.3, 82.3, 82.3);
}
section.container.darker .service-boxes .service-box:not(:last-child)::after {
  background: #c9c9c9;
}
section.container.darker .button {
  background: #000;
  color: #fff;
}
section.container.darker .cases .case::after {
  background: #c9c9c9;
}
section.container.darker .accordion .item {
  border-color: #c9c9c9;
}
section.container.darker .super-button {
  color: #fff;
}
section.container.darker .super-button::after {
  background: #000;
}
section.container.darker .main-navigation .toggle-menu {
  border-color: #c9c9c9;
}
section.container.darker .metrics .number-wrapper .intro::before {
  background: #c9c9c9;
}
section.container.darker .heading .sub-title {
  color: rgb(82.3, 82.3, 82.3);
}
section.container.darker .box-list li {
  background: #fff;
}
section.container.darker .side-list .row::after {
  background: #c9c9c9;
}
section.container.dark {
  background: #000;
  color: #fff;
  border-color: #363636;
}
section.container.dark.with-border::before {
  background: #363636;
}
section.container.dark .text-box.muted, section.container.dark .text-box.faded {
  color: rgb(216.75, 216.75, 216.75);
}
section.container.dark .service-boxes .service-box:not(:last-child)::after {
  background: #363636;
}
section.container.dark .button {
  background: #fff;
  color: #000;
}
section.container.dark .cases .case::after {
  background: #363636;
}
section.container.dark .accordion .item {
  border-color: #363636;
}
section.container.dark .super-button {
  color: #000;
}
section.container.dark .super-button::after {
  background: #fff;
}
section.container.dark .main-navigation .toggle-menu {
  border-color: #363636;
}
section.container.dark .metrics .number-wrapper .intro::before {
  background: #363636;
}
section.container.dark .heading .sub-title {
  color: rgb(216.75, 216.75, 216.75);
}
section.container.dark .box-list li {
  background: #222;
}
section.container.dark .side-list .row::after {
  background: #363636;
}

body.brand-body .display {
  grid-area: display;
}
body.brand-body .display img {
  width: 100%;
  height: auto;
}
body.brand-body .display.marks {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, 1fr);
}
body.brand-body .display.marks img {
  width: 100%;
  height: auto;
}
body.brand-body .display.colors {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: repeat(5, 1fr);
  color: #fff;
}
body.brand-body .display.colors.vibrant, body.brand-body .display.colors.soft {
  grid-template-columns: repeat(4, 1fr);
}
body.brand-body .display.colors.soft {
  color: #0f1e32;
}
body.brand-body .display.colors.tertiary {
  grid-template-columns: repeat(3, 1fr);
  color: #0f1e32;
}
body.brand-body .display.colors.tertiary .color {
  height: 10rem;
}
body.brand-body .display.colors .color {
  height: 20rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1rem;
}
body.brand-body .display.colors .color .color-info {
  line-height: 150%;
}
body.brand-body .display.gradients {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: 1fr;
  color: #fff;
}
body.brand-body .display.gradients .gradient {
  height: 6rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1rem;
}
body.brand-body .display.gradients .gradient .color-info {
  line-height: 150%;
}
body.brand-body .display.logos {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: 1fr 1fr;
}
body.brand-body .display.logos .logo {
  padding: 3rem;
}
body.brand-body .display.logos .logo.regular {
  background: #fff;
}
body.brand-body .display.logos .logo.inverted {
  background: #000000;
}
@media (max-width: 640px) {
  body.brand-body .display.logos {
    grid-template-columns: 1fr;
  }
  body.brand-body .display.colors.primary {
    grid-template-columns: repeat(2, 1fr);
  }
  body.brand-body .display.colors.vibrant, body.brand-body .display.colors.soft {
    grid-template-columns: repeat(2, 1fr);
  }
  body.brand-body .display.colors.tertiary {
    grid-template-columns: repeat(2, 1fr);
  }
}

.blog-body .main-navigation-container {
  padding: 0.8rem 0;
  margin-bottom: 5rem;
}

body pre.code code.hljs {
  background: transparent;
  padding: 0;
}

.blog-header-container {
  padding-top: 0;
}

.blog-body:not(.entry-detail-body) .blog-header-container {
  padding-bottom: 0;
}

.category-navigation {
  margin-bottom: 2.5rem;
}
.category-navigation ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.category-navigation ul li a {
  padding: 0.6rem 0.8rem;
  border-radius: 0.25rem;
  display: block;
  white-space: nowrap;
  text-decoration: none;
  color: inherit;
}
.category-navigation ul li.active a,
.category-navigation ul li a:hover {
  background: rgba(16, 16, 16, 0.1);
}
body.dark .category-navigation ul li.active a,
body.dark .category-navigation ul li a:hover {
  background: rgba(255, 255, 255, 0.1);
}

@keyframes bounce {
  0% {
    transform: translateY(-0.2rem);
    transform: rotate(-6deg);
  }
  100% {
    transform: translateY(0);
    transform: rotate(0);
  }
}
.blog-body .main-header .toggle-menu {
  display: none;
  margin-left: auto;
}
.blog-body .main-header .hero-title > .title {
  margin-bottom: 0;
}
.blog-body .main-header .blog-logos {
  display: flex;
  align-items: center;
}
.blog-body .main-header .blog-logos .toggle-menu {
  color: inherit;
}
.blog-body .main-header .blog-logos .toggle-menu svg {
  display: block;
  height: 1.6rem;
  width: auto;
}
.blog-body .main-header .blog-logos .helicon-logo,
.blog-body .main-header .blog-logos .planet-logo,
.blog-body .main-header .blog-logos .ca-logo {
  color: inherit;
}
.blog-body .main-header .blog-logos .planet-logo svg {
  width: 2.7rem;
  height: auto;
}
.blog-body .main-header .blog-logos .planet-logo svg:hover {
  animation: bounce 500ms ease-out;
  animation-iteration-count: 1;
}
.blog-body .main-header .blog-logos .sep {
  font-family: Inter, helvetica, sans-serif;
  font-size: 1.5rem;
  margin-left: 0.4rem;
  margin-right: 0.4rem;
  display: block;
  color: inherit;
  text-decoration: none;
  line-height: normal;
  color: rgb(95.1523076923, 117.9503296703, 148.3476923077);
}
.blog-body .main-header .blog-logos .blog-logo {
  font-family: Inter, helvetica, sans-serif;
  font-weight: 820;
  font-size: 1.5rem;
  color: inherit;
  text-decoration: none;
}
.blog-body .main-header .blog-logos .blog-logo:hover {
  text-decoration: underline;
}
.blog-body .main-header .blog-logos .ca-logo svg {
  width: 11.5rem;
  height: auto;
}
.blog-body .main-header .blog-logos .helicon-logo svg {
  width: 9rem;
  height: auto;
}
.blog-body .main-header .blog-logos .links {
  margin-left: auto;
  display: flex;
  align-items: center;
}
.blog-body .main-header .blog-logos .links li a {
  text-decoration: none;
  color: inherit;
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  display: block;
  padding: 0.5rem 0.6rem;
  border-radius: 0.2rem;
}
.blog-body .main-header .blog-logos .links li a:hover {
  text-decoration: underline;
}
.blog-body .main-header .blog-logos .links li.active a {
  opacity: 1;
  background: rgb(20.4, 20.4, 20.4);
  color: #fff;
}
.blog-body .main-header .blog-logos .links a.feed {
  padding: 0.45rem;
  color: inherit;
  border-radius: 0.3rem;
}
.blog-body .main-header .blog-logos .links a.feed svg {
  width: 1.2rem;
  height: 1.2rem;
}
.blog-body .main-header .blog-logos .links a.feed:hover {
  background: rgba(255, 255, 255, 0.1);
}
@media (max-width: 1024px) {
  .blog-body .main-header .toggle-menu {
    display: block;
  }
  .blog-body .main-header .blog-logos .links {
    display: none;
  }
}
@media (max-width: 1024px) {
  .blog-body .main-header .navigation-wrapper {
    margin-bottom: 2.5rem !important;
  }
}

body.entry-detail-body .main-header .area-name-box {
  margin-bottom: 0.5rem;
}
body.entry-detail-body .main-header .title {
  margin-bottom: 0.5rem;
  font-size: 2.6rem;
  max-width: 40rem;
  line-height: 130%;
}
body.entry-detail-body .main-header .aux {
  margin-top: 1.2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body.entry-detail-body .main-header .intro {
  margin: 1.5rem 0;
}
body.entry-detail-body .main-header .intro p {
  font-size: 1.3rem;
}
body.entry-detail-body .main-header .meta {
  align-items: center;
  line-height: 150%;
}
body.entry-detail-body .main-header .meta a {
  text-decoration: none;
  font-weight: 820;
  color: inherit;
}
body.entry-detail-body .main-header .meta a:hover {
  text-decoration: underline;
}
body.entry-detail-body .main-header .meta span {
  display: inline-block;
}
body.entry-detail-body .main-header .meta span:not(:first-child):before {
  content: "∙";
  color: inherit;
  display: inline-block;
  margin: 0 0.4rem;
}
body.entry-detail-body .container.cover {
  padding: 0;
  margin-bottom: 3rem;
}
body.entry-detail-body .container.cover img {
  margin: 0 auto;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.125rem;
}
body.entry-detail-body .container.entry-detail {
  padding-top: 2.5rem;
}
body.entry-detail-body .container.entry-detail .text-body > .intro,
body.entry-detail-body .container.entry-detail .text-body > h1,
body.entry-detail-body .container.entry-detail .text-body > h2,
body.entry-detail-body .container.entry-detail .text-body > h3,
body.entry-detail-body .container.entry-detail .text-body > h4,
body.entry-detail-body .container.entry-detail .text-body > h5,
body.entry-detail-body .container.entry-detail .text-body > h6,
body.entry-detail-body .container.entry-detail .text-body > p,
body.entry-detail-body .container.entry-detail .text-body > ul,
body.entry-detail-body .container.entry-detail .text-body > ol,
body.entry-detail-body .container.entry-detail .text-body > aside,
body.entry-detail-body .container.entry-detail .text-body > blockquote,
body.entry-detail-body .container.entry-detail .text-body > pre {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}
body.entry-detail-body .container.entry-detail .text-body h1,
body.entry-detail-body .container.entry-detail .text-body h2,
body.entry-detail-body .container.entry-detail .text-body h3,
body.entry-detail-body .container.entry-detail .text-body h4 {
  font-weight: 690;
}
body.entry-detail-body .container.entry-detail .text-body > pre,
body.entry-detail-body .container.entry-detail .text-body > aside {
  box-sizing: content-box;
}
body.entry-detail-body .container.entry-detail .text-body > .column-list {
  margin: 2rem auto;
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  gap: 2rem;
}
@media (max-width: 768px) {
  body.entry-detail-body .container.entry-detail .text-body > .column-list {
    grid-auto-flow: row;
    max-width: 40rem;
  }
}
body.entry-detail-body .tags {
  margin-top: 2.5rem;
  display: flex;
  gap: 0.5rem;
  justify-content: center;
}
body.entry-detail-body .tags .tag {
  font-size: 0.8rem;
}
body.entry-detail-body .container.cover {
  margin: 0 auto;
  padding-bottom: 2.5rem;
}
@media (max-width: 768px) {
  body.entry-detail-body .main-header .meta .area {
    display: block;
  }
  body.entry-detail-body .main-header .meta .area:before {
    display: none !important;
  }
}
@media (max-width: 1024px) {
  body.entry-detail-body .main-header {
    padding-bottom: 0 !important;
    background: transparent;
  }
  body.entry-detail-body .container.cover {
    margin-bottom: 0rem;
    padding-top: 4rem;
  }
  body.entry-detail-body .container.cover img {
    margin-top: 0;
  }
}

.blog-body.entry-list-body .main-header {
  padding-bottom: 1rem;
}

.blog-body.entry-list-body .container.hero,
.blog-body.entry-detail-body .container.hero {
  margin-bottom: 0;
  padding-bottom: 0;
}
.blog-body.entry-list-body .container.hero .heading,
.blog-body.entry-detail-body .container.hero .heading {
  margin-bottom: 1rem;
}

.pagination {
  display: flex;
  gap: 0.5rem;
  margin: 2rem auto;
  justify-content: center;
}
.pagination span,
.pagination a {
  color: inherit;
  width: 2rem;
  height: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 0.2rem;
}
.pagination span {
  opacity: 0.5;
}
.pagination a {
  background: rgb(231.25, 231.25, 231.25);
}
.pagination a:hover {
  background: rgb(218.5, 218.5, 218.5);
}
.pagination a.current {
  background: #000;
  color: #ffffff;
}
.dark .pagination a {
  background: rgb(15.3, 15.3, 15.3);
}
.dark .pagination a:hover {
  background: rgb(20.4, 20.4, 20.4);
}
.dark .pagination a.current {
  background: #7d64fa;
  color: #ffffff;
}

.author-profile {
  margin: 4rem auto;
  display: flex;
  justify-content: center;
}
.author-profile .header {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.author-profile .name {
  font-family: Inter, helvetica, sans-serif;
  font-weight: 460;
  font-size: 1.1rem;
  margin-bottom: 0.25rem;
}
.author-profile .title {
  color: rgb(92.5, 92.5, 92.5);
  line-height: 140%;
  max-width: 20rem;
}
.author-profile img {
  box-sizing: border-box;
  width: 3.6rem;
  height: 3.6rem;
  object-fit: cover;
  border-radius: 1.8rem;
  border: 0.25rem solid rgb(218.5, 218.5, 218.5);
}

/*# sourceMappingURL=tmpcebmr69m.css.map */
