@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap");
.site-header {
  position: relative;
  z-index: 100;
  background-color: var(--color-console);
  color: var(--color-white);
  border-bottom: var(--border-width) solid var(--color-console-dark);
}

.header-inner {
  display: flex;
  align-items: center;
  gap: var(--space-6);
  min-height: var(--space-9);
  padding-block: var(--space-3);
}

.logo-section {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.site-description {
  margin: 0;
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--color-neutral-light);
}

.main-nav {
  margin-right: auto;
}
.main-nav .menu {
  display: flex;
  align-items: center;
  gap: var(--space-6);
  margin: 0;
  padding: 0;
  list-style: none;
}
.main-nav li {
  position: relative;
}
.main-nav a {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--color-white);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.main-nav a:hover, .main-nav a:focus {
  color: var(--color-caution);
}
.main-nav .nolink > a {
  cursor: default;
}
.main-nav .menu-item-has-children > a::after {
  content: "";
  width: var(--space-2);
  height: var(--space-2);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform var(--transition-fast);
}
.main-nav .menu-item-has-children:hover > a::after,
.main-nav .menu-item-has-children:focus-within > a::after,
.main-nav .menu-item-has-children.is-open > a::after {
  transform: rotate(225deg) translateY(-2px);
}
.main-nav .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: var(--space-10);
  margin: 0;
  padding: var(--space-3) 0;
  list-style: none;
  background-color: var(--color-console-dark);
  border: var(--border-width) solid var(--color-console-light);
  box-shadow: var(--shadow-large);
  opacity: 0;
  visibility: hidden;
  transform: translateY(var(--space-2));
  transition: opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast);
}
.main-nav .sub-menu a {
  padding: var(--space-2) var(--space-4);
  width: 100%;
}
.main-nav .menu-item-has-children:hover > .sub-menu,
.main-nav .menu-item-has-children:focus-within > .sub-menu,
.main-nav .menu-item-has-children.is-open > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.header-cta {
  flex-shrink: 0;
}

.main-nav .nav-cta {
  display: none;
}

.nav-toggle {
  display: none;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: var(--space-6);
  height: var(--space-6);
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  color: var(--color-white);
}
.nav-toggle__bars {
  position: relative;
  display: block;
  width: var(--space-5);
  height: 14px;
}
.nav-toggle__bar {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  transition: transform var(--transition-fast), opacity var(--transition-fast);
}
.nav-toggle__bar:nth-child(1) {
  top: 0;
}
.nav-toggle__bar:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.nav-toggle__bar:nth-child(3) {
  bottom: 0;
}
.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(1) {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(2) {
  opacity: 0;
}
.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(3) {
  bottom: 50%;
  transform: translateY(50%) rotate(-45deg);
}

@media (max-width: 960px) {
  .logo-section,
  .nav-toggle {
    position: relative;
    z-index: 100;
  }
  .nav-toggle {
    display: inline-flex;
    margin-left: auto;
  }
  .header-inner .header-cta,
  .social-nav {
    display: none;
  }
  .main-nav .nav-cta {
    display: inline-flex;
    align-self: flex-start;
    margin-top: var(--space-6);
    color: var(--color-console);
  }
  .main-nav .nav-cta:hover, .main-nav .nav-cta:focus, .main-nav .nav-cta:focus-visible {
    color: var(--color-console);
  }
  body.is-menu-open {
    overflow: hidden;
  }
  .main-nav {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: flex;
    flex-direction: column;
    margin-right: 0;
    padding: calc(var(--space-9) + var(--space-4)) var(--space-5) var(--space-7);
    background-color: var(--color-console);
    overflow-y: auto;
    overscroll-behavior: contain;
    transform: translateX(100%);
    visibility: hidden;
    transition: transform var(--transition-medium), visibility var(--transition-medium);
  }
  .main-nav .menu {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .main-nav > .menu > .menu-item > a {
    padding-block: var(--space-4);
    font-size: var(--font-size-large);
    border-bottom: var(--border-width) solid var(--opacity-white-20);
  }
  .main-nav .menu-item-has-children > a {
    justify-content: space-between;
  }
  body.is-menu-open .main-nav {
    transform: translateX(0);
    visibility: visible;
  }
  .main-nav .sub-menu {
    position: static;
    min-width: 0;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    overflow: hidden;
    max-height: 0;
    transition: max-height var(--transition-medium);
  }
  .main-nav .sub-menu a {
    padding-block: var(--space-3);
    padding-left: var(--space-4);
    font-size: var(--font-size-medium);
    color: var(--color-neutral-lighter);
  }
  .main-nav .menu-item-has-children.is-open > .sub-menu {
    max-height: 40rem;
  }
}
.site-footer {
  background-color: var(--color-console);
  color: var(--color-white);
  padding-block: var(--space-8);
}
.site-footer__top {
  display: flex;
  flex-direction: column;
  gap: var(--space-7);
}
@media (min-width: 768px) {
  .site-footer__top {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--space-8);
  }
}
.site-footer__brand {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.site-footer__logo img {
  display: block;
  height: var(--space-7);
  width: auto;
}
.site-footer__site-title {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h5);
  color: var(--color-white);
  text-decoration: none;
}
.site-footer__primary-menu {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-5);
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer__primary-menu a {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-white);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.site-footer__primary-menu a:hover, .site-footer__primary-menu a:focus-visible {
  color: var(--color-caution);
}
.site-footer__newsletter {
  width: 100%;
  max-width: 24rem;
}
.site-footer__newsletter-heading {
  margin: 0 0 var(--space-3);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-medium);
  color: var(--color-white);
}
.site-footer__form {
  display: flex;
  gap: var(--space-2);
}
.site-footer__input {
  flex: 1;
  min-width: 0;
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--color-white);
  background-color: var(--color-console-dark);
  border: var(--border-width) solid var(--opacity-white-20);
  border-radius: var(--radius-small);
}
.site-footer__input::placeholder {
  color: var(--color-neutral-light);
}
.site-footer__input:focus {
  outline: none;
  border-color: var(--color-caution);
}
.site-footer__submit {
  flex-shrink: 0;
  padding: var(--space-3) var(--space-5);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console);
  background-color: var(--color-white);
  border: var(--border-width) solid var(--color-white);
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: background-color var(--transition-fast), color var(--transition-fast);
}
.site-footer__submit:hover, .site-footer__submit:focus-visible {
  background-color: var(--color-caution);
  border-color: var(--color-caution);
}
.site-footer__form--cf7 input[type=email],
.site-footer__form--cf7 input[type=text] {
  flex: 1;
  min-width: 0;
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--color-white);
  background-color: var(--color-console-dark);
  border: var(--border-width) solid var(--opacity-white-20);
  border-radius: var(--radius-small);
}
.site-footer__form--cf7 input[type=email]::placeholder,
.site-footer__form--cf7 input[type=text]::placeholder {
  color: var(--color-neutral-light);
}
.site-footer__form--cf7 input[type=email]:focus,
.site-footer__form--cf7 input[type=text]:focus {
  outline: none;
  border-color: var(--color-caution);
}
.site-footer__form--cf7 input[type=submit],
.site-footer__form--cf7 button[type=submit] {
  flex-shrink: 0;
  padding: var(--space-3) var(--space-5);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console);
  background-color: var(--color-white);
  border: var(--border-width) solid var(--color-white);
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: background-color var(--transition-fast), color var(--transition-fast);
}
.site-footer__form--cf7 input[type=submit]:hover, .site-footer__form--cf7 input[type=submit]:focus-visible,
.site-footer__form--cf7 button[type=submit]:hover,
.site-footer__form--cf7 button[type=submit]:focus-visible {
  background-color: var(--color-caution);
  border-color: var(--color-caution);
}
.site-footer__newsletter-privacy {
  margin: var(--space-3) 0 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--color-neutral-light);
}
.site-footer__divider {
  height: 0;
  margin-block: var(--space-7);
  border: 0;
  border-top: var(--border-width) solid var(--opacity-white-20);
}
.site-footer__bottom {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
@media (min-width: 768px) {
  .site-footer__bottom {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
.site-footer__legal-menu {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-5);
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer__legal-menu a {
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--color-neutral-lighter);
  text-decoration: underline;
  text-underline-offset: var(--space-1);
  transition: color var(--transition-fast);
}
.site-footer__legal-menu a:hover, .site-footer__legal-menu a:focus-visible {
  color: var(--color-white);
}
.site-footer__copyright {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--color-neutral-light);
}

.site-logo {
  display: inline-flex;
  color: inherit;
}
.site-logo__mark {
  display: block;
  height: var(--space-7);
  aspect-ratio: 130/68;
  width: auto;
  background-color: currentColor;
  -webkit-mask: url("../images/logo.svg") no-repeat center/contain;
  mask: url("../images/logo.svg") no-repeat center/contain;
}
.site-logo--light {
  color: var(--color-white);
}
.site-logo--dark {
  color: var(--color-console);
}

.capabilities-section {
  --bg: var(--color-console);
  --text: var(--color-white);
  --muted: var(--color-neutral-lighter);
  --eyebrow: var(--color-caution);
  --accent: var(--color-caution);
  --accent-hover: var(--color-caution-dark);
  --card-bg: var(--color-console-darker);
  --card-border: var(--opacity-white-20);
}
.capabilities-section--primary, .capabilities-section--light {
  --bg: var(--color-white);
  --text: var(--color-console);
  --muted: var(--color-neutral-dark);
  --eyebrow: var(--color-signal);
  --accent: var(--color-signal);
  --accent-hover: var(--color-signal-dark);
  --card-bg: var(--color-white);
  --card-border: var(--color-neutral-lighter);
}
.capabilities-section--light {
  --bg: var(--color-console-lightest);
}
.capabilities-section {
  padding-block: var(--space-10);
  background-color: var(--bg);
  color: var(--text);
}
.capabilities-section__header {
  text-align: center;
  max-width: 46rem;
  margin: 0 auto var(--space-8);
}
.capabilities-section__eyebrow {
  margin: 0 0 var(--space-3);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--eyebrow);
}
.capabilities-section__title {
  margin: 0 0 var(--space-3);
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.capabilities-section__title-highlight {
  color: var(--accent);
}
.capabilities-section__subheading {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--muted);
}
.capabilities-section__grid {
  column-count: 1;
  column-gap: var(--space-5);
}
@media (min-width: 600px) {
  .capabilities-section__grid {
    column-count: 2;
  }
}
@media (min-width: 1024px) {
  .capabilities-section__grid {
    column-count: 3;
  }
}
.capabilities-section__footer {
  display: flex;
  justify-content: center;
  margin-top: var(--space-7);
}
.capabilities-section__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-medium);
  color: var(--accent);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.capabilities-section__link::after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--transition-fast);
}
.capabilities-section__link:hover, .capabilities-section__link:focus-visible {
  color: var(--accent-hover);
}
.capabilities-section__link:hover::after, .capabilities-section__link:focus-visible::after {
  transform: translateX(2px) rotate(45deg);
}

