@font-face {
  font-family: Google Sans Flex;
  src: url('../fonts/GoogleSansFlex-VariableFont_GRADRONDopszslntwdthwght.woff2') format("woff2");
  font-weight: 1 1000;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Nyght Serif;
  src: url('../fonts/NyghtSerif-RegularItalic.woff2') format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Nyght Serif;
  src: url('../fonts/NyghtSerif-MediumItalic.woff2') format("woff2");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Nyght Serif;
  src: url('../fonts/NyghtSerif-LightItalic.woff2') format("woff2");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Google Sans Code;
  src: url('../fonts/GoogleSansCode-VariableFont_wght.woff2') format("woff2");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}

:root {
  --background-color--primary-background: #1f1f1f;
  --_typography---font-family--primary: "Google Sans Flex", Arial, sans-serif;
  --primary-color--white: white;
  --_sizes---fixed--small-01: 1rem;
  --_typography---text-line-height--xhuge-line-height: 150%;
  --_typography---font-weight--regular: 400;
  --_typography---h1--h1-font-family: var(--_typography---font-family--primary);
  --_typography---h1--h1-font-size: var(--_sizes---fixed--huge-03);
  --_typography---text-line-height--small-line-height: 100%;
  --_typography---h1--h1-font-weight: var(--_typography---font-weight--medium);
  --_sizes---fixed--xhuge-03: 10rem;
  --_typography---h2--h2-font-family: var(--_typography---font-family--primary);
  --_typography---h2--h2-font-size: var(--_sizes---fixed--xxlarge-03);
  --_typography---text-line-height--medium-line-height: 110%;
  --_typography---h2--h2-font-weight: var(--_typography---font-weight--medium);
  --_sizes---fixed--huge-03: 8rem;
  --_typography---h3--h3-font-family: var(--_typography---font-family--primary);
  --_typography---h3--h3-font-size: var(--_sizes---fixed--xxlarge-01);
  --_typography---h3--h3-font-weight: var(--_typography---font-weight--medium);
  --_typography---h4--h4-font-family: var(--_typography---font-family--primary);
  --_typography---h4--h4-font-size: var(--_sizes---fixed--xlarge-01);
  --_typography---h4--h4-font-weight: var(--_typography---font-weight--medium);
  --_typography---h5--h5-font-family: var(--_typography---font-family--primary);
  --_typography---h5--h5-font-size: var(--_sizes---fixed--medium-01);
  --_typography---text-line-height--large-line-height: 120%;
  --_typography---h5--h5-font-weight: var(--_typography---font-weight--medium);
  --_typography---h6--h6-font-family: var(--_typography---font-family--primary);
  --_typography---h6--h6-font-size: var(--_sizes---fixed--small-01);
  --_typography---h6--h6-font-weight: var(--_typography---font-weight--medium);
  --neutral-color--secondary-neutral: #bbb;
  --border-color--primary-border: #ffffff1a;
  --_sizes---border-radius--xlarge: 1.25rem;
  --_typography---text-line-height--huge-line-height: 140%;
  --_typography---font-weight--extra-bold: 800;
  --_typography---font-weight--semibold: 600;
  --neutral-color--primary-neutral: gray;
  --background-color--secondary-background: #f2f2f2;
  --primary-color--black: #000;
  --_sizes---fixed--small-03: 1.25rem;
  --background-color--tertiary-background: #0e0e0e;
  --_sizes---fixed--xxlarge-01: 5rem;
  --_sizes---fixed--xlarge-01: 4rem;
  --_sizes---fixed--large-01: 3rem;
  --_sizes---fixed--medium-03: 2.5rem;
  --_sizes---fixed--medium-01: 2rem;
  --_sizes---fixed--large-03: 3.5rem;
  --_sizes---fixed--small-07: 1.75rem;
  --_sizes---fixed--small-05: 1.5rem;
  --_sizes---border-radius--xhuge: 2rem;
  --_sizes---fixed--small-02: 1.125rem;
  --_typography---font-weight--bold: 700;
  --_sizes---fixed--xsmall-04: .75rem;
  --_typography---font-weight--medium: 500;
  --_typography---font-weight--light: 300;
  --_sizes---fixed--xsmall-05: .875rem;
  --primary-color--dark: #232324;
  --_sizes---border-radius--medium: .75rem;
  --_sizes---spacer--xlarge: 4rem;
  --_typography---text-line-height--xlarge-line-height: 130%;
  --_sizes---border-radius--xxlarge: 1.5rem;
  --_sizes---border-radius--huge: 1.75rem;
  --_sizes---fixed--xxlarge-02: 5.5rem;
  --_sizes---fixed--huge-01: 7rem;
  --_sizes---border-radius--xxhuge: 2.5rem;
  --_sizes---fixed--xxlarge-03: 6rem;
  --_typography---font-family--secondary: "Google Sans Code", Arial, sans-serif;
  --_sizes---fixed--medium-02: 2.25rem;
  --_sizes---spacer--small: 1rem;
  --_sizes---fixed--xlarge-03: 4.5rem;
  --_sizes---border-radius--large: 1rem;
  --_sizes---fixed--xxhuge-01: 14rem;
  --_sizes---spacer--huge: 6rem;
  --_sizes---spacer--tiny: .125rem;
  --_sizes---spacer--xxsmall: .25rem;
  --_typography---font-family--tertiary: "Nyght Serif", Georgia, sans-serif;
  --_typography---font-weight--thin: 100;
  --_typography---font-weight--extra-light: 200;
  --_typography---font-weight--black: 900;
  --_sizes---spacer--xsmall: .5rem;
  --_sizes---spacer--medium: 2rem;
  --_sizes---spacer--large: 3rem;
  --_sizes---spacer--xxlarge: 5rem;
  --border-color--secondary-border: #fff3;
  --_sizes---spacer--xhuge: 8rem;
  --_sizes---spacer--xxhuge: 10rem;
  --_sizes---border-radius--tiny: .125rem;
  --_sizes---border-radius--xxsmall: .25rem;
  --_sizes---border-radius--small: .5rem;
  --_sizes---border-radius--100: 100%;
  --_sizes---section--small: 3rem;
  --_sizes---fixed--zero: 0rem;
  --_sizes---fixed--xsmall-01: .125rem;
  --_sizes---fixed--xsmall-02: .25rem;
  --_sizes---fixed--xsmall-03: .5rem;
  --_sizes---fixed--small-04: 1.375rem;
  --_sizes---fixed--small-06: 1.625rem;
  --_sizes---fixed--small-08: 1.875rem;
  --_sizes---fixed--medium-04: 2.75rem;
  --_sizes---fixed--large-02: 3.25rem;
  --_sizes---fixed--large-04: 3.75rem;
  --_sizes---fixed--xlarge-02: 4.25rem;
  --_sizes---fixed--xlarge-04: 4.75rem;
  --_sizes---fixed--xxlarge-04: 6.5rem;
  --_sizes---fixed--huge-02: 7.5rem;
  --_sizes---fixed--huge-04: 8.5rem;
  --_sizes---fixed--xhuge-01: 9rem;
  --_sizes---fixed--xhuge-02: 9.5rem;
  --_sizes---fixed--xhuge-04: 12rem;
  --_sizes---fixed--xxhuge-02: 16rem;
  --_sizes---fixed--xxhuge-03: 18rem;
  --_sizes---fixed--xxhuge-04: 20rem;
  --_sizes---section--medium: 5rem;
  --_sizes---section--large: 8rem;
  --_sizes---section--xlarge: 10rem;
  --_sizes---section--huge: 12rem;
  --_typography---text-size--text-size-tiny: .75rem;
  --_typography---text-size--text-size-small: .875rem;
  --_typography---text-size--text-size-regular: 1rem;
  --_typography---text-size--text-size-medium: 1.25rem;
  --_typography---text-size--text-size-large: 1.5rem;
}

.lx-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

body {
  background-color: var(--background-color--primary-background);
  font-family: var(--_typography---font-family--primary);
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-01);
  line-height: var(--_typography---text-line-height--xhuge-line-height);
  font-weight: var(--_typography---font-weight--regular);
}

h1 {
  font-family: var(--_typography---h1--h1-font-family);
  font-size: var(--_typography---h1--h1-font-size);
  line-height: var(--_typography---text-line-height--small-line-height);
  font-weight: var(--_typography---h1--h1-font-weight);
  margin-top: 0;
  margin-bottom: 0;
}

h2 {
  font-family: var(--_typography---h2--h2-font-family);
  font-size: var(--_typography---h2--h2-font-size);
  line-height: var(--_typography---text-line-height--medium-line-height);
  font-weight: var(--_typography---h2--h2-font-weight);
  margin-top: 0;
  margin-bottom: 0;
}

h3 {
  font-family: var(--_typography---h3--h3-font-family);
  font-size: var(--_typography---h3--h3-font-size);
  line-height: var(--_typography---text-line-height--medium-line-height);
  font-weight: var(--_typography---h3--h3-font-weight);
  margin-top: 0;
  margin-bottom: 0;
}

h4 {
  font-family: var(--_typography---h4--h4-font-family);
  font-size: var(--_typography---h4--h4-font-size);
  line-height: var(--_typography---text-line-height--medium-line-height);
  font-weight: var(--_typography---h4--h4-font-weight);
  margin-top: 0;
  margin-bottom: 0;
}

h5 {
  font-family: var(--_typography---h5--h5-font-family);
  font-size: var(--_typography---h5--h5-font-size);
  line-height: var(--_typography---text-line-height--large-line-height);
  font-weight: var(--_typography---h5--h5-font-weight);
  margin-top: 0;
  margin-bottom: 0;
}

h6 {
  font-family: var(--_typography---h6--h6-font-family);
  font-size: var(--_typography---h6--h6-font-size);
  line-height: var(--_typography---text-line-height--large-line-height);
  font-weight: var(--_typography---h6--h6-font-weight);
  margin-top: 0;
  margin-bottom: 0;
}

p {
  color: var(--neutral-color--secondary-neutral);
  margin-bottom: 0;
}

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

ul, ol {
  color: var(--neutral-color--secondary-neutral);
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}

img {
  max-width: 100%;
  display: inline-block;
}

blockquote {
  border-left: 5px solid var(--border-color--primary-border);
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---border-radius--xlarge);
  line-height: var(--_typography---text-line-height--huge-line-height);
  margin-bottom: 10px;
  padding: 10px 20px;
}

.max-width-large {
  width: 100%;
  max-width: 48rem;
}

.text-weight-xbold {
  font-weight: var(--_typography---font-weight--extra-bold);
}

.text-weight-semibold {
  font-weight: var(--_typography---font-weight--semibold);
}

.heading-style-h3 {
  font-family: var(--_typography---h3--h3-font-family);
  font-size: var(--_typography---h3--h3-font-size);
  font-weight: var(--_typography---h3--h3-font-weight);
}

.form-label {
  color: var(--primary-color--white);
  font-weight: var(--_typography---font-weight--semibold);
}

