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

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

body {
  line-height: 1;
  -webkit-backface-visibility: hidden;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

a {
  color: inherit;
  text-decoration: none;
}

.cf {
  overflow: auto;
}

.cf::after {
  content: "";
  clear: both;
  display: table;
}

.page-wrapper {
  overflow-x: hidden;
}

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

.ma--2--7, .ma-2 {
  margin: 7px;
}

.ma--1--11, .ma-1 {
  margin: 11px;
}

.ma-0--18, .ma0 {
  margin: 18px;
}

.ma-1--29, .ma1 {
  margin: 29px;
}

.ma-2--47, .ma2 {
  margin: 47px;
}

.ma-3--76, .ma3 {
  margin: 76px;
}

.ma-4--123, .ma4 {
  margin: 123px;
}

.ma-5--200, .ma5 {
  margin: 200px;
}

.ma-6--323, .ma6 {
  margin: 323px;
}

.ma-7--523, .ma7 {
  margin: 523px;
}

.ma-8--845, .ma8 {
  margin: 845px;
}

.ma-9--1368, .ma9 {
  margin: 1368px;
}

.ml--2--7, .ml-2 {
  margin-left: 7px;
}

.ml--1--11, .ml-1 {
  margin-left: 11px;
}

.ml-0--18, .ml0 {
  margin-left: 18px;
}

.ml-1--29, .ml1 {
  margin-left: 29px;
}

.ml-2--47, .ml2 {
  margin-left: 47px;
}

.ml-3--76, .ml3 {
  margin-left: 76px;
}

.ml-4--123, .ml4 {
  margin-left: 123px;
}

.ml-5--200, .ml5 {
  margin-left: 200px;
}

.ml-6--323, .ml6 {
  margin-left: 323px;
}

.ml-7--523, .ml7 {
  margin-left: 523px;
}

.ml-8--845, .ml8 {
  margin-left: 845px;
}

.ml-9--1368, .ml9 {
  margin-left: 1368px;
}

.mr--2--7, .mr-2 {
  margin-right: 7px;
}

.mr--1--11, .mr-1 {
  margin-right: 11px;
}

.mr-0--18, .mr0 {
  margin-right: 18px;
}

.mr-1--29, .mr1 {
  margin-right: 29px;
}

.mr-2--47, .mr2 {
  margin-right: 47px;
}

.mr-3--76, .mr3 {
  margin-right: 76px;
}

.mr-4--123, .mr4 {
  margin-right: 123px;
}

.mr-5--200, .mr5 {
  margin-right: 200px;
}

.mr-6--323, .mr6 {
  margin-right: 323px;
}

.mr-7--523, .mr7 {
  margin-right: 523px;
}

.mr-8--845, .mr8 {
  margin-right: 845px;
}

.mr-9--1368, .mr9 {
  margin-right: 1368px;
}

.mt--2--7, .mt-2 {
  margin-top: 7px;
}

.mt--1--11, .mt-1 {
  margin-top: 11px;
}

.mt-0--18, .mt0 {
  margin-top: 18px;
}

.mt-1--29, .mt1 {
  margin-top: 29px;
}

.mt-2--47, .mt2 {
  margin-top: 47px;
}

.mt-3--76, .mt3 {
  margin-top: 76px;
}

.mt-4--123, .mt4 {
  margin-top: 123px;
}

.mt-5--200, .mt5 {
  margin-top: 200px;
}

.mt-6--323, .mt6 {
  margin-top: 323px;
}

.mt-7--523, .mt7 {
  margin-top: 523px;
}

.mt-8--845, .mt8 {
  margin-top: 845px;
}

.mt-9--1368, .mt9 {
  margin-top: 1368px;
}

.mb--2--7, .mb-2 {
  margin-bottom: 7px;
}

.mb--1--11, .mb-1 {
  margin-bottom: 11px;
}

.mb-0--18, .mb0 {
  margin-bottom: 18px;
}

.mb-1--29, .mb1 {
  margin-bottom: 29px;
}

.mb-2--47, .mb2 {
  margin-bottom: 47px;
}

.mb-3--76, .mb3 {
  margin-bottom: 76px;
}

.mb-4--123, .mb4 {
  margin-bottom: 123px;
}

.mb-5--200, .mb5 {
  margin-bottom: 200px;
}

.mb-6--323, .mb6 {
  margin-bottom: 323px;
}

.mb-7--523, .mb7 {
  margin-bottom: 523px;
}

.mb-8--845, .mb8 {
  margin-bottom: 845px;
}

.mb-9--1368, .mb9 {
  margin-bottom: 1368px;
}

.pa--2--7, .pa-2 {
  padding: 7px;
}

.pa--1--11, .pa-1 {
  padding: 11px;
}

.pa-0--18, .pa0 {
  padding: 18px;
}

.pa-1--29, .pa1 {
  padding: 29px;
}

.pa-2--47, .pa2 {
  padding: 47px;
}

.pa-3--76, .pa3 {
  padding: 76px;
}

.pa-4--123, .pa4 {
  padding: 123px;
}

.pa-5--200, .pa5 {
  padding: 200px;
}

.pa-6--323, .pa6 {
  padding: 323px;
}

.pa-7--523, .pa7 {
  padding: 523px;
}

.pa-8--845, .pa8 {
  padding: 845px;
}

.pa-9--1368, .pa9 {
  padding: 1368px;
}

.pl--2--7, .pl-2 {
  padding-left: 7px;
}

.pl--1--11, .pl-1 {
  padding-left: 11px;
}

.pl-0--18, .pl0 {
  padding-left: 18px;
}

.pl-1--29, .pl1 {
  padding-left: 29px;
}

.pl-2--47, .pl2 {
  padding-left: 47px;
}

.pl-3--76, .pl3 {
  padding-left: 76px;
}

.pl-4--123, .pl4 {
  padding-left: 123px;
}

.pl-5--200, .pl5 {
  padding-left: 200px;
}

.pl-6--323, .pl6 {
  padding-left: 323px;
}

.pl-7--523, .pl7 {
  padding-left: 523px;
}

.pl-8--845, .pl8 {
  padding-left: 845px;
}

.pl-9--1368, .pl9 {
  padding-left: 1368px;
}

.pr--2--7, .pr-2 {
  padding-right: 7px;
}

.pr--1--11, .pr-1 {
  padding-right: 11px;
}

.pr-0--18, .pr0 {
  padding-right: 18px;
}

.pr-1--29, .pr1 {
  padding-right: 29px;
}

.pr-2--47, .pr2 {
  padding-right: 47px;
}

.pr-3--76, .pr3 {
  padding-right: 76px;
}

.pr-4--123, .pr4 {
  padding-right: 123px;
}

.pr-5--200, .pr5 {
  padding-right: 200px;
}

.pr-6--323, .pr6 {
  padding-right: 323px;
}

.pr-7--523, .pr7 {
  padding-right: 523px;
}

.pr-8--845, .pr8 {
  padding-right: 845px;
}

.pr-9--1368, .pr9 {
  padding-right: 1368px;
}

.pt--2--7, .pt-2 {
  padding-top: 7px;
}

.pt--1--11, .pt-1 {
  padding-top: 11px;
}

.pt-0--18, .pt0 {
  padding-top: 18px;
}

.pt-1--29, .pt1 {
  padding-top: 29px;
}

.pt-2--47, .pt2 {
  padding-top: 47px;
}

.pt-3--76, .pt3 {
  padding-top: 76px;
}

.pt-4--123, .pt4 {
  padding-top: 123px;
}

.pt-5--200, .pt5 {
  padding-top: 200px;
}

.pt-6--323, .pt6 {
  padding-top: 323px;
}

.pt-7--523, .pt7 {
  padding-top: 523px;
}

.pt-8--845, .pt8 {
  padding-top: 845px;
}

.pt-9--1368, .pt9 {
  padding-top: 1368px;
}

.pb--2--7, .pb-2 {
  padding-bottom: 7px;
}

.pb--1--11, .pb-1 {
  padding-bottom: 11px;
}

.pb-0--18, .pb0 {
  padding-bottom: 18px;
}

.pb-1--29, .pb1 {
  padding-bottom: 29px;
}

.pb-2--47, .pb2 {
  padding-bottom: 47px;
}

.pb-3--76, .pb3 {
  padding-bottom: 76px;
}

.pb-4--123, .pb4 {
  padding-bottom: 123px;
}

.pb-5--200, .pb5 {
  padding-bottom: 200px;
}

.pb-6--323, .pb6 {
  padding-bottom: 323px;
}

.pb-7--523, .pb7 {
  padding-bottom: 523px;
}

.pb-8--845, .pb8 {
  padding-bottom: 845px;
}

.pb-9--1368, .pb9 {
  padding-bottom: 1368px;
}

.bg-dark, .bg-black {
  background: #140D0D;
}

.b {
  border: 2px solid white;
}

.bt, .homepage .faq-section .faq-wrapper:first-of-type {
  border-top: 2px solid white;
}

.br {
  border-right: 2px solid white;
}

.bb, .homepage .faq-section .faq-wrapper {
  border-bottom: 2px solid white;
}

.bl {
  border-left: 2px solid white;
}

.o-100 {
  opacity: 1;
}

.o-90 {
  opacity: 0.9;
}

.o-80 {
  opacity: 0.8;
}

.o-70 {
  opacity: 0.7;
}

.o-60 {
  opacity: 0.6;
}

.o-50 {
  opacity: 0.5;
}

.o-40 {
  opacity: 0.4;
}

.o-30 {
  opacity: 0.3;
}

.o-20 {
  opacity: 0.2;
}

.o-10 {
  opacity: 0.1;
}

.o-05 {
  opacity: 0.05;
}

.o-025 {
  opacity: 0.025;
}

.o-0 {
  opacity: 0;
}

.w-100 {
  width: 100%;
}

.w-75 {
  width: 75%;
}

.w-66 {
  width: 66%;
}

.w-50 {
  width: 50%;
}

.w-33 {
  width: 33%;
}

.w-25 {
  width: 25%;
}

.w-10 {
  width: 10%;
}

.mw-100 {
  max-width: 100%;
}

.mw-75 {
  max-width: 75%;
}

.mw-66 {
  max-width: 66%;
}

.mw-50 {
  max-width: 50%;
}

.mw-33 {
  max-width: 33%;
}

.mw-25 {
  max-width: 25%;
}

.tc {
  text-align: center;
}

.tl {
  text-align: left;
}

.tr {
  text-align: right;
}

.tj {
  text-align: justify;
}

.am-cn-rg {
  font-family: "GT-America-Condensed-Regular";
}

.am-cn-md {
  font-family: "GT-America-Condensed-Medium";
}

.am-cn-bd {
  font-family: "GT-America-Condensed-Bold";
}

.am-rg, .ticker-section .job-title, .social-proof-section .job-title {
  font-family: "GT-America-Standard-Regular";
}

.am-it {
  font-family: "GT-America-Standard-Regular-Italic";
}

.am-md, a, .link, .button, button {
  font-family: "GT-America-Standard-Medium";
}

.am-bd, h3, .homepage .the-plan-section .the-plan-header, .h3, h2, .header-group .header, .h2 {
  font-family: "GT-America-Standard-Bold";
}

.am-ext-lt-it {
  font-family: "GT-America-Extended-Light-Italic";
}

.am-exp-bd {
  font-family: "GT-America-Expanded-Bold";
}

.am-exp-rg, .header-group .super-header, .portfolio-thumbnail .portfolio-piece-description {
  font-family: "GT-America-Expanded-Regular";
}

.fs0--18, .fs0 {
  font-size: 18px;
}

.fs1--29, .fs1 {
  font-size: 29px;
}

.fs2--47, .fs2 {
  font-size: 47px;
}

.fs3--76, .fs3 {
  font-size: 76px;
}

.fs4--123, .fs4 {
  font-size: 123px;
}

.fs5--200, .fs5 {
  font-size: 200px;
}

.fs6--323, .fs6 {
  font-size: 323px;
}

.text-strike {
  opacity: 0.4;
  text-decoration: line-through;
}

.text-contrast, .button-afterword {
  color: white;
}

.text-default {
  color: rgba(255, 255, 255, 0.8);
}

.text-subtle, .header-group .super-header, .portfolio-thumbnail .portfolio-piece-description {
  color: rgba(255, 255, 255, 0.65);
}

.text-extra-subtle {
  color: rgba(255, 255, 255, 0.4);
}

.text-underline {
  text-decoration: underline;
}

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

.text-capitalize {
  text-transform: capitalize;
}

.text-highlight {
  background: linear-gradient(0deg, #C5934B 0%, #FEE08F 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  padding-right: 0.15em;
  padding-bottom: 0.05em;
  overflow: visible;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

h1, .h1 {
  font-size: 123px;
  letter-spacing: -0.075em;
  line-height: 0.9em;
}

@media (max-width: 768px) {
  h1 {
    font-size: 76px;
  }
}
h2, .header-group .header, .h2 {
  font-size: 76px;
  letter-spacing: -0.05em;
  line-height: 1.05em;
}

@media (max-width: 768px) {
  h2, .header-group .header, .h2 {
    font-size: 47px;
  }
}
h3, .homepage .the-plan-section .the-plan-header, .h3 {
  font-size: 47px;
  letter-spacing: -0.015em;
}

@media (max-width: 768px) {
  h3, .homepage .the-plan-section .the-plan-header, .h3 {
    font-size: 29px;
    color: white;
  }
}
h4, .homepage .value-props-section .value-prop-header, .homepage .services-section .service-header, .case-studies-section .case-study-header, .homepage .faq-section label.faq-question, .h4 {
  font-size: 29px;
  line-height: 1em;
}

h5, label, .homepage .services-section .service-time, .case-studies-section .case-study-body, .popup-optout, .button-afterword, .h5 {
  color: rgba(255, 255, 255, 0.8);
  text-transform: uppercase;
  line-height: 1.4em;
}

h6, .h6 {
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.65);
}

p, .homepage .the-plan-section .the-plan-body, .p {
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.7;
}

html, input, textarea {
  background: #140D0D;
  color: white;
  font-family: "GT-America-Standard-Regular";
  font-size: 18px;
}

html, body > * {
  box-sizing: border-box;
}

a, .link, .button, button {
  cursor: pointer;
}

::selection {
  background-color: #DC2626;
}

u {
  text-decoration: underline;
  text-decoration-color: #DC2626;
}

h1 u {
  text-decoration-thickness: 0.06em;
}

button {
  font-family: "GT-America-Standard-Medium";
  font-weight: normal;
  background: transparent;
  border: none;
  color: white;
  font-size: 29px;
}

.button {
  display: inline-block;
  padding: 18px 47px;
  text-align: center;
  font-size: 29px;
  background: #DC2626;
  border: 2px solid white;
}

.button.outline {
  background: transparent;
}

.button.ghost {
  background: transparent;
  border: 2px solid transparent;
}

.button.small {
  font-size: 18px;
  padding: 18px 18px;
}

.button {
  transition: 200ms ease-in;
}

.button:hover {
  border: 2px solid white;
  box-shadow: -7px 7px 0px #140D0D, -7px 7px 0px 2px white;
}

.button-afterword {
  margin-top: 11px;
}

a:hover, .button:hover {
  transition: 200ms ease-in;
}

.hero-list h4, .hero-list .homepage .value-props-section .value-prop-header, .homepage .value-props-section .hero-list .value-prop-header, .hero-list .homepage .services-section .service-header, .homepage .services-section .hero-list .service-header, .hero-list .case-studies-section .case-study-header, .case-studies-section .hero-list .case-study-header, .hero-list .homepage .faq-section label.faq-question, .homepage .faq-section .hero-list label.faq-question {
  margin-bottom: 18px;
}
.hero-list > * {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-basis: 0;
}
.hero-list h5, .hero-list label, .hero-list .homepage .services-section .service-time, .homepage .services-section .hero-list .service-time, .hero-list .case-studies-section .case-study-body, .case-studies-section .hero-list .case-study-body, .hero-list .popup-optout, .hero-list .button-afterword {
  flex-basis: 65px;
  text-align: right;
}
.hero-list p, .hero-list .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .hero-list .the-plan-body {
  color: white;
  line-height: 1;
}
.hero-list .border {
  height: 18px;
  width: 12.5px;
  border-right: 2px solid white;
}

.dib {
  display: inline-block;
}

.db {
  display: block;
}

.df {
  display: flex;
}

.di {
  display: inline;
}

.dif {
  display: inline-flex;
}

.dg {
  display: grid;
}

.p-static {
  position: static;
}

.p-relative {
  position: relative;
}

.p-absolute {
  position: absolute;
}

.p-fixed {
  position: fixed;
}

.p-sticky {
  position: -webkit-sticky;
  position: sticky;
}

.flex {
  display: flex;
}

.fd-row {
  flex-direction: row;
}

.fd-column {
  flex-direction: column;
}

.fg-0 {
  flex-grow: 0;
}

.fg-1 {
  flex-grow: 1;
}

.fg-2 {
  flex-grow: 2;
}

.jc-flex-start {
  justify-content: flex-start;
}

.jc-flex-end {
  justify-content: flex-end;
}

.jc-center {
  justify-content: center;
}

.jc-space-between {
  justify-content: space-between;
}

.jc-space-around {
  justify-content: space-around;
}

.jc-space-evenly {
  justify-content: space-evenly;
}

.ai-flex-start {
  align-items: flex-start;
}

.ai-flex-end {
  align-items: flex-end;
}

.ai-center {
  align-items: center;
}

.ai-stretch {
  align-items: stretch;
}

.ai-baseline {
  align-items: baseline;
}

.ac-flex-start {
  align-content: flex-start;
}

.ac-flex-end {
  align-content: flex-end;
}

.ac-center {
  align-content: center;
}

.ac-stretch {
  align-content: stretch;
}

.ac-space-between {
  align-content: space-between;
}

.ac-space-around {
  align-content: space-around;
}

.margin-auto, .m-auto {
  margin-left: auto;
  margin-right: auto;
}

@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.animate--on-scroll {
  opacity: 0;
  transition: all 0.85s;
}

.animation--blur {
  filter: blur(5px);
}

.animation--up {
  transform: translateY(29px);
}

.animation--down {
  transform: translateY(-29px);
}

.animation--left {
  transform: translateX(29px);
}

.animation--right {
  transform: translateX(-29px);
}

.animation--big-up {
  transform: translateY(123px);
}

.animation--big-down {
  transform: translateY(-123px);
}

.animation---big-left {
  transform: translateX(123px);
}

.animation--big-right {
  transform: translateX(-123px);
}

.hidden {
  opacity: 0;
}

.animation--show {
  opacity: 1;
  transition: all 0.75s;
  filter: blur(0px);
  transform: translateX(0);
  transform: translateY(0);
}

.animate--on-scroll:nth-child(2) {
  transition-delay: 150ms;
}

.animate--on-scroll:nth-child(3) {
  transition-delay: 300ms;
}

.animate--on-scroll:nth-child(4) {
  transition-delay: 450ms;
}

.animate--on-scroll:nth-child(5) {
  transition-delay: 600ms;
}

.animate--on-scroll:nth-child(6) {
  transition-delay: 750ms;
}

.animate--on-scroll:nth-child(7) {
  transition-delay: 900ms;
}

.animate--on-scroll:nth-child(8) {
  transition-delay: 1050ms;
}

.animate--on-scroll:nth-child(9) {
  transition-delay: 1200ms;
}

.animate--on-scroll:nth-child(10) {
  transition-delay: 1350ms;
}

.animate--on-scroll:nth-child(11) {
  transition-delay: 1500ms;
}

.animate--on-scroll:nth-child(12) {
  transition-delay: 1650ms;
}

.element-to-fade-in {
  animation: fade-in 1.5s ease forwards;
  opacity: 0;
}

.banner {
  display: none;
  width: 100%;
  background: #DC2626;
  padding-top: 0.15em;
  padding-bottom: 0.3em;
  top: 0;
}
.banner .banner-text {
  height: 1em;
  width: 400%;
  position: relative;
  animation: horizontal-scrolling 15s linear infinite;
  overflow: hidden;
}
.banner h6 {
  color: #140D0D;
  display: inline;
}

@keyframes horizontal-scrolling {
  0% {
    right: 323px;
  }
  100% {
    right: 0px;
  }
}
section.cta {
  display: flex;
  justify-content: center;
  align-content: center;
  border-top: 2px solid white;
  border-bottom: 2px solid white;
  padding-top: 76px;
  padding-bottom: 76px;
  background: url(/source/images/vector-grid.svg);
  background-attachment: fixed;
  text-align: center;
}
section.cta .container {
  padding: 47px;
  background: #140D0D;
  border: 2px solid white;
}
section.cta .header {
  margin-bottom: 11px;
  max-width: 24ch;
  margin-left: auto;
  margin-right: auto;
}
section.cta .subheader {
  margin-bottom: 29px;
  max-width: 50ch;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 800px) {
  section.cta .header {
    margin: auto;
    font-size: 47px;
    padding-bottom: 18px;
  }
  section.cta .container {
    width: 100%;
    padding: 47px 29px;
  }
  section.cta button {
    padding-left: 11px;
    padding-right: 11px;
  }
}
section.cta-design-review {
  display: flex;
  display: none;
  justify-content: center;
  align-content: center;
  border-top: 2px solid white;
  border-bottom: 2px solid white;
  padding-top: 76px;
  padding-bottom: 76px;
  background: url(/source/images/vector-grid.svg);
  background-attachment: fixed;
  text-align: center;
}
section.cta-design-review .container {
  padding: 47px;
  background: #140D0D;
  border: 2px solid white;
}
section.cta-design-review .header {
  margin-bottom: 11px;
  max-width: 24ch;
  margin-left: auto;
  margin-right: auto;
}
section.cta-design-review .subheader {
  margin-bottom: 29px;
  max-width: 50ch;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 800px) {
  section.cta .header {
    margin: auto;
  }
  section.cta .container {
    padding: 47px 29px;
  }
}
.layout-with-sticky-image {
  padding: 76px;
  display: grid;
  justify-content: center;
  grid-template-columns: 1fr 1fr;
  grid-gap: 47px;
  background: url(/source/images/vector-grid.svg) 968px 47px no-repeat;
}
.layout-with-sticky-image h1, .layout-with-sticky-image p, .layout-with-sticky-image .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .layout-with-sticky-image .the-plan-body {
  margin-bottom: 18px;
}
.layout-with-sticky-image .layout-visuals.layout-mobile {
  display: none;
  margin-bottom: 18px;
}
.layout-with-sticky-image .layout-visuals img {
  max-width: 100%;
}

@media (max-width: 950px) {
  .layout-with-sticky-image {
    padding: 29px;
    grid-template-columns: 1fr;
  }
  .layout-with-sticky-image .layout-visuals.layout-mobile {
    display: block;
  }
  .layout-with-sticky-image .layout-visuals.layout-desktop {
    display: none;
  }
}
.layout-centered .hero {
  margin: 18px;
  padding-left: 18px;
  padding-right: 18px;
  text-align: center;
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
}
.layout-centered .hero p, .layout-centered .hero .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .layout-centered .hero .the-plan-body {
  margin: auto;
  margin-top: 18px;
  max-width: 75ch;
}
.layout-centered .hero p:last-of-type, .layout-centered .hero .homepage .the-plan-section .the-plan-body:last-of-type, .homepage .the-plan-section .layout-centered .hero .the-plan-body:last-of-type {
  margin-bottom: 76px;
}
.layout-centered .header {
  line-height: 1.05em;
}
.layout-centered a img {
  width: 100%;
}

@media (max-width: 768px) {
  .layout-centered .hero {
    margin-top: 47px;
    text-align: left;
  }
  .layout-centered .hero p, .layout-centered .hero .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .layout-centered .hero .the-plan-body {
    margin-top: 18px;
  }
  .layout-centered .hero p:last-of-type, .layout-centered .hero .homepage .the-plan-section .the-plan-body:last-of-type, .homepage .the-plan-section .layout-centered .hero .the-plan-body:last-of-type {
    margin-bottom: 47px;
  }
}
@media (max-width: 768px) {
  .case-studies-section .case-studies {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
@media (max-width: 1080px) {
  .case-studies-section {
    margin: 47px 18px;
  }
}
.image-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 18px;
}

.image-with-border {
  padding: 18px;
  background: #140D0D;
  border: 2px solid white;
  box-shadow: 11px 11px 0px #140D0D, 11px 11px 0px 2px white;
}

.link-with-border {
  padding: 18px;
  background: #140D0D;
  border: 2px solid white;
  box-shadow: 11px 11px 0px #140D0D, 11px 11px 0px 2px white;
  transition: all 400ms ease-in-out;
}
.link-with-border:hover {
  border-color: #DC2626;
  box-shadow: -11px 11px 0px #140D0D, -11px 11px 0px 2px #DC2626;
  transition: all 400ms ease-in-out;
}

.images-hi-res img {
  width: 50vw;
  height: 37.5vw;
}

@media (max-width: 1000px) {
  .images-hi-res img {
    width: 100vw;
    height: 75vw;
  }
}
.checklist {
  display: flex;
  flex-direction: column;
  gap: 11px;
  line-height: 1.3em;
}

.checklist-item {
  margin-bottom: -10px;
}

.checklist-item:before {
  content: "✔︎ ";
  color: 90deg, #C5934B 0%, #FEE08F 100%;
  background: -webkit-linear-gradient(90deg, #C5934B 0%, #FEE08F 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.tooltip-item {
  position: relative;
}
.tooltip-item:focus, .tooltip-item:hover .tooltip {
  opacity: 1;
  visibility: visible;
}
.tooltip-item .tooltip {
  position: absolute;
  background-color: white;
  background: #140D0D;
  margin: 0 auto;
  min-width: 523px;
  max-width: 50%;
  width: auto;
  opacity: 0;
  padding: 0.65em;
  transition: all 0.2s ease-in-out;
  visibility: hidden;
  z-index: 10;
}
.tooltip-item .tooltip::before {
  position: absolute;
  left: -20px;
  top: 8px;
  content: "“";
  font-size: 3.5em;
  color: #DC2626;
  text-align: center;
}

.footer {
  display: flex;
  padding: 32px;
  padding-left: 29px;
  padding-right: 47px;
  align-items: center;
  justify-content: space-between;
}
.footer .social {
  display: flex;
  gap: 29px;
  align-items: center;
  padding-right: 200px;
  margin-bottom: -30px;
}
.footer .social > :hover {
  opacity: 0.6;
}

@media (max-width: 480px) {
  .footer {
    flex-direction: column;
    align-items: left;
    justify-content: left;
    gap: 18px;
  }
}
.navbar {
  display: flex;
  justify-content: space-between;
  padding-left: 18px;
  padding-right: 29px;
  padding-top: 18px;
  padding-bottom: 18px;
  font-size: 18px;
  text-align: center;
  top: 0;
  z-index: 1;
}
.navbar .navigation {
  gap: 29px;
}
.navbar .links {
  display: flex;
  justify-content: flex-end;
}
.navbar .link {
  flex: 0 0 auto;
  flex-wrap: wrap;
}
.navbar .link:hover {
  color: 90deg, #C5934B 0%, #FEE08F 100%;
  background: -webkit-linear-gradient(90deg, #C5934B 0%, #FEE08F 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: 250ms ease-in;
}
.navbar > * {
  display: flex;
  align-items: center;
}
.navbar .logo {
  flex: 0 0 auto;
  padding-left: 18px;
}
.navbar .nav-cta {
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 18px;
  padding-right: 18px;
  background-color: #DC2626;
}
.navbar .nav-cta {
  transition: 200ms ease-in;
}
.navbar .nav-cta:hover {
  box-shadow: -7px 7px 0px #140D0D, -7px 7px 0px 2px white;
}
.navbar .visually-hidden {
  position: absolute;
  left: -100vw;
}

.btn--open-nav, .btn--close-nav {
  width: 47px;
  height: 47px;
  font-size: 47px;
  font-family: "Covik_Sans-Regular";
}

.menu-drawer {
  display: none;
}

@media (min-width: 901px) {
  .btn--open-nav, .btn--close-nav {
    display: none;
  }
  .navbar .mobile-menu-trigger, .navbar .mobile-menu-icons {
    display: none;
  }
}
@media (max-width: 900px) {
  .navigation {
    display: none;
    position: absolute;
    right: -100px;
    width: 100vw;
    height: 100vh;
    background-color: rgba(20, 13, 13, 0.85);
  }
  .navigation.mobile-nav-open {
    right: 0;
    top: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 29px;
    padding-top: 14px;
    padding-right: 47px;
    font-size: 29px;
  }
  .navigation.mobile-nav-open .btn--close-nav {
    margin-right: -12px;
  }
}
@keyframes popup-animation {
  0% {
    opacity: 0;
    scale: 1.1;
  }
  100% {
    opacity: 1;
    scale: 1;
  }
}
.popup.is-hidden, .popup-overlay.is-hidden {
  display: none;
  opacity: 0;
}

.popup-content {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 47px;
  border: 2px solid white;
  max-height: 90vh;
  overflow-y: scroll;
}
.popup-content label.checkbox {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 11px;
}
.popup-content input[type=checkbox] {
  order: -1;
  height: 47px;
  width: 47px;
  appearance: none;
  border: 2px solid white;
}
.popup-content input[type=checkbox]:checked::after {
  content: "✔";
  position: relative;
  top: -18px;
  left: -10px;
}

.popup, .popup-overlay {
  animation: popup-animation 1s forwards;
}

.popup {
  position: fixed;
  z-index: 1000;
  width: 845px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform-origin: 0% 50% 0;
  background-color: #140D0D;
}
.popup .heading {
  line-height: 0.9;
}

.popup-overlay {
  background: #140D0D;
  opacity: 0.85;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
}

.button-close-popup {
  position: absolute;
  top: 18px;
  right: 18px;
}
.button-close-popup:hover {
  opacity: 0.65;
}

.popup-optout {
  text-align: center;
  color: white;
  opacity: 0.65;
}
.popup-optout:hover {
  color: white;
  opacity: 1;
  text-decoration: underline;
}

@media (max-width: 800px) {
  .popup {
    width: 100%;
  }
  .popup .popup-content {
    padding: 47px;
    gap: 18px;
  }
  .popup .heading {
    font-size: 47px;
  }
  .popup input {
    font-size: 18px;
    padding: 11px;
  }
  .popup input[type=checkbox] {
    height: 47px;
    width: 47px;
  }
  .popup input[type=checkbox]:checked::after {
    font-size: 29px;
    top: -10px;
    left: -3px;
  }
  .popup a.button {
    padding: 7px;
  }
  .popup a.button button {
    font-size: 29px;
  }
  .popup .button-close-popup {
    font-size: 47px;
  }
  .popup .mb0 {
    margin-bottom: 0;
  }
}
@media (max-width: 400px) {
  .popup .popup-content {
    padding: 18px;
  }
  .popup input[type=checkbox] {
    height: 47px;
    width: 47px;
  }
  .popup input[type=checkbox]:checked::after {
    top: -10px;
    left: -3px;
  }
  .popup .subheading {
    display: none;
  }
}
.portfolio-piece-img {
  max-width: 1600px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.portfolio-thumbnail .portfolio-piece-description {
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.08em;
  padding-bottom: 7px;
}

.checklists {
  display: flex;
  flex-direction: row;
  gap: 76px;
  flex-wrap: wrap;
  justify-content: center;
}
@media (max-width: 1200px) {
  .checklists {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .checklists .checklist {
    flex: 1 1 45%;
    min-width: 300px;
  }
}
@media (max-width: 680px) {
  .checklists {
    flex-direction: column;
    flex-wrap: nowrap;
  }
}

.checklist {
  flex: 1 1 100%;
  min-width: 0;
}

.checklist {
  display: flex;
  flex-wrap: wrap;
  flex: 1;
  align-items: flex-start;
}

.checklist.two-column {
  padding: 29px;
  max-width: 33%;
  border: 2px solid white;
}
@media (max-width: 680px) {
  .checklist.two-column {
    max-width: 100%;
  }
}

.social-proof-section {
  margin: 200px 76px;
}

@media (max-width: 1080px) {
  .social-proof-section {
    margin: 76px 47px;
    margin-bottom: 123px;
  }
}
@media (max-width: 768px) {
  .social-proof-section {
    margin: 76px 29px;
    margin-bottom: 123px;
  }
}
.social-proof-section .header-group {
  margin-bottom: 18px;
}
.social-proof-section .social-proof {
  display: grid;
  column-gap: 123px;
  row-gap: 47px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.social-proof-section .quote {
  flex-grow: 1;
  flex-basis: 0;
}
.social-proof-section .quotation-mark {
  font-size: 200px;
  color: 90deg, #C5934B 0%, #FEE08F 100%;
  background: -webkit-linear-gradient(90deg, #C5934B 0%, #FEE08F 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  height: 175px;
  margin-left: -13px;
  margin-bottom: 47px;
}
.social-proof-section .quote-body {
  margin-top: -47px;
  color: white;
}
.social-proof-section .portrait {
  width: 76px;
  height: 76px;
  border-radius: 100%;
}
.social-proof-section .person {
  margin-top: 29px;
  display: flex;
  gap: 18px;
  align-items: center;
}
.social-proof-section .name {
  color: white;
  font-size: 20px;
  line-height: 1.2;
}
.social-proof-section .job-title {
  color: rgba(255, 255, 255, 0.65);
  line-height: 1.2;
}

@media (max-width: 1080px) {
  .social-proof-section .social-proof {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 47px;
  }
}
@media (max-width: 680px) {
  .social-proof-section .social-proof {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .social-proof-section .header {
    margin-bottom: 0;
  }
}
a.person p.name, a.person .homepage .the-plan-section .name.the-plan-body, .homepage .the-plan-section a.person .name.the-plan-body {
  transition: 200ms ease-in;
}

a.person:hover p.name, a.person:hover .homepage .the-plan-section .name.the-plan-body, .homepage .the-plan-section a.person:hover .name.the-plan-body {
  transition: 200ms ease-in;
  color: #DC2626;
}

.ticker-section {
  overflow: hidden;
  padding: 0 0 76px 0;
  mask-image: linear-gradient(to right, transparent, black 8%, black 92%, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, black 8%, black 92%, transparent);
}
.ticker-section .quotation-mark {
  font-size: 200px;
  color: 90deg, #C5934B 0%, #FEE08F 100%;
  background: -webkit-linear-gradient(90deg, #C5934B 0%, #FEE08F 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  height: 175px;
  margin-left: -13px;
  margin-bottom: 47px;
}
.ticker-section .quote-body {
  margin-top: -47px;
  color: white;
}
.ticker-section .portrait {
  width: 76px;
  height: 76px;
  border-radius: 100%;
}
.ticker-section .person {
  margin-top: 29px;
  display: flex;
  gap: 18px;
  align-items: center;
}
.ticker-section .name {
  color: white;
  font-size: 20px;
  line-height: 1.2;
}
.ticker-section .job-title {
  color: rgba(255, 255, 255, 0.65);
  line-height: 1.2;
}

.ticker {
  display: flex;
  width: max-content;
  animation: ticker-scroll 120s linear infinite;
}

.ticker__track {
  display: flex;
  gap: 123px;
  padding-right: 123px;
}

.ticker__card {
  flex-shrink: 0;
  width: 420px;
}

@keyframes ticker-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@media (max-width: 768px) {
  .ticker__card {
    width: 320px;
  }
  .ticker-section {
    padding: 0 0 47px 0;
  }
}
@font-face {
  font-family: "Covik_Sans_Mono-Black_Italic";
  src: url("/source/webfonts/Covik_Sans_Mono-Black_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Black_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Black_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Black";
  src: url("/source/webfonts/Covik_Sans_Mono-Black.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Black.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Black.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Bold_Italic";
  src: url("/source/webfonts/Covik_Sans_Mono-Bold_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Bold_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Bold_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Bold";
  src: url("/source/webfonts/Covik_Sans_Mono-Bold.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Bold.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Bold.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Italic";
  src: url("/source/webfonts/Covik_Sans_Mono-Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Medium_Italic";
  src: url("/source/webfonts/Covik_Sans_Mono-Medium_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Medium_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Medium_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Medium";
  src: url("/source/webfonts/Covik_Sans_Mono-Medium.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Medium.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Medium.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Regular";
  src: url("/source/webfonts/Covik_Sans_Mono-Regular.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Regular.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Regular.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Semibold_Italic";
  src: url("/source/webfonts/Covik_Sans_Mono-Semibold_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Semibold_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Semibold_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans_Mono-Semibold";
  src: url("/source/webfonts/Covik_Sans_Mono-Semibold.woff2") format("woff2"), url("/source/webfonts/Covik_Sans_Mono-Semibold.woff") format("woff"), url("/source/webfonts/Covik_Sans_Mono-Semibold.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Black_Italic";
  src: url("/source/webfonts/Covik_Sans-Black_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Black_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans-Black_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Black";
  src: url("/source/webfonts/Covik_Sans-Black.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Black.woff") format("woff"), url("/source/webfonts/Covik_Sans-Black.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Bold_Italic";
  src: url("/source/webfonts/Covik_Sans-Bold_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Bold_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans-Bold_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Bold";
  src: url("/source/webfonts/Covik_Sans-Bold.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Bold.woff") format("woff"), url("/source/webfonts/Covik_Sans-Bold.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Italic";
  src: url("/source/webfonts/Covik_Sans-Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans-Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Medium_Italic";
  src: url("/source/webfonts/Covik_Sans-Medium_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Medium_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans-Medium_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Medium";
  src: url("/source/webfonts/Covik_Sans-Medium.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Medium.woff") format("woff"), url("/source/webfonts/Covik_Sans-Medium.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Regular";
  src: url("/source/webfonts/Covik_Sans-Regular.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Regular.woff") format("woff"), url("/source/webfonts/Covik_Sans-Regular.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Semibold_Italic";
  src: url("/source/webfonts/Covik_Sans-Semibold_Italic.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Semibold_Italic.woff") format("woff"), url("/source/webfonts/Covik_Sans-Semibold_Italic.ttf") format("ttf");
}
@font-face {
  font-family: "Covik_Sans-Semibold";
  src: url("/source/webfonts/Covik_Sans-Semibold.woff2") format("woff2"), url("/source/webfonts/Covik_Sans-Semibold.woff") format("woff"), url("/source/webfonts/Covik_Sans-Semibold.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Standard-Regular";
  src: url("/source/webfonts/GT-America-Standard-Regular.woff2") format("woff2"), url("/source/webfonts/GT-America-Standard-Regular.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Condensed-Bold";
  src: url("/source/webfonts/GT-America-Condensed-Bold.woff2") format("woff2"), url("/source/webfonts/GT-America-Condensed-Bold.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Condensed-Regular";
  src: url("/source/webfonts/GT-America-Condensed-Regular.woff2") format("woff2"), url("/source/webfonts/GT-America-Condensed-Regular.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Expanded-Bold";
  src: url("/source/webfonts/GT-America-Expanded-Bold.woff2") format("woff2"), url("/source/webfonts/GT-America-Expanded-Bold.ttGT-America-Expanded-Regular.f") format("ttf");
}
@font-face {
  font-family: "GT-America-Expanded-Regular";
  src: url("/source/webfonts/GT-America-Expanded-Regular.woff2") format("woff2"), url("/source/webfonts/GT-America-Expanded-Regular.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Extended-Light-Italic";
  src: url("/source/webfonts/GT-America-Extended-Light-Italic.woff2") format("woff2"), url("/source/webfonts/GT-America-Extended-Light-Italic.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Standard-Bold";
  src: url("/source/webfonts/GT-America-Standard-Bold.woff2") format("woff2"), url("/source/webfonts/GT-America-Standard-Bold.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Standard-Medium";
  src: url("/source/webfonts/GT-America-Standard-Medium.woff2") format("woff2"), url("/source/webfonts/GT-America-Standard-Medium.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Standard-Regular-Italic";
  src: url("/source/webfonts/GT-America-Standard-Regular-Italic.woff2") format("woff2"), url("/source/webfonts/GT-America-Standard-Regular-Italic.ttf") format("ttf");
}
@font-face {
  font-family: "GT-America-Condensed-Medium";
  src: url("/source/webfonts/GT-America-Condensed-Medium.woff2") format("woff2"), url("/source/webfonts/GT-America-Condensed-Medium.ttf") format("ttf");
}
.cta-newsletter {
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
  padding: 76px 47px;
}

.cta-newsletter__inner {
  border: 2px solid rgba(255, 255, 255, 0.12);
  padding: 76px;
  text-align: center;
}

.cta-newsletter__heading {
  font-family: "GT-America-Standard-Bold";
  font-size: 47px;
  letter-spacing: -0.03em;
  line-height: 1.1em;
  color: white;
  margin-bottom: 18px;
}

.cta-newsletter__subheading {
  color: rgba(255, 255, 255, 0.65);
  font-family: "GT-America-Standard-Regular";
  font-size: 18px;
  line-height: 1.6;
  max-width: 45ch;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 47px;
}

.cta-newsletter__form {
  display: flex;
  flex-direction: row;
  gap: 0;
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
}

.cta-newsletter__input {
  flex-grow: 1;
  padding: 18px;
  background: rgba(255, 255, 255, 0.05);
  color: white;
  font-size: 18px;
  font-family: "GT-America-Standard-Regular";
  border: 2px solid rgba(255, 255, 255, 0.12);
  border-right: none;
  transition: 200ms ease-in-out;
}
.cta-newsletter__input::placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.cta-newsletter__input:focus {
  background: #140D0D;
  border-color: white;
  outline: none;
}

.cta-newsletter__button {
  padding: 18px 29px;
  font-size: 18px;
  font-family: "GT-America-Standard-Medium";
  white-space: nowrap;
  border: 2px solid white;
  background: #DC2626;
  color: white;
  transition: 200ms ease-in;
}
.cta-newsletter__button:hover {
  border-color: white;
  box-shadow: -7px 7px 0px #140D0D, -7px 7px 0px 2px white;
}

@media (max-width: 768px) {
  .cta-newsletter {
    padding: 47px 29px;
  }
}
@media (max-width: 600px) {
  .cta-newsletter__inner {
    padding: 47px 29px;
  }
  .cta-newsletter__heading {
    font-size: 29px;
  }
  .cta-newsletter__form {
    flex-direction: column;
  }
  .cta-newsletter__input {
    border-right: 2px solid rgba(255, 255, 255, 0.12);
    border-bottom: none;
  }
  .cta-newsletter__button {
    width: 100%;
  }
}
.blog-listing {
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
  padding: 200px 47px;
  padding-bottom: 76px;
}

.blog-listing__header {
  margin-bottom: 76px;
}
.blog-listing__header .super-header {
  text-transform: uppercase;
  font-size: 11px;
  font-family: "GT-America-Expanded-Regular";
  letter-spacing: 0.1em;
  color: rgba(255, 255, 255, 0.65);
  margin-bottom: 18px;
}
.blog-listing__header .header {
  font-family: "GT-America-Standard-Bold";
  font-size: 76px;
  letter-spacing: -0.04em;
  line-height: 1.05em;
  color: white;
  max-width: 18ch;
}

.blog-listing__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 47px;
}

@media (max-width: 768px) {
  .blog-listing {
    padding: 76px 29px;
  }
  .blog-listing__header .header {
    font-size: 47px;
    max-width: 100%;
  }
  .blog-listing__grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
.blog-card {
  display: flex;
  flex-direction: column;
  border: 2px solid rgba(255, 255, 255, 0.12);
  transition: all 300ms ease-in-out;
  text-decoration: none;
}
.blog-card:hover {
  border-color: white;
  box-shadow: -7px 7px 0px #140D0D, -7px 7px 0px 2px white;
}

.blog-card__image {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
}

.blog-card__content {
  padding: 29px;
}

.blog-card__date {
  color: rgba(255, 255, 255, 0.65);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.08em;
  font-family: "GT-America-Standard-Medium";
  margin-bottom: 11px;
}

.blog-card__title {
  font-family: "GT-America-Standard-Bold";
  font-size: 29px;
  line-height: 1.3em;
  letter-spacing: -0.02em;
  color: white;
  margin-bottom: 11px;
}

.blog-card__excerpt {
  color: rgba(255, 255, 255, 0.8);
  font-family: "GT-America-Standard-Regular";
  font-size: 16px;
  line-height: 1.55em;
}

.blog-post {
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 47px;
}

.blog-post__header {
  padding-top: 123px;
  padding-bottom: 47px;
  max-width: 65ch;
  margin-left: auto;
  margin-right: auto;
}
.blog-post__header .blog-post__breadcrumb {
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.12em;
  font-family: "GT-America-Expanded-Regular";
  color: rgba(255, 255, 255, 0.65);
  margin-bottom: 47px;
  display: inline-block;
  transition: color 200ms ease-in;
}
.blog-post__header .blog-post__breadcrumb:hover {
  color: white;
}
.blog-post__header .header {
  font-family: "GT-America-Standard-Bold";
  font-size: 76px;
  line-height: 0.95em;
  letter-spacing: -0.045em;
  color: white;
  max-width: 20ch;
}
.blog-post__header .blog-post__description {
  color: rgba(255, 255, 255, 0.8);
  font-family: "GT-America-Standard-Regular";
  font-size: 29px;
  line-height: 1.45em;
  margin-top: 29px;
  max-width: 55ch;
}

.blog-post__meta {
  margin-top: 47px;
  display: flex;
  align-items: center;
  gap: 29px;
}
.blog-post__meta time {
  color: rgba(255, 255, 255, 0.65);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.08em;
  font-family: "GT-America-Standard-Medium";
}
.blog-post__meta .blog-post__tags {
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.08em;
  font-family: "GT-America-Standard-Regular";
}

@media (max-width: 768px) {
  .blog-post {
    padding: 0 29px;
  }
  .blog-post__header {
    padding-top: 76px;
    padding-bottom: 47px;
  }
  .blog-post__header .header {
    font-size: 47px;
    max-width: 100%;
    line-height: 1.05em;
  }
  .blog-post__header .blog-post__description {
    font-size: 18px;
  }
}
@media (max-width: 480px) {
  .blog-post__header {
    padding-top: 47px;
  }
  .blog-post__header .header {
    font-size: 38px;
  }
}
.prose {
  max-width: 65ch;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 123px;
}
.prose h2, .prose .header-group .header, .header-group .prose .header {
  font-family: "GT-America-Standard-Bold";
  font-size: 29px;
  letter-spacing: -0.02em;
  line-height: 1.2em;
  color: white;
  margin-top: 76px;
  margin-bottom: 18px;
}
.prose h3, .prose .homepage .the-plan-section .the-plan-header, .homepage .the-plan-section .prose .the-plan-header {
  font-family: "GT-America-Standard-Bold";
  font-size: 22px;
  letter-spacing: -0.01em;
  line-height: 1.3em;
  color: white;
  margin-top: 47px;
  margin-bottom: 11px;
}
.prose h4, .prose .homepage .value-props-section .value-prop-header, .homepage .value-props-section .prose .value-prop-header, .prose .homepage .services-section .service-header, .homepage .services-section .prose .service-header, .prose .case-studies-section .case-study-header, .case-studies-section .prose .case-study-header, .prose .homepage .faq-section label.faq-question, .homepage .faq-section .prose label.faq-question {
  font-family: "GT-America-Standard-Medium";
  font-size: 18px;
  line-height: 1.35em;
  color: white;
  margin-top: 47px;
  margin-bottom: 11px;
}
.prose p, .prose .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .prose .the-plan-body {
  color: rgba(255, 255, 255, 0.8);
  font-family: "GT-America-Standard-Regular";
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 29px;
}
.prose ul, .prose ol {
  color: rgba(255, 255, 255, 0.8);
  font-family: "GT-America-Standard-Regular";
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 29px;
  padding-left: 29px;
}
.prose ul {
  list-style: disc;
}
.prose ol {
  list-style: decimal;
}
.prose li {
  margin-bottom: 7px;
}
.prose li > ul, .prose li > ol {
  margin-top: 7px;
  margin-bottom: 0;
}
.prose a {
  color: #DC2626;
  text-decoration: underline;
  text-decoration-color: rgba(220, 38, 38, 0.35);
  text-underline-offset: 3px;
  transition: text-decoration-color 200ms ease-in;
}
.prose a:hover {
  text-decoration-color: #DC2626;
  cursor: url("/source/images/cursor-point.svg"), auto;
}
.prose strong, .prose b {
  font-family: "GT-America-Standard-Bold";
  color: white;
}
.prose em, .prose i {
  font-family: "GT-America-Standard-Regular-Italic";
}
.prose blockquote {
  border-left: 3px solid #DC2626;
  padding-left: 29px;
  margin: 47px 0;
}
.prose blockquote p, .prose blockquote .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .prose blockquote .the-plan-body {
  color: rgba(255, 255, 255, 0.65);
  font-family: "GT-America-Standard-Regular-Italic";
  font-size: 18px;
  line-height: 1.7;
}
.prose code {
  font-family: "SF Mono", "Fira Code", "Roboto Mono", monospace;
  background: rgba(255, 255, 255, 0.07);
  padding: 2px 7px;
  border-radius: 3px;
  font-size: 0.85em;
}
.prose pre {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 29px;
  margin: 47px 0;
  overflow-x: auto;
  border-radius: 4px;
}
.prose pre code {
  background: none;
  padding: 0;
  font-size: 0.85em;
  line-height: 1.7;
  border-radius: 0;
}
.prose img {
  max-width: 100%;
  display: block;
  margin-top: 0;
  margin-bottom: 0;
}
.prose hr {
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  margin: 76px 0;
}
.prose table {
  width: 100%;
  margin: 47px 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
}
.prose th, .prose td {
  padding: 11px 18px;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-family: "GT-America-Standard-Regular";
  color: rgba(255, 255, 255, 0.8);
  font-size: 18px;
}
.prose th {
  font-family: "GT-America-Standard-Medium";
  color: white;
}
.prose > *:first-child {
  margin-top: 0;
}

.blog-cover--full {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  height: 60vh;
  min-height: 360px;
  overflow: hidden;
}
.blog-cover--full img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-cover--banner {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  height: 280px;
  overflow: hidden;
}
.blog-cover--banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-cover--large {
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
}
.blog-cover--large img {
  width: 100%;
  display: block;
}

.blog-cover--default {
  max-width: 65ch;
}
.blog-cover--default img {
  width: 100%;
  display: block;
}

.prose figure,
.prose .prose-img {
  margin: 47px 0;
}
.prose figure img,
.prose .prose-img img {
  max-width: 100%;
  display: block;
}

.prose .prose-img--large {
  margin: 47px 0;
  width: 58rem;
  max-width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.prose .prose-img--large img {
  width: 100%;
  display: block;
}

.prose .prose-img--xl {
  margin: 76px 0;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.prose .prose-img--xl img {
  width: 100%;
  display: block;
}

.prose figcaption {
  font-family: "GT-America-Standard-Regular";
  font-size: 13px;
  color: rgba(255, 255, 255, 0.45);
  margin-top: 7px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .prose h2, .prose .header-group .header, .header-group .prose .header {
    margin-top: 47px;
  }
  .prose pre {
    padding: 18px;
  }
  .prose .prose-img--large {
    width: 100%;
    max-width: 100%;
    left: 0;
    transform: none;
  }
  .blog-cover--full {
    height: 40vh;
    min-height: 240px;
  }
  .blog-cover--banner {
    height: 200px;
  }
}
@media (max-width: 480px) {
  .prose h2, .prose .header-group .header, .header-group .prose .header {
    font-size: 24px;
  }
  .blog-cover--full {
    height: 30vh;
  }
}
.homepage .hero {
  padding-top: 76px;
}
.homepage .hero .copy {
  padding-left: 76px;
  padding-right: 76px;
}
.homepage .hero .header {
  font-size: 123px;
  max-width: 8ch;
  line-height: 0.8em;
}
.homepage .hero .subheader {
  margin-top: 29px;
  margin-bottom: 18px;
  max-width: 45ch;
}
.homepage .hero .social-proof-avatars {
  display: flex;
  align-items: center;
}
.homepage .hero .social-proof-avatars .portrait {
  height: 47px;
  width: 47px;
  border-radius: 100%;
  margin-right: -8px;
  border: #140D0D 3px solid;
  transition: all 0.35s ease-in-out;
}
.homepage .hero .social-proof-avatars .portrait:hover {
  border: white 3px solid;
  transition: all 0.35s ease-in-out;
}
.homepage .hero .social-proof-avatars .counter {
  height: 47px;
  width: 47px;
  border-radius: 100%;
  border: #140D0D 3px solid;
  background: white;
  color: #140D0D;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.homepage .hero .social-proof-avatars .label {
  color: white;
  text-transform: lowercase;
}

.homepage .hero .visuals {
  background: url(/source/images/vector-grid.svg) 645px top no-repeat;
  overflow-x: hidden;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  height: 100vh;
  width: 100vw;
}
.homepage .hero .visuals .photo-hero-3, .homepage .hero .visuals .photo-hero-2, .homepage .hero .visuals .photo-hero-1 {
  transform: scale(0.5, 0.5);
  border: 4px solid white;
  position: absolute;
}
.homepage .hero .visuals .photo-hero-3 {
  top: 350px;
  left: 850px;
}
.homepage .hero .visuals .photo-hero-2 {
  top: -175px;
  left: 700px;
}
.homepage .hero .visuals .photo-hero-1 {
  top: 50px;
  left: 975px;
}

@media (max-width: 768px) {
  .homepage .hero {
    padding-top: 47px;
    padding-bottom: 29px;
  }
  .homepage .hero .header {
    max-width: 100ch;
    line-height: 0.85em;
  }
  .homepage .hero .copy {
    padding-left: 29px;
    padding-right: 29px;
  }
  .homepage .hero .subheader {
    margin-top: 18px;
    margin-bottom: 29px;
  }
  .homepage .hero .visuals {
    background: url(/source/images/vector-grid.svg) 323px -200px no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    min-height: 700px;
  }
  .homepage .hero .visuals .photo-hero-3 {
    display: none;
  }
  .homepage .hero .visuals .photo-hero-2 {
    display: none;
  }
  .homepage .hero .visuals .photo-hero-1 {
    display: none;
  }
}
@media (max-width: 600px) {
  .homepage .hero {
    padding-top: 18px;
  }
  .homepage .hero .header {
    font-size: 76px;
  }
}
form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

label {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 7px;
  align-items: left;
}

form input, form textarea {
  padding: 18px;
  background: rgba(255, 255, 255, 0.05);
  color: white;
  font-size: 29px;
  transition: 200ms ease-in-out;
  border: transparent 2px solid;
}
form input:focus, form textarea:focus {
  background: #140D0D;
  border: white 2px solid;
  outline: none;
}

.homepage .common-spacing, .homepage .value-props-section, .homepage .the-plan-section, .homepage .services-section, .homepage .faq-section, .homepage .case-studies-section, .homepage .section-portfolio, .homepage .pricing-section {
  margin: 200px 76px;
}

@media (max-width: 1080px) {
  .homepage .common-spacing, .homepage .value-props-section, .homepage .the-plan-section, .homepage .services-section, .homepage .faq-section, .homepage .case-studies-section, .homepage .section-portfolio, .homepage .pricing-section {
    margin: 76px 47px;
    margin-bottom: 123px;
  }
}
@media (max-width: 768px) {
  .homepage .common-spacing, .homepage .value-props-section, .homepage .the-plan-section, .homepage .services-section, .homepage .faq-section, .homepage .case-studies-section, .homepage .section-portfolio, .homepage .pricing-section {
    margin: 76px 29px;
    margin-bottom: 123px;
  }
}
.header-group .super-header {
  text-transform: uppercase;
  font-size: 18px;
  letter-spacing: 0.08em;
  padding-bottom: 7px;
}
.header-group {
  margin-bottom: 47px;
}

@media (max-width: 768px) {
  .homepage .header-group {
    margin-bottom: 47px;
  }
}
.homepage .social-proof-billion {
  display: flex;
  flex-direction: row;
  gap: 76px;
  align-items: center;
}
.homepage .social-proof-billion .header-group {
  max-width: 700px;
}
.homepage .social-proof-billion img {
  max-width: 845px;
  margin-left: -123px;
}

@media (max-width: 1280px) {
  .homepage .social-proof-billion img {
    max-width: 523px;
    margin-left: -123px;
  }
}
@media (max-width: 920px) {
  .homepage .social-proof-billion img {
    margin-left: -200px;
  }
}
@media (max-width: 680px) {
  .homepage .social-proof-billion {
    flex-direction: column;
    margin-top: -76px;
  }
  .homepage .social-proof-billion img {
    margin-left: -200px;
  }
}
.homepage .value-props-section {
  padding-bottom: 76px;
}
.homepage .value-props-section .value-prop-header {
  margin-bottom: 11px;
}
.homepage .value-props-section .value-prop-subheader {
  color: rgba(255, 255, 255, 0.65);
  line-height: 1.35em;
}
.homepage .value-props-section .value-props {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 76px;
  row-gap: 76px;
}
.homepage .value-props-section .value-prop img.icon {
  width: 72px;
  height: 72px;
  margin-bottom: 18px;
}

@media (max-width: 1080px) {
  .homepage .value-props-section .value-props {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 768px) {
  .homepage .value-props-section .value-props {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
.homepage .the-plan-section .the-plan-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  row-gap: 76px;
}
.homepage .the-plan-section .the-plan-number {
  padding-top: 18px;
  font-size: 200px;
  color: 90deg, #C5934B 0%, #FEE08F 100%;
  background: -webkit-linear-gradient(90deg, #C5934B 0%, #FEE08F 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.homepage .the-plan-section .the-plan-header {
  padding-bottom: 18px;
}
.homepage .the-plan-section .the-plan-body {
  font-size: 18px;
  max-width: 22ch;
}

@media (min-width: 1080px) {
  .homepage .the-plan-section .the-plan-steps {
    margin-top: -80px;
  }
}
@media (max-width: 1080px) {
  .homepage .the-plan-section {
    margin-bottom: 200px;
  }
  .homepage .the-plan-section .header-group {
    margin-bottom: 0;
  }
  .homepage .the-plan-section .the-plan-number {
    font-size: 200px;
  }
}
@media (max-width: 768px) {
  .homepage .the-plan-section .the-plan-steps {
    column-gap: 11px;
  }
}
@media (max-width: 480px) {
  .homepage .the-plan-section .the-plan-steps {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0;
  }
  .homepage .the-plan-section .the-plan-body {
    max-width: 100%;
  }
}
.homepage .services-section .services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.homepage .services-section .service {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.homepage .services-section .service-header {
  line-height: 1.25em;
}
.homepage .services-section .service-time {
  opacity: 0.65;
  margin-top: -11px;
}
.homepage .services-section .service .icon {
  width: 72px;
  height: 72px;
}
.homepage .services-section .service-list-item {
  line-height: 1.5em;
  margin-bottom: -11px;
  color: white;
}
.homepage .services-section .service-list-item:before {
  content: "☑";
  padding-right: 11px;
  color: 90deg, #C5934B 0%, #FEE08F 100%;
  background: -webkit-linear-gradient(90deg, #C5934B 0%, #FEE08F 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media (max-width: 1080px) {
  .homepage .services-section .services {
    gap: 47px;
  }
  .homepage .services-section .service-header {
    font-size: 29px;
  }
}
@media (max-width: 768px) {
  .homepage .services-section .services {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 76px;
  }
}
@media (max-width: 480px) {
  .homepage .services-section .services {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
.page-case-study .hero {
  margin: 18px;
  padding-left: 18px;
  padding-right: 18px;
  text-align: center;
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
}
.page-case-study .hero p, .page-case-study .hero .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .page-case-study .hero .the-plan-body {
  margin: auto;
  margin-top: 18px;
  max-width: 75ch;
}
.page-case-study .hero p:last-of-type, .page-case-study .hero .homepage .the-plan-section .the-plan-body:last-of-type, .homepage .the-plan-section .page-case-study .hero .the-plan-body:last-of-type {
  margin-bottom: 76px;
}
.page-case-study .header {
  line-height: 1.05em;
}
.page-case-study a img {
  width: 100%;
}

@media (max-width: 768px) {
  .page-case-study .hero {
    margin-top: 47px;
    text-align: left;
  }
  .page-case-study .hero p, .page-case-study .hero .homepage .the-plan-section .the-plan-body, .homepage .the-plan-section .page-case-study .hero .the-plan-body {
    margin-top: 18px;
  }
  .page-case-study .hero p:last-of-type, .page-case-study .hero .homepage .the-plan-section .the-plan-body:last-of-type, .homepage .the-plan-section .page-case-study .hero .the-plan-body:last-of-type {
    margin-bottom: 47px;
  }
}
.case-studies-section {
  margin: 76px;
}
.case-studies-section .header-group {
  margin-bottom: 29px;
}
.case-studies-section .case-studies {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 47px;
}
.case-studies-section .case-study-thumbnail img {
  width: 100%;
}
.case-studies-section .case-study-header {
  display: flex;
  flex-grow: 1;
  padding-top: 18px;
  padding-bottom: 18px;
}
@media (max-width: 768px) {
  .case-studies-section .case-studies {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
@media (max-width: 1080px) {
  .case-studies-section {
    margin: 47px 18px;
  }
}
.page-referrals .layout-header .header {
  max-width: 9ch;
}

@media (max-width: 1200px) {
  .page-referrals .layout-header .header {
    font-size: 76px;
  }
}
.homepage .faq-section .header-group {
  margin-bottom: 47px;
}
.homepage .faq-section .faq-wrapper {
  padding-top: 29px;
  padding-bottom: 18px;
}
.homepage .faq-section .faq {
  flex-direction: row;
  overflow: hidden;
}
.homepage .faq-section label.faq-question {
  display: flex;
  line-height: 1.2em;
  letter-spacing: -0.04em;
}
.homepage .faq-section .faq-question-text {
  transition: all 0.35s;
  flex-grow: 1;
}
.homepage .faq-section .faq-answer {
  padding-top: 18px;
  max-width: 75ch;
  max-height: 0;
  transition: all 1s ease-in-out;
}
.homepage .faq-section .faq-answer p:not(p:first-of-type), .homepage .faq-section .faq-answer .the-plan-section .the-plan-body:not(p:first-of-type), .homepage .the-plan-section .faq-section .faq-answer .the-plan-body:not(p:first-of-type) {
  padding-top: 18px;
}
.homepage .faq-section .faq-answer p:last-of-type, .homepage .faq-section .faq-answer .the-plan-section .the-plan-body:last-of-type, .homepage .the-plan-section .faq-section .faq-answer .the-plan-body:last-of-type {
  padding-bottom: 18px;
}
.homepage .faq-section .faq input[type=checkbox] {
  display: none;
}
.homepage .faq-section input:checked ~ .faq-answer {
  max-height: 100vh;
}
.homepage .faq-section input ~ .faq-question .faq-question-icon::after {
  content: "+";
}
.homepage .faq-section input:checked ~ .faq-question .faq-question-icon::after {
  content: "×";
}

@media (max-width: 768px) {
  .homepage .faq-section .faq-question {
    font-size: 29px;
  }
}
.homepage .recent-work {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  flex-grow: 1;
  align-items: stretch;
  background: #140D0D;
  margin-top: 76px;
}
.homepage .recent-work .header {
  box-sizing: border-box;
  padding: 29px;
  display: flex;
  gap: 11px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.homepage .recent-work .header h3, .homepage .recent-work .header .the-plan-section .the-plan-header, .homepage .the-plan-section .recent-work .header .the-plan-header, .homepage .recent-work .header p, .homepage .recent-work .header .the-plan-section .the-plan-body, .homepage .the-plan-section .recent-work .header .the-plan-body {
  width: 100%;
}
.homepage .recent-work .thumbnail {
  max-width: 100%;
  flex-grow: 0;
  width: 450px;
}
.homepage .recent-work .thumbnail p, .homepage .recent-work .thumbnail .the-plan-section .the-plan-body, .homepage .the-plan-section .recent-work .thumbnail .the-plan-body {
  padding-left: 11px;
  border-left: 2px solid white;
}

.homepage .recent-work-background {
  background: url(/source/images/vector-grid-short.svg) no-repeat right;
  width: 100%;
  height: 241px;
  overflow: visible;
  position: relative;
  margin-top: -200px;
  z-index: -1;
}

@media (max-width: 768px) {
  .homepage section.recent-work {
    margin-top: 0;
  }
}
@media (max-width: 450px) {
  .thumbnail-img {
    width: 100%;
  }
}
@media (max-width: 600px) {
  section.design-collage .row :last-of-type {
    display: none;
  }
}
@media (min-width: 450px) {
  .homepage .recent-work {
    border: 2px solid white;
    max-width: 454px;
  }
  .homepage .recent-work .header {
    width: 100%;
  }
  .homepage .recent-work .thumbnail {
    width: 350px;
  }
}
@media (max-width: 700px) {
  .homepage .recent-work .thumbnail p, .homepage .recent-work .thumbnail .the-plan-section .the-plan-body, .homepage .the-plan-section .recent-work .thumbnail .the-plan-body {
    border-left: 0px;
  }
}
@media (min-width: 700px) {
  .homepage .recent-work {
    max-width: 704px;
  }
  .homepage .recent-work .thumbnail-img {
    width: 100%;
  }
  .homepage .recent-work .header {
    width: 350px;
  }
}
@media (min-width: 1000px) {
  .homepage .recent-work {
    max-width: 904px;
  }
  .homepage .recent-work .thumbnail, .homepage .recent-work .header {
    width: 450px;
  }
}
@media (min-width: 1300px) {
  .homepage .recent-work {
    max-width: 1304px;
  }
  .homepage .recent-work .header {
    width: 250px;
  }
  .homepage .recent-work .thumbnail {
    width: 350px;
  }
}
.homepage .divider {
  position: relative;
  z-index: -1;
  overflow: hidden;
}
.homepage .divider img {
  position: relative;
  left: -50px;
}

.divider-services {
  padding-top: 11px;
  padding-bottom: 11px;
  border-bottom: 2px solid white;
}

section.design-collage {
  transform: scale(1);
}
section.design-collage .header {
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.5);
}

.section-portfolio {
  display: grid;
  column-gap: 76px;
  row-gap: 76px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1000px) {
  .section-portfolio {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
.portfolio-thumbnail img {
  max-width: 100%;
  max-height: 100%;
  transition: all 0.5s ease-in-out;
}
.portfolio-thumbnail img:hover {
  outline: 2px solid white;
}

.page-portfolio--farms .portfolio-thumbnail img:nth-of-type(1) {
  width: 50%;
}

body {
  cursor: url("/source/images/cursor-hand.svg"), auto;
}

a, a:hover, label, button {
  cursor: url("/source/images/cursor-point.svg"), auto;
}