.capabilities-card {
  display: inline-block;
  width: 100%;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  margin-bottom: var(--space-5);
  background-color: var(--card-bg);
  border: var(--border-width) solid var(--card-border);
  border-radius: var(--radius-medium);
  overflow: hidden;
}
.capabilities-card__image {
  margin: 0;
  aspect-ratio: 16/9;
}
.capabilities-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.capabilities-card__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
}
.capabilities-card__icon {
  display: inline-flex;
}
.capabilities-card__icon img {
  width: var(--space-6);
  height: var(--space-6);
  object-fit: contain;
}
.capabilities-card__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-heading-loose);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--text);
}
.capabilities-card__body {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--muted);
}
.capabilities-card__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-1);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--accent);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.capabilities-card__link::after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--transition-fast);
}
.capabilities-card__link:hover, .capabilities-card__link:focus-visible {
  color: var(--accent-hover);
}
.capabilities-card__link:hover::after, .capabilities-card__link:focus-visible::after {
  transform: translateX(2px) rotate(45deg);
}

.contact-page {
  padding-block: var(--space-9);
  color: var(--color-console);
}
.contact-page__inner {
  display: grid;
  gap: var(--space-8);
}
@media (min-width: 860px) {
  .contact-page__inner {
    grid-template-columns: 1fr 1.1fr;
    gap: var(--space-9);
    align-items: start;
  }
}
.contact-page__intro {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.contact-page__eyebrow {
  margin: 0;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-neutral-dark);
}
.contact-page__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.contact-page__text {
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--color-neutral-dark);
}
.contact-page__text p {
  margin: 0 0 var(--space-3);
}
.contact-page__text > :last-child {
  margin-bottom: 0;
}
.contact-page__details {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin: var(--space-3) 0 0;
  padding: 0;
  list-style: none;
}
.contact-page__detail {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--color-console);
}
.contact-page__detail::before {
  content: "";
  flex-shrink: 0;
  width: var(--space-5);
  height: var(--space-5);
  margin-top: 2px;
  background-color: var(--color-console);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.contact-page__detail a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.contact-page__detail a:hover, .contact-page__detail a:focus-visible {
  color: var(--color-signal);
}
.contact-page__detail--email::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M2%206a2%202%200%20012-2h16a2%202%200%20012%202v12a2%202%200%2001-2%202H4a2%202%200%2001-2-2V6zm2.4%200l7.6%205%207.6-5H4.4zM20%208.3l-8%205.2-8-5.2V18h16V8.3z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M2%206a2%202%200%20012-2h16a2%202%200%20012%202v12a2%202%200%2001-2%202H4a2%202%200%2001-2-2V6zm2.4%200l7.6%205%207.6-5H4.4zM20%208.3l-8%205.2-8-5.2V18h16V8.3z'/%3E%3C/svg%3E");
}
.contact-page__detail--phone::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M6.6%2010.8a15.5%2015.5%200%20006.6%206.6l2.2-2.2a1%201%200%20011-.24%2011.4%2011.4%200%20003.6.57%201%201%200%20011%201V20a1%201%200%2001-1%201A17%2017%200%20013%204a1%201%200%20011-1h3.5a1%201%200%20011%201%2011.4%2011.4%200%2000.57%203.6%201%201%200%2001-.25%201l-2.2%202.2z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M6.6%2010.8a15.5%2015.5%200%20006.6%206.6l2.2-2.2a1%201%200%20011-.24%2011.4%2011.4%200%20003.6.57%201%201%200%20011%201V20a1%201%200%2001-1%201A17%2017%200%20013%204a1%201%200%20011-1h3.5a1%201%200%20011%201%2011.4%2011.4%200%2000.57%203.6%201%201%200%2001-.25%201l-2.2%202.2z'/%3E%3C/svg%3E");
}
.contact-page__detail--address::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M12%202a7%207%200%2000-7%207c0%205.25%207%2013%207%2013s7-7.75%207-13a7%207%200%2000-7-7zm0%209.5a2.5%202.5%200%20110-5%202.5%202.5%200%20010%205z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M12%202a7%207%200%2000-7%207c0%205.25%207%2013%207%2013s7-7.75%207-13a7%207%200%2000-7-7zm0%209.5a2.5%202.5%200%20110-5%202.5%202.5%200%20010%205z'/%3E%3C/svg%3E");
}
.contact-page__phones {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}
.contact-page__phone-label {
  color: var(--color-neutral-dark);
}
.contact-page__form label {
  display: block;
  margin-bottom: var(--space-1);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console);
}
.contact-page__form input[type=text],
.contact-page__form input[type=email],
.contact-page__form input[type=tel],
.contact-page__form input[type=url],
.contact-page__form input[type=number],
.contact-page__form select,
.contact-page__form textarea {
  width: 100%;
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  color: var(--color-console);
  background-color: var(--color-console-lightest);
  border: var(--border-width) solid transparent;
  border-radius: var(--radius-small);
}
.contact-page__form input[type=text]::placeholder,
.contact-page__form input[type=email]::placeholder,
.contact-page__form input[type=tel]::placeholder,
.contact-page__form input[type=url]::placeholder,
.contact-page__form input[type=number]::placeholder,
.contact-page__form select::placeholder,
.contact-page__form textarea::placeholder {
  color: var(--color-neutral);
}
.contact-page__form input[type=text]:focus,
.contact-page__form input[type=email]:focus,
.contact-page__form input[type=tel]:focus,
.contact-page__form input[type=url]:focus,
.contact-page__form input[type=number]:focus,
.contact-page__form select:focus,
.contact-page__form textarea:focus {
  outline: none;
  border-color: var(--color-caution);
}
.contact-page__form textarea {
  min-height: 9rem;
  resize: vertical;
}
.contact-page__form .wpcf7-radio .wpcf7-list-item,
.contact-page__form .wpcf7-checkbox .wpcf7-list-item {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 var(--space-5) var(--space-2) 0;
}
.contact-page__form .wpcf7-radio .wpcf7-list-item label,
.contact-page__form .wpcf7-checkbox .wpcf7-list-item label {
  display: inline;
  margin: 0;
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-regular);
  color: var(--color-neutral-dark);
}
.contact-page__form .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}
.contact-page__form input[type=submit],
.contact-page__form .wpcf7-submit {
  padding: var(--space-3) var(--space-6);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console-darkest);
  background-color: var(--color-caution);
  border: var(--border-width) solid var(--color-caution);
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: background-color var(--transition-fast), border-color var(--transition-fast);
}
.contact-page__form input[type=submit]:hover, .contact-page__form input[type=submit]:focus-visible,
.contact-page__form .wpcf7-submit:hover,
.contact-page__form .wpcf7-submit:focus-visible {
  background-color: var(--color-caution-dark);
  border-color: var(--color-caution-dark);
}
.contact-page__form-placeholder {
  color: var(--color-neutral-dark);
}