.aspect-ratio-landscape {
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.spacer-xhuge {
  width: 100%;
  padding-top: 8rem;
}

.icon-height-large {
  height: 3rem;
}

.icon-1x1-small {
  width: 1rem;
  height: 1rem;
}

.aspect-ratio-portrait {
  aspect-ratio: 2 / 3;
  object-fit: cover;
}

.padding-bottom {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.text-style-muted {
  opacity: .6;
}

.padding-small {
  padding: 1rem;
}

.padding-section-small {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.margin-xxsmall {
  margin: .25rem;
}

.container-medium {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

.spacer-xxlarge {
  width: 100%;
  padding-top: 5rem;
}

.fs-styleguide-3-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.fs-styleguide-3-col.is-align-start {
  align-items: start;
}

.background-color-primary {
  background-color: var(--background-color--primary-background);
  color: #fff;
}

.aspect-ratio-widescreen {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.form-message-error {
  color: #3b0b0b;
  text-align: center;
  background-color: #f8e4e4;
  margin-top: 2.5rem;
  padding: 1.25rem;
}

.spacer-xxsmall {
  width: 100%;
  padding-top: .25rem;
}

.margin-custom1 {
  margin: 1.5rem;
}

.fs-styleguide-item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  border-bottom: 1px solid #0000001a;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  padding-bottom: 3rem;
  display: grid;
  position: relative;
}

.fs-styleguide-item.is-stretch {
  justify-items: stretch;
}

.max-width-small {
  width: 100%;
  max-width: 20rem;
}

.button-group {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.overflow-auto {
  overflow: auto;
}

.fs-styleguide-classes {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.spacer-small {
  width: 100%;
  padding-top: 1rem;
}

.padding-section-medium {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.hide {
  display: none;
}

.nav-client-first-logo {
  color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
}

.form-message-success {
  color: #114e0b;
  text-align: center;
  background-color: #cef5ca;
  padding: 1.25rem;
}

.text-color-secondary {
  color: var(--neutral-color--primary-neutral);
}

.spacer-xlarge {
  width: 100%;
  padding-top: 4rem;
}

.heading-style-h5 {
  font-family: var(--_typography---h5--h5-font-family);
  font-size: var(--_typography---h5--h5-font-size);
  line-height: var(--_typography---text-line-height--large-line-height);
  font-weight: var(--_typography---h5--h5-font-weight);
}

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

.fs-styleguide-section {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.fs-styleguide-section.is-vertical {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-columns: 1fr;
}

.fs-styleguide-item-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.background-color-alternate {
  background-color: var(--background-color--secondary-background);
}

.max-width-xsmall {
  width: 100%;
  max-width: 16rem;
}

.heading-style-h2 {
  font-family: var(--_typography---h2--h2-font-family);
  font-size: var(--_typography---h2--h2-font-size);
  font-weight: var(--_typography---h2--h2-font-weight);
}

.heading-style-h2.text-color-alternate {
  color: var(--primary-color--black);
}

.margin-left {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
}

.fs-styleguide-background {
  border: 1px solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.fs-styleguide-2-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fs-styleguide-2-col.is-align-start {
  align-items: start;
}

.text-style-quote {
  border-left: .25rem solid var(--border-color--primary-border);
  font-size: var(--_sizes---fixed--small-03);
  line-height: var(--_typography---text-line-height--huge-line-height);
  margin-bottom: 0;
  padding: 0 1.25rem;
}

.padding-right {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.fs-styleguide-4-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.pointer-events-none {
  pointer-events: none;
}

.overflow-hidden {
  overflow: hidden;
}

.padding-tiny {
  padding: .125rem;
}

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

.padding-medium {
  padding: 2rem;
}

.padding-horizontal {
  padding-top: 0;
  padding-bottom: 0;
}

.icon-height-medium {
  height: 2rem;
}

.spacer-large {
  padding-top: 3rem;
}

.fs-styleguide-heading-header {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--huge-03);
}

.spacer-xxhuge {
  width: 100%;
  padding-top: 10rem;
}

.spacer-xsmall {
  width: 100%;
  padding-top: .5rem;
}

.nav-component {
  border-radius: var(--_sizes---border-radius--xlarge);
  background-color: var(--background-color--tertiary-background);
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  position: relative;
  inset: 0% 0% auto;
}

.form-checkbox-icon {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form-checkbox-icon.lx--redirected-checked {
  background-size: 90%;
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form-checkbox-icon.lx--redirected-focus {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.text-rich-text h1 {
  font-size: var(--_sizes---fixed--xxlarge-01);
  line-height: var(--_typography---text-line-height--large-line-height);
}

.text-rich-text h2 {
  font-size: var(--_sizes---fixed--xlarge-01);
  line-height: var(--_typography---text-line-height--large-line-height);
}

.text-rich-text h3 {
  font-size: var(--_sizes---fixed--large-03);
  line-height: var(--_typography---text-line-height--large-line-height);
}

.text-rich-text h4 {
  font-size: var(--_sizes---fixed--large-01);
  line-height: var(--_typography---text-line-height--large-line-height);
}

.text-rich-text h5 {
  font-size: var(--_sizes---fixed--medium-03);
  line-height: var(--_typography---text-line-height--large-line-height);
}

.text-rich-text h6 {
  font-size: var(--_sizes---fixed--small-05);
  line-height: var(--_typography---text-line-height--large-line-height);
}

.text-rich-text img {
  border-radius: var(--_sizes---border-radius--xhuge);
}

.padding-custom1 {
  padding: 1.5rem;
}

.aspect-ratio-square {
  aspect-ratio: 1;
  object-fit: cover;
}

.text-size-medium {
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--small-03);
  line-height: var(--_typography---text-line-height--xhuge-line-height);
}

.margin-top {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.fs-styleguide-header {
  color: #fff;
  background-color: #000;
  background-image: radial-gradient(circle at 100% 100%, #dd23bb40, #0000 40%), radial-gradient(circle at 0 100%, #2d62ff4d, #0000 60%);
}

.margin-custom2 {
  margin: 2.5rem;
}

.margin-xxhuge {
  margin: 10rem;
}

.icon-1x1-large {
  width: 2.5rem;
  height: 2.5rem;
}

.form-radio {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.padding-xxhuge {
  padding: 10rem;
}

.margin-horizontal {
  margin-top: 0;
  margin-bottom: 0;
}

.form-radio-icon {
  width: .875rem;
  height: .875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: .5rem;
}

.form-radio-icon.lx--redirected-checked {
  border-width: .25rem;
  width: .875rem;
  height: .875rem;
}

.form-radio-icon.lx--redirected-focus {
  width: .875rem;
  height: .875rem;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.nav-button {
  padding: 1rem;
}

.heading-style-h6 {
  font-family: var(--_typography---h6--h6-font-family);
  font-size: var(--_typography---h6--h6-font-size);
  line-height: var(--_typography---text-line-height--large-line-height);
  font-weight: var(--_typography---h6--h6-font-weight);
}

.padding-xxsmall {
  padding: .25rem;
}

.text-style-allcaps {
  text-transform: uppercase;
}

.fs-styleguide-heading-medium {
  font-size: 4rem;
  line-height: 1;
}

.text-weight-bold {
  font-weight: var(--_typography---font-weight--bold);
}

.padding-huge {
  padding: 6rem;
}

.padding-0 {
  padding: 0;
}

.max-width-xlarge {
  width: 100%;
  max-width: 64rem;
}

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

.padding-left {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.icon-height-small {
  height: 1rem;
}

.margin-tiny {
  margin: .125rem;
}

.text-size-tiny {
  font-size: var(--_sizes---fixed--xsmall-04);
  line-height: var(--_typography---text-line-height--huge-line-height);
}

.icon-1x1-medium {
  width: 2rem;
  height: 2rem;
}

.container-large {
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
}

.margin-medium {
  margin: 2rem;
}

.form-checkbox {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.fs-styleguide-empty-box {
  z-index: -1;
  background-color: #2d40ea0d;
  border: 1px dashed #2d40ea;
  min-width: 3rem;
  height: 3rem;
  position: relative;
}

.margin-right {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.nav-menu-link {
  color: #fff;
  padding: 1rem;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.margin-bottom {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.z-index-2 {
  z-index: 2;
  position: relative;
}

.text-style-nowrap {
  white-space: nowrap;
}

.max-width-xxlarge {
  width: 100%;
  max-width: 80rem;
}

.container-small {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}

.button {
  border: 1px solid var(--primary-color--white);
  background-color: var(--primary-color--white);
  color: var(--primary-color--black);
  font-weight: var(--_typography---font-weight--regular);
  text-align: center;
  border-radius: 100px;
  padding: 1rem 2rem;
  transition: all .35s;
}

.button:hover {
  color: var(--primary-color--white);
  background-color: #0000;
}

.button.is-form-submit {
  width: 100%;
}

.button.is-large {
  padding: 1.25rem 2.5rem;
}

.button.is-small {
  padding: .5rem 1.25rem;
}

.margin-xlarge {
  margin: 4rem;
}

.margin-xxlarge {
  margin: 5rem;
}

.overflow-scroll {
  overflow: scroll;
}

.fs-styleguide-background-space {
  width: 1px;
  height: 1px;
  margin: 5rem;
}

.padding-section-large {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.spacer-tiny {
  width: 100%;
  padding-top: .125rem;
}

.text-size-large {
  font-size: var(--_sizes---fixed--small-05);
  line-height: var(--_typography---text-line-height--huge-line-height);
}

.z-index-1 {
  z-index: 1;
  position: relative;
}

.form-component {
  margin-bottom: 0;
}

.margin-0 {
  margin: 0;
}

.fs-styleguide-hero-label {
  background-color: var(--primary-color--white);
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--xsmall-04);
  font-weight: var(--_typography---font-weight--medium);
  text-transform: uppercase;
  border-radius: 8px;
  padding: .25rem 1rem;
  text-decoration: none;
}

.fs-styleguide-spacer-box {
  background-color: #2d40ea1a;
  border: 1px dashed #2d40ea;
  width: 100%;
  position: relative;
}

.fs-styleguide-row {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.text-weight-light {
  font-weight: var(--_typography---font-weight--light);
}

.spacing-clean {
  margin: 0;
  padding: 0;
}

.max-width-xxsmall {
  width: 100%;
  max-width: 12rem;
}

.align-center {
  margin-left: auto;
  margin-right: auto;
}

.layer {
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0%;
}

.margin-xhuge {
  margin: 8rem;
}

.margin-custom3 {
  margin: 3.5rem;
}

.max-width-full {
  width: 100%;
  max-width: none;
}

.pointer-events-auto {
  pointer-events: auto;
}

.background-color-secondary {
  background-color: var(--background-color--secondary-background);
}

.padding-custom3 {
  padding: 3.5rem;
}

.margin-huge {
  margin: 6rem;
}

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

.padding-xxlarge {
  padding: 5rem;
}

.text-style-link {
  text-decoration: none;
}

.text-color-alternate {
  color: var(--primary-color--black);
}

.background-color-tertiary {
  background-color: var(--background-color--tertiary-background);
}

.fs-styleguide-spacing-all {
  display: none;
}

.fs-styleguide-1-col {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.max-width-medium {
  width: 100%;
  max-width: 32rem;
}

.padding-top {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.margin-vertical {
  margin-left: 0;
  margin-right: 0;
}

.fs-styleguide-header-block {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  display: grid;
}

.padding-xhuge {
  padding: 8rem;
}

.spacer-medium {
  width: 100%;
  padding-top: 2rem;
}

.fs-styleguide-spacing {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-image: linear-gradient(to top, #2d40ea1a, #fff0);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start stretch;
  display: grid;
  position: relative;
}

.fs-styleguide-message {
  color: #5e5515;
  background-color: #fcf8d8;
  border-radius: 8px;
  padding: .25rem .5rem;
  font-size: .875rem;
}

.text-size-small {
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--xsmall-05);
  line-height: var(--_typography---text-line-height--huge-line-height);
}

.text-size-small.text-color-secondary {
  color: var(--neutral-color--secondary-neutral);
}

.text-size-small.text-color-alternate {
  color: var(--primary-color--black);
}

.overflow-visible {
  overflow: visible;
}

.text-style-italic {
  font-style: italic;
}

.fs-styleguide-section-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid var(--border-color--primary-border);
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-bottom: 3rem;
  line-height: 1.4;
  display: grid;
}

.text-size-regular {
  font-size: var(--_sizes---fixed--small-01);
  line-height: var(--_typography---text-line-height--huge-line-height);
}

.text-size-regular.text-color-secondary {
  color: #8d8d8d;
}

.fs-styleguide-label {
  color: #fff;
  background-color: #2d62ff;
  border-radius: 8px;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem .75rem .3rem;
  font-weight: 600;
  display: flex;
}

.fs-styleguide-label.is-tag {
  background-color: #dd23bb;
}

.padding-xlarge {
  padding: 4rem;
}

.spacer-huge {
  width: 100%;
  padding-top: 6rem;
}

.text-style-strikethrough {
  text-decoration: line-through;
}

.heading-style-h1 {
  font-family: var(--_typography---h1--h1-font-family);
  font-size: var(--_typography---h1--h1-font-size);
  line-height: var(--_typography---text-line-height--small-line-height);
  font-weight: var(--_typography---h1--h1-font-weight);
}

.padding-xsmall {
  padding: .5rem;
}

.fs-styleguide-item-header {
  border-bottom: 1px solid #0000001a;
  width: 100%;
  padding-bottom: 2rem;
}

.nav-container {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.margin-small {
  margin: 1rem;
}

.margin-large {
  margin: 3rem;
}

.form-input {
  border: 1px solid var(--border-color--primary-border);
  background-color: var(--primary-color--dark);
  min-height: 3rem;
  color: var(--primary-color--white);
  border-radius: 100px;
  padding: .5rem 1rem;
  transition: border-color .35s;
}

.form-input:hover, .form-input:active, .form-input:focus {
  border-color: #acacac;
}

.form-input::placeholder {
  color: #222;
}

.form-input.is-text-area {
  border-radius: 32px;
  min-height: auto;
  padding-top: 2rem;
  padding-bottom: 4rem;
}

.form-input.is-select-input {
  color: var(--primary-color--white);
}

.margin-xsmall {
  margin: .5rem;
}

.heading-style-h4 {
  font-family: var(--_typography---h4--h4-font-family);
  font-size: var(--_typography---h4--h4-font-size);
  font-weight: var(--_typography---h4--h4-font-weight);
}

.text-weight-medium {
  font-weight: var(--_typography---font-weight--medium);
}

.padding-custom2 {
  padding: 2.5rem;
}

.padding-large {
  padding: 3rem;
}

.nav-style-guide {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xlarge);
  background-color: var(--background-color--tertiary-background);
  justify-content: space-between;
  align-items: center;
  width: 40rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1.25rem 1.5rem;
  display: flex;
  position: fixed;
  inset: auto 0% 5%;
}

.nav-style-guide-link {
  border-radius: var(--_sizes---border-radius--medium);
  background-color: #ebebeb;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  text-decoration: none;
  transition: all .4s;
  display: flex;
}

.nav-style-guide-link:hover {
  background-color: #dbdbdb;
  transform: scale(1.2);
}

.nav-style-guide-icon {
  color: #000;
  width: 2rem;
  height: 2rem;
  line-height: 1;
}

.contact-form-block {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  width: 100%;
  max-width: 45rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.social-link {
  border: 1px solid var(--border-color--primary-border);
  background-color: var(--border-color--primary-border);
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 2.75rem;
  height: 2.75rem;
  display: flex;
}

.social-icon-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  display: flex;
  overflow: hidden;
}

.padding-top-header {
  padding-top: 12rem;
}

.social-media-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  display: flex;
}

.social-media-block {
  max-width: 100%;
}

@media screen and (max-width: 479px) {
  .social-media-wrapper {
    grid-column-gap: .6rem;
    grid-row-gap: .6rem;
  }

  .social-link {
    width: 2.4rem;
    height: 2.4rem;
  }
}

.social-icon {
  color: #f7f7f7;
  width: 1.25rem;
  height: 1.25rem;
}

.contact-form-wrapper {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---fixed--small-05);
  color: #000;
  background-color: #1b1b1b;
  margin-bottom: 0;
  padding: 3rem 2rem;
}

.header-component-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto auto auto auto auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  width: 100%;
  height: 100%;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  z-index: 5;
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
  position: relative;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.utility-icon {
  width: 12rem;
  height: 12rem;
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
}

.utility-page-title {
  font-size: var(--_sizes---fixed--large-03);
  margin-bottom: 20px;
}

.changelog-content-flex {
  margin-top: var(--_sizes---spacer--xlarge);
  margin-bottom: var(--_sizes---spacer--xlarge);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.changelog-flex {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  align-items: center;
  display: flex;
}

.list {
  list-style-type: square;
}

.link-button {
  flex-direction: column;
  text-decoration: none;
  display: flex;
}

.licenses-list-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  margin-top: 30px;
  list-style-type: square;
  display: flex;
}

.link-wrap {
  flex-direction: column;
  height: 1.25rem;
  display: flex;
  overflow: hidden;
}

.link-button-text {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-01);
  line-height: var(--_typography---text-line-height--xlarge-line-height);
  font-weight: var(--_typography---font-weight--regular);
  white-space: nowrap;
}

.section-home-header {
  height: 100vh;
  padding-bottom: 10px;
  padding-left: 10px;
  padding-right: 10px;
  position: relative;
  overflow: hidden;
}

.section-about-header {
  height: 100vh;
}

.project-info-item {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xxlarge);
  background-color: var(--primary-color--dark);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  display: flex;
}

.project-info-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.image-wrapper {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xhuge);
  background-color: var(--border-color--primary-border);
  width: 100%;
  height: 100%;
  padding: 5px;
  overflow: hidden;
}

.cover-image {
  border-radius: var(--_sizes---border-radius--huge);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.project-content-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  width: 100%;
}

.blog-post-info-block {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.blog-post-info-item {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  justify-content: center;
  align-items: center;
  display: flex;
}

.blog-post-title {
  font-size: var(--_sizes---fixed--xxlarge-02);
  line-height: var(--_typography---text-line-height--medium-line-height);
  margin-top: 0;
  margin-bottom: 0;
}

.blog-post-body {
  width: 100%;
}

.blog-post-top-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr auto;
  width: 100%;
}

.empty-state {
  background-color: var(--primary-color--dark);
  text-align: center;
  border-radius: 10px;
}

.post-title {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-05);
  line-height: var(--_typography---text-line-height--huge-line-height);
}

.blog-post-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: all .35s;
}

.blog-post-image:hover {
  filter: blur(3px);
}

.blog-post-info {
  justify-content: center;
  align-items: flex-end;
  padding-top: 20px;
  padding-left: 10px;
  padding-right: 10px;
  display: flex;
}

.blog-post-content {
  text-align: center;
  justify-content: center;
  align-items: center;
  padding-top: 20px;
  padding-left: 10px;
  padding-right: 10px;
  display: flex;
}

.blog-link-wrapper {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--huge);
  background-color: var(--primary-color--dark);
  width: 100%;
  height: 100%;
  padding: 5px;
  text-decoration: none;
  display: block;
}

.blog-post-category {
  background-color: var(--primary-color--dark);
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--xsmall-05);
  border-bottom-right-radius: 12px;
  border-bottom-left-radius: 12px;
  margin-left: auto;
  margin-right: auto;
  padding: 6px 1rem;
  position: absolute;
  inset: 0 auto auto;
}

.blog-image-wrapper {
  border-radius: var(--_sizes---border-radius--xxlarge);
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.blog-post-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  display: flex;
}

.all-posts-component-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.line {
  background-color: #ebebeb;
  width: 100%;
  height: 1px;
}

.blog-post-block {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xlarge);
  background-color: var(--border-color--primary-border);
  justify-content: center;
  align-items: center;
  padding: 1.5rem 2rem;
  display: flex;
}

.dividing-line {
  background-color: var(--border-color--primary-border);
  width: 100%;
  height: 1px;
}

.dividing-line:where(.lx-variant-95b2442f-45c1-291c-5e43-47621528e722) {
  background-color: #bbbbbb80;
}

.project-image {
  border-radius: var(--_sizes---border-radius--huge);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.header-content {
  justify-content: center;
  align-items: center;
  display: flex;
}

.header-wrapper {
  border-radius: 0rem 0rem var(--_sizes---border-radius--xxhuge) var(--_sizes---border-radius--xxhuge);
  background-color: var(--background-color--tertiary-background);
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.header-shape-wrap {
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
}

.circle-shape {
  border-radius: 100%;
  width: 15rem;
  height: 15rem;
  position: absolute;
  overflow: hidden;
}

.circle-shape._01 {
  width: 25rem;
  height: 25rem;
  bottom: -15rem;
}

.circle-shape._02 {
  width: 18rem;
  height: 18rem;
  bottom: -1.5rem;
  left: -18rem;
}

.circle-shape._03 {
  width: 18rem;
  height: 18rem;
  bottom: -1.5rem;
  right: -18rem;
}

.circle-shape._06 {
  width: 12rem;
  height: 12rem;
  bottom: 9rem;
  left: -2rem;
}

.circle-shape._07 {
  width: 12rem;
  height: 12rem;
  bottom: 9rem;
  right: -2rem;
}

.circle-shape._04 {
  bottom: -8rem;
  left: -31rem;
}

.circle-shape._05 {
  bottom: -8rem;
  right: -31rem;
}

.shape-block {
  justify-content: center;
  align-items: center;
  width: 20rem;
  height: 20rem;
  display: flex;
  position: relative;
}

.header-image {
  width: 100%;
  height: 100%;
}

.header-content-wrap {
  z-index: 5;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
  top: -1.5rem;
}

.header-title {
  font-size: var(--_sizes---fixed--xxlarge-03);
  line-height: var(--_typography---text-line-height--medium-line-height);
  text-align: center;
}

.serif-font {
  font-family: Nyght Serif, Georgia, sans-serif;
  font-style: italic;
  font-weight: 400;
}

.nav-wrap {
  z-index: 10;
  justify-content: center;
  align-items: flex-start;
  display: flex;
  position: fixed;
  inset: 0% 0% auto;
}

.nav-wrapper {
  background-color: #2a2a2a;
  border: 1px #444;
  border-bottom-right-radius: 2.5rem;
  border-bottom-left-radius: 2.5rem;
  justify-content: center;
  align-items: center;
  width: 16rem;
  height: 4.75rem;
  display: flex;
  position: relative;
}

.corner-icon {
  width: 20px;
  height: 20px;
  position: absolute;
  inset: 0% auto auto 0%;
}

.corner-icon.left-nav {
  left: -20px;
  transform: rotate(90deg);
}

.corner-icon.right-nav {
  left: auto;
  right: -20px;
}

.nav-block {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex: 0 auto;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-bottom: 2px;
  padding-left: 1.5rem;
  padding-right: 12px;
  display: flex;
}

.primary-button {
  background-color: var(--primary-color--white);
  border-radius: 100px;
  width: 100%;
  height: 4rem;
  transition: all .35s;
  position: relative;
}

.primary-button:where(.lx-variant-c7feb408-f45f-7ce5-23df-88701c56bc71) {
  background-color: var(--background-color--tertiary-background);
}

.primary-button:hover {
  transform: scale(.95);
}

.logo-link {
  z-index: 10;
  border-radius: 100%;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 2.25rem;
  min-width: 2.25rem;
  height: 2.25rem;
  min-height: 2.25rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-container {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-left: 2rem;
  padding-right: 10px;
  display: flex;
}

.button-text-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 1rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-text {
  color: var(--primary-color--black);
  line-height: var(--_typography---text-line-height--medium-line-height);
  white-space: nowrap;
}

.button-text:where(.lx-variant-c7feb408-f45f-7ce5-23df-88701c56bc71) {
  color: var(--primary-color--white);
}

.button-circle {
  background-color: var(--background-color--tertiary-background);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  display: flex;
}

.button-circle:where(.lx-variant-c7feb408-f45f-7ce5-23df-88701c56bc71) {
  background-color: var(--primary-color--white);
}

.button-arrow {
  height: 1.25rem;
}

.button-arrow:where(.lx-variant-c7feb408-f45f-7ce5-23df-88701c56bc71) {
  filter: invert();
}

.video-logo {
  width: 2.25rem;
  min-width: 2.25rem;
  height: 2.25rem;
  min-height: 2.255rem;
}

.subtitle-wrap {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border-top: 1px #444;
  border-radius: 100px;
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.subtitle-wrap.align-left {
  justify-content: flex-start;
  align-items: flex-end;
}

.subtitle {
  font-family: var(--_typography---font-family--secondary);
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--xsmall-04);
  line-height: var(--_typography---text-line-height--small-line-height);
  letter-spacing: .025rem;
  text-transform: uppercase;
}

.subtitle.text-color-alternate {
  color: var(--primary-color--black);
}

.header-description {
  color: var(--neutral-color--secondary-neutral);
  text-align: center;
}

.header-desctiption-wrap {
  width: 100%;
  max-width: 30rem;
  margin-bottom: 10px;
  margin-left: auto;
  margin-right: auto;
}

.navbar {
  background-color: #0000;
  position: fixed;
  inset: 0% 0% auto;
}

.menu-button {
  border: 1px solid var(--border-color--primary-border);
  background-color: var(--border-color--primary-border);
  border-radius: 100%;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
}

.menu-button.lx--open {
  background-color: var(--border-color--primary-border);
}

.menu-button-block {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.menu-icon-grid {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 1.75rem;
  height: 1.75rem;
}

.menu-dot {
  background-color: var(--primary-color--white);
  -webkit-text-stroke-color: #f2f2f2;
  border-radius: 100px;
  width: 4px;
  height: 4px;
}

.navigation {
  background-color: #0000;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
  position: fixed;
  inset: 0%;
}

.navigation-content {
  grid-column-gap: 1.1rem;
  grid-row-gap: 1.1rem;
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xhuge);
  background-color: var(--primary-color--dark);
  flex-flow: column;
  justify-content: center;
  justify-content: safe center;
  align-items: center;
  width: 20rem;
  height: auto;
  min-height: 22rem;
  max-height: calc(100dvh - 8rem);
  padding: 2.25rem 1.5rem;
  overflow-y: auto;
  margin-top: 5.5rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.nav-link {
  transition: opacity .35s;
}

.nav-link:hover {
  opacity: .5;
}

.nav-text-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 1.7rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.nav-text {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-03);
  /* line box matches the roll window so descenders (Sign in / Sign up) render */
  line-height: 1.7rem;
}

.social-media-block {
  margin-top: 20px;
}

.secondary-button {
  border: 1px solid var(--border-color--primary-border);
  background-color: var(--background-color--tertiary-background);
  border-radius: 100px;
  width: 100%;
  height: 4rem;
  transition: all .35s;
  position: relative;
}

.secondary-button:hover {
  transform: scale(.95);
}

.secondary-button-block {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-left: 3rem;
  padding-right: 3rem;
  display: flex;
}

.secondary-button-text-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 1rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.secondary-button-text {
  color: var(--primary-color--white);
  line-height: var(--_typography---text-line-height--small-line-height);
  white-space: nowrap;
}

.subtitle-icon {
  height: .875rem;
}

.intro-wrap {
  width: 100%;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
}

.intro-text {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--large-03);
  line-height: var(--_typography---text-line-height--xlarge-line-height);
  text-align: center;
}

.intro-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  width: 100%;
}

.circle-video-wrap {
  border-radius: 100%;
  width: 12rem;
  height: 12rem;
  position: relative;
  overflow: hidden;
}

.circle-video {
  width: 100%;
  height: 100%;
}

.social-wrap {
  display: flex;
}

.section-home-services {
  padding-left: 10px;
  padding-right: 10px;
}

.white-background {
  border-radius: var(--_sizes---border-radius--xxhuge);
  background-color: var(--background-color--secondary-background);
}

.service-component-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 100%;
}

.service-content-wrap {
  border-radius: var(--_sizes---border-radius--xxlarge);
  background-color: var(--primary-color--white);
  padding: 2rem;
  position: relative;
  overflow: hidden;
}

.service-title {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--medium-02);
}

.service-content-block {
  z-index: 2;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  height: 100%;
  display: flex;
  position: relative;
}

.card-line {
  background-color: var(--background-color--secondary-background);
  width: 100%;
  height: 1px;
}

.service-icon {
  height: 3.5rem;
}

.card-background {
  opacity: .35;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.top-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr auto;
  width: 100%;
}

.stats-component {
  width: 100%;
  margin-top: var(--_sizes---spacer--small);
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  display: grid;
}

.stats-item {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-radius: var(--_sizes---border-radius--xxlarge);
  background-color: var(--primary-color--white);
  border-left: 1px solid #bbbbbb40;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding: 2rem;
  display: flex;
}

.stats-number {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--xxlarge-01);
  font-weight: var(--_typography---font-weight--medium);
}

.partner-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  width: 100%;
}

.partner-card {
  border-radius: var(--_sizes---border-radius--xlarge);
  background-color: var(--primary-color--dark);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 3rem 2rem;
  display: flex;
}

.partner-logo {
  object-fit: cover;
  width: 100%;
  min-width: 100%;
  height: 1.5rem;
  min-height: 1.5rem;
}

.subtitle-shape {
  border-radius: 100px;
  width: 1rem;
  height: 1rem;
  position: relative;
  overflow: hidden;
}

.subtitle-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.case-studies-wrapper {
  padding-left: 10px;
  padding-right: 10px;
}

.case-studies-grid {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  width: 100%;
}

.case-study-link {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--huge);
  background-color: var(--border-color--primary-border);
  width: 100%;
  height: 100%;
  padding: 5px;
  position: relative;
}

.case-study-image-wrap {
  border-radius: var(--_sizes---border-radius--xxlarge);
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.case-study-image {
  width: 100%;
  height: 100%;
  transition: all .35s;
}

.case-study-image:hover {
  filter: blur(5px);
  transform: scale(1.05);
}

.case-study-info-block {
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: flex;
  position: absolute;
  inset: auto 0% 1.5rem;
}

.case-study-text {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-03);
  font-weight: var(--_typography---font-weight--medium);
}

.case-study-year {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.copyright-symbol {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-07);
}

.case-study-logo {
  height: 3.5rem;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  inset: -12rem 0% auto;
}

.section-home-testimonials {
  padding-left: 10px;
  padding-right: 10px;
}

.slide-arrow-wrap {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--primary-color--black);
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
  overflow: hidden;
}

.testimonial-content-grid {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  width: 100%;
  height: 100%;
}

.right-arrow {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  background-color: var(--primary-color--white);
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 49.75%;
  height: 4rem;
  display: flex;
  inset: auto 0% -4.5rem auto;
}

.testimonial-content-item {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.testimonial-grid {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  width: 100%;
  height: 100%;
}

.testimonial-info {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-end;
  padding-bottom: 20px;
  padding-right: 20px;
  display: flex;
}

.client-content-wrap {
  border-radius: var(--_sizes---border-radius--huge);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.testimonial-content-block {
  padding: 2rem 1rem 2rem 2.5rem;
  position: relative;
}

.slide-text {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--small-01);
  text-transform: uppercase;
  line-height: 1.4;
}

.testimonial-slide {
  width: 100%;
  height: 100%;
}

.testimonial-text {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--medium-01);
  line-height: 1.4;
  font-weight: var(--_typography---font-weight--medium);
}

.review-star {
  width: 1rem;
  height: 1rem;
  color: var(--primary-color--black);
}

.mask {
  border-radius: var(--_sizes---border-radius--xhuge);
  width: 100%;
  height: 100%;
}

.star-rating-block {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.testimonial-slider {
  border-radius: var(--_sizes---border-radius--xhuge);
  background-color: #0000;
  height: 40rem;
  margin-bottom: 4rem;
}

.client-logo {
  opacity: .5;
  height: 2.75rem;
  position: relative;
}

.slide-block {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: center;
  align-items: center;
  display: flex;
}

.slide-arrow {
  justify-content: center;
  align-items: center;
  width: 1.125rem;
  height: 1.125rem;
  display: flex;
  position: absolute;
}

.slide-nav {
  display: none;
}

.left-arrow {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  background-color: var(--primary-color--white);
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 49.75%;
  height: 4rem;
  display: flex;
  inset: auto auto -4.5rem 0%;
}

.slide-text-wrap {
  flex-flow: column;
  height: 1.5rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.quote-icon {
  opacity: .02;
  filter: invert();
  position: absolute;
  inset: 0% -10% 0 auto;
}

.rating-wrap {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.testimonial-content-wrap {
  border-radius: var(--_sizes---border-radius--xhuge);
  background-color: var(--primary-color--white);
  width: 100%;
  height: 100%;
  padding: 10px;
}

.client-picture {
  border-radius: var(--_sizes---border-radius--xlarge);
  transform-origin: 100% 0;
  object-fit: cover;
  width: 70%;
  height: 75%;
  position: absolute;
  inset: 0% 0% auto auto;
}

.pricing-component-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-rows: auto;
  width: 100%;
}

.pricing-video-wrap {
  border-radius: var(--_sizes---border-radius--xhuge);
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.pricing-video {
  width: 100%;
  height: 100%;
}

.pricing-inner-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-columns: 1fr;
  width: 100%;
  height: 100%;
}

.pricing-wrap {
  border-radius: var(--_sizes---border-radius--xhuge);
  background-color: var(--background-color--secondary-background);
  padding: 2rem;
  position: relative;
}

.price-text {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--large-01);
  line-height: var(--_typography---text-line-height--small-line-height);
  font-weight: var(--_typography---font-weight--medium);
}

.pricing-title {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--small-02);
  font-weight: var(--_typography---font-weight--semibold);
  text-transform: uppercase;
}

.pricing-block {
  justify-content: space-between;
  width: 100%;
  display: flex;
}

.price-block {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.feature-item {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.pricing-content-grid {
  z-index: 2;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr;
  width: 100%;
  height: 100%;
  position: relative;
}

.feature-wrap {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.pricing-content-item {
  width: 100%;
}

.check-icon {
  color: #000;
  width: 1.25rem;
  height: 1.25rem;
}

.pricing-title-wrap {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.pricing-icon {
  object-fit: cover;
  border-radius: 100%;
  width: 1.25rem;
  height: 1.25rem;
}

.star-rating {
  width: 1rem;
  height: 1rem;
  color: var(--primary-color--black);
  line-height: 1.2;
}

.package-inner-grid {
  z-index: 5;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  border: 1px solid #70707040;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr;
  width: 100%;
  height: 100%;
  padding-top: 3rem;
  padding-bottom: 3rem;
  position: absolute;
  inset: 0%;
}

.client-avatar {
  border: 2px solid #fff3;
  border-radius: 100%;
  width: 3.5rem;
  height: 3.5rem;
  padding: 2px;
}

.client-avatar._03, .client-avatar._02, .client-avatar._05 {
  margin-left: -10px;
}

.rating-block {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.client-rating-wrap {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.pacakge-content {
  flex-flow: row;
  justify-content: center;
  align-items: flex-start;
  margin-top: -315px;
  display: flex;
}

.client-rating-block {
  justify-content: center;
  align-items: center;
  display: flex;
}

.pricing-bottom-content {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.pricing-logo {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--medium-01);
  font-weight: var(--_typography---font-weight--semibold);
}

.pricing-background {
  opacity: .3;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.dark-line {
  background-color: var(--border-color--primary-border);
  width: 100%;
  height: 1px;
}

.call-to-action {
  border-bottom-right-radius: 2.5rem;
  border-bottom-left-radius: 2.5rem;
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: clip;
}

.cta-wrapper {
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: relative;
}

.cta-content {
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
  top: -2rem;
}

.button-block {
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 12.5rem;
  display: flex;
}

.cta-content-wrapper {
  z-index: 5;
  position: relative;
}

.background {
  opacity: .4;
  object-fit: cover;
  width: 50rem;
  height: 50rem;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  inset: 3rem 0% 0%;
}

.about-shape-01 {
  position: absolute;
  inset: 16rem auto auto 22rem;
  transform: scale(.75);
}

.footer {
  padding-left: 10px;
  padding-right: 10px;
}

.footer-wrapper {
  border-top-left-radius: var(--_sizes---border-radius--xxhuge);
  border-top-right-radius: var(--_sizes---border-radius--xxhuge);
  background-color: var(--background-color--tertiary-background);
}

.footer-padding {
  padding-top: 8rem;
  padding-bottom: 6rem;
}

.about-shape-02 {
  position: absolute;
  inset: 20rem 22rem auto auto;
}

.about-shape-03 {
  position: absolute;
  inset: auto auto 14rem 40rem;
  transform: scale(1.2);
}

.about-shape-04 {
  position: absolute;
  inset: auto 10rem -5rem auto;
}

.pricing-video-block {
  border-radius: 100%;
  width: 15rem;
  height: 15rem;
  position: relative;
  overflow: hidden;
}

.cta-shape-wrapper {
  width: 100%;
  position: absolute;
  inset: auto 0% 0%;
}

.cta-circle-03 {
  position: absolute;
  inset: 0% auto -.5rem -28rem;
  transform: scale(1.2);
}

.cta-circle-04 {
  position: absolute;
  inset: 0% -28rem -.5rem auto;
  transform: scale(1.2);
}

.cta-circle-01 {
  position: absolute;
  inset: auto auto 0% 3rem;
  transform: scale(1.2);
}

.cta-circle-02 {
  position: absolute;
  inset: auto 3rem 0% auto;
  transform: scale(1.2);
}

.footer-grid {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.footer-top-content {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 22rem;
  display: flex;
}

.footer-title {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--medium-01);
  line-height: var(--_typography---text-line-height--huge-line-height);
  font-weight: var(--_typography---font-weight--medium);
}

.footer-link {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.link-text-block {
  flex-flow: column;
  height: 1.1255rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.link-text-item {
  color: #fff;
  white-space: nowrap;
  font-size: 1rem;
  font-weight: 500;
  line-height: 110%;
}

.footer-menu-wrap {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 20px;
  display: flex;
}

.menu-link-block {
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  padding-bottom: 10px;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.menu-item {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.menu-wrap {
  text-decoration: none;
}

.menu-text-wrap {
  height: 2.25rem;
  position: relative;
  overflow: hidden;
}

.menu-text {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-07);
  line-height: var(--_typography---text-line-height--large-line-height);
  font-weight: var(--_typography---font-weight--medium);
}

.menu-number {
  color: #bbb;
  background-color: #ffffff1a;
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  font-size: .5rem;
  line-height: 1;
  display: flex;
}

.back-to-top-wrapper {
  padding-bottom: 1.5rem;
}

.back-to-top-link {
  border: 1px solid #ffffff26;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 5rem;
  height: 5rem;
  transition: all .35s;
  display: flex;
}

.back-to-top-link:hover {
  border-color: #fff3;
}

.up-arrow {
  color: #fff;
  width: 1.25rem;
  height: 1.25rem;
  font-weight: 400;
}

.footer-logo {
  font-size: var(--_sizes---fixed--xxhuge-01);
}

.footer-info-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr auto;
  width: 100%;
  margin-top: 6rem;
}

.footer-block {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.footer-text {
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--small-01);
  line-height: var(--_typography---text-line-height--small-line-height);
}

.footer-content-block {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  display: flex;
}

.footer-content-block.large-gap {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

.footer-bottom {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.footer-subtitle {
  font-family: var(--_typography---font-family--secondary);
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--small-01);
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.back-to-top {
  width: 100%;
  position: absolute;
  inset: 0% 0% auto;
}

.case-study-grid {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  place-items: start;
  width: 100%;
}

.case-study-content {
  position: sticky;
  top: 8rem;
}

.next-case-wrapper {
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.next-case-background {
  z-index: -1;
  opacity: .75;
  width: 35rem;
  position: absolute;
}

.blog-info-grid {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr auto;
  width: 100%;
}

.blog-description-wrap {
  width: 100%;
  max-width: 34rem;
}

.blog-content-wrapper {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xxlarge);
  flex-flow: column;
  justify-content: space-between;
  height: 100%;
  padding-bottom: 1.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: flex;
}

.more-articles-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.utility-background {
  opacity: .6;
  width: 50rem;
  position: absolute;
}

.service-list-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--primary-color--black);
}

.service-heading {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--xlarge-01);
  letter-spacing: .1rem;
}

.service-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  width: 100%;
}

.doted-line {
  border: 1px dashed #303030;
  width: 100%;
  height: 1px;
}

.service-image-wrap {
  z-index: 2;
  width: 8rem;
  min-width: 8rem;
  height: 8rem;
  min-height: 8rem;
  position: absolute;
  inset: auto 0 0 auto;
}

.service-list-grid {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-columns: 1fr;
  width: 100%;
}

.service-content-wrapper {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  border: 1px solid var(--border-color--primary-border);
  background-color: var(--background-color--secondary-background);
  border-radius: 2rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 2rem 2rem 3rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.service-list-wrap {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  display: flex;
}

.service-feature-text {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--small-01);
  line-height: var(--_typography---text-line-height--small-line-height);
}

.service-item {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.service-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: relative;
  top: -1%;
}

.service-subtitle {
  font-family: var(--_typography---font-family--secondary);
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--xsmall-05);
  text-transform: uppercase;
}

.service-content {
  z-index: 2;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  height: 100%;
  display: flex;
  position: relative;
}

.service-background {
  opacity: .4;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.contact-inner-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
  height: 100%;
}

.contact-link {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border: 1px solid var(--border-color--primary-border);
  color: #fff;
  background-color: #1b1b1b;
  border-radius: 1.25rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 2.5rem 1.5rem;
  transition: all .3s;
  display: flex;
}

.contact-link:hover {
  transform: scale(1.05);
}

.contact-item {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.contact-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--primary-color--white);
}

.contact-title {
  color: var(--primary-color--white);
  font-size: var(--_sizes---fixed--small-03);
  line-height: 1.4;
  font-weight: var(--_typography---font-weight--medium);
}

.contact-text-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 1.25rem;
  display: flex;
  overflow: hidden;
}

.contact-text {
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--small-01);
  line-height: var(--_typography---text-line-height--large-line-height);
  font-weight: var(--_typography---font-weight--regular);
  white-space: nowrap;
}

.about-header-content {
  height: 100%;
  position: relative;
  overflow: clip;
}

.about-title {
  font-size: var(--_sizes---fixed--xxlarge-03);
  line-height: var(--_typography---text-line-height--medium-line-height);
}

.section-about-intro {
  padding-top: var(--_sizes---spacer--huge);
}

.about-wrapper {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.about-content {
  z-index: 5;
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.values-component-grid {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 100%;
}

.value-card {
  border-radius: var(--_sizes---border-radius--xxlarge);
  background-color: var(--primary-color--white);
  padding: 2rem;
  position: relative;
  overflow: hidden;
}

.value-content {
  z-index: 2;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.value-title {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--small-07);
}

.value-icon {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--primary-color--black);
}

.sticky-title {
  color: var(--primary-color--black);
  font-size: var(--_sizes---fixed--medium-01);
  line-height: 1;
  font-weight: var(--_typography---font-weight--medium);
  margin-bottom: 1.5rem;
}

.sticky-container-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: flex-start;
  display: grid;
}

.sticky-content-block {
  border: 1px solid var(--border-color--primary-border);
  border-radius: var(--_sizes---border-radius--xxlarge);
  background-color: var(--primary-color--white);
  width: 100%;
  padding: 2.5rem 2rem;
  position: sticky;
  top: 10vh;
}

.sticky-content-block._03 {
  margin-top: 140vh;
}

.sticky-content-block._02 {
  margin-top: 80vh;
}

.sticky-number {
  color: var(--neutral-color--secondary-neutral);
  font-size: var(--_sizes---fixed--medium-02);
  line-height: 1;
  font-weight: var(--_typography---font-weight--semibold);
  margin-bottom: 1.5rem;
}

.image-overflow {
  border-radius: var(--_sizes---border-radius--huge);
  position: relative;
  overflow: hidden;
}

.text-block {
  color: var(--neutral-color--primary-neutral);
}

.background-video {
  width: 2rem;
  padding-left: 0;
}

.image-2 {
  margin-top: -25px;
  padding-bottom: 0;
}

@media screen and (min-width: 1280px) {
  .testimonial-slider {
    height: 42rem;
  }

  .contact-item {
    flex-flow: row;
  }
}

@media screen and (min-width: 1440px) {
  h1 {
    font-size: var(--_sizes---fixed--xhuge-03);
  }

  h2, .heading-style-h2 {
    font-size: var(--_sizes---fixed--huge-03);
  }

  .heading-style-h1 {
    font-size: var(--_sizes---fixed--xhuge-03);
  }

  .blog-post-title {
    font-size: var(--_sizes---fixed--huge-01);
  }

  .post-title {
    font-size: var(--_sizes---fixed--medium-01);
  }

  .header-title {
    font-size: var(--_sizes---fixed--huge-01);
  }

  .corner-icon.left-nav {
    padding-right: 0;
    left: -19.5px;
  }

  .subtitle {
    font-size: var(--_sizes---fixed--xsmall-05);
  }

  .subtitle-icon {
    height: 1rem;
  }

  .stats-number {
    font-size: var(--_sizes---fixed--xxlarge-03);
  }

  .partner-card {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .case-study-info-block {
    padding-left: 2rem;
    padding-right: 2rem;
    bottom: 2rem;
  }

  .case-study-logo {
    height: 4rem;
    top: -15rem;
  }

  .testimonial-slider {
    height: 45rem;
  }

  .client-picture {
    width: 65%;
  }

  .cta-content {
    max-width: 60rem;
  }

  .background {
    top: 4rem;
  }

  .pricing-video-block {
    width: 18rem;
    height: 18rem;
  }

  .case-study-grid {
    grid-column-gap: 8rem;
    grid-row-gap: 8rem;
  }

  .blog-content-wrapper {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .about-title {
    font-size: var(--_sizes---fixed--huge-01);
  }

  .about-content {
    max-width: 60rem;
  }

  .value-title {
    font-size: var(--_sizes---fixed--medium-02);
  }

  .value-icon {
    width: 2.75rem;
    height: 2.75rem;
  }

  .sticky-title, .sticky-number {
    font-size: var(--_sizes---fixed--medium-03);
  }

  .image {
    margin-top: -174px;
  }
}

@media screen and (min-width: 1920px) {
  .case-study-logo {
    top: -20rem;
  }

  .testimonial-slider {
    height: 48rem;
  }

  .background-video {
    width: 2rem;
    height: 2rem;
    margin-left: 0;
    padding-left: 0;
  }
}

@media screen and (max-width: 991px) {
  body {
    --_sizes---fixed--small-01: 1rem;
    --_sizes---fixed--xhuge-03: 10rem;
    --_sizes---fixed--huge-03: 8rem;
    --_sizes---border-radius--xlarge: 1.25rem;
    --_sizes---fixed--small-03: 1.25rem;
    --_sizes---fixed--xxlarge-01: 5rem;
    --_sizes---fixed--xlarge-01: 4rem;
    --_sizes---fixed--large-01: 3rem;
    --_sizes---fixed--medium-03: 2.5rem;
    --_sizes---fixed--medium-01: 2rem;
    --_sizes---fixed--large-03: 3.5rem;
    --_sizes---fixed--small-07: 1.75rem;
    --_sizes---fixed--small-05: 1.5rem;
    --_sizes---border-radius--xhuge: 2rem;
    --_sizes---fixed--small-02: 1.125rem;
    --_sizes---fixed--xsmall-04: .75rem;
    --_sizes---fixed--xsmall-05: .875rem;
    --_sizes---border-radius--medium: .75rem;
    --_sizes---spacer--xlarge: 3rem;
    --_sizes---border-radius--xxlarge: 1.5rem;
    --_sizes---border-radius--huge: 1.75rem;
    --_sizes---fixed--xxlarge-02: 5.5rem;
    --_sizes---fixed--huge-01: 7rem;
    --_sizes---border-radius--xxhuge: 2.5rem;
    --_sizes---fixed--xxlarge-03: 6rem;
    --_sizes---fixed--medium-02: 2.25rem;
    --_sizes---spacer--small: 1rem;
    --_sizes---fixed--xlarge-03: 4.5rem;
    --_sizes---border-radius--large: 1rem;
    --_sizes---fixed--xxhuge-01: 14rem;
    --_sizes---spacer--huge: 5rem;
    --_sizes---spacer--tiny: .125rem;
    --_sizes---spacer--xxsmall: .25rem;
    --_sizes---spacer--xsmall: .5rem;
    --_sizes---spacer--medium: 1.5rem;
    --_sizes---spacer--large: 2.5rem;
    --_sizes---spacer--xxlarge: 4rem;
    --_sizes---spacer--xhuge: 6rem;
    --_sizes---spacer--xxhuge: 8rem;
    --_sizes---border-radius--tiny: .125rem;
    --_sizes---border-radius--xxsmall: .25rem;
    --_sizes---border-radius--small: .5rem;
    --_sizes---border-radius--100: 100%;
    --_sizes---section--small: 3rem;
    --_sizes---fixed--zero: 0rem;
    --_sizes---fixed--xsmall-01: .125rem;
    --_sizes---fixed--xsmall-02: .25rem;
    --_sizes---fixed--xsmall-03: .5rem;
    --_sizes---fixed--small-04: 1.375rem;
    --_sizes---fixed--small-06: 1.625rem;
    --_sizes---fixed--small-08: 1.875rem;
    --_sizes---fixed--medium-04: 2.75rem;
    --_sizes---fixed--large-02: 3.25rem;
    --_sizes---fixed--large-04: 3.75rem;
    --_sizes---fixed--xlarge-02: 4.25rem;
    --_sizes---fixed--xlarge-04: 4.75rem;
    --_sizes---fixed--xxlarge-04: 6.5rem;
    --_sizes---fixed--huge-02: 7.5rem;
    --_sizes---fixed--huge-04: 8.5rem;
    --_sizes---fixed--xhuge-01: 9rem;
    --_sizes---fixed--xhuge-02: 9.5rem;
    --_sizes---fixed--xhuge-04: 12rem;
    --_sizes---fixed--xxhuge-02: 16rem;
    --_sizes---fixed--xxhuge-03: 18rem;
    --_sizes---fixed--xxhuge-04: 20rem;
    --_sizes---section--medium: 5rem;
    --_sizes---section--large: 8rem;
    --_sizes---section--xlarge: 10rem;
    --_sizes---section--huge: 12rem;
    --_typography---font-family--primary: "Google Sans Flex", Arial, sans-serif;
    --_typography---text-line-height--xhuge-line-height: 150%;
    --_typography---font-weight--regular: 400;
    --_typography---h1--h1-font-family: var(--_typography---font-family--primary);
    --_typography---h1--h1-font-size: var(--_sizes---fixed--xxlarge-01);
    --_typography---text-line-height--small-line-height: 100%;
    --_typography---h1--h1-font-weight: var(--_typography---font-weight--medium);
    --_typography---h2--h2-font-family: var(--_typography---font-family--primary);
    --_typography---h2--h2-font-size: var(--_sizes---fixed--xlarge-01);
    --_typography---text-line-height--medium-line-height: 110%;
    --_typography---h2--h2-font-weight: var(--_typography---font-weight--medium);
    --_typography---h3--h3-font-family: var(--_typography---font-family--primary);
    --_typography---h3--h3-font-size: var(--_sizes---fixed--large-03);
    --_typography---h3--h3-font-weight: var(--_typography---font-weight--medium);
    --_typography---h4--h4-font-family: var(--_typography---font-family--primary);
    --_typography---h4--h4-font-size: var(--_sizes---fixed--large-01);
    --_typography---h4--h4-font-weight: var(--_typography---font-weight--medium);
    --_typography---h5--h5-font-family: var(--_typography---font-family--primary);
    --_typography---h5--h5-font-size: var(--_sizes---fixed--small-05);
    --_typography---text-line-height--large-line-height: 120%;
    --_typography---h5--h5-font-weight: var(--_typography---font-weight--medium);
    --_typography---h6--h6-font-family: var(--_typography---font-family--primary);
    --_typography---h6--h6-font-size: var(--_sizes---fixed--small-01);
    --_typography---h6--h6-font-weight: var(--_typography---font-weight--medium);
    --_typography---text-line-height--huge-line-height: 140%;
    --_typography---font-weight--extra-bold: 800;
    --_typography---font-weight--semibold: 600;
    --_typography---font-weight--bold: 700;
    --_typography---font-weight--medium: 500;
    --_typography---font-weight--light: 300;
    --_typography---text-line-height--xlarge-line-height: 130%;
    --_typography---font-family--secondary: "Google Sans Code", Arial, sans-serif;
    --_typography---font-family--tertiary: "Nyght Serif", Georgia, sans-serif;
    --_typography---font-weight--thin: 100;
    --_typography---font-weight--extra-light: 200;
    --_typography---font-weight--black: 900;
    --_typography---text-size--text-size-tiny: .75rem;
    --_typography---text-size--text-size-small: .875rem;
    --_typography---text-size--text-size-regular: 1rem;
    --_typography---text-size--text-size-medium: 1.25rem;
    --_typography---text-size--text-size-large: 1.5rem;
  }

  h1 {
    font-size: 3rem;
  }

  h3 {
    font-size: 2rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

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

  .padding-section-medium {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .fs-styleguide-section {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .fs-styleguide-2-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

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

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

  .padding-medium {
    padding: 1.5rem;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .fs-styleguide-heading-header {
    font-size: 4rem;
  }

  .text-rich-text h1 {
    font-size: var(--_sizes---fixed--xlarge-01);
  }

  .text-rich-text h2 {
    font-size: var(--_sizes---fixed--large-01);
  }

  .text-rich-text h3 {
    font-size: var(--_sizes---fixed--medium-03);
  }

  .text-rich-text h4 {
    font-size: var(--_sizes---fixed--medium-01);
  }

  .text-rich-text h5 {
    font-size: var(--_sizes---fixed--small-05);
  }

  .text-rich-text h6 {
    font-size: var(--_sizes---fixed--small-03);
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .nav-button {
    color: #fff;
  }

  .max-width-full-tablet {
    width: 100%;
    max-width: none;
  }

  .fs-styleguide-heading-medium {
    font-size: 3rem;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .hide-tablet {
    display: none;
  }

  .margin-xhuge {
    margin: 8rem;
  }

  .fs-styleguide-1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .spacer-huge {
    padding-top: 5rem;
  }

  .nav-style-guide {
    width: 80vw;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  .nav-style-guide-link {
    width: 2.25rem;
    height: 2.25rem;
  }

  .nav-style-guide-icon {
    font-size: 1.5rem;
  }

  .section-home-header {
    height: 60rem;
  }

  .blog-post-info-block {
    width: 100%;
  }

  .blog-post-title {
    font-size: var(--_sizes---fixed--xlarge-01);
  }

  .all-posts-component-grid {
    grid-template-columns: 1fr 1fr;
  }

  .blog-post-block {
    width: 100%;
  }

  .circle-shape._01 {
    width: 15rem;
    height: 15rem;
    bottom: -8rem;
  }

  .circle-shape._02 {
    width: 12rem;
    height: 12rem;
    left: -8.5rem;
  }

  .circle-shape._03 {
    width: 12rem;
    height: 12rem;
    right: -8.5rem;
  }

  .circle-shape._06 {
    width: 8rem;
    height: 8rem;
    bottom: 6.25rem;
    left: 1.75rem;
  }

  .circle-shape._07 {
    width: 8rem;
    height: 8rem;
    bottom: 6.25rem;
    right: 1.75rem;
  }

  .circle-shape._04 {
    width: 10rem;
    height: 10rem;
    bottom: -5rem;
    left: -17.5rem;
  }

  .circle-shape._05 {
    width: 10rem;
    height: 10rem;
    bottom: -5rem;
    right: -17.5rem;
  }

  .header-content-wrap {
    max-width: 40rem;
    top: 0;
  }

  .header-title {
    font-size: 10vw;
  }

  .nav-wrapper {
    height: 4.5rem;
  }

  .intro-text {
    font-size: var(--_sizes---fixed--medium-03);
  }

  .intro-grid {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
  }

  .service-component-grid {
    grid-template-columns: 1fr;
  }

  .stats-component {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .stats-number {
    font-size: var(--_sizes---fixed--xxlarge-01);
  }

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

  .case-study-logo {
    height: 2.5rem;
    top: -7rem;
  }

  .testimonial-grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .testimonial-content-block {
    padding-right: 1rem;
  }

  .testimonial-text {
    font-size: var(--_sizes---fixed--small-05);
  }

  .client-logo {
    height: 2.25rem;
  }

  .quote-icon {
    top: 15%;
  }

  .client-picture {
    width: 90%;
  }

  .price-text {
    font-size: var(--_sizes---fixed--medium-03);
  }

  .call-to-action {
    height: 50rem;
    margin-bottom: 10px;
  }

  .cta-wrapper {
    height: 50rem;
  }

  .cta-content {
    max-width: 30rem;
  }

  .background {
    width: 90%;
    height: 90%;
  }

  .about-shape-01 {
    top: 12rem;
    left: 8rem;
  }

  .about-shape-02 {
    top: 15rem;
    right: 5rem;
  }

  .about-shape-03 {
    bottom: 10rem;
    left: 20rem;
  }

  .about-shape-04 {
    bottom: 0;
    right: 2rem;
  }

  .pricing-video-block {
    width: 12rem;
    height: 12rem;
  }

  .cta-circle-03 {
    bottom: .25rem;
    left: -18.25rem;
  }

  .cta-circle-04 {
    bottom: .25rem;
    right: -18.25rem;
  }

  .cta-circle-01 {
    left: 1.5rem;
  }

  .cta-circle-02 {
    right: 1.5rem;
  }

  .footer-top-content {
    width: auto;
  }

  .footer-title {
    font-size: 1.375rem;
  }

  .footer-menu-wrap {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .footer-logo {
    font-size: var(--_sizes---fixed--xhuge-03);
  }

  .footer-info-grid {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .footer-content-block {
    justify-content: center;
    align-items: center;
  }

  .case-study-grid {
    grid-template-columns: 1fr;
  }

  .case-study-content {
    position: static;
  }

  .blog-info-grid, .more-articles-grid, .service-grid {
    grid-template-columns: 1fr;
  }

  .about-title {
    font-size: var(--_sizes---fixed--xxlarge-02);
  }

  .values-component-grid {
    grid-template-columns: 1fr 1fr;
  }

  .sticky-container-wrapper {
    flex-direction: column;
    grid-template-columns: 1fr;
  }

  .sticky-content-block {
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left-style: none;
  }

  .sticky-content-block._03 {
    margin-top: 15vh;
  }

  .sticky-content-block._02 {
    margin-top: 10vh;
  }
}

@media screen and (max-width: 767px) {
  body {
    --_sizes---fixed--small-01: 1rem;
    --_sizes---fixed--xhuge-03: 10rem;
    --_sizes---fixed--huge-03: 8rem;
    --_sizes---border-radius--xlarge: 1.25rem;
    --_sizes---fixed--small-03: 1.25rem;
    --_sizes---fixed--xxlarge-01: 5rem;
    --_sizes---fixed--xlarge-01: 4rem;
    --_sizes---fixed--large-01: 3rem;
    --_sizes---fixed--medium-03: 2.5rem;
    --_sizes---fixed--medium-01: 2rem;
    --_sizes---fixed--large-03: 3.5rem;
    --_sizes---fixed--small-07: 1.75rem;
    --_sizes---fixed--small-05: 1.5rem;
    --_sizes---border-radius--xhuge: 2rem;
    --_sizes---fixed--small-02: 1.125rem;
    --_sizes---fixed--xsmall-04: .75rem;
    --_sizes---fixed--xsmall-05: .875rem;
    --_sizes---border-radius--medium: .75rem;
    --_sizes---spacer--xlarge: 4rem;
    --_sizes---border-radius--xxlarge: 1.5rem;
    --_sizes---border-radius--huge: 1.75rem;
    --_sizes---fixed--xxlarge-02: 5.5rem;
    --_sizes---fixed--huge-01: 7rem;
    --_sizes---border-radius--xxhuge: 2.5rem;
    --_sizes---fixed--xxlarge-03: 6rem;
    --_sizes---fixed--medium-02: 2.25rem;
    --_sizes---spacer--small: 1rem;
    --_sizes---fixed--xlarge-03: 4.5rem;
    --_sizes---border-radius--large: 1rem;
    --_sizes---fixed--xxhuge-01: 14rem;
    --_sizes---spacer--huge: 6rem;
    --_sizes---spacer--tiny: .125rem;
    --_sizes---spacer--xxsmall: .25rem;
    --_sizes---spacer--xsmall: .5rem;
    --_sizes---spacer--medium: 2rem;
    --_sizes---spacer--large: 3rem;
    --_sizes---spacer--xxlarge: 5rem;
    --_sizes---spacer--xhuge: 8rem;
    --_sizes---spacer--xxhuge: 10rem;
    --_sizes---border-radius--tiny: .125rem;
    --_sizes---border-radius--xxsmall: .25rem;
    --_sizes---border-radius--small: .5rem;
    --_sizes---border-radius--100: 100%;
    --_sizes---section--small: 3rem;
    --_sizes---fixed--zero: 0rem;
    --_sizes---fixed--xsmall-01: .125rem;
    --_sizes---fixed--xsmall-02: .25rem;
    --_sizes---fixed--xsmall-03: .5rem;
    --_sizes---fixed--small-04: 1.375rem;
    --_sizes---fixed--small-06: 1.625rem;
    --_sizes---fixed--small-08: 1.875rem;
    --_sizes---fixed--medium-04: 2.75rem;
    --_sizes---fixed--large-02: 3.25rem;
    --_sizes---fixed--large-04: 3.75rem;
    --_sizes---fixed--xlarge-02: 4.25rem;
    --_sizes---fixed--xlarge-04: 4.75rem;
    --_sizes---fixed--xxlarge-04: 6.5rem;
    --_sizes---fixed--huge-02: 7.5rem;
    --_sizes---fixed--huge-04: 8.5rem;
    --_sizes---fixed--xhuge-01: 9rem;
    --_sizes---fixed--xhuge-02: 9.5rem;
    --_sizes---fixed--xhuge-04: 12rem;
    --_sizes---fixed--xxhuge-02: 16rem;
    --_sizes---fixed--xxhuge-03: 18rem;
    --_sizes---fixed--xxhuge-04: 20rem;
    --_sizes---section--medium: 5rem;
    --_sizes---section--large: 8rem;
    --_sizes---section--xlarge: 10rem;
    --_sizes---section--huge: 12rem;
    --_typography---font-family--primary: "Google Sans Flex", Arial, sans-serif;
    --_typography---text-line-height--xhuge-line-height: 150%;
    --_typography---font-weight--regular: 400;
    --_typography---h1--h1-font-family: var(--_typography---font-family--primary);
    --_typography---h1--h1-font-size: var(--_sizes---fixed--xlarge-03);
    --_typography---text-line-height--small-line-height: 100%;
    --_typography---h1--h1-font-weight: var(--_typography---font-weight--medium);
    --_typography---h2--h2-font-family: var(--_typography---font-family--primary);
    --_typography---h2--h2-font-size: var(--_sizes---fixed--xlarge-01);
    --_typography---text-line-height--medium-line-height: 110%;
    --_typography---h2--h2-font-weight: var(--_typography---font-weight--medium);
    --_typography---h3--h3-font-family: var(--_typography---font-family--primary);
    --_typography---h3--h3-font-size: var(--_sizes---fixed--medium-04);
    --_typography---h3--h3-font-weight: var(--_typography---font-weight--medium);
    --_typography---h4--h4-font-family: var(--_typography---font-family--primary);
    --_typography---h4--h4-font-size: var(--_sizes---fixed--medium-03);
    --_typography---h4--h4-font-weight: var(--_typography---font-weight--medium);
    --_typography---h5--h5-font-family: var(--_typography---font-family--primary);
    --_typography---h5--h5-font-size: var(--_sizes---fixed--small-03);
    --_typography---text-line-height--large-line-height: 120%;
    --_typography---h5--h5-font-weight: var(--_typography---font-weight--medium);
    --_typography---h6--h6-font-family: var(--_typography---font-family--primary);
    --_typography---h6--h6-font-size: var(--_sizes---fixed--small-01);
    --_typography---h6--h6-font-weight: var(--_typography---font-weight--medium);
    --_typography---text-line-height--huge-line-height: 140%;
    --_typography---font-weight--extra-bold: 800;
    --_typography---font-weight--semibold: 600;
    --_typography---font-weight--bold: 700;
    --_typography---font-weight--medium: 500;
    --_typography---font-weight--light: 300;
    --_typography---text-line-height--xlarge-line-height: 130%;
    --_typography---font-family--secondary: "Google Sans Code", Arial, sans-serif;
    --_typography---font-family--tertiary: "Nyght Serif", Georgia, sans-serif;
    --_typography---font-weight--thin: 100;
    --_typography---font-weight--extra-light: 200;
    --_typography---font-weight--black: 900;
    --_typography---text-size--text-size-tiny: .75rem;
    --_typography---text-size--text-size-small: .875rem;
    --_typography---text-size--text-size-regular: 1rem;
    --_typography---text-size--text-size-medium: 1.25rem;
    --_typography---text-size--text-size-large: 1.5rem;
  }

  h1, h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 1.5rem;
  }

  h4, h5 {
    font-size: 1.25rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

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

  .padding-medium {
    padding: 1.25rem;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .text-rich-text h1 {
    font-size: var(--_sizes---fixed--large-01);
  }

  .text-rich-text h2 {
    font-size: var(--_sizes---fixed--medium-03);
  }

  .text-rich-text h3 {
    font-size: var(--_sizes---fixed--medium-01);
  }

  .text-rich-text h4 {
    font-size: var(--_sizes---fixed--small-05);
  }

  .text-rich-text h5 {
    font-size: var(--_sizes---fixed--small-03);
  }

  .text-rich-text h6 {
    font-size: var(--_sizes---fixed--small-01);
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .fs-styleguide-heading-medium {
    font-size: 2rem;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .hide-mobile-landscape {
    display: none;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .padding-global {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .max-width-full-mobile-landscape {
    width: 100%;
    max-width: none;
  }

  .text-style-nowrap {
    white-space: normal;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .fs-styleguide-section-header {
    font-size: .875rem;
  }

  .project-info-grid {
    grid-template-columns: 1fr;
  }

  .blog-post-info-block {
    width: 100%;
  }

  .blog-post-title {
    font-size: var(--_sizes---fixed--large-03);
  }

  .blog-post-top-grid {
    grid-template-columns: 1fr;
  }

  .all-posts-component-grid {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .blog-post-block {
    width: 100%;
  }

  .header-title {
    font-size: 12vw;
  }

  .intro-text {
    font-size: var(--_sizes---fixed--medium-02);
  }

  .circle-video-wrap {
    width: 10rem;
    height: 10rem;
  }

  .service-icon {
    height: 3.25rem;
  }

  .top-grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .case-studies-grid {
    grid-template-columns: 1fr;
  }

  .case-study-logo {
    height: 3rem;
    top: -12rem;
  }

  .testimonial-content-grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .testimonial-grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .client-content-wrap {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    height: 45rem;
  }

  .testimonial-content-block {
    padding-top: 1rem;
    padding-bottom: 2rem;
    padding-left: 1rem;
  }

  .testimonial-text {
    font-size: 1.5rem;
  }

  .testimonial-slider {
    height: auto;
  }

  .quote-icon {
    opacity: .03;
    height: 6rem;
    top: auto;
    bottom: 1rem;
    right: 5%;
  }

  .client-picture {
    width: 100%;
    height: 100%;
    position: static;
  }

  .pricing-component-grid {
    grid-template-columns: 1fr;
  }

  .pricing-video-wrap {
    height: 40rem;
  }

  .price-text {
    font-size: 3rem;
  }

  .price-block {
    flex-flow: row;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .client-rating-wrap {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
    flex-flow: column;
  }

  .about-shape-01 {
    top: 11rem;
    left: 6rem;
    transform: scale(.65);
  }

  .footer-padding {
    padding-top: 6rem;
  }

  .about-shape-02 {
    top: 12rem;
    transform: scale(.9);
  }

  .about-shape-03 {
    transform: scale(1.1);
  }

  .about-shape-04 {
    bottom: 0;
    right: 1rem;
  }

  .pricing-video-block {
    width: 10rem;
    height: 10rem;
  }

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

  .footer-top-content {
    width: 22rem;
  }

  .footer-title {
    font-size: 2rem;
  }

  .footer-logo {
    font-size: var(--_sizes---fixed--huge-01);
    position: relative;
    bottom: 1rem;
  }

  .footer-info-grid {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
  }

  .footer-text.hide-mobile {
    display: none;
  }

  .footer-content-block {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .utility-background {
    width: 100%;
  }

  .service-image-wrap {
    width: 6rem;
    min-width: 6rem;
    height: 6rem;
    min-height: 6rem;
  }

  .contact-inner-grid {
    grid-template-columns: 1fr;
  }

  .about-title {
    font-size: var(--_sizes---fixed--xlarge-03);
  }

  .sticky-container-wrapper {
    grid-template-columns: 1fr;
  }

  .sticky-content-block._03, .sticky-content-block._02 {
    margin-top: 5vh;
  }
}

@media screen and (max-width: 479px) {
  body {
    --_sizes---fixed--small-01: 1rem;
    --_sizes---fixed--xhuge-03: 10rem;
    --_sizes---fixed--huge-03: 8rem;
    --_sizes---border-radius--xlarge: 1.25rem;
    --_sizes---fixed--small-03: 1.25rem;
    --_sizes---fixed--xxlarge-01: 5rem;
    --_sizes---fixed--xlarge-01: 4rem;
    --_sizes---fixed--large-01: 3rem;
    --_sizes---fixed--medium-03: 2.5rem;
    --_sizes---fixed--medium-01: 2rem;
    --_sizes---fixed--large-03: 3.5rem;
    --_sizes---fixed--small-07: 1.75rem;
    --_sizes---fixed--small-05: 1.5rem;
    --_sizes---border-radius--xhuge: 2rem;
    --_sizes---fixed--small-02: 1.125rem;
    --_sizes---fixed--xsmall-04: .75rem;
    --_sizes---fixed--xsmall-05: .875rem;
    --_sizes---border-radius--medium: .75rem;
    --_sizes---spacer--xlarge: 4rem;
    --_sizes---border-radius--xxlarge: 1.5rem;
    --_sizes---border-radius--huge: 1.75rem;
    --_sizes---fixed--xxlarge-02: 5.5rem;
    --_sizes---fixed--huge-01: 7rem;
    --_sizes---border-radius--xxhuge: 2.5rem;
    --_sizes---fixed--xxlarge-03: 6rem;
    --_sizes---fixed--medium-02: 2.25rem;
    --_sizes---spacer--small: 1rem;
    --_sizes---fixed--xlarge-03: 4.5rem;
    --_sizes---border-radius--large: 1rem;
    --_sizes---fixed--xxhuge-01: 14rem;
    --_sizes---spacer--huge: 6rem;
    --_sizes---spacer--tiny: .125rem;
    --_sizes---spacer--xxsmall: .25rem;
    --_sizes---spacer--xsmall: .5rem;
    --_sizes---spacer--medium: 2rem;
    --_sizes---spacer--large: 3rem;
    --_sizes---spacer--xxlarge: 5rem;
    --_sizes---spacer--xhuge: 8rem;
    --_sizes---spacer--xxhuge: 10rem;
    --_sizes---border-radius--tiny: .125rem;
    --_sizes---border-radius--xxsmall: .25rem;
    --_sizes---border-radius--small: .5rem;
    --_sizes---border-radius--100: 100%;
    --_sizes---section--small: 3rem;
    --_sizes---fixed--zero: 0rem;
    --_sizes---fixed--xsmall-01: .125rem;
    --_sizes---fixed--xsmall-02: .25rem;
    --_sizes---fixed--xsmall-03: .5rem;
    --_sizes---fixed--small-04: 1.375rem;
    --_sizes---fixed--small-06: 1.625rem;
    --_sizes---fixed--small-08: 1.875rem;
    --_sizes---fixed--medium-04: 2.75rem;
    --_sizes---fixed--large-02: 3.25rem;
    --_sizes---fixed--large-04: 3.75rem;
    --_sizes---fixed--xlarge-02: 4.25rem;
    --_sizes---fixed--xlarge-04: 4.75rem;
    --_sizes---fixed--xxlarge-04: 6.5rem;
    --_sizes---fixed--huge-02: 7.5rem;
    --_sizes---fixed--huge-04: 8.5rem;
    --_sizes---fixed--xhuge-01: 9rem;
    --_sizes---fixed--xhuge-02: 9.5rem;
    --_sizes---fixed--xhuge-04: 12rem;
    --_sizes---fixed--xxhuge-02: 16rem;
    --_sizes---fixed--xxhuge-03: 18rem;
    --_sizes---fixed--xxhuge-04: 20rem;
    --_sizes---section--medium: 5rem;
    --_sizes---section--large: 8rem;
    --_sizes---section--xlarge: 10rem;
    --_sizes---section--huge: 12rem;
    --_typography---font-family--primary: "Google Sans Flex", Arial, sans-serif;
    --_typography---text-line-height--xhuge-line-height: 150%;
    --_typography---font-weight--regular: 400;
    --_typography---h1--h1-font-family: var(--_typography---font-family--primary);
    --_typography---h1--h1-font-size: var(--_sizes---fixed--large-03);
    --_typography---text-line-height--small-line-height: 100%;
    --_typography---h1--h1-font-weight: var(--_typography---font-weight--medium);
    --_typography---h2--h2-font-family: var(--_typography---font-family--primary);
    --_typography---h2--h2-font-size: var(--_sizes---fixed--large-01);
    --_typography---text-line-height--medium-line-height: 110%;
    --_typography---h2--h2-font-weight: var(--_typography---font-weight--medium);
    --_typography---h3--h3-font-family: var(--_typography---font-family--primary);
    --_typography---h3--h3-font-size: var(--_sizes---fixed--small-07);
    --_typography---h3--h3-font-weight: var(--_typography---font-weight--medium);
    --_typography---h4--h4-font-family: var(--_typography---font-family--primary);
    --_typography---h4--h4-font-size: var(--_sizes---fixed--small-05);
    --_typography---h4--h4-font-weight: var(--_typography---font-weight--medium);
    --_typography---h5--h5-font-family: var(--_typography---font-family--primary);
    --_typography---h5--h5-font-size: var(--_sizes---fixed--small-01);
    --_typography---text-line-height--large-line-height: 120%;
    --_typography---h5--h5-font-weight: var(--_typography---font-weight--medium);
    --_typography---h6--h6-font-family: var(--_typography---font-family--primary);
    --_typography---h6--h6-font-size: var(--_sizes---fixed--xsmall-04);
    --_typography---h6--h6-font-weight: var(--_typography---font-weight--medium);
    --_typography---text-line-height--huge-line-height: 140%;
    --_typography---font-weight--extra-bold: 800;
    --_typography---font-weight--semibold: 600;
    --_typography---font-weight--bold: 700;
    --_typography---font-weight--medium: 500;
    --_typography---font-weight--light: 300;
    --_typography---text-line-height--xlarge-line-height: 130%;
    --_typography---font-family--secondary: "Google Sans Code", Arial, sans-serif;
    --_typography---font-family--tertiary: "Nyght Serif", Georgia, sans-serif;
    --_typography---font-weight--thin: 100;
    --_typography---font-weight--extra-light: 200;
    --_typography---font-weight--black: 900;
    --_typography---text-size--text-size-tiny: .75rem;
    --_typography---text-size--text-size-small: .875rem;
    --_typography---text-size--text-size-regular: 1rem;
    --_typography---text-size--text-size-medium: 1.25rem;
    --_typography---text-size--text-size-large: 1.5rem;
  }

  h2 {
    font-size: 1.75rem;
  }

  h3 {
    font-size: 1.25rem;
  }

  h4 {
    font-size: 1rem;
  }

  h5 {
    font-size: .875rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .max-width-full-mobile-portrait {
    width: 100%;
    max-width: none;
  }

  .button-group {
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
    width: 12rem;
  }

  .spacer-xlarge {
    padding-top: 3.5rem;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

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

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .text-rich-text h1 {
    font-size: var(--_sizes---fixed--medium-03);
  }

  .text-rich-text h2 {
    font-size: var(--_sizes---fixed--medium-01);
  }

  .text-rich-text h3 {
    font-size: var(--_sizes---fixed--small-07);
  }

  .text-rich-text h4 {
    font-size: var(--_sizes---fixed--small-05);
  }

  .text-rich-text h5 {
    font-size: var(--_sizes---fixed--small-03);
  }

  .text-rich-text h6 {
    font-size: var(--_sizes---fixed--small-01);
  }

  .text-size-medium {
    font-size: var(--_sizes---fixed--small-02);
  }

  .text-size-medium.centered-on-mobile {
    text-align: center;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .hide-mobile-portrait {
    display: none;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-section-large {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .fs-styleguide-row {
    flex-wrap: wrap;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .spacer-huge {
    padding-top: 4rem;
  }

  .nav-style-guide {
    width: 92vw;
    padding: 1rem;
  }

  .nav-style-guide-link {
    width: 2rem;
    height: 2rem;
  }

  .nav-style-guide-icon {
    font-size: 1.25rem;
  }

  .padding-top-header {
    padding-top: 8rem;
  }

  .social-media-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .contact-form-wrapper {
    padding: 2.5rem 1.5rem;
  }

  .utility-icon {
    width: 10rem;
    height: 10rem;
  }

  .changelog-content-flex {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    flex-direction: column;
    align-items: flex-start;
  }

  .changelog-flex {
    flex-direction: column;
    align-items: flex-start;
  }

  .section-home-header {
    height: 46rem;
    padding-bottom: 8px;
    padding-left: 8px;
    padding-right: 8px;
  }

  .section-about-header {
    height: 50rem;
  }

  .project-content-grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .blog-post-info-block {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
  }

  .blog-post-title {
    font-size: 2.5rem;
  }

  .blog-post-info {
    padding-top: 10px;
  }

  .blog-post-content {
    padding-top: 1rem;
  }

  .blog-post-category {
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 12px;
  }

  .all-posts-component-grid {
    grid-template-columns: 1fr;
  }

  .blog-post-block {
    width: 100%;
  }

  .circle-shape._01 {
    width: 10rem;
    height: 10rem;
    bottom: -6rem;
  }

  .circle-shape._02 {
    width: 6rem;
    height: 6rem;
    bottom: .75rem;
    left: .5rem;
  }

  .circle-shape._03 {
    width: 6rem;
    height: 6rem;
    bottom: .75rem;
    right: .5rem;
  }

  .circle-shape._06 {
    width: 4rem;
    height: 4rem;
    bottom: 4rem;
    left: 6rem;
  }

  .circle-shape._07 {
    width: 4rem;
    height: 4rem;
    bottom: 4rem;
    right: 6rem;
  }

  .circle-shape._04 {
    width: 5rem;
    height: 5rem;
    bottom: -2.5rem;
    left: -3rem;
  }

  .circle-shape._05 {
    width: 5rem;
    height: 5rem;
    bottom: -2.5rem;
    right: -3rem;
  }

  .header-content-wrap {
    max-width: none;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    top: .5rem;
  }

  .header-title {
    font-size: 12vw;
  }

  .nav-wrapper {
    width: 14rem;
    height: 4.25rem;
  }

  .corner-icon.left-nav {
    left: -19.75px;
  }

  .corner-icon.right-nav {
    right: -19.75px;
  }

  .nav-block {
    padding-right: 14px;
  }

  .primary-button {
    height: 3.5rem;
  }

  .logo-link {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    min-height: 2rem;
  }

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

  .button-arrow {
    height: 1.125rem;
  }

  .video-logo {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    min-height: 2rem;
  }

  .menu-button {
    width: 3rem;
    height: 3rem;
  }

  .menu-icon-grid {
    width: 1.5rem;
    height: 1.5rem;
  }

  .menu-dot {
    width: 4px;
    height: 4px;
  }

  .navigation-content {
    margin-top: 5rem;
  }

  .secondary-button {
    height: 3.5rem;
  }

  .secondary-button-block {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .intro-text {
    font-size: 6vw;
  }

  .intro-grid {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .circle-video-wrap {
    width: 8rem;
    height: 8rem;
  }

  .social-wrap {
    justify-content: center;
    align-items: center;
  }

  .service-title {
    font-size: var(--_sizes---fixed--medium-02);
  }

  .service-content-block {
    grid-column-gap: 1.75rem;
    grid-row-gap: 1.75rem;
  }

  .service-icon {
    height: 3rem;
  }

  .stats-number {
    font-size: var(--_sizes---fixed--xlarge-03);
  }

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

  .partner-card {
    border-radius: var(--_sizes---border-radius--large);
    padding: 1.5rem;
  }

  .case-study-info-block {
    bottom: 1rem;
  }

  .case-study-text {
    font-size: var(--_sizes---fixed--small-01);
  }

  .case-study-year {
    grid-column-gap: 3px;
    grid-row-gap: 3px;
  }

  .copyright-symbol {
    font-size: var(--_sizes---fixed--small-05);
  }

  .case-study-logo {
    height: 2.5rem;
    top: -6.5rem;
  }

  .right-arrow {
    width: 49%;
  }

  .testimonial-content-item {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .testimonial-info {
    justify-content: flex-start;
    align-items: flex-start;
    padding-left: 20px;
  }

  .client-content-wrap {
    justify-content: flex-end;
    align-items: flex-start;
    height: 28rem;
  }

  .testimonial-content-block {
    padding-bottom: 1.5rem;
  }

  .testimonial-text {
    font-size: var(--_sizes---fixed--small-02);
  }

  .review-star {
    width: .875rem;
    height: .875rem;
  }

  .star-rating-block {
    grid-column-gap: 3px;
    grid-row-gap: 3px;
  }

  .left-arrow {
    width: 49%;
  }

  .quote-icon {
    height: 4rem;
    bottom: 1rem;
    right: 1rem;
  }

  .pricing-video-wrap {
    height: 35rem;
  }

  .price-text {
    font-size: 2.5rem;
  }

  .pricing-block {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
    align-items: flex-start;
  }

  .price-block {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-flow: row;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .feature-item {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .pricing-content-grid {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
  }

  .check-icon {
    min-width: 1.25rem;
    min-height: 1.25rem;
    margin-top: 3px;
  }

  .star-rating {
    width: .875rem;
    height: .875rem;
  }

  .package-inner-grid {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .client-avatar {
    width: 3rem;
    height: 3rem;
  }

  .client-rating-wrap {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .call-to-action, .cta-wrapper {
    height: 40rem;
  }

  .about-shape-01 {
    top: 12rem;
    left: 2rem;
  }

  .footer-padding {
    padding-top: 5rem;
  }

  .about-shape-02 {
    right: 0;
  }

  .about-shape-03 {
    bottom: 4rem;
    left: 4rem;
  }

  .about-shape-04 {
    right: -3rem;
  }

  .pricing-video-block {
    width: 8rem;
    height: 8rem;
  }

  .cta-circle-03 {
    bottom: 2rem;
    left: -10rem;
  }

  .cta-circle-04 {
    bottom: 2rem;
    right: -10rem;
  }

  .cta-circle-01 {
    bottom: -1.5rem;
    left: 1rem;
  }

  .cta-circle-02 {
    bottom: -1.5rem;
    right: 1rem;
  }

  .footer-top-content {
    width: 16rem;
  }

  .footer-title {
    font-size: 1.5rem;
  }

  .menu-text-wrap {
    height: 2.25rem;
  }

  .menu-text {
    font-size: 1.75rem;
  }

  .back-to-top-link {
    width: 4.5rem;
    height: 4.5rem;
  }

  .footer-logo {
    font-size: var(--_sizes---fixed--xlarge-01);
    position: relative;
    bottom: 1.5rem;
  }

  .footer-info-grid {
    margin-top: 4rem;
  }

  .footer-text.hide-mobile {
    display: none;
  }

  .footer-content-block {
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: center;
  }

  .footer-content-block.large-gap {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .service-heading {
    font-size: var(--_sizes---fixed--large-01);
  }

  .service-image-wrap {
    width: 3rem;
    min-width: 3rem;
    height: 3rem;
    min-height: 3rem;
    inset: 0 0 auto auto;
  }

  .service-content {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .contact-link {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .about-header-content {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .about-title {
    font-size: var(--_sizes---fixed--large-01);
    line-height: var(--_typography---text-line-height--large-line-height);
  }

  .section-about-intro {
    padding-top: var(--_sizes---spacer--xlarge);
  }

  .about-content {
    max-width: none;
  }

  .values-component-grid {
    grid-template-columns: 1fr;
  }

  .sticky-content-block {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

#lx-node-_429471bc-ced2-2749-176b-bf5464639864-ecef8489 {
  grid-area: 1 / 1 / 6 / 7;
}

#lx-node-dbac2bff-b18d-e80c-48dd-069f28763327-ecef8489 {
  grid-area: 4 / 1 / 7 / 7;
}

#lx-node-_44e6cf6b-23c8-b7cc-cbe1-56e27d5752d9-ecef8489 {
  justify-self: center;
}

#lx-node-_096763d5-ceaf-d619-dc80-7e7d1e4b2521-ecef8489, #lx-node-_4e41fc46-d25f-9b81-1fc3-f6e9c2795710-ecef8489 {
  place-self: center end;
}

#lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee0fc-ecef8489 {
  justify-self: center;
}

#lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee106-ecef8489 {
  justify-self: end;
}

#lx-node-_0c845e1f-0b9b-f4e3-40b6-02d6e39817db-ecef8489 {
  place-self: center end;
}

#lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b28-713f3b22 {
  align-self: start;
}

#lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b33-713f3b22 {
  place-self: end center;
}

#lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b69-713f3b22 {
  place-self: end;
}

#lx-node-_3f4a5657-51f6-631c-ccf0-bb4e1629c60c-467e6831 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: auto center;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e6837-467e6831 {
  align-self: start;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e6849-467e6831 {
  place-self: center;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e684b-467e6831 {
  align-self: end;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e6854-467e6831 {
  align-self: start;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e685f-467e6831 {
  align-self: center;
}

#lx-node-_1a8889b2-a75b-8f8a-4816-b2bf55d220ab-467e6831 {
  align-self: start;
}

#lx-node-_1a8889b2-a75b-8f8a-4816-b2bf55d220b5-467e6831 {
  align-self: center;
}

#lx-node-cd5a599a-be0c-1b6c-b92e-68a98d02397a-467e6831 {
  align-self: start;
}

#lx-node-cd5a599a-be0c-1b6c-b92e-68a98d023984-467e6831 {
  align-self: center;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e6880-467e6831 {
  align-self: start;
}

#lx-node-_2decf7f4-d69c-1fc4-b777-7234467e688b-467e6831 {
  align-self: center;
}

#lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f4977-f32f4961, #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f4994-f32f4961, #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f49b1-f32f4961 {
  align-self: end;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c3a-03b82c0d {
  grid-area: 1 / 1 / 2 / 2;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c3b-03b82c0d {
  grid-area: 1 / 2 / 2 / 3;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c3c-03b82c0d {
  grid-area: 1 / 3 / 2 / 4;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c3d-03b82c0d {
  grid-area: 2 / 1 / 3 / 2;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c3e-03b82c0d {
  grid-area: 2 / 2 / 3 / 3;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c3f-03b82c0d {
  grid-area: 2 / 3 / 3 / 4;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c40-03b82c0d {
  grid-area: 3 / 1 / 4 / 2;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c41-03b82c0d {
  grid-area: 3 / 2 / 4 / 3;
  place-self: center;
}

#lx-node-_3e786cae-281e-efdc-60e1-f44803b82c42-03b82c0d {
  grid-area: 3 / 3 / 4 / 4;
  place-self: center;
}

#lx-node-_693b4526-1c20-def6-38ad-185e708db5f7-ecef848e {
  justify-self: center;
}

#lx-node-_710d6217-461a-f3ed-cf22-4f1ae1af1077-ecef848e, #lx-node-_5086bc31-f67c-57d6-55d3-0333a8989118-ecef848e {
  place-self: center end;
}

#lx-node-b64969ca-1eea-7ccf-75dc-e7ec73bbe449-ecef848e, #lx-node-b64969ca-1eea-7ccf-75dc-e7ec73bbe453-ecef848e, #lx-node-b64969ca-1eea-7ccf-75dc-e7ec73bbe45d-ecef848e {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#lx-node-e519792f-0553-8406-6463-3938a8bcbe5a-ecef8494 {
  place-self: end start;
}

#lx-node-_8eade91d-6ea8-8fc4-faea-10fbe220fa5d-ecef8494 {
  justify-self: end;
}

#lx-node-_089b5806-14cb-8a2f-37cf-3471f6a88002-ecef8495 {
  justify-self: start;
}

#lx-node-_089b5806-14cb-8a2f-37cf-3471f6a88007-ecef8495 {
  justify-self: center;
}

#lx-node-_089b5806-14cb-8a2f-37cf-3471f6a8800c-ecef8495 {
  justify-self: end;
}

#lx-node-_7d1ecb94-2d37-2579-bd12-5ce9189d583c-ecef8497 {
  place-self: center end;
}

@media screen and (max-width: 991px) {
  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee0fc-ecef8489 {
    justify-self: end;
  }

  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee106-ecef8489 {
    justify-self: start;
  }

  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee110-ecef8489 {
    justify-self: end;
  }

  #lx-node-_8eade91d-6ea8-8fc4-faea-10fbe220fa5d-ecef8494 {
    justify-self: start;
  }
}

@media screen and (max-width: 767px) {
  #lx-node-df0b817a-18c3-b3f0-becc-5a549af73e70-ecef8489 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_096763d5-ceaf-d619-dc80-7e7d1e4b2521-ecef8489 {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_4e41fc46-d25f-9b81-1fc3-f6e9c279570c-ecef8489 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_4e41fc46-d25f-9b81-1fc3-f6e9c2795710-ecef8489 {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_0c845e1f-0b9b-f4e3-40b6-02d6e39817d7-ecef8489 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_0c845e1f-0b9b-f4e3-40b6-02d6e39817db-ecef8489, #lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b69-713f3b22 {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f4967-f32f4961 {
    grid-area: 2 / 1 / 3 / 3;
  }

  #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f497a-f32f4961 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f4984-f32f4961 {
    grid-area: 2 / 1 / 3 / 3;
  }

  #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f4997-f32f4961 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f49a1-f32f4961 {
    grid-area: 2 / 1 / 3 / 3;
  }

  #lx-node-_7dc5c176-3ce9-4d8e-fa45-220bf32f49b4-f32f4961, #lx-node-_710d6217-461a-f3ed-cf22-4f1ae1af1073-ecef848e {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_710d6217-461a-f3ed-cf22-4f1ae1af1077-ecef848e {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_5086bc31-f67c-57d6-55d3-0333a8989114-ecef848e {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_5086bc31-f67c-57d6-55d3-0333a8989118-ecef848e {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_089b5806-14cb-8a2f-37cf-3471f6a88007-ecef8495 {
    justify-self: end;
  }

  #lx-node-_089b5806-14cb-8a2f-37cf-3471f6a8800c-ecef8495 {
    justify-self: start;
  }

  #lx-node-_7d1ecb94-2d37-2579-bd12-5ce9189d5838-ecef8497 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_7d1ecb94-2d37-2579-bd12-5ce9189d583c-ecef8497 {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }
}

@media screen and (max-width: 479px) {
  #lx-node-dbac2bff-b18d-e80c-48dd-069f28763327-ecef8489 {
    grid-row-start: 1;
  }

  #lx-node-_44e6cf6b-23c8-b7cc-cbe1-56e27d5752d9-ecef8489 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_2379b48e-63ed-e4d2-bf26-3448f84df1fa-ecef8489 {
    grid-area: 2 / 1 / 3 / 3;
  }

  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee0f2-ecef8489 {
    grid-area: 1 / 1 / 2 / 3;
    justify-self: start;
  }

  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee0fc-ecef8489 {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee106-ecef8489 {
    grid-area: 3 / 1 / 4 / 3;
  }

  #lx-node-_9405c1c5-bf81-53fd-e15f-99ae2a7ee110-ecef8489 {
    grid-area: 4 / 1 / 5 / 3;
    justify-self: start;
  }

  #lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b28-713f3b22 {
    grid-area: 1 / 1 / 2 / 3;
    justify-self: start;
  }

  #lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b33-713f3b22 {
    grid-area: 2 / 1 / 3 / 3;
    justify-self: start;
  }

  #lx-node-_7130dc5f-9d7b-8873-b7ca-0277713f3b69-713f3b22 {
    grid-row: 3 / 4;
  }

  #lx-node-_2decf7f4-d69c-1fc4-b777-7234467e6833-467e6831 {
    grid-area: 2 / 1 / 3 / 2;
  }

  #lx-node-_2decf7f4-d69c-1fc4-b777-7234467e6850-467e6831 {
    grid-area: 1 / 1 / 2 / 2;
  }

  #lx-node-_693b4526-1c20-def6-38ad-185e708db5f7-ecef848e {
    grid-area: 1 / 1 / 2 / 3;
  }

  #lx-node-_693b4526-1c20-def6-38ad-185e708db5fa-ecef848e {
    grid-area: 2 / 1 / 3 / 3;
  }

  #lx-node-_089b5806-14cb-8a2f-37cf-3471f6a88007-ecef8495 {
    justify-self: start;
  }
}


@font-face {
  font-family: 'Google Sans Flex';
  src: url('../fonts/GoogleSansFlex-VariableFont_GRADRONDopszslntwdthwght.woff2') format('woff2');
  font-weight: 1 1000;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Nyght Serif';
  src: url('../fonts/NyghtSerif-RegularItalic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Nyght Serif';
  src: url('../fonts/NyghtSerif-MediumItalic.woff2') format('woff2');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Nyght Serif';
  src: url('../fonts/NyghtSerif-LightItalic.woff2') format('woff2');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Google Sans Code';
  src: url('../fonts/GoogleSansCode-VariableFont_wght.woff2') format('woff2');
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}

/* ---------- Verified platforms strip (Latonis custom) ---------- */
.verified-section {
  position: relative;
}

.verified-padding {
  padding: 6rem 0 7rem;
}

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

.verified-heading {
  font-family: var(--_typography---h2--h2-font-family);
  font-size: var(--_typography---h2--h2-font-size);
  font-weight: var(--_typography---h2--h2-font-weight);
  margin: 0;
}

.verified-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  display: grid;
}

.verified-card {
  border: 1px solid var(--border-color--primary-border);
  border-radius: 1.25rem;
  flex-direction: column;
  justify-content: space-between;
  gap: 2.75rem;
  padding: 1.9rem 1.6rem 1.5rem;
  color: var(--primary-color--white);
  background-color: var(--background-color--primary-background);
  text-decoration: none;
  transition: border-color .35s, background-color .35s;
  display: flex;
}

.verified-card:hover {
  border-color: #ffffff4d;
  background-color: #262626;
}

.verified-logo {
  align-items: center;
  gap: .7rem;
  min-height: 30px;
  color: var(--primary-color--white);
  display: flex;
}

.verified-glyph {
  flex: none;
  display: flex;
}

.verified-glyph svg {
  width: 26px;
  height: 26px;
  display: block;
}

.verified-name {
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -.01em;
  line-height: 1;
}

.verified-wordmark {
  display: flex;
  min-width: 0;
}

.verified-wordmark svg {
  height: 24px;
  width: auto;
  max-width: 100%;
  display: block;
}

.vw-goodfirms svg {
  height: 27px;
}

.vw-designrush svg {
  height: 26px;
}

.verified-tick {
  flex: none;
  margin-left: .1rem;
  display: flex;
  position: relative;
}

.verified-tick::after {
  content: "Verified";
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(3px);
  background-color: var(--background-color--tertiary-background);
  border: 1px solid var(--border-color--primary-border);
  border-radius: 100px;
  padding: .3rem .8rem;
  font-family: var(--_typography---font-family--secondary);
  font-size: .68rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--primary-color--white);
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s, transform .25s;
}

.verified-tick:hover::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.verified-tick svg {
  width: 21px;
  height: 21px;
  display: block;
}

.verified-row {
  border-top: 1px solid var(--border-color--primary-border);
  justify-content: space-between;
  align-items: center;
  gap: .6rem;
  padding-top: 1rem;
  display: flex;
}

.verified-caption {
  font-family: var(--_typography---font-family--secondary);
  color: var(--neutral-color--secondary-neutral);
  font-size: .7rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1;
}

.verified-arrow {
  width: 14px;
  height: 14px;
  opacity: .55;
  transition: opacity .35s;
}

.verified-card:hover .verified-arrow {
  opacity: 1;
}

@media screen and (min-width: 1440px) {
  .verified-heading {
    font-size: var(--_sizes---fixed--huge-03);
  }
}

@media screen and (max-width: 1339px) {
  .verified-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media screen and (max-width: 991px) {
  .verified-grid {
    grid-template-columns: 1fr 1fr;
  }

  .verified-padding {
    padding: 5rem 0 5.5rem;
  }
}

@media screen and (max-width: 479px) {
  .verified-grid {
    grid-template-columns: 1fr;
  }

  .verified-padding {
    padding: 4rem 0 4.5rem;
  }

  .verified-card {
    gap: 2rem;
  }
}


/* ---------- Trustpilot review link (footer) ---------- */
.tp-review-link {
  color: var(--neutral-color--secondary-neutral);
  align-items: center;
  gap: .45rem;
  margin-top: 1rem;
  font-family: var(--_typography---font-family--secondary);
  font-size: .72rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  transition: color .35s;
  display: inline-flex;
}

.tp-review-link:hover {
  color: var(--primary-color--white);
}

.tp-review-star {
  color: #00b67a;
  font-size: .95rem;
  line-height: 1;
}


/* ---------- V8: social icons on touch + phones ---------- */
/* Touch has no hover — a tap left the roll animation stuck halfway. */
@media (hover: none), (pointer: coarse) {
  .social-icon {
    transform: none !important;
    translate: none !important;
  }
}

@media screen and (max-width: 767px) {
  /* one straight centered row everywhere on phones */
  .social-media-wrapper {
    grid-column-gap: .55rem;
    grid-row-gap: .55rem;
    width: 100%;
    justify-content: center;
  }

  .social-link {
    width: 2.15rem;
    height: 2.15rem;
  }

  .social-icon-wrap,
  .social-icon {
    width: 1.1rem;
    height: 1.1rem;
  }

  footer .social-media-wrapper {
    justify-content: flex-start;
  }
}


/* ---------- V8: capacity heads-up above the packages ---------- */
.busy-notice {
  border: 1px solid #e0b47340;
  border-radius: 100px;
  align-items: baseline;
  gap: .6rem;
  max-width: 46rem;
  margin: 0 auto 2rem;
  padding: .75rem 1.25rem;
  font-size: .85rem;
  line-height: 1.5;
  color: var(--neutral-color--secondary-neutral);
  display: flex;
}

.busy-notice-dot {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #e0b473;
  animation: busy-pulse 2.4s ease-in-out infinite;
}

@keyframes busy-pulse {
  50% { opacity: .35; }
}

@media screen and (max-width: 479px) {
  .busy-notice { border-radius: 1rem; }
}


/* ---------- V8: Blog ---------- */
.blog-page-padding {
  padding: 9rem 0 7rem;
}

.blog-grid {
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: grid;
}

.blog-card {
  border: 1px solid var(--border-color--primary-border);
  border-radius: 1.25rem;
  background-color: var(--background-color--primary-background);
  color: var(--primary-color--white);
  text-decoration: none;
  flex-direction: column;
  transition: border-color .35s, background-color .35s;
  display: flex;
  overflow: hidden;
}

.blog-card:hover {
  border-color: #ffffff4d;
  background-color: #262626;
}

.blog-card-cover {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-bottom: 1px solid var(--border-color--primary-border);
}

.blog-card-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-card-cover-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--background-color--tertiary-background);
  color: var(--border-color--primary-border);
  font-size: 3rem;
  font-weight: 700;
}

.blog-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: .55rem;
  padding: 1.4rem 1.5rem 1.5rem;
}

.blog-card-meta,
.blog-back {
  font-family: var(--_typography---font-family--secondary);
  font-size: .7rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--neutral-color--secondary-neutral);
}

.blog-card-title {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.25;
}

.blog-card-excerpt {
  margin: 0;
  color: var(--neutral-color--secondary-neutral);
  font-size: .92rem;
  line-height: 1.55;
}

.blog-card-more {
  margin-top: auto;
  padding-top: .6rem;
  font-size: .85rem;
  color: var(--primary-color--white);
}

.blog-empty {
  grid-column: 1 / -1;
  text-align: center;
  color: var(--neutral-color--secondary-neutral);
}

.blog-post-wrap {
  max-width: 44rem;
  margin: 0 auto;
}

.blog-back {
  display: inline-block;
  margin-bottom: 1.5rem;
  text-decoration: none;
  transition: color .3s;
}

.blog-back:hover { color: var(--primary-color--white); }

.blog-post-title {
  margin: .6rem 0 1.5rem;
  font-size: 3rem;
  font-weight: 600;
  line-height: 1.1;
}

.blog-post-cover {
  border: 1px solid var(--border-color--primary-border);
  border-radius: 1.25rem;
  overflow: hidden;
  margin-bottom: 2rem;
}

.blog-post-cover img { width: 100%; display: block; }

.blog-post-body {
  color: #ddd;
  font-size: 1.02rem;
  line-height: 1.75;
}

.blog-post-body p { margin: 0 0 1.1rem; }
.blog-post-body h1, .blog-post-body h2, .blog-post-body h3 {
  color: var(--primary-color--white);
  margin: 2rem 0 .8rem;
  line-height: 1.25;
}
.blog-post-body a { color: var(--primary-color--white); text-decoration: underline; text-underline-offset: 3px; }
.blog-post-body ul, .blog-post-body ol { margin: 0 0 1.1rem; padding-left: 1.4rem; }
.blog-post-body img { max-width: 100%; border-radius: 1rem; }
.blog-post-body blockquote {
  border-left: 2px solid var(--border-color--primary-border);
  margin: 1.4rem 0;
  padding: .2rem 0 .2rem 1.2rem;
  color: var(--neutral-color--secondary-neutral);
}

@media screen and (max-width: 991px) {
  .blog-grid { grid-template-columns: 1fr 1fr; }
  .blog-page-padding { padding: 8rem 0 5rem; }
}

@media screen and (max-width: 640px) {
  .blog-grid { grid-template-columns: 1fr; }
  .blog-post-title { font-size: 2.1rem; }
}


/* ---------- V8.2: Get-started page (contact.html) ---------- */
.section-start {
  position: relative;
}

.start-padding {
  padding: 3rem 0 7rem;
}

.start-grid {
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: grid;
}

.start-card {
  border: 1px solid var(--border-color--primary-border);
  border-radius: 1.5rem;
  background-color: var(--background-color--primary-background);
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  padding: 2.75rem 2.5rem 2.5rem;
  transition: border-color .35s;
  display: flex;
}

.start-card:hover {
  border-color: #ffffff4d;
}

.start-title {
  margin: 0;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.1;
}

.start-copy {
  margin: 0;
  color: var(--neutral-color--secondary-neutral);
  font-size: .98rem;
  line-height: 1.65;
}

.start-acts {
  margin-top: auto;
  padding-top: 1.25rem;
  align-items: center;
  gap: 1.4rem;
  flex-wrap: wrap;
  display: flex;
}

.start-alt {
  color: var(--neutral-color--secondary-neutral);
  font-size: .88rem;
  text-decoration: none;
  transition: color .3s;
}

.start-alt:hover {
  color: var(--primary-color--white);
}

.start-contact-row {
  justify-content: center;
  align-items: baseline;
  gap: .75rem;
  flex-wrap: wrap;
  margin-top: 2.5rem;
  font-family: var(--_typography---font-family--secondary);
  font-size: .75rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--neutral-color--secondary-neutral);
  display: flex;
}

.start-contact-link {
  color: var(--primary-color--white);
  text-decoration: none;
  border-bottom: 1px solid var(--border-color--primary-border);
  padding-bottom: 2px;
  transition: border-color .3s;
}

.start-contact-link:hover {
  border-color: var(--primary-color--white);
}

.start-contact-sep {
  color: var(--border-color--primary-border);
}

@media screen and (max-width: 767px) {
  .start-grid {
    grid-template-columns: 1fr;
  }

  .start-card {
    padding: 2rem 1.6rem 1.75rem;
  }

  .start-title {
    font-size: 1.9rem;
  }

  .start-padding {
    padding: 2rem 0 4.5rem;
  }
}


/* ---------- V9: privacy reassurance on the get-started page ---------- */
.start-privacy-note {
  max-width: 46rem;
  margin: 2.25rem auto 0;
  text-align: center;
  font-size: .88rem;
  line-height: 1.6;
  color: var(--neutral-color--secondary-neutral);
}

.start-privacy-note a {
  color: var(--primary-color--white);
  text-decoration: none;
  border-bottom: 1px solid var(--border-color--primary-border);
  transition: border-color .3s;
}

.start-privacy-note a:hover { border-color: var(--primary-color--white); }


/* ---------- V9: dual-entity footer (UK + US) ---------- */
.entity-block {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.entity {
  display: flex;
  align-items: flex-start;
  gap: .7rem;
}

.entity-flag {
  flex: none;
  width: 26px;
  height: 18px;
  margin-top: .2rem;
  border-radius: 3px;
  display: block;
}

.entity-body {
  display: flex;
  flex-direction: column;
  gap: .15rem;
  min-width: 0;
}

.entity-name {
  color: var(--primary-color--white);
  font-weight: 500;
  line-height: 1.35;
}

.entity-meta {
  font-family: var(--_typography---font-family--secondary);
  font-size: .68rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--neutral-color--secondary-neutral);
}

.entity-addr {
  font-size: .82rem;
  line-height: 1.5;
  color: var(--neutral-color--secondary-neutral);
}


/* ---------- V9: admin-authored legal pages ---------- */
.legal-updated {
  margin-top: 2.5rem;
  padding-top: 1.2rem;
  border-top: 1px solid var(--border-color--primary-border);
  font-family: var(--_typography---font-family--secondary);
  font-size: .72rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--neutral-color--secondary-neutral);
}
