.hwd_left,
.sp_project:not(.coming_soon):hover .p_title::before {
  height: 100%;
}
.aw_img-words,
.sp_follow {
  mix-blend-mode: difference;
}
.aw_img,
.aw_img--wrap,
.sp_follow,
.sp_follow > span,
.sp_project,
.sp_wrap {
  overflow: hidden;
}
.hwd_container,
.hwd_containers,
.p_featured,
body {
  background-color: var(--black);
}
.hwd_containers,
.hwd_highlight.pass,
.lv_desc a,
.p_featured,
.sp_project .p_desc,
body {
  color: var(--white);
}
.lv_desc a:hover,
.sp_project {
  text-decoration: none;
}
.dfi_pagination,
.sp_follow,
.vimeo_video iframe {
  pointer-events: none;
}
.dfi_left.active .impact_value *,
.dfi_left.active .lv_chars {
  transform: translateY(0);
}
.dfi-arrow svg,
.tst-arrow svg {
  transition: 0.25s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.header__row {
  row-gap: 1em;
  margin-bottom: 4em;
  align-items: flex-end;
  position: relative;
}
.header_clutch.mobile_only,
.hwd_title {
  margin-bottom: 1.5em;
}
.p_featured {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.375em 0.5em;
  width: fit-content;
  position: absolute;
  top: 0;
  left: 0.5em;
  z-index: 5;
  border-bottom-left-radius: 0.125em;
  border-bottom-right-radius: 0.125em;
  transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.hwd_container,
.hwd_containers,
.sp_left,
.sp_project {
  position: relative;
}
.sp_category,
.sp_project,
.sp_project--arrow {
  transition: 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.p_featured p,
.stats_block .h2 {
  line-height: 1;
}
.home_page-project.ft:hover .p_featured {
  background-color: var(--alphamark_yellow);
  color: var(--black);
}
.w_w_d-description {
  display: flex;
  flex-direction: column;
  gap: 6.25em;
  justify-content: space-between;
}
.hwd_title,
.wwd_list-item {
  align-items: center;
  display: flex;
}
.wwd_list-item {
  gap: 0.5em;
}
.hwd_left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: calc(50% - 0.5em);
}
.hwd_content {
  display: flex;
  flex-direction: column;
  gap: 2em;
  align-items: flex-start;
}
.hwd_title h3 {
  color: currentColor !important;
  position: relative;
}
.hwd_title {
  gap: 0.5em;
  text-decoration: none !important;
  color: var(--white) !important;
  transition: 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hwd_title h3::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 0.06125em;
  width: 0%;
  background-color: currentColor;
  transition: 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hwd_title:hover h3::before {
  width: 100%;
}
.hwd_title:hover {
  color: var(--alphamark_yellow) !important;
}
.hwd_title svg {
  width: 2.5em;
  height: 2.5em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hwd_containers--wrap {
  position: relative;
  margin-top: var(--spacing_s);
}
.hwd_container {
  padding: var(--site_padding);
  padding-bottom: 5em;
  min-height: 50vh;
  border-top: 0.06125em solid #333;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1em;
}
.hwd_container:first-child {
  position: sticky;
  top: 0;
  z-index: 1;
}
.hwd_container:nth-child(2) {
  z-index: 2;
  padding-bottom: 0;
}
.lv_desc a {
  padding-bottom: 0;
}
.lv_desc {
  font-weight: var(--medium);
  letter-spacing: -0.005em;
  line-height: 1.3;
}
.hwd_video {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}
.aw_block img,
.hwd_video video {
  width: 100%;
  height: auto;
}
.hwd_containers {
  margin-top: var(--spacing_l);
}
.aw_wrap,
.sp_wrap {
  margin-top: var(--spacing_s);
}
@media (max-width: 1440px) {
  .hwd_left {
    max-width: 60%;
  }
}
@media (max-width: 1365px) {
  .hwd_left {
    max-width: none;
    width: 100%;
  }
}
.sp_project {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  color: var(--white) !important;
  padding: 2em var(--site_padding);
  border-top: 0.06125em solid #2d2d2d;
  gap: 1em;
  width: 100%;
}
.sp_project.coming_soon .sp_follow {
  display: none;
}
.sp_project .p_name-title {
  font-size: var(--fsh4) !important;
}
.header_lines .line,
.menu_button .m_m-line,
.sp_project .p_name-square {
  background-color: var(--white);
}
.sp_project:not(.coming_soon):hover .point,
.tst_swiper .swiper-slide:not(.swiper-slide-active) .tst_slide {
  opacity: 0;
}
.sp_project:not(.coming_soon):hover .point-text,
.sp_project.coming_soon .point-text {
  opacity: 1 !important;
}
.sp_project.coming_soon .p_title {
  margin-left: 0 !important;
}
.sp_project.coming_soon .p_name-title > svg {
  transform: translateX(-100%) !important;
}
.impact_value *,
.lv_chars {
  transform: translateY(100%);
}
.sp_wrap {
  width: calc(100% + (var(--site_padding) * 2));
  margin-left: calc(0em - var(--site_padding));
  border-bottom: 0.06125em solid #333;
  margin-bottom: var(--spacing_l);
}
.sp_category {
  padding: 0.375em 0.6125em 0.5em;
  background-color: var(--natural_black);
  color: var(--mono_3-lighter) !important;
  border-radius: 20em;
  flex-shrink: 0;
}
.sp_category p {
  line-height: 1;
  display: inline;
}
.sp_project--arrow {
  display: flex;
  margin-right: 0.75em;
}
.sp_project--arrow svg {
  width: 1.375em;
  height: 1.875em;
}
.sp_left {
  display: flex;
  grid-column: 1/7;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2em;
}
.sp_right {
  grid-column: 10/13;
}
.post_thumbnail figure,
.sp_project .p_title {
  z-index: 1;
}
.sp_project:not(.coming_soon):hover .p_title {
  color: var(--black) !important;
}
.sp_project .p_title::before {
  height: 0;
  z-index: -1;
  background-color: var(--white);
}
.sp_follow {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  white-space: nowrap;
  display: none;
}
.sp_follow .sp_follow--word {
  display: inline-block;
  transform: translateY(100%);
  opacity: 0;
  transition: 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.sp_follow::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 0.125em;
  width: 0%;
  background-color: #fff;
  transition: 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.aw_img-icon::after,
.aw_img-icon::before,
.hwd_highlight::after {
  content: "";
  position: absolute;
  background-color: var(--white);
}
.sp_follow--word.second {
  transition-delay: 50ms;
}
.hwd_highlight,
.hwd_highlight::after {
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.aws {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2em;
}
.aw_block,
.sp_project figure {
  display: flex;
  align-items: center;
  justify-content: center;
}
.aw_img-words {
  position: absolute;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 1em;
}
.aw_img,
.aw_img--wrap,
.aw_img-icon,
.dfi_inner-slides,
.hwd_highlight,
.sp--wrap {
  position: relative;
}
.aw_img {
  display: flex;
  width: 100%;
  padding-bottom: 66.66%;
}
.aw_img--wrap {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.aw_img--canvas {
  width: 65%;
  height: 65%;
  object-fit: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
@media (max-width: 992px) {
  .aw_img--canvas {
    width: 130%;
    height: 130%;
  }
}
.aw_img-icon {
  width: 3em;
  height: 3em;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
}
.aw_img-icon::before {
  width: 100%;
  height: 0.25em;
}
.aw_img-icon::after {
  width: 0.25em;
  height: 100%;
}
.aw_img-words span:first-child {
  transform: translateX(-35vw);
}
.aw_img-words span:last-child {
  transform: translateX(35vw);
}
.stats_header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}
.stats_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1em;
}
.stats_block {
  min-height: 15em;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  padding: 2em 1.5em;
  border-radius: 0.125em;
  background-color: var(--cbc);
}
.hwd_highlight {
  color: var(--black);
  z-index: 1;
}
.hwd_highlight.pass::after {
  height: 0%;
}
.hwd_highlight::after {
  width: 100%;
  height: 100%;
  z-index: -1;
  bottom: 0;
  left: 0;
}
body {
  counter-reset: faq;
}
.news_section,
.testimonials_section {
  margin-bottom: var(--spacing_l);
}
.new_menu-link {
  color: var(--white) !important;
}
.alphamark_nav.dark .new_menu-link::before {
  background-color: var(--white) !important;
}
.logo_animation {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.logo_loaded-state {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
}
.header_clutch {
  display: flex;
  gap: 0.375em;
  align-items: center;
}
.header_clutch svg {
  width: 6.25em;
  height: 1em;
  display: flex;
}
.aww_content--right {
  grid-column: 2/4;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.875em;
}
.w_w_d--list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1em;
  row-gap: 0.5em;
}
.hwd_s-list {
  display: flex;
  flex-direction: column;
  gap: 0.375em;
}
.dfi_content {
  display: flex;
  flex-direction: column;
  gap: 1.25em;
}
.dfi_nav,
.tst_swiper--navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.dfi_inner-slides {
  aspect-ratio: 3/2;
  padding-bottom: 66.66%;
}
.dfi_left,
.scd,
.tst_s-thumbs {
  position: absolute;
}
.dfi_left .lv_desc {
  font-weight: var(--regular);
}
.dfi_left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.25em;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.dfi_left.active .lv_chars,
.impact_value * {
  transition: 0.75s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.dfi_left.active {
  opacity: 1;
  visibility: visible;
}
.impact_value {
  font-size: 5.5em;
  letter-spacing: -0.02em;
  display: flex;
  color: var(--alphamark_yellow);
  overflow: hidden;
}
.impact_value * {
  line-height: 0.85;
}
.impact_value :nth-child(2) {
  transition-delay: 75ms;
}
.dfi-arrow,
.tst-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125em;
  height: 2.125em;
  color: var(--white);
  cursor: pointer;
  transition: background-color 0.25s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  border-radius: 10em;
  background-color: var(--natural_black);
}
.scd,
.scd_icon {
  transition: 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.dfi-arrow svg {
  width: 50%;
  height: 40%;
  clip-path: inset(0% 0% 0% 0%);
}
.dfi_nav--buttons,
.tst_nav--buttons {
  display: flex;
  align-items: center;
  gap: 0.25em;
}
.dfi_pagination {
  width: 100%;
  height: 0.125em;
  margin-bottom: 1.25em;
  background-color: #ffffff38;
}
.dfi_pagination--inner {
  width: 100%;
  height: 100%;
  background-color: var(--white);
}
.lv_desc .split {
  vertical-align: bottom;
}
.lv_desc span {
  line-height: 0;
}
.lv_chars {
  line-height: 1.3;
}
.stats_container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1em;
  margin-bottom: var(--spacing_l);
}
.tst_header {
  margin-bottom: var(--spacing_s);
}
.fw_headline-wrap {
  width: 100%;
  margin: var(--spacing_l) 0;
  overflow: hidden;
  max-width: 100%;
}
@media (max-width: 1100px) {
  .fw_headline {
    font-size: 4em !important;
    text-wrap: balance;
  }
}
@media (min-width: 1100px) {
  .fw_headline {
    white-space: nowrap;
    display: inline-block;
    text-align: center;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }
}
@media (max-width: 675px) {
  .fw_headline {
    font-size: 10vw !important;
  }
}
@media (min-width: 1441px) {
  .lv_desc.fs18,
  .wwd_list-item .fs18 {
    font-size: var(--fs22) !important;
    letter-spacing: -0.01em !important;
  }
}
.sp_project .t_image-hover,
.sp_project .t_video-hover {
  z-index: 2;
}
.sp_project .project_name {
  margin-top: 0;
}
.scd {
  width: fit-content;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  gap: 0.25em;
  cursor: pointer;
}
.scd:hover .scd_icon {
  animation-play-state: paused;
}
.scd:hover {
  gap: 0.125em;
}
.scd_icon {
  width: 1.125em;
  height: 0.75em;
  animation: 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) infinite alternate scDown;
}
@keyframes scDown {
  0% {
    opacity: 1;
    transform: translateY(0em);
  }
  100% {
    opacity: 0.3;
    transform: translateY(-0.5em);
  }
}

.scd_icon:nth-child(2) {
  animation-delay: 0.1s;
  display: none;
}
.scd_icon:nth-child(3) {
  animation-delay: 0.1s;
}
.headline_section {
  min-height: 100vh;
  display: flex;
  align-items: flex-end;
  margin-bottom: 2em;
}
.tst_swiper .swiper-slide {
  height: auto;
}
.tst_s-thumbs {
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 0.5em;
  z-index: 90;
}
.tst_s-image {
  width: 3.125em;
  height: 3.125em;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  overflow: hidden;
  transition: opacity 0.25s cubic-bezier(0.22, 0.61, 0.36, 1);
  cursor: pointer;
}
.tst_s-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tst_s-image:not(.active) {
  opacity: 0.4;
}
.swiper-slide:not(.swiper-slide-active) .tst_word {
  transition-delay: 0s !important;
  transform: translateY(100%);
}
.tst_word {
  will-change: transform;
  transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.tst-arrow svg {
  width: 50%;
  height: 40%;
}
@media (min-width: 992px) {
  .sp_project:not(.coming_soon):hover {
    background-color: var(--cbc);
    border-color: var(--cbc);
  }
  .sp_project:not(.coming_soon):hover .sp_follow {
    visibility: visible;
  }
  .sp_project:not(.coming_soon):hover .sp_follow .sp_follow--word {
    transform: translateY(0);
    opacity: 1;
  }
  .sp_project:not(.coming_soon):hover .sp_follow::after {
    width: 100%;
  }
  .sp_project:not(.coming_soon):hover .t_image-hover,
  .sp_project:not(.coming_soon):hover .t_video-hover {
    opacity: 1;
  }
  .sp_project:not(.coming_soon):hover .spl_bottom > * {
    opacity: 1;
    transform: translateX(0);
  }
  .spl_bottom > * {
    transform: translateX(-0.25em);
    opacity: 0;
  }
  .swiper.tst_swiper {
    padding-left: 1.5em;
  }
  .dfi-arrow:hover {
    background-color: #e6e6e6;
    color: var(--black);
  }
  .dfi-arrow.next:hover svg {
    transform: translateX(0.25em);
    clip-path: inset(0% 0% 0% 25%);
  }
  .dfi-arrow.prev:hover svg {
    transform: translateX(-0.25em);
    clip-path: inset(0% 25% 0% 0%);
  }
}
.pas_section {
  margin-top: var(--spacing_l);
}
.spl_bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25em;
}
.sp_category.ind {
  border-radius: 0.125em;
}
@media (max-width: 992px) {
  .hwd_title img {
    max-width: 1.75em;
    height: 1.75em;
  }
  .hwd_container {
    padding: var(--site_padding);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 1.5em;
    position: relative;
  }
  .hwd_content {
    gap: 1.5em;
  }
  .hwd_video {
    margin-bottom: var(--spacing_s);
  }
  .hwd_title {
    margin-bottom: 0;
  }
  .sp_project .p_name-title {
    font-size: 1.375em !important;
    line-height: 1.24;
    letter-spacing: -0.01em;
  }
  .sp_project {
    display: flex;
    flex-direction: column-reverse;
    gap: 1em;
    padding: 1em var(--site_padding);
  }
  .projects_section,
  .scd,
  .sp_follow,
  .sp_project--arrow {
    display: none;
  }
  .sp_project:not(.coming_soon) .point {
    opacity: 0;
  }
  .sp_project:not(.coming_soon) .point-text {
    opacity: 1;
  }
  .sp_project:not(.coming_soon) .p_title {
    color: var(--black) !important;
  }
  .sp_project:not(.coming_soon) .p_title::before {
    height: 100%;
  }
  .p_name-title {
    font-size: 1.375em;
  }
  .sp_wrap {
    display: flex;
    flex-direction: column;
    gap: 6.25em;
    border-bottom: none;
  }
  .stats_block .h2 {
    font-size: 2.5em;
  }
  .stats_block p {
    font-size: var(--fs16);
    letter-spacing: normal;
  }
  .stats_block {
    min-height: auto;
    gap: 2em;
    padding: 1.25em 1em;
  }
  .header__row {
    row-gap: 2.25em !important;
    margin-bottom: 0;
  }
  .n_s-header {
    gap: 12.5em;
    padding-bottom: 0.5em;
  }
  .aws {
    margin-top: 2em;
    gap: 1em;
  }
  .aw_img-words {
    flex-direction: column;
    align-items: center;
  }
  .aw_img--wrap {
    flex-direction: column;
    gap: 5em;
    margin: var(--spacing_l) 0;
    overflow: visible;
  }
  .aw_img video {
    width: 100%;
    height: 100%;
  }
  .aw_img-words span:first-child {
    transform: translateX(0) translateY(-2.5em);
  }
  .aw_img-words span:last-child {
    transform: translateX(0) translateY(2.5em);
  }
  .stats_header {
    padding-top: 0;
    border: 0;
  }
  .posts_query {
    margin-top: 0;
    display: flex;
    flex-direction: column;
    width: calc(100% + 2em);
    margin-left: -1em;
    padding-left: 1em;
    padding-right: 1em;
  }
  .hwd_containers {
    overflow: hidden;
  }
  .site_wrap {
    border: none;
    overflow: hidden;
  }
  .dfi_content,
  .w_w_d--list {
    flex-direction: column;
    display: flex;
  }
  .w_w_d-description {
    gap: 3.125em;
    width: 100%;
  }
  .w_w_d--list {
    width: 100%;
  }
  .w_w_d-description h4 {
    font-size: var(--fs22);
    line-height: 1.3;
    letter-spacing: -0.01em;
  }
  .dfi_content {
    gap: 1em;
    margin-top: 7.5em;
    padding: 0;
    border: none;
  }
  .dfi_inner-slides {
    min-height: 17.5em;
    padding: 0;
    aspect-ratio: auto;
  }
  .projects_section .row {
    gap: 4em;
  }
  .stats_container {
    display: flex;
    flex-direction: column;
    gap: 3em;
  }
  .stats_header h4 {
    font-size: 1.25em;
    letter-spacing: -0.004em;
    line-height: 1.3;
  }
  .headline_section {
    padding-top: 10em;
    align-items: flex-start;
    margin-bottom: 0;
    min-height: auto;
  }
  .header_content--wrap {
    margin-top: 1.5em;
    gap: 1.5em;
  }
  .header_content--wrap p {
    font-size: var(--fs18);
    line-height: 1.3;
    letter-spacing: normal !important;
  }
  .fw_headline-wrap {
    margin: 6.25em 0;
  }
  .hwd_content p {
    font-size: 1.25em;
    line-height: 1.3;
    letter-spacing: normal;
  }
  .spl_bottom .sp_category p {
    color: var(--cool_gray-7c) !important;
  }
  .sp_left {
    gap: 1.25em;
  }
  .spl_bottom .sp_category {
    background-color: var(--cbc);
  }
  .stats_grid {
    gap: 0.5em;
  }
}
@media (min-width: 1366px) {
  .stats_header {
    max-width: 80%;
  }
}
.tst_s-image:hover {
  opacity: 1;
}
@media (max-width: 475px) {
  .aws {
    grid-template-columns: repeat(2, 1fr);
  }
  .stats_grid {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 476px) and (max-width: 992px) {
  .hwd_video {
    width: 50%;
  }
  .aw_img--wrap {
    max-width: 75%;
    margin: var(--spacing_l) auto;
  }
}
@media (min-width: 600px) and (max-width: 992px) {
  .sp_wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1em;
    padding: 0 var(--site_padding);
  }
  .sp_project {
    padding: 0;
    border-top: 0;
  }
}
#cookie-notice {
  opacity: 0;
  transform: translateY(100%);
}

.spline_scene {
  width: 80% !important;
  height: 100% !important;
  margin: 0 auto;
}
@media (max-width: 992px) {
  .aw_wrap {
    margin-top: 2em;
  }
  .wwd_list-item svg {
    width: 1.2em;
  }
  .sp_category p {
    letter-spacing: 0.03em !important;
  }
}
.logo_animation--video {
  width: 100%;
  object-fit: contain;
}