.c-cta-section {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding-block: var(--space-8);
  background-color: var(--color-console);
  color: var(--color-white);
}
.c-cta-section__background {
  position: absolute;
  inset: 0;
  z-index: -2;
  margin: 0;
}
.c-cta-section__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.c-cta-section__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(16, 22, 42, 0.92) 0%, rgba(16, 22, 42, 0.75) 40%, rgba(16, 22, 42, 0.3) 100%);
}
.c-cta-section__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}
@media (min-width: 768px) {
  .c-cta-section__inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-7);
  }
}
.c-cta-section__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 42rem;
}
.c-cta-section__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h3);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.c-cta-section__subtitle {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--color-white);
}
.c-cta-section__actions {
  flex-shrink: 0;
}

.faq {
  padding-block: var(--space-9);
  color: var(--color-console);
}
.faq__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}
.faq__intro {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 44rem;
}
.faq__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.faq__description {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--color-neutral-dark);
}
.faq__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.faq__item {
  background-color: var(--color-console-lightest);
}
.faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  cursor: pointer;
  list-style: none;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-medium);
  color: var(--color-console);
}
.faq__question::-webkit-details-marker {
  display: none;
}
.faq__question::marker {
  content: "";
}
.faq__question:focus-visible {
  outline: var(--border-width) solid var(--color-signal);
  outline-offset: -2px;
}
.faq__icon {
  position: relative;
  flex-shrink: 0;
  width: var(--space-4);
  height: var(--space-4);
  transition: transform var(--transition-fast);
}
.faq__icon::before, .faq__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  transform: translate(-50%, -50%);
}
.faq__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.faq__item[open] .faq__icon {
  transform: rotate(45deg);
}
.faq__answer {
  padding: 0 var(--space-5) var(--space-4);
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--color-neutral-dark);
}
.faq__answer p {
  margin: 0 0 var(--space-3);
}
.faq__answer a {
  color: var(--color-signal);
  text-decoration: underline;
}
.faq__answer a:hover, .faq__answer a:focus-visible {
  color: var(--color-signal-dark);
}
.faq__answer ul,
.faq__answer ol {
  margin: 0;
  padding-left: var(--space-5);
}
.faq__answer li {
  margin-bottom: var(--space-1);
}
.faq__answer > :last-child {
  margin-bottom: 0;
}

.fifty-fifty-section__intro {
  background-color: var(--color-white);
  color: var(--color-console);
  padding-block: var(--space-9);
  text-align: center;
}
.fifty-fifty-section__title {
  margin: 0 auto;
  max-width: 40rem;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.fifty-fifty-section__text {
  margin: var(--space-4) auto 0;
  max-width: 40rem;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--color-neutral-dark);
}

.fifty-fifty-row {
  --bg: var(--color-white);
  --heading: var(--color-console);
  --body: var(--color-black);
  --eyebrow: var(--color-signal);
  --link: var(--color-signal);
  --link-hover: var(--color-signal-dark);
}
.fifty-fifty-row--bg-grey {
  --bg: var(--color-neutral-lightest);
}
.fifty-fifty-row--bg-grey a {
  color: inherit;
}
.fifty-fifty-row--bg-dark {
  --bg: var(--color-console);
  --heading: var(--color-white);
  --body: var(--color-white);
  --eyebrow: var(--color-caution);
  --link: var(--color-caution);
  --link-hover: var(--color-caution-dark);
}
.fifty-fifty-row--bg-dark a {
  color: inherit;
}
.fifty-fifty-row {
  background-color: var(--bg);
  color: var(--body);
}
.fifty-fifty-row__inner {
  display: grid;
  gap: var(--space-6);
  align-items: center;
  padding-block: var(--space-8);
}
@media (min-width: 768px) {
  .fifty-fifty-row__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-8);
  }
}
@media (min-width: 768px) {
  .fifty-fifty-row--image-left .fifty-fifty-row__media {
    order: -1;
  }
}
.fifty-fifty-row__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}
.fifty-fifty-row__eyebrow {
  margin: 0;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  letter-spacing: 0.04em;
  color: var(--eyebrow);
}
.fifty-fifty-row__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h4);
  line-height: var(--line-height-heading-h4);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--heading);
}
.fifty-fifty-row__body {
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--body);
}
.fifty-fifty-row__body p {
  margin: 0 0 var(--space-3);
}
.fifty-fifty-row__body > :last-child {
  margin-bottom: 0;
}
.fifty-fifty-row__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-1);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--link);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.fifty-fifty-row__link::after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--transition-fast);
}
.fifty-fifty-row__link:hover, .fifty-fifty-row__link:focus-visible {
  color: var(--link-hover);
}
.fifty-fifty-row__link:hover::after, .fifty-fifty-row__link:focus-visible::after {
  transform: translateX(2px) rotate(45deg);
}
.fifty-fifty-row__media {
  margin: 0;
  aspect-ratio: 4/3;
  overflow: hidden;
}
.fifty-fifty-row__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.footer-section {
  --background: #0a192f;
  --text: #ffffff;
  --primary: #ffcc00;
  background-color: var(--background);
  color: var(--text);
}
.footer-section__container {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-5) var(--space-6);
  margin: 0 auto;
  max-width: var(--grid-max-width);
}
.footer-section__newsletter {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-3);
}
.footer-section__newsletter-title {
  font-size: var(--font-size-medium);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-heading-h4);
  letter-spacing: var(--letter-spacing-body);
  margin: 0;
}
.footer-section__newsletter-form {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-2);
  width: 100%;
  max-width: 480px;
}
.footer-section__newsletter-input {
  flex: 1 1 min-content;
  min-width: 240px;
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-medium);
  border: var(--border-width) solid var(--opacity-neutral-darkest-15);
  background-color: var(--light-alt-background);
  color: var(--text);
  font-size: var(--font-size-regular);
}
.footer-section__newsletter-input::placeholder {
  color: var(--opacity-neutral-darkest-60);
}
.footer-section__newsletter-button {
  padding: var(--space-3) var(--space-5);
  border-radius: var(--radius-medium);
  border: none;
  background-color: var(--primary);
  color: var(--color-console);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  cursor: pointer;
}
.footer-section__newsletter-button:hover {
  opacity: 0.9;
}
.footer-section__navigation {
  display: flex;
  justify-content: center;
}
.footer-section__nav-list {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  justify-content: center;
}
.footer-section__nav-item {
  margin: 0;
}
.footer-section__nav-link {
  color: var(--text);
  text-decoration: none;
  font-size: var(--font-size-small);
}
.footer-section__nav-link:hover {
  text-decoration: underline;
}
.footer-section__copyright {
  text-align: center;
  font-size: var(--font-size-tiny);
  line-height: var(--line-height-body);
  margin: 0;
  opacity: 0.8;
}
.footer-section--dark {
  --background: #0a192f;
  --text: #ffffff;
  --primary: #ffcc00;
}
.footer-section--light {
  --background: #f2f2f2;
  --text: #1a1a1b;
  --primary: #1e90ff;
}
.footer-section--primary {
  --background: #10162a;
  --text: #ffffff;
  --primary: #ffd400;
}

@media (min-width: 768px) {
  .footer-section__container {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-8);
  }
  .footer-section__newsletter {
    flex: 1;
    max-width: 320px;
    text-align: left;
  }
  .footer-section__newsletter-form {
    flex-direction: column;
    width: 100%;
  }
  .footer-section__newsletter-input, .footer-section__newsletter-button {
    width: 100%;
  }
  .footer-section__navigation {
    flex: 1;
    order: 2;
  }
  .footer-section__copyright {
    order: 3;
    text-align: left;
  }
}
.hero-section {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  min-height: clamp(420px, 60vh, 640px);
  padding-block: var(--space-9);
  background-color: var(--color-console);
  color: var(--color-white);
  isolation: isolate;
}
.hero-section__background {
  position: absolute;
  inset: 0;
  z-index: -2;
  margin: 0;
}
.hero-section__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.hero-section__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(16, 22, 42, 0.95) 0%, rgba(16, 22, 42, 0.85) 30%, rgba(16, 22, 42, 0.45) 65%, rgba(16, 22, 42, 0.15) 100%), linear-gradient(180deg, rgba(16, 22, 42, 0.2) 0%, rgba(16, 22, 42, 0) 35%, rgba(16, 22, 42, 0.35) 100%);
}
.hero-section__inner {
  position: relative;
  z-index: 1;
}
.hero-section__content {
  max-width: 46rem;
}
.hero-section__heading {
  margin: 0 0 var(--space-5);
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: clamp(var(--font-size-h3), 5vw, var(--font-size-h1));
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.hero-section__heading-line {
  display: block;
}
.hero-section__heading-line--highlight {
  color: var(--color-caution);
}
.hero-section__subtext {
  max-width: 38rem;
  margin: 0 0 var(--space-6);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--color-neutral-lighter);
}
.hero-section__subtext a {
  color: var(--color-neutral-lighter);
}
.hero-section__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.hero-section--light {
  background-color: var(--color-console-lightest);
  color: var(--color-console);
}
.hero-section--light .hero-section__heading-line--highlight {
  color: var(--color-signal-dark);
}
.hero-section--light .hero-section__subtext {
  color: var(--color-console-darker);
}
.hero-section--dark {
  background-color: var(--color-console-darker);
}

.image-card-section {
  --bg: var(--color-white);
  --text: var(--color-console);
  --muted: var(--color-neutral-dark);
  --marker: var(--color-signal);
  padding-block: var(--space-9);
  background-color: var(--bg);
  color: var(--text);
}
.image-card-section--bg-dark {
  --bg: var(--color-console);
  --text: var(--color-white);
  --muted: var(--color-neutral-lighter);
  --marker: var(--color-caution);
}
.image-card-section--bg-dark a {
  color: inherit;
}
.image-card-section__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-7);
}
.image-card-section__intro {
  max-width: 46rem;
}
.image-card-section__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.image-card-section__intro-text {
  margin: var(--space-4) 0 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--muted);
}
.image-card-section__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
}
@media (min-width: 768px) {
  .image-card-section--three-cols .image-card-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 768px) {
  .image-card-section--two-cols .image-card-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.image-card-section__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.image-card-section__image-wrapper {
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-medium);
  aspect-ratio: 3/2;
}
.image-card-section__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-medium);
}
.image-card-section__card:hover .image-card-section__image {
  transform: scale(1.03);
}
.image-card-section__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-heading-loose);
  letter-spacing: var(--letter-spacing-heading);
}
.image-card-section__body {
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--color-white);
}
.image-card-section__body > :first-child {
  margin-top: 0;
}
.image-card-section__body > :last-child {
  margin-bottom: 0;
}
.image-card-section__body p {
  margin: 0 0 var(--space-3);
}
.image-card-section__body ul,
.image-card-section__body ol {
  margin: 0 0 var(--space-3);
  padding-left: var(--space-5);
}
.image-card-section__body li {
  margin-bottom: var(--space-2);
}
.image-card-section__body a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: var(--space-1);
}
.image-card-section__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  align-self: flex-start;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-regular);
  color: var(--text);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.image-card-section__link::after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid var(--marker);
  border-right: 2px solid var(--marker);
  transform: rotate(45deg);
  transition: transform var(--transition-fast);
}
.image-card-section__link:hover, .image-card-section__link:focus-visible {
  color: var(--marker);
}
.image-card-section__link:hover::after, .image-card-section__link:focus-visible::after {
  transform: translateX(2px) rotate(45deg);
}

.industry-section {
  display: block;
}

.industry-block {
  --bg: var(--color-white);
  --heading: var(--color-console);
  --body: var(--color-black);
  --accent: var(--color-signal);
}
.industry-block--bg-dark {
  --bg: var(--color-console);
  --heading: var(--color-white);
  --body: var(--color-white);
  --accent: var(--color-caution);
}
.industry-block {
  background-color: var(--bg);
  color: var(--body);
}
.industry-block__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  padding-block: var(--space-8);
}
@media (min-width: 768px) {
  .industry-block__inner {
    gap: var(--space-8);
  }
}
.industry-block__intro {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: 100%;
}
.industry-block__row {
  display: grid;
  gap: var(--space-6);
  align-items: stretch;
}
@media (min-width: 768px) {
  .industry-block__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-8);
  }
}
@media (min-width: 768px) {
  .industry-block--image-left .industry-block__media {
    order: -1;
  }
}
.industry-block__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}
.industry-block__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h3);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--heading);
}
.industry-block__text {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--body);
}
.industry-block__text a {
  color: inherit;
  font-weight: var(--font-weight-bold);
  text-decoration: underline;
}
.industry-block__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
  padding: var(--space-3) var(--space-5);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console-darkest);
  background-color: var(--color-caution);
  border: var(--border-width) solid var(--color-caution);
  border-radius: var(--radius-small);
  text-decoration: none;
  transition: background-color var(--transition-fast), border-color var(--transition-fast);
}
.industry-block__link:hover, .industry-block__link:focus-visible {
  background-color: var(--color-caution-dark);
  border-color: var(--color-caution-dark);
}
.industry-block__media {
  margin: 0;
  aspect-ratio: 4/3;
  overflow: hidden;
}
@media (min-width: 768px) {
  .industry-block__media {
    aspect-ratio: auto;
    height: 100%;
  }
}
.industry-block__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.industry-feature {
  width: 100%;
}
.industry-feature__title {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: 0 0 var(--space-2);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-heading-loose);
  color: var(--heading);
}
.industry-feature__title::before {
  content: "";
  flex-shrink: 0;
  width: var(--space-5);
  height: var(--space-5);
  background-color: var(--accent);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.industry-feature--industries .industry-feature__title::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M3%2021V3h10v6h8v12H3zm2-2h6v-2H5v2zm0-4h6v-2H5v2zm0-4h6V9H5v2zm0-4h6V5H5v2zm8%2012h6v-2h-6v2zm0-4h6v-2h-6v2z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M3%2021V3h10v6h8v12H3zm2-2h6v-2H5v2zm0-4h6v-2H5v2zm0-4h6V9H5v2zm0-4h6V5H5v2zm8%2012h6v-2h-6v2zm0-4h6v-2h-6v2z'/%3E%3C/svg%3E");
}
.industry-feature--challenges .industry-feature__title::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M1%2021h22L12%202%201%2021zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M1%2021h22L12%202%201%2021zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/%3E%3C/svg%3E");
}
.industry-feature--solutions .industry-feature__title::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M12%202a10%2010%200%20100%2020%2010%2010%200%20000-20zm-1.2%2014.2l-4-4%201.4-1.4%202.6%202.6%205.6-5.6%201.4%201.4-7%207z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M12%202a10%2010%200%20100%2020%2010%2010%200%20000-20zm-1.2%2014.2l-4-4%201.4-1.4%202.6%202.6%205.6-5.6%201.4%201.4-7%207z'/%3E%3C/svg%3E");
}
.industry-feature--support .industry-feature__title::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M4%202h16a2%202%200%20012%202v12a2%202%200%2001-2%202H8l-4%204V4a2%202%200%20012-2zm3%207h10V7H7v2zm0%204h7v-2H7v2z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M4%202h16a2%202%200%20012%202v12a2%202%200%2001-2%202H8l-4%204V4a2%202%200%20012-2zm3%207h10V7H7v2zm0%204h7v-2H7v2z'/%3E%3C/svg%3E");
}
.industry-feature__body {
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--body);
}
.industry-feature__body p {
  margin: 0 0 var(--space-3);
}
.industry-feature__body ul,
.industry-feature__body ol {
  margin: 0;
  padding-left: var(--space-5);
}
.industry-feature__body li {
  margin-bottom: var(--space-1);
}
.industry-feature__body a {
  color: inherit;
  font-weight: var(--font-weight-bold);
  text-decoration: underline;
}
.industry-feature__body > :last-child {
  margin-bottom: 0;
}

.c-newsletter-section {
  --background: var(--color-console);
  --text: var(--color-white);
  --primary: var(--color-caution);
  background-color: var(--background);
  color: var(--text);
  padding-block: calc(var(--space-10) + var(--space-2));
  padding-inline: var(--space-4);
}
.c-newsletter-section__container {
  max-width: var(--grid-max-width);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.c-newsletter-section__heading {
  font-family: var(--font-family-heading);
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
  margin: 0;
}
.c-newsletter-section__description {
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  margin: 0;
}
.c-newsletter-section__description a {
  color: var(--primary);
  text-decoration: none;
}
.c-newsletter-section__description a:hover, .c-newsletter-section__description a:focus {
  text-decoration: underline;
}
.c-newsletter-section__form {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 100%;
}
.c-newsletter-section__input {
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-medium);
  border: 1px solid var(--opacity-neutral-darkest-15);
  background-color: var(--light-alt-foreground);
  color: var(--text);
  width: 100%;
}
.c-newsletter-section__input::placeholder {
  color: var(--opacity-neutral-darkest-60);
}
.c-newsletter-section__input:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(var(--color-caution), 0.3);
}
.c-newsletter-section__button {
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  font-weight: var(--font-weight-semibold);
  padding: var(--space-3) var(--space-5);
  background-color: var(--primary);
  color: var(--color-console);
  border: none;
  border-radius: var(--radius-medium);
  cursor: pointer;
  transition: background-color 0.2s ease-in-out, transform 0.1s ease;
}
.c-newsletter-section__button:hover, .c-newsletter-section__button:focus {
  background-color: var(--color-caution-dark);
}
.c-newsletter-section__button:active {
  transform: translateY(1px);
}
@media (min-width: 768px) {
  .c-newsletter-section__form {
    flex-direction: row;
    align-items: center;
  }
  .c-newsletter-section__input {
    flex: 1;
  }
  .c-newsletter-section__button {
    flex-shrink: 0;
    width: auto;
  }
}

.c-partner-badges-section {
  --bg: var(--color-console);
  --text: var(--color-white);
}
.c-partner-badges-section--light {
  --bg: var(--color-neutral-lightest);
  --text: var(--color-console);
}
.c-partner-badges-section {
  padding-block: var(--space-9);
  background-color: var(--bg);
  color: var(--text);
}
.c-partner-badges-section__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-7);
}
@media (min-width: 768px) {
  .c-partner-badges-section__inner {
    flex-direction: row;
    align-items: center;
    gap: var(--space-8);
  }
}
.c-partner-badges-section__intro {
  flex-shrink: 0;
  text-align: center;
}
@media (min-width: 768px) {
  .c-partner-badges-section__intro {
    flex: 0 0 auto;
    max-width: 22rem;
    text-align: left;
  }
}
.c-partner-badges-section__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h4);
  line-height: var(--line-height-heading-h4);
  letter-spacing: var(--letter-spacing-heading);
}
.c-partner-badges-section__grid {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  justify-items: center;
  gap: var(--space-5);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 600px) {
  .c-partner-badges-section__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 768px) {
  .c-partner-badges-section__grid {
    grid-template-columns: repeat(5, 1fr);
    gap: var(--space-4);
  }
}
.c-partner-badges-section__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.c-partner-badges-section__link {
  display: block;
  transition: transform var(--transition-fast), opacity var(--transition-fast);
}
.c-partner-badges-section__link:hover, .c-partner-badges-section__link:focus-visible {
  transform: translateY(-4px);
  opacity: 0.9;
}
.c-partner-badges-section__logo {
  display: block;
  height: clamp(96px, 12vw, 150px);
  width: auto;
  max-width: 100%;
  object-fit: contain;
}
.c-partner-badges-section__caption {
  margin: var(--space-2) 0 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  line-height: var(--line-height-body);
  font-weight: var(--font-weight-medium);
}

.post-archive {
  --pa-bg: var(--color-white);
  --pa-text: var(--color-console);
  --pa-muted: var(--color-neutral-dark);
  --pa-pill: var(--color-neutral-dark);
  --pa-pill-hover: var(--color-console);
  --pa-pill-active-bg: var(--color-white);
  --pa-pill-active-text: var(--color-console);
  --pa-pill-active-border: var(--color-neutral-lightest);
  --pa-more-hover: var(--color-signal);
  padding-block: var(--space-9);
  background-color: var(--pa-bg);
  color: var(--pa-text);
}
.post-archive--bg-dark {
  --pa-bg: var(--color-console);
  --pa-text: var(--color-white);
  --pa-muted: var(--color-neutral-light);
  --pa-pill: var(--color-neutral-light);
  --pa-pill-hover: var(--color-white);
  --pa-pill-active-bg: var(--color-white);
  --pa-pill-active-text: var(--color-console);
  --pa-pill-active-border: transparent;
  --pa-more-hover: var(--color-caution);
}
.post-archive__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-7);
}
.post-archive__intro {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  align-items: center;
  text-align: center;
  max-width: 44rem;
  margin-inline: auto;
}
.post-archive__eyebrow {
  margin: 0;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  letter-spacing: 0.04em;
  color: var(--pa-text);
}
.post-archive__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.post-archive__description {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--pa-muted);
}
.post-archive__filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-2);
}
.post-archive__filter {
  padding: var(--space-2) var(--space-4);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--pa-pill);
  background-color: transparent;
  border: var(--border-width) solid transparent;
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: color var(--transition-fast), background-color var(--transition-fast);
}
.post-archive__filter:hover, .post-archive__filter:focus-visible {
  color: var(--pa-pill-hover);
}
.post-archive__filter.is-active {
  color: var(--pa-pill-active-text);
  background-color: var(--pa-pill-active-bg);
  border-color: var(--pa-pill-active-border);
  box-shadow: var(--shadow-xsmall);
}
.post-archive__grid {
  display: grid;
  gap: var(--space-5);
  grid-template-columns: 1fr;
}
@media (min-width: 600px) {
  .post-archive__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 900px) {
  .post-archive__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.post-archive__empty {
  grid-column: 1/-1;
  text-align: center;
  color: var(--pa-muted);
}
.post-archive__actions {
  display: flex;
  justify-content: center;
}
.post-archive__more {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-5);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--pa-text);
  background-color: transparent;
  border: var(--border-width) solid transparent;
  cursor: pointer;
  transition: color var(--transition-fast);
}
.post-archive__more::after {
  content: "";
  width: 0.45em;
  height: 0.45em;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
}
.post-archive__more:hover, .post-archive__more:focus-visible {
  color: var(--pa-more-hover);
}
.post-archive__more[disabled] {
  opacity: 0.5;
  cursor: default;
}

.resource-card {
  display: flex;
  flex-direction: column;
  background-color: var(--color-white);
  border: var(--border-width) solid var(--color-neutral-lightest);
}
.resource-card__media {
  display: block;
  aspect-ratio: 3/2;
  overflow: hidden;
  background-color: var(--color-console-lightest);
}
.resource-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.resource-card__placeholder {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--color-neutral-light);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M21%2019V5a2%202%200%2000-2-2H5a2%202%200%2000-2%202v14a2%202%200%20002%202h14a2%202%200%20002-2zM8.5%2013.5l2.5%203L14.5%2012l4.5%206H5l3.5-4.5zM8%209a1.5%201.5%200%20100-3%201.5%201.5%200%20000%203z'/%3E%3C/svg%3E") no-repeat center/2.5rem;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20d='M21%2019V5a2%202%200%2000-2-2H5a2%202%200%2000-2%202v14a2%202%200%20002%202h14a2%202%200%20002-2zM8.5%2013.5l2.5%203L14.5%2012l4.5%206H5l3.5-4.5zM8%209a1.5%201.5%200%20100-3%201.5%201.5%200%20000%203z'/%3E%3C/svg%3E") no-repeat center/2.5rem;
}
.resource-card__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-4);
}
.resource-card__meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.resource-card__badge {
  display: inline-block;
  padding: var(--space-1) var(--space-2);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-tiny);
  line-height: 1;
  color: var(--color-signal);
  background-color: var(--color-signal-lightest);
}
.resource-card__metatext {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-tiny);
  color: var(--color-console);
}
.resource-card__title {
  margin: var(--space-1) 0 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-heading-loose);
}
.resource-card__title a {
  color: var(--color-console);
  text-decoration: none;
}
.resource-card__title a:hover, .resource-card__title a:focus-visible {
  color: var(--color-signal);
}
.resource-card__excerpt {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  line-height: var(--line-height-body);
  color: var(--color-neutral-dark);
}
.resource-card__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-signal);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.resource-card__cta::after {
  content: "";
  width: 0.45em;
  height: 0.45em;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--transition-fast);
}
.resource-card__cta:hover, .resource-card__cta:focus-visible {
  color: var(--color-signal-dark);
}
.resource-card__cta:hover::after, .resource-card__cta:focus-visible::after {
  transform: translateX(2px) rotate(45deg);
}

.c-results-section {
  position: relative;
  overflow: hidden;
  padding-block: var(--space-9);
  background-color: var(--color-console);
  color: var(--color-white);
  isolation: isolate;
}
.c-results-section__background {
  position: absolute;
  inset: 0;
  z-index: -2;
  margin: 0;
}
.c-results-section__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.c-results-section__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(16, 22, 42, 0.85) 0%, rgba(16, 22, 42, 0.97) 45%, rgb(16, 22, 42) 100%);
}
.c-results-section__inner {
  position: relative;
  z-index: 1;
}
.c-results-section__heading {
  margin: 0 0 var(--space-8);
  text-align: center;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h3);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.c-results-section__heading-highlight {
  color: var(--color-caution);
}
.c-results-section__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-7);
}
@media (min-width: 768px) {
  .c-results-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
  }
}

.c-results-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-3);
}
@media (min-width: 768px) {
  .c-results-card {
    padding-inline: var(--space-6);
  }
  .c-results-card + .c-results-card {
    border-left: var(--border-width) solid var(--opacity-white-20);
  }
}
.c-results-card__icon {
  display: inline-flex;
}
.c-results-card__icon img {
  width: var(--space-6);
  height: var(--space-6);
  object-fit: contain;
}
.c-results-card__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-heading-loose);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--color-white);
}
.c-results-card__description {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--color-neutral-lighter);
}
.c-results-card__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-caution);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.c-results-card__link::after {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--transition-fast);
}
.c-results-card__link:hover, .c-results-card__link:focus-visible {
  color: var(--color-caution-dark);
  text-decoration: underline;
  text-underline-offset: var(--space-1);
}
.c-results-card__link:hover::after, .c-results-card__link:focus-visible::after {
  transform: translateX(2px) rotate(45deg);
}

.single-resource {
  padding-block: var(--space-9);
  color: var(--color-console);
}
.single-resource__header-inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  align-items: center;
  text-align: center;
  max-width: 48rem;
}
.single-resource__meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.single-resource__badge {
  display: inline-block;
  padding: var(--space-1) var(--space-2);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-tiny);
  line-height: 1;
  color: var(--color-signal);
  background-color: var(--color-signal-lightest);
}
.single-resource__metatext {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-tiny);
  color: var(--color-console);
}
.single-resource__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h1);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.single-resource__media {
  margin: var(--space-7) 0 0;
}
.single-resource__media .single-resource__image {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}
.single-resource__content {
  margin-top: var(--space-7);
}
.single-resource__content-inner {
  max-width: 44rem;
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--color-black);
}
.single-resource__content-inner > * {
  margin-block: 0 var(--space-4);
}
.single-resource__content-inner > :last-child {
  margin-bottom: 0;
}
.single-resource__content-inner h2 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 1.2;
  letter-spacing: -1px;
  margin-top: var(--space-7);
}
.single-resource__content-inner h3 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: -1px;
  margin-top: var(--space-6);
}
.single-resource__content-inner a {
  color: var(--color-signal);
  text-decoration: underline;
}
.single-resource__content-inner a:hover, .single-resource__content-inner a:focus-visible {
  color: var(--color-signal-dark);
}
.single-resource__content-inner ul,
.single-resource__content-inner ol {
  padding-left: var(--space-5);
}
.single-resource__content-inner li {
  margin-bottom: var(--space-2);
}
.single-resource__content-inner img {
  max-width: 100%;
  height: auto;
}
.single-resource__content-inner blockquote {
  margin-inline: 0;
  padding-left: var(--space-4);
  border-left: var(--space-1) solid var(--color-caution);
  color: var(--color-neutral-dark);
}
.single-resource__download {
  margin-top: var(--space-6);
}

.subscription {
  --sub-bg: var(--color-white);
  --sub-text: var(--color-console);
  --sub-muted: var(--color-neutral-dark);
  --sub-input-bg: var(--color-white);
  --sub-input-border: var(--opacity-neutral-darkest-15);
  --sub-input-text: var(--color-console);
  --sub-input-placeholder: var(--color-neutral);
}
.subscription--bg-dark {
  --sub-bg: var(--color-console);
  --sub-text: var(--color-white);
  --sub-muted: var(--color-neutral-light);
  --sub-input-bg: var(--color-console-dark);
  --sub-input-border: var(--opacity-white-20);
  --sub-input-text: var(--color-white);
  --sub-input-placeholder: var(--color-neutral-light);
}
.subscription {
  margin-block: var(--space-9);
}
.subscription__inner {
  display: grid;
  gap: var(--space-7);
  align-items: center;
  padding: var(--space-7);
  background-color: var(--sub-bg);
  color: var(--sub-text);
}
@media (min-width: 860px) {
  .subscription__inner {
    grid-template-columns: 1.1fr 1fr;
    gap: var(--space-8);
    padding: var(--space-8);
  }
}
.subscription__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.subscription__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h3);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--sub-text);
}
.subscription__body {
  font-family: var(--font-family-body);
  font-size: var(--font-size-regular);
  line-height: var(--line-height-body);
  color: var(--sub-text);
}
.subscription__body p {
  margin: 0 0 var(--space-2);
}
.subscription__body ul,
.subscription__body ol {
  margin: 0;
  padding-left: var(--space-5);
}
.subscription__body li {
  margin-bottom: var(--space-1);
}
.subscription__body a {
  color: inherit;
  font-weight: var(--font-weight-semibold);
  text-decoration: underline;
}
.subscription__body > :last-child {
  margin-bottom: 0;
}
.subscription__form-area {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.subscription__form {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.subscription__input {
  flex: 1;
  min-width: 0;
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--sub-input-text);
  background-color: var(--sub-input-bg);
  border: var(--border-width) solid var(--sub-input-border);
  border-radius: var(--radius-small);
}
.subscription__input::placeholder {
  color: var(--sub-input-placeholder);
}
.subscription__input:focus {
  outline: none;
  border-color: var(--color-caution);
}
.subscription__button {
  flex-shrink: 0;
  padding: var(--space-3) var(--space-5);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console-darkest);
  background-color: var(--color-caution);
  border: var(--border-width) solid var(--color-caution);
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: background-color var(--transition-fast), border-color var(--transition-fast);
}
.subscription__button:hover, .subscription__button:focus-visible {
  background-color: var(--color-caution-dark);
  border-color: var(--color-caution-dark);
}
.subscription__privacy {
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  line-height: var(--line-height-body);
  color: var(--sub-muted);
}
.subscription__privacy p {
  margin: 0;
}
.subscription__privacy a {
  color: inherit;
  text-decoration: underline;
}
.subscription__form--cf7 input[type=email],
.subscription__form--cf7 input[type=text] {
  width: 100%;
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  color: var(--sub-input-text);
  background-color: var(--sub-input-bg);
  border: var(--border-width) solid var(--sub-input-border);
  border-radius: var(--radius-small);
}
.subscription__form--cf7 input[type=email]::placeholder,
.subscription__form--cf7 input[type=text]::placeholder {
  color: var(--sub-input-placeholder);
}
.subscription__form--cf7 input[type=email]:focus,
.subscription__form--cf7 input[type=text]:focus {
  outline: none;
  border-color: var(--color-caution);
}
.subscription__form--cf7 input[type=submit],
.subscription__form--cf7 button[type=submit] {
  padding: var(--space-3) var(--space-5);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-small);
  color: var(--color-console-darkest);
  background-color: var(--color-caution);
  border: var(--border-width) solid var(--color-caution);
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: background-color var(--transition-fast), border-color var(--transition-fast);
}
.subscription__form--cf7 input[type=submit]:hover, .subscription__form--cf7 input[type=submit]:focus-visible,
.subscription__form--cf7 button[type=submit]:hover,
.subscription__form--cf7 button[type=submit]:focus-visible {
  background-color: var(--color-caution-dark);
  border-color: var(--color-caution-dark);
}

.c-testimonials-section {
  --bg: var(--color-caution);
  --text: var(--color-console);
  --muted: var(--color-console-dark);
  --card-bg: var(--color-caution-light);
  --card-border: var(--color-caution-lighter);
  --control: var(--color-console);
  padding-block: var(--space-9);
  background-color: var(--bg);
  color: var(--text);
}
.c-testimonials-section__header {
  text-align: center;
  margin-bottom: var(--space-7);
}
.c-testimonials-section__heading {
  margin: 0;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading-tight);
  letter-spacing: var(--letter-spacing-heading);
}
.c-testimonials-section__subheading {
  margin: var(--space-3) 0 0;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--muted);
}
.c-testimonials-section__card {
  margin: 0;
  padding: var(--space-8) var(--space-7);
  background-color: var(--card-bg);
  border: var(--border-width) solid var(--card-border);
  text-align: center;
}
.c-testimonials-section__quote {
  max-width: 52rem;
  margin-inline: auto;
  font-family: var(--font-family-body);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  color: var(--text);
}
.c-testimonials-section__quote p {
  margin: 0 0 var(--space-4);
}
.c-testimonials-section__quote > :last-child {
  margin-bottom: 0;
}
.c-testimonials-section__quote p:first-child::before {
  content: "“";
}
.c-testimonials-section__quote p:last-child::after {
  content: "”";
}
.c-testimonials-section__attribution {
  margin-top: var(--space-6);
}
.c-testimonials-section__author {
  display: block;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-small);
  font-style: normal;
  color: var(--text);
}
.c-testimonials-section__role {
  display: block;
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-small);
  color: var(--text);
}
.c-testimonials-section__company {
  display: block;
  margin-top: var(--space-1);
  font-family: var(--font-family-body);
  font-size: var(--font-size-small);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}
.c-testimonials-section__slider {
  padding-inline: var(--space-7);
}
.c-testimonials-section__slider .splide__arrow {
  background-color: transparent;
  border: var(--border-width) solid var(--control);
  opacity: 0.8;
}
.c-testimonials-section__slider .splide__arrow svg {
  fill: var(--control);
}
.c-testimonials-section__slider .splide__arrow:hover:not(:disabled) {
  opacity: 1;
}
.c-testimonials-section__slider .splide__pagination__page {
  background-color: var(--control);
  opacity: 0.4;
}
.c-testimonials-section__slider .splide__pagination__page.is-active {
  opacity: 1;
  transform: scale(1.2);
}

:root {
  --color-neutral-lightest: #f2f2f2;
  --color-neutral-lighter: #d8d8d9;
  --color-neutral-light: #b2b2b3;
  --color-neutral: #808080;
  --color-neutral-dark: #4d4d4d;
  --color-neutral-darker: #1a1a1b;
  --color-neutral-darkest: #010102;
  --color-console-lightest: #e7e7e9;
  --color-console-lighter: #cfd0d4;
  --color-console-light: #575b69;
  --color-console: #10162a;
  --color-console-dark: #0c1121;
  --color-console-darker: #060810;
  --color-console-darkest: #04060c;
  --color-caution-lightest: #fffae5;
  --color-caution-lighter: #fff6cc;
  --color-caution-light: #ffe04c;
  --color-caution: #ffd400;
  --color-caution-dark: #cca900;
  --color-caution-darker: #665400;
  --color-caution-darkest: #4c3f00;
  --color-signal-lightest: #e8f3ff;
  --color-signal-lighter: #d2e8ff;
  --color-signal-light: #61b1ff;
  --color-signal: #1e90ff;
  --color-signal-dark: #1873cc;
  --color-signal-darker: #0c3966;
  --color-signal-darkest: #092b4c;
  --color-live-lightest: #effcf8;
  --color-live-lighter: #e0f9f2;
  --color-live-light: #95ead4;
  --color-live: #68e1c2;
  --color-live-dark: #53b49b;
  --color-live-darker: #295a4d;
  --color-live-darkest: #1f433a;
  --color-alert-lightest: #ffeded;
  --color-alert-lighter: #ffdbdb;
  --color-alert-light: #ff8282;
  --color-alert: #ff4d4d;
  --color-alert-dark: #cc3d3d;
  --color-alert-darker: #661e1e;
  --color-alert-darkest: #4c1717;
  --color-white: #ffffff;
  --color-black: #010102;
  --opacity-neutral-darkest-5: rgba(1, 1, 2, 0.05);
  --opacity-neutral-darkest-15: rgba(1, 1, 2, 0.15);
  --opacity-neutral-darkest-60: rgba(1, 1, 2, 0.6);
  --opacity-white-20: rgba(255, 255, 255, 0.2);
  --background: #ffffff;
  --text: #10162a;
  --foreground: #e7e7e9;
  --border: rgba(1, 1, 2, 0.05);
  --accent: #1e90ff;
  --font-family-heading: Space Grotesk, Helvetica Neue, Arial, sans-serif;
  --font-family-body: Inter, Helvetica Neue, Arial, sans-serif;
  --font-size-h1: 56px;
  --font-size-h2: 44px;
  --font-size-h3: 36px;
  --font-size-h4: 28px;
  --font-size-h5: 24px;
  --font-size-h6: 22px;
  --font-size-large: 22px;
  --font-size-medium: 18px;
  --font-size-regular: 16px;
  --font-size-small: 14px;
  --font-size-tiny: 12px;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --line-height-heading-tight: 1.2;
  --line-height-heading-h4: 1.3;
  --line-height-heading-loose: 1.4;
  --line-height-body: 1.5;
  --letter-spacing-heading: -1px;
  --letter-spacing-body: 0;
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 128px;
  --border-width: 1px;
  --radius-small: 0;
  --radius-medium: 0;
  --radius-large: 0;
  --shadow-xxsmall: 0px 1px 2px 0px rgba(0, 0, 0, 0.05);
  --shadow-xsmall: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
  --shadow-small: 0px 4px 8px -2px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.06);
  --shadow-medium: 0px 12px 16px -4px rgba(0, 0, 0, 0.08), 0px 4px 6px -2px rgba(0, 0, 0, 0.03);
  --shadow-large: 0px 20px 24px -4px rgba(0, 0, 0, 0.08), 0px 8px 8px -4px rgba(0, 0, 0, 0.03);
  --shadow-xlarge: 0px 24px 48px -12px rgba(0, 0, 0, 0.18);
  --shadow-xxlarge: 0px 32px 64px -12px rgba(0, 0, 0, 0.14);
  --transition-fast: 150ms ease;
  --transition-medium: 250ms ease;
  --transition-slow: 400ms ease;
  --grid-max-width: 1200px;
  --grid-gutter: 24px;
}

[data-theme=light] {
  --background: #ffffff;
  --text: #10162a;
  --foreground: #e7e7e9;
  --border: rgba(1, 1, 2, 0.05);
  --accent: #1e90ff;
}

[data-theme=light-alt] {
  --background: #e7e7e9;
  --text: #10162a;
  --foreground: #ffffff;
  --border: rgba(1, 1, 2, 0.15);
  --accent: #1e90ff;
}

[data-theme=dark] {
  --background: #10162a;
  --text: #ffffff;
  --foreground: #0c1121;
  --border: #575b69;
  --accent: #ffd400;
}

[data-theme=blue] {
  --background: #1e90ff;
  --text: #ffffff;
  --foreground: #1873cc;
  --border: #61b1ff;
  --accent: #ffd400;
}

[data-theme=yellow] {
  --background: #ffd400;
  --text: #10162a;
  --foreground: #ffe04c;
  --border: #fffae5;
  --accent: #1873cc;
}

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

body {
  margin: 0;
  background-color: var(--background, #ffffff);
  color: var(--text, #10162a);
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

h1, .h1 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 56px;
  line-height: 1.2;
  letter-spacing: -1px;
}

h2, .h2 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 44px;
  line-height: 1.2;
  letter-spacing: -1px;
}

h3, .h3 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 1.2;
  letter-spacing: -1px;
}

h4, .h4 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: -1px;
}

h5, .h5 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.4;
  letter-spacing: -1px;
}

h6, .h6 {
  font-family: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.4;
  letter-spacing: -1px;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 16px;
}

.tagline {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-large {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-large--light {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-large--medium {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-large--semibold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-large--bold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-medium {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-medium--light {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-medium--medium {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-medium--semibold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-medium--bold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-regular {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-regular--light {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-regular--medium {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-regular--semibold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-regular--bold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-small {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-small--light {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-small--medium {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-small--semibold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-small--bold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-tiny {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-tiny--light {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-tiny--medium {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-tiny--semibold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0;
}

.text-tiny--bold {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0;
}

.shadow-xxsmall {
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.05);
}

.shadow-xsmall {
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
}

.shadow-small {
  box-shadow: 0px 4px 8px -2px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.06);
}

.shadow-medium {
  box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, 0.08), 0px 4px 6px -2px rgba(0, 0, 0, 0.03);
}

.shadow-large {
  box-shadow: 0px 20px 24px -4px rgba(0, 0, 0, 0.08), 0px 8px 8px -4px rgba(0, 0, 0, 0.03);
}

.shadow-xlarge {
  box-shadow: 0px 24px 48px -12px rgba(0, 0, 0, 0.18);
}

.shadow-xxlarge {
  box-shadow: 0px 32px 64px -12px rgba(0, 0, 0, 0.14);
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.container {
  width: 100%;
  max-width: var(--grid-max-width);
  margin-inline: auto;
  padding-inline: var(--space-4);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-3) var(--space-5);
  background-color: var(--color-caution);
  color: var(--color-console-darkest);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-medium);
  line-height: var(--line-height-body);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  border: var(--border-width) solid transparent;
  border-radius: var(--radius-small);
  cursor: pointer;
  transition: background-color var(--transition-fast), color var(--transition-fast);
}
.button:hover, .button:focus {
  background-color: var(--color-caution-dark);
}
.button--outline {
  background-color: transparent;
  color: var(--color-white);
  border-color: var(--color-white);
}
.button--outline:hover, .button--outline:focus {
  background-color: var(--color-white);
  color: var(--color-console);
}

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