html, body {min-height: 100vh;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, main {display: block;}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, main {margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent;}
ol, ul {list-style:none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,  q:before, q:after {content:''; content:none;}
del {text-decoration: line-through;}
svg:not(:root) {overflow: hidden;}
abbr[title], dfn[title] {border-bottom: 1px dotted; cursor: help;}
table {width: 100%; border-collapse: collapse; border-spacing: 0; empty-cells: show; table-layout: fixed;}
input, select {vertical-align: middle;}
input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom;}
button, input, select, textarea {margin: 0; font-family: "Source Sans Pro", "Lucida Sans Unicode", Outfit, Arial, Verdana, sans-serif;}
textarea {resize: none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance: button; cursor: pointer;}
button[disabled], html input[disabled] {cursor: default;}
input[type="checkbox"], input[type="radio"] {box-sizing: border-box; padding: 0; *height: 13px; *width: 13px;}
img {display: block; max-width: 100%; height: auto !important;}
td img {vertical-align: top;}
address {display: inline;}
code, kbd, pre, samp {font-family: monospace, serif; font-size: 16px;}
pre {white-space: pre; white-space: pre-wrap; word-wrap: break-word;}
a:hover, a:active {outline: none;}
a, a:hover, a:visited {text-decoration: none;}
iframe {display: block; max-width: 100%;}
fieldset {border: 1px solid #c0c0c0; padding: 16px;}
::placeholder {color: #8E8E8E; font-family: "Outfit", Arial, sans-serif; font-size: 16px; font-weight: 600;}
::-webkit-input-placeholder {color: #8E8E8E; font-family: "Outfit", Arial, sans-serif; font-size: 16px; font-weight: 600;}
:focus::placeholder {opacity: 0.4;}
:focus::-webkit-input-placeholder {opacity: 0.4;}
:-moz-placeholder {color: #8E8E8E; font-family: "Outfit", Arial, sans-serif; font-size: 16px; font-weight: 600;}
:focus:-moz-placeholder {opacity: 0.4;}
*, *:before, *:after {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
.cf:before, .cf:after {content:""; display:table;} .cf:after {clear:both;}
.m-w {opacity: 1; pointer-events: auto;}

body {
  font: 18px/1.6em "Outfit", Arial, sans-serif;
  background-color: #fff;
  color: #071B1B;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  position: relative;
}
.relative {position: relative;}
.hidden, .visible-on-mobile {display: none; pointer-events: none;}
.to-hide {display: none;}
.alignleft {float: left; margin: 0 32px 24px 0;}
.single .alignleft, .single .alignright {max-width: 480px;}
.alignright {float: right; margin: 0 0 24px 32px;}
.aligncenter {margin: 0 auto 24px auto;}
.aligncenter.no-bm, .centered-image img {margin: 0 auto;}
.centered, .jobs-none-container {text-align: center;}
  .centered img {margin: 0 auto 16px auto;}
.aligned-right {text-align: right;}
.centered-block {margin-left: auto; margin-right: auto;}
.w-link {cursor: pointer;}

.container {width: min(90%, 1240px); margin-inline: auto; content-visibility: visible;}
  .container.article {width: min(84%, 800px); margin-inline: auto;}
  .container.article.wider {width: min(84%, 940px);}

.pt-8 {padding-top: 8px;}
.pt-16 {padding-top: 16px;}
.pt-24 {padding-top: 24px;}
.pt-32 {padding-top: 32px;}
.pt-40 {padding-top: 40px;}
.pt-48 {padding-top: 48px;}
.pt-56 {padding-top: 56px;}
.pt-64 {padding-top: 64px;}
.pb-12 {padding-bottom: 12px;}
.pb-16 {padding-bottom: 16px;}
.pb-24 {padding-bottom: 24px;}
.pb-32 {padding-bottom: 32px;}
.pb-40 {padding-bottom: 40px;}
.pb-48 {padding-bottom: 48px;}
.pb-56 {padding-bottom: 56px;}
.pb-64 {padding-bottom: 64px;}
.pb-84 {padding-bottom: 84px;}
.pr-24 {padding-right: 24px;}
.pr-32 {padding-right: 32px;}
.pl-24 {padding-left: 24px;}
.pl-32 {padding-left: 32px;}
.pl-48 {padding-left: 48px;}
.pl-72 {padding-left: 72px;}
.pr-40 {padding-right: 40px;}
.ptb-24 {padding-top: 24px; padding-bottom: 24px;}
.ptb-32 {padding-top: 32px; padding-bottom: 32px;}
.ptb-40 {padding-top: 40px; padding-bottom: 40px;}
.ptb-48 {padding-top: 48px; padding-bottom: 48px;}
.ptb-56 {padding-top: 56px; padding-bottom: 56px;}
.ptb-64 {padding-top: 64px; padding-bottom: 64px;}
.ptb-72 {padding-top: 72px; padding-bottom: 72px;}

.slick-dots {text-align: center; padding: 24px 0 0 0;}
  .slick-dots li {display: inline-block; vertical-align: top; margin: 0 8px;}
  .slick-dots button {
    display: block;
    font: 0/0 a;
    color: transparent;
    width: 16px;
    height: 16px;
    background-color: #214EA2;
    opacity: 0.7;
    border-radius: 50%;
    border: 0;
  }
  .slick-dots button:hover, .slick-dots .slick-active button {opacity: 1;}

.row, .row+.row.w-t-bd {position: relative; padding: 84px 0; content-visibility: visible;}
  .row.blue {background-color: #E9F6FC;}
  .row+.row {padding: 0 0 84px 0;}
  .row+.row.blue, .row+.row.green, .row.green+.clients-grid-row.row, .clients-grid-row.row+.row, .row.page-header-row+.row {padding: 84px 0;}
  .row.no-b-pd {padding: 84px 0 0 0;}

.page-header-row {
  padding: 32px 0 64px 0;
  border-bottom: 1px solid #2A333D;
}
  .page-header-row .container {width: min(90%, 1090px);}
  .page-header-row .grid-row.center-copy { margin: 0 auto;}
  .page-header-row h1 {font-size: 63px; line-height: 72px;}
  .page-header-row .copy-block p:not(.kicker) {font-size: 24px; line-height: 30px;}
  .page-header-row .copy-block p.kicker {margin-bottom: 8px;}
  .page-header-row .grid-row.col-2 .gr-entry:last-of-type {display: flex; justify-content: flex-end;}
  .page-header-row .page-header-side {
    max-width: 430px;
    margin-left: auto;
    text-align: left;
  }
  .page-header-row .single-cta-btn {padding-top: 8px; text-align: right;}

.page-body-row {padding: 64px 0 96px;}
  .page-body-row .container.article {width: min(90%, 902px);}
  .page-body-row .copy-block {margin: 40px 16px 122px; max-width: 902px;}
    .page-body-row .copy-block h2 {margin-bottom: 30px;}
  .page-body-row .copy-block ul {margin: 0 0 16px 0; list-style: none; padding-left: 12px;}
  .page-body-row .copy-block p+ul {margin-top: -16px;}
    .page-body-row .copy-block ul li {
      position: relative;
      padding-left: 12px;
      background: none;
      font-weight: 400;
    }
    .page-body-row .copy-block ul li::before {
      content: "";
      position: absolute;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background-color: currentColor;
      left: 0;
      top: 0.8em;
      transform: translateY(-50%);
    }

.single-cta-btn {margin-bottom: 0 !important;}
  .single-cta-btn a {
    display: inline-block;
    vertical-align: top;
    padding: 12px 56px 12px 24px;
    background: #2EB077 url(../images/black-action-arrow.png) no-repeat 88% center scroll;
    border: 1px solid #2EB077;
    font-weight: 600;
    color: #071B1B !important;
    text-decoration: none !important;
    transition: all 340ms ease-out;
  }
  .single-cta-btn a:hover {text-decoration: none !important; background-color: transparent;}
  .single-cta-btn.ghost a {background: #071B1B url(../images/white-action-arrow.png) no-repeat 84% center scroll; color: #fff !important; border-color: #071B1B;}
    .single-cta-btn.ghost a:hover {background-color: transparent;}
  
  
.multiple-cta {padding-top: 24px;}
  .multiple-cta .single-cta-btn {display: inline-block; vertical-align: top;}
    .multiple-cta .single-cta-btn+.single-cta-btn {margin-left: 16px;}
    .multiple-cta p {display: inline-block; vertical-align: top;}
    .multiple-cta p+p {margin-left: 16px;}

.image-card {
  position: relative;
  background-size: cover !important;
  background-attachment: scroll;
  background-repeat: no-repeat;
  background-color: transparent;
  background-position: center top;
}
  .image-card.rounded {border-radius: 16px;}
  .ic-w-deco .image-card {height: 484px; z-index: 20;}
  .image-card a.ic-link {
    display: block;
    font: 0/0 a;
    color: transparent;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }

.h-124 {height: 124px;}
.h-184 {height: 184px;}
.h-224 {height: 224px;}
.h-240 {height: 240px;}
.h-256 {height: 256px;}
.h-264 {height: 264px;}
.h-280 {height: 280px;}
.h-324 {height: 324px;}
.h-340 {height: 340px;}
.h-364 {height: 364px;}
.h-400 {height: 400px;}
.h-416 {height: 416px;}
.h-424 {height: 424px;}
.h-448 {height: 448px;}
.h-464 {height: 464px;}
.h-480, .video-block {height: 480px;}
.h-516 {height: 516px;}
.h-540 {height: 540px;}
.h-556 {height: 556px;}
.h-580 {height: 580px;}
.h-640 {height: 640px;}

.eyebrow {color: #2EB077; font-family: "PT Sans Narrow", sans-serif; font-weight: 700;}

.video-block iframe {display: block; width: 100%; height: 100%;}
.copy-block iframe, .inline-iframe {display: block; width: 100%; height: 384px; margin: 0 auto;}
.container.article .copy-block iframe {width: 100%; height: 340px;}
.copy-block .form-wrapper iframe {width: 100%; height: auto;}
.copy-block.white, .copy-block.white > *, .copy-block.white h2, .copy-block.white h3, .copy-block.white a {color: #fff;}
.copy-block.blue-text, .copy-block.blue-text > * {color: #032943;}
.copy-block.no-b-m h2, .copy-block.no-b-m h3, .copy-block.no-b-m h4, .copy-block.no-b-m p {margin-bottom: 0 !important;}
.copy-block.fs-16 {font-size: 16px;}
.copy-block.fs-14 {font-size: 14px;}
.copy-block h1 {
  font-family: "Outfit", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 64px;
  line-height: 72px;
  margin-bottom: 16px;
  color: #071B1B;
}
.copy-block h2 {
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 48px;
  line-height: 56px;
  margin-bottom: 16px;
  color: #071B1B;
}
.copy-block h3 {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  margin-bottom: 16px;
  color: #2A333D;
}
.single .copy-block p:last-of-type+h3 {padding-top: 24px;}
.copy-block h4 {
  font-size: 24px;
  line-height: 32px;
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  margin-bottom: 16px;
  color: #2A333D;
}
.copy-block h5 {
  font-size: 24px;
  line-height: 32px;
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  margin-bottom: 16px;
  color: #2A333D;
}
  .copy-block h5 strong {font-weight: 600;}
.copy-block p:last-of-type+h4 {padding-top: 16px;}
.copy-block p.kicker {
  font-family: "PT Sans Narrow", sans-serif;
  font-weight: 700;
  color: #2EB077;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.copy-block p.kicker+h2, .copy-block p.kicker+h3 {margin-top: -12px;}
.copy-block svg {display: block;}
.copy-block p:nth-of-type(1)+h5 {padding-top: 0;}
.copy-block h6 {color: #000; font-size: 24px; line-height: 32px; font-weight: 400; margin-bottom: 24px;}
.copy-block hr {margin: 16px 0; border: 0; clear: both;}
.copy-block sup {vertical-align: super; font-size: 12px; line-height: 12px; font-weight: 400;}
.copy-block .wp-caption img {margin: 0 auto 24px auto;}
.copy-block .wp-caption p {
  padding: 8px 12px;
  background-color: #f4f4f4;
  font-size: 14px;
  line-height: 18px;
  margin: -12px 0 0 0;
  font-style: italic;
  font-weight: 500;
}
.copy-block p:not(:last-of-type) {margin-bottom: 16px;}
.copy-block ul+p {padding-top: 8px;}
.single .copy-block p+h2 {padding-top: 16px;}
.copy-block p:last-of-type+ul, .copy-block p:last-of-type+ol {padding-top: 16px;}
.copy-block a, .form-wrapper a {color: #1975A6; text-decoration: underline; word-break: break-word;}
.copy-block a:hover {color: #000; text-decoration: none;}
.copy-block.white a:hover {color: #f1f1f1;}
.copy-block ul {margin: 0 0 16px 0;}
.copy-block.sac-copy ul {list-style-type: disc; margin: 0 0 16px 24px;}
  .copy-block ul li {padding-left: 32px; background: url(../images/check-icon-blue.png) no-repeat left 2px scroll; font-weight: 700;}
  .copy-block.white ul li, .home .hero .copy-block.white ul li {background-image: url(../images/check-icon.png);}
  .copy-block.sac-copy ul li {padding-left: 0; background: none; font-weight: 400;}
  .copy-block ul li:not(:last-of-type) {margin-bottom: 0px;}
.copy-block ol {margin: 0 0 24px 24px; list-style-type: decimal;}
.copy-block.extra-styles ol {list-style-type: none; margin: 0 0 24px 0;}
  .copy-block.extra-styles ol li {padding: 0 0 0 32px; margin-bottom: 8px; background: url(../images/blue-check-icon.png) no-repeat left center scroll;}
  .copy-block ol li:not(:last-of-type) {padding: 4px 0;}
    .copy-block ol li:last-of-type {padding: 4px 0 0 0;}
.copy-block p:last-of-type+blockquote {margin: 32px auto 24px auto;}
.copy-block table {margin: 0 auto 24px auto;}
.copy-block th {vertical-align: middle; padding: 24px 0;}
.copy-block td {vertical-align: top; padding: 8px; border: 1px solid #E9EAEF;}
.copy-block p+.single-cta-btn {padding-top: 8px;}
.os-meta.copy-block p+.single-cta-btn {padding-top: 0;}
.copy-block p+.multiple-cta .single-cta-btn {padding-top: 0;}
.copy-block blockquote {
  border-left: 4px solid #214EA2;
  color: #333;
  font-weight: 600;
  font-size: 24px; 
  line-height: 32px; 
  padding: 8px 24px 8px 32px; 
  margin-bottom: 32px;
}
.copy-block figure {margin: 0 auto 24px auto;}

.inner-grid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
  .inner-grid.equal-spacing {justify-content: space-between;}
  .inner-grid.align-bottom {align-items: flex-end;}
  .inner-grid.align-left {justify-content: flex-start;}
  .inner-grid.align-right {justify-content: right;}

.simple-btn a {
  display: inline-block;
  vertical-align: top;
  padding-right: 40px;
  color: #071B1B;
  font-weight: 700;
  font-size: 20px;
  text-decoration: underline;
  background: url(../images/action-cta-icon.png) no-repeat right center scroll;
}  
  .simple-btn a:hover {text-decoration: none;}

.error-404-row {padding: 120px 0 140px;}
.error-404 {max-width: 1024px; margin: 0 auto;}
.copy-block .error-404-code {
  font-family: "Outfit", Arial, sans-serif;
  font-weight: 600;
  font-size: 70px;
  line-height: 1;
  letter-spacing: 0.02em;
  color: #071B1B;
  margin-bottom: 32px;
}
.copy-block .error-404-title {
  font-family: "Outfit", Arial, sans-serif;
  font-weight: 700;
  font-size: 50px;
  line-height: 1.2;
  color: #071B1B;
  margin-bottom: 18px;
}
.error-404-links {
  font-size: 18px;
  line-height: 28px;
  color: #2A333D;
  max-width: 640px;
  margin: 0 auto;
}
.error-404-links a {
  text-decoration: underline;
  color: #000;
}

.grid-row {display: flex; flex-direction: row; flex-wrap: wrap;}
  .grid-row.columns {flex-direction: column;}
  .grid-row.equal {align-items: stretch;}
  .grid-row.spaced-content {justify-content: space-between;}
  .grid-row.top {align-items: flex-start;}
  .grid-row.bottom {align-items: flex-end;}
  .grid-row.center {justify-content: center;}
  .grid-row.center-copy {align-items: center;}
  .grid-row.col-2, .grid-row.col-3, .grid-row.col-4, .grid-row.col-5, .grid-row.col-4-6, .grid-row.col-40-60, .grid-row.col-3-7, .grid-row.col-5-4, .grid-row.col-7-3 {margin: 0 -16px;}
  .grid-row.mp.col-2 {margin: 0 -32px;}
  .grid-row.no-lr-m.col-2, .grid-row.no-lr-m.col-3, .grid-row.no-lr-m.col-4, .grid-row.no-lr-m.col-5, .grid-row.no-lr-m.col-4-6 {margin: 0;}
  .grid-row.w-b-m .gr-entry {margin-bottom: 32px;}
  .grid-row .gr-entry {margin-left: 16px; margin-right: 16px;}
  .grid-row.col-4-6 .gr-entry:nth-of-type(1).f-w {padding: 0; flex-basis: calc(80% - 32px); max-width: calc(80% - 32px); margin: 0 auto;}
  .grid-row.col-3-7 .col-4-6 .gr-entry {margin-left: 12px; margin-right: 12px;}
  .grid-row.mp .gr-entry {margin-left: 32px; margin-right: 32px;}
  .grid-row.no-lr-m .gr-entry {margin-left: 0; margin-right: 0;}
  .grid-row.col-2 .gr-entry {
    flex-basis: calc(50% - 32px);
    max-width: calc(50% - 32px);
  }
  .grid-row.col-2.mp .gr-entry {
    flex-basis: calc(50% - 64px);
    max-width: calc(50% - 64px); 
  }
  .grid-row.no-lr-m.col-2 .gr-entry {flex-basis: 50%; max-width: 50%;}
  .grid-row.copy-w-image .gr-entry.copy-block {padding-right: 48px;}
  .grid-row.copy-w-image.reversed .gr-entry.copy-block {padding-left: 48px; padding-right: 0;}
  .grid-row.reversed .gr-entry:nth-of-type(1) {order: 1;}
  .grid-row.reversed .gr-entry:nth-of-type(2) {order: 0;}
  .grid-row.col-3 .gr-entry {
    flex-basis: calc(33.3333% - 32px);
    max-width: calc(33.3333% - 32px);
  }
  .multiple-columns-row .grid-row.col-3 {justify-content: space-between;}
  .multiple-columns-row .grid-row.col-3 .gr-entry {
    max-width: 315px;
    display: grid;
    align-content: start;
  }
  .multiple-columns-row .grid-row.col-3 .copy-block p:first-of-type {margin-bottom: 40px;}
  .multiple-columns-row .grid-row.col-3 .fh-image img {max-height: 100%; width: auto;}
  .multiple-columns-row .grid-row.col-3 .copy-block {grid-row: 2; align-self: start;}
  .multiple-columns-row .grid-row.col-3 .copy-block > p:empty {display: none;}
  .grid-row.no-lr-m.col-3 .gr-entry {flex-basis: 33.3333%; max-width: 33.3333%;}
  .grid-row.col-4 .gr-entry {
    flex-basis: calc(25% - 32px);
    max-width: calc(25% - 32px);
  }
  .grid-row.col-5 .gr-entry {
    flex-basis: calc(20% - 32px);
    max-width: calc(20% - 32px);
  }
  .grid-row.col-5-4 .gr-entry:nth-of-type(1) {
    flex-basis: calc(56% - 32px);
    max-width: calc(56% - 32px);
  }
  .grid-row.col-5-4 .gr-entry:nth-of-type(2) {
    flex-basis: calc(44% - 32px);
    max-width: calc(44% - 32px);
    text-align: center;
  }
  .grid-row.col-7-3 .gr-entry:nth-of-type(1) {
    flex-basis: calc(70% - 32px);
    max-width: calc(70% - 32px);
    padding-right: 40px;
  }
  .grid-row.col-7-3 .gr-entry:nth-of-type(2) {
    flex-basis: calc(30% - 32px);
    max-width: calc(30% - 32px);
  }
  .grid-row.col-4-6 .gr-entry:nth-of-type(1), .grid-row.col-40-60 .gr-entry.col-40 {
    flex-basis: calc(40% - 32px);
    max-width: calc(40% - 32px);
    padding-right: 24px;
  }
  .grid-row.col-4-6 .gr-entry:nth-of-type(2), .grid-row.col-40-60 .gr-entry.col-60 {
    flex-basis: calc(60% - 32px);
    max-width: calc(60% - 32px);
  }
  .grid-row.col-3-7 .gr-entry:nth-of-type(1) {flex-basis: calc(30% - 32px); max-width: calc(30% - 32px);}
  .grid-row.col-3-7 .gr-entry:nth-of-type(2) {flex-basis: calc(70% - 32px); max-width: calc(70% - 32px);}
  .grid-row.col-3-7 .grid-row.col-4-6 .gr-entry:nth-of-type(1) {
    flex-basis: calc(40% - 24px);
    max-width: calc(40% - 24px);
  }
  .grid-row.col-3-7 .grid-row.col-4-6 .gr-entry:nth-of-type(2) {
    flex-basis: calc(60% - 24px);
    max-width: calc(60% - 24px);
  }
  .grid-row.col-3-7 .grid-row.col-4-6 .gr-entry:nth-of-type(2), .hp-testimonial .testimonial-copy {
    border-radius: 32px;
    padding: 24px;
  }
 

.fluid-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}
  .fluid-grid .fg-entry {flex: 1 0 340px;}
.copy-block.form-wrapper p+script+.gform_wrapper, .copy-block.form-wrapper h2+script+.gform_wrapper, .copy-block.form-wrapper h3+script+.gform_wrapper {padding-top: 16px;}
.form-wrapper {height: auto !important;}
  /* .form-wrapper.w-border {border: 1px solid #C2C7CE; border-radius: 16px; padding: 32px; background-color: #fff;} */
  .form-wrapper.w-border h2+script+.gform_wrapper {padding-top: 24px;}
  .form-wrapper.purple, .form-wrapper.w-g-border {padding: 64px 84px; border-radius: 40px;}
  .form-wrapper .form-disclaimer {padding: 0 0 16px 0;}
    .form-wrapper .form-disclaimer p {font-size: 14px; line-height: 1.5em;  }
  .form-wrapper.w-g-border {border: 4px solid #85DA37;}
  .form-wrapper fieldset {padding: 0; border: 0;}
    .copy-block.form-wrapper fieldset+.gfield--type-html p {font-size: 16px;}
    .form-wrapper fieldset legend {display: none;}
    .form-wrapper fieldset label {display: inline-block; vertical-align: top; margin: 0 0 0 4px; padding-top: 2px;}
    .form-wrapper fieldset input[type="checkbox"] {display: inline-block; vertical-align: middle;}
  .form-wrapper input[type=text], .form-wrapper input[type=email], .form-wrapper input[type=tel], .form-wrapper textarea {
    display: block;
    width: 100%;
    background-color: #fff;
    border: 1px solid #999;
    font-family: Sora, Arial, sans-serif;
    font-size: 16px;
    color: #000;
    padding: 16px;
    /* border-radius: 8px; */
    outline: none;
    margin-bottom: 16px;
    max-width: 100%;
    flex-basis: 100%;
  } 
  .form-wrapper select {
    display: block;
    width: 100%;
    background-color: #fff;
    border: 1px solid #999;
    font-family: Outfit, Arial, sans-serif;
    font-size: 16px;
    color: #000;
    padding: 16px;
    border-radius: 8px;
    outline: none;
    margin-bottom: 24px;
  }
  .form-wrapper label {display: block; color: #2D3248; margin-bottom: 4px; max-width: 100%; flex-basis: 100%; font-size: 16px; font-weight: 700; font-family: "Outfit", Arial, sans-serif;}
  .form-wrapper .hide-label label, .form-wrapper .gfield--type-captcha label {display: none;}
  .form-wrapper label .gfield_required {display: inline-block; vertical-align: top; margin-left: 4px; font-weight: 400; opacity: 0.9;}
  .form-wrapper.newsletter input[type=text], .form-wrapper.newsletter input[type=email] {margin-bottom: 0;}
  .form-wrapper input[type=submit] {
    display: inline-block;
    vertical-align: top;
    padding: 16px 24px;
    background-color: #1975A6;
    color: #fff;
    font-family: "Outfit", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    border: 0;
    /* border-radius: 32px; */
    outline: none;
    max-width: 100%;
    flex-basis: 100%;
  }
  .form-wrapper.w-g-border input[type=submit] {
    background-color: transparent;
    border: 2px solid #1975A6;
    border-radius: 12px;
  }
  .form-wrapper .gform_heading {display: none;}
  .form-wrapper .gfield_required_asterisk {color: red;}
  .form-wrapper .gform_footer {padding-top: 16px;}
  .form-wrapper.form-w-icons .gform_footer {padding-left: 64px;}
  .form-wrapper textarea {height: 184px;}
  .form-wrapper ul ul label {display: inline-block; vertical-align: top; font-weight: 400; margin: 0 4px;}
  .form-wrapper .validation_error {font-size: 12px; color: #000; text-transform: uppercase; margin-bottom: 8px;}
  .form-wrapper .wpcf7-spinner {display: none !important;}
  .form-wrapper.contact-form .gform_fields {display: flex; flex-direction: row; flex-wrap: wrap;}
  .form-wrapper .gfield, #gform_fields_3 .gfield {max-width: 100%; flex-basis: 100%;}
    .form-wrapper .gfield.col-50 {max-width: 50%; flex-basis: 50%;}
    .form-wrapper .gfield.col-50:nth-of-type(odd) {padding-right: 12px;}
    .form-wrapper .gfield.col-50:nth-of-type(even) {padding-left: 12px;}
  
.gfield--type-honeypot {display: none; visibility: hidden;}

.collapsible {
  padding: 24px 0 32px 0;
  border-bottom: 1px solid #071B1B;
}
  .collapsible-blocks .collapsible:nth-of-type(1) {border-top: 1px solid #071B1B;}
  .collapsible.active {background-color: #071B1B;}
  .collapsible .label {
    color: #071B1B;
    font-size: 24px;
    font-weight: 700;
    position: relative;
    cursor: pointer;
    user-select: none;
    padding: 4px 0 0 56px;
  }
    .collapsible .label:after {
      display: block;
      content: "+";
      width: 40px;
      height: 40px;
      position: absolute;
      left: 0;
      top: 0;
      color: #2EB077;
      text-align: center;
      font-size: 38px;
      line-height: 38px;
      font-weight: 400;
      background-color: #E6D6C9;
      border-radius: 50%;
    }
    .collapsible.active .label {color: #fff; margin-bottom: 24px;}
      .collapsible.active .label:after {content: "-"; line-height: 32px; color: #E6D6C9; background-color: #2EB077;}
    .collapsible .label:hover {color: #2EB077;}
  .collapsible .answer {
    display: none;
    background-color: #071B1B;
    padding: 12px 0 24px 0;
  }
    .collapsible .answer .copy-block {padding-left: 56px;}
    .collapsible.active .answer {display: block;}

.people-listing strong {font-size: 24px; line-height: 32px;}
.people-listing .gr-entry .pl-fi {margin-bottom: 24px; height: 332px; overflow: hidden;}
  .people-listing .gr-entry.no-details .pl-fi {height: auto;}
  .people-listing .gr-entry .pl-fi img {width: 100%;}
.people-listing .copy-block p:not(:last-of-type) {margin-bottom: 4px;}

.about-us {border-bottom: 124px solid #071B1B;}
.au-grid {position: relative;}
  .au-grid .aug-image {
    width: 40vw;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }
  .au-grid .aug-copy .copy-block {
    padding-right: calc((100vw - 1140px) / 2);
    padding-left: calc(40vw + 72px);
    padding-top: 72px;
    padding-bottom: 72px;
  }
  .au-grid .aug-copy .copy-block.white {background-color: #071B1B; padding-bottom: 0;}
  .au-grid .aug-copy .image-card {display: none;}
  .au-grid .aug-copy .copy-block:nth-of-type(1), .au-grid .aug-copy .copy-block:nth-of-type(1) p {font-size: 32px; line-height: 48px;}


.custom-wp-pagination {text-align: center; padding-top: 32px; max-width: 100%; flex-basis: 100%;}
.custom-wp-pagination a, .custom-wp-pagination span {display: inline-block; vertical-align: top; margin: 0 2px; padding: 4px 16px; border-radius: 4px; font-weight: 700;}
.custom-wp-pagination a {color: #2A333D; background-color: #EBEBEB;}
  .custom-wp-pagination span, .custom-wp-pagination a:hover {color: #fff; background-color: #1B2E4F;}


.custom-video {
  position: relative;
  background-size: cover !important;
  background-attachment: scroll;
  background-repeat: no-repeat;
  background-color: transparent;
  background-position: center;
  border-radius: 8px;
  height: 480px;
  cursor: pointer;
}
  .custom-video:before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 32px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    background-color: rgba(0, 0, 0, 0.24);
  }
    .custom-video:hover:before {background-color: rgba(0, 0, 0, 0.32);}
  .custom-video:after {
    display: block;
    content: "";
    width: 80px;
    height: 80px;
    background: url(../images/play-icon.png?v=1.01) no-repeat center scroll;
    background-size: 80px;
    position: absolute;
    border-radius: 50%;
    left: calc(50% - 40px);
    top: calc(50% - 40px);
    z-index: 10;
  }
    .custom-video:hover:after {background-color: rgba(33, 74, 170, 0.6);}
  .custom-video.active {background-image: none !important; cursor: default;}
  .custom-video.active:after {display: none;}
  .custom-video.active iframe {display: block; width: 100%; height: 508px;}

.page-content {min-height: 50vh;}

.git {
  background: url(../images/git-bg.jpg) no-repeat center scroll;
  background-size: cover;
  padding: 124px 0;
}
  .git .gr-entry.copy-block p {font-size: 24px; line-height: 32px;}
  .git .single-cta-btn {text-align: center;}

.m-h {
  padding: 16px 0; 
  background-color: rgba(255, 255, 255, 0); 
  width: 100%; 
  position: sticky; 
  top: 0; 
  z-index: 9800;
  -webkit-transition: all 400ms ease-in;
  -moz-transition: all 400ms ease-in;
  -ms-transition: all 400ms ease-in;
  -o-transition: all 400ms ease-in;
  transition: all 400ms ease-in;
}
  .scrolled-doc .m-h {background-color: rgba(255, 255, 255, 1);}
  .logged-in .m-h {top: 32px;}
  .home .m-h,
  .page-contact .m-h,
  .has-contact-hero .m-h {background-color: rgba(255, 255, 255, 0);}
  .home.scrolled-doc .m-h,
  .page-contact.scrolled-doc .m-h,
  .has-contact-hero.scrolled-doc .m-h {background-color: rgba(255, 255, 255, 1);}
  .m-h .grid-row {align-items: center; justify-content: space-between;}
  .m-h .mobile-menu {display: none; pointer-events: none;}
  .m-h .nav-trigger {
    display: none;
    width: 32px;
    height: 32px;
    font: 0/0 a;
    color: transparent;
    transition: all 300ms ease-in-out;
    position: relative;
    background-color: transparent;
    border-radius: 4px;
  }
    .m-h .nav-trigger span {
      display: block;
      height: 2px;
      width: 70%;
      margin: 0 auto;
      position: relative;
      top: 50%;
    }
    .mobile-nav-active .m-h .nav-trigger {}
      .m-h .nav-trigger span:after, .m-h .nav-trigger span:before {
        display: block;
        content: "";
        width: 100%;
        height: 2px;
        background-color: #071B1B;
        position: absolute;
        left: 0;
        transition: all 300ms ease-in-out;
        transform: rotate(0deg);
        transform-origin: 50%;
      }
      .m-h .nav-trigger span, .m-h .nav-trigger span:after, .m-h .nav-trigger span:before {background-color: #071B1B;}
      .home .m-h .nav-trigger span, .home .m-h .nav-trigger span:after, .home .m-h .nav-trigger span:before,
      .has-contact-hero .m-h .nav-trigger span, .has-contact-hero .m-h .nav-trigger span:after, .has-contact-hero .m-h .nav-trigger span:before {background-color: #fff;}
      .home.scrolled-doc .m-h .nav-trigger span, .home.scrolled-doc .m-h .nav-trigger span:after, .home.scrolled-doc .m-h .nav-trigger span:before,
      .has-contact-hero.scrolled-doc .m-h .nav-trigger span, .has-contact-hero.scrolled-doc .m-h .nav-trigger span:after, .has-contact-hero.scrolled-doc .m-h .nav-trigger span:before {background-color: #071B1B;}
      .m-h .nav-trigger span:after {top: -5px;}
      .m-h .nav-trigger span:before {bottom: -5px;}
      .m-h .nav-trigger span:before, .m-h .nav-trigger span:after {transform: rotate(0deg); transform-origin: 50%;}
      .mobile-nav-active .m-h .nav-trigger span, .home.mobile-nav-active .m-h .nav-trigger span, .home.scrolled-doc.mobile-nav-active .m-h .nav-trigger span,
      .has-contact-hero.mobile-nav-active .m-h .nav-trigger span, .has-contact-hero.scrolled-doc.mobile-nav-active .m-h .nav-trigger span {background-color: transparent;}
      .mobile-nav-active .m-h .nav-trigger span:before {transform: rotate(45deg); bottom: 0;}
      .mobile-nav-active .m-h .nav-trigger span:after {transform: rotate(-45deg); top: 0;}
  .m-h .logo {
    display: block;
    font: 0/0 a;
    color: transparent;
    width: 130px;
    height: 54px;
    background: url(../images/header-logo-green.svg) no-repeat scroll;
    background-size: cover;
  }
  .home .m-h .logo,
  .has-contact-hero .m-h .logo {background-image: url(../images/header-logo-white.svg);}
  .home.scrolled-doc .m-h .logo,
  .has-contact-hero.scrolled-doc .m-h .logo {background-image: url(../images/header-logo-green.svg);}
  .m-h .nav li {position: relative; font-weight: 700; font-size: 16px;}
    .m-h .nav li:not(:last-of-type) {margin-right: 40px;}
    .m-h .nav li li:not(:last-of-type), .m-h .nav li:not(:last-of-type) li, .m-h .nav li li {margin-right: 0;}
    .m-h .nav li li {float: none; margin-right: 0;}
    .m-h .nav li.external-link a {
      padding-right: 24px;
      background: url(../images/action-cta-icon.png) no-repeat right center scroll;
      background-size: 18px;
    }
    .m-h .nav li ul {
      position: absolute;
      width: 240px;
      padding: 12px;
      background-color: #fff;
      left: -12px;
      top: 100%;
      pointer-events: none;
      visibility: hidden;
      font-size: 16px;
      box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.12);
    }
      .m-h .nav li:hover > ul {pointer-events: auto; visibility: visible; z-index: 9000;}
  .m-h .nav a {
    color: #071B1B;
    display: inline-block;
    vertical-align: top;
    position: relative;
    text-transform: uppercase;
  }
    .m-h .nav a:hover, .m-h .nav .current-menu-item a {color: #2EB077;}
    .home .nav a,
    .page-contact .nav a,
    .has-contact-hero .nav a {color: #fff;}
    .home.scrolled-doc .nav a, .home .nav li ul a,
    .page-contact.scrolled-doc .nav a, .page-contact .nav li ul a,
    .has-contact-hero.scrolled-doc .nav a, .has-contact-hero .nav li ul a,
    .m-h .nav .current-menu-item ul a {color: #071B1B;}
    .m-h .nav li ul a {text-transform: none; font-weight: 500;}
    .m-h .menu-item-has-children:after {
      display: block;
      content: "";
      width: 9px;
      height: 5px;
      background: url(../images/menu-dd-icon.png) no-repeat scroll;
      position: absolute;
      right: -16px;
      top: 12px;
    }
    .home .m-h .menu-item-has-children:after {background-image: url(../images/menu-dd-icon-home.png);}
    .home.scrolled-doc .m-h .menu-item-has-children:after {background-image: url(../images/menu-dd-icon.png);}
    .page-contact .m-h .menu-item-has-children:after,
    .has-contact-hero .m-h .menu-item-has-children:after {background-image: url(../images/menu-dd-icon-home.png);}
    .page-contact.scrolled-doc .m-h .menu-item-has-children:after,
    .has-contact-hero.scrolled-doc .m-h .menu-item-has-children:after {background-image: url(../images/menu-dd-icon.png);}
  .m-h .cta-btn a {
    display: inline-block;
    vertical-align: top;
    height: 48px;
    line-height: 48px;
    padding: 0 24px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    background-color: #2EB077;
    border: 1px solid #2EB077;
  }
    .m-h .cta-btn a:hover {background-color: transparent; color: #2EB077;}

.m-f {background-color: #071B1B; padding: 64px 0; font-size: 16px;}
  .m-f .inner-grid {align-items: flex-start;}
  .m-f p.kicker {
    font-family: "PT Sans Narrow", sans-serif;
    color: #2EB077;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 16px;
    font-weight: 700;
    margin-bottom: 16px;
  }
  .m-f .mf-col-left .social, .m-f .mf-col-left .fe-cta {display: none;}
  .m-f .mf-col-right {max-width: 300px;}
  .m-f .mf-col-right .copy-block p {max-width: 50%;}
  .m-f .logo {
    display: block;
    font: 0/0 a;
    color: transparent;
    width: 87px;
    height: 36px;
    background: url(../images/footer-logo.svg) no-repeat scroll;
    background-size: cover;
    margin-bottom: 16px;
  }
  .m-f .nav li {margin-bottom: 16px;}
    .m-f .nav li:not(:last-of-type) {margin-bottom: 16px;}
    .m-f .nav li.menu-item a {font-weight: 700; color: #fff; font-size: 16px;}
    .m-f .nav .menu-item a:hover, .m-f .nav li.current-menu-item a, .m-f .nav li.current-menu-item li a:hover {color: #2EB077;}

  .m-f .footer-extra.inner-grid, .m-f .footer-extra .inner-grid {align-items: flex-end;}
  .m-f .footer-extra .fe-left p {font-size: 16px; font-weight: 500;}
  .m-f .footer-extra .fe-right .fe-nav a {font-size: 16px; color: #2EB077; text-decoration: underline;}
    .m-f .footer-extra .fe-right .fe-nav a:hover, .m-f .footer-extra .fe-right .fe-nav .current-menu-item a {color: #fff; text-decoration: none;}
  .m-f .footer-extra .fe-right .fe-nav li {
    display: inline-block;
    vertical-align: top;
    margin-right: 32px;
  }
  .m-f .fe-cta {padding-left: 16px;}
    .m-f .fe-cta a {
      display: inline-block;
      vertical-align: top;
      height: 48px;
      line-height: 48px;
      padding: 0 24px;
      color: #fff;
      font-size: 14px;
      font-weight: 700;
      background-color: #2EB077;
      border: 1px solid #2EB077;
    }
      .m-f .fe-cta a:hover {background-color: transparent; color: #2EB077;}

  .m-f .social a {
    display: inline-block;
    vertical-align: top;
    font: 0/0 a;
    color: transparent;
    width: 29px;
    height: 29px;
    background-image: url(../images/social-links.png);
    background-repeat: no-repeat;
    margin-right: 8px;
  }
    .m-f .social a:hover {opacity: 0.7;}
    .m-f .social a.ig {background-position: -52px 0;}
    .m-f .social a.tw {background-position: -105px 0;}
    .m-f .social a.li {background-position: -158px 0;}
    .m-f .social a.yt {background-position: -212px 0;}



.grid-listing {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 24px;
  align-items: stretch;
}
  .grid-listing.clients-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 40px;
  }
  .grid-listing.clients-grid > div {
    flex: 0 1 calc((100% - 5 * 40px) / 6);
    max-width: calc((100% - 5 * 40px) / 6);
    display: flex;
    justify-content: center;
  }
  .grid-listing.provider-listing, .grid-listing.extra {grid-template-columns: repeat(3, 1fr);}
  .grid-listing .cta-block {grid-column: span 3 / auto;}
    .grid-listing .cta-block.fw {grid-column: span 4 / auto;}
  .grid-listing .gl-entry {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    background-color: #fff;
    padding: 24px;
    border-radius: 8px;
    border: 1px solid #CBCBCB;
    box-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.1);
    transition: all 340ms ease-out;
  }
    
.w-sidebar {display: flex; flex-direction: row; flex-wrap: wrap;}
  .w-sidebar .sac-copy {
    order: 1;
    flex-basis: calc(100% - 300px);
    max-width: calc(100% - 300px);
    padding: 0 0 0 32px;
  }
  .w-sidebar .jump-to-section {
    order: 0;
    flex-basis: 300px;
    max-width: 300px;
  }
    .w-sidebar .jump-to-section.hidden {display: none;}
    .w-sidebar .jump-to-section .jump-to-section-links {
      position: sticky;
      left: 0;
      top: 164px;
    }
    .w-sidebar .jump-to-section a {color: #1975A6; font-weight: 700; display: block;}
      .w-sidebar .jump-to-section a:hover {text-decoration: underline;}
    .w-sidebar .jump-to-section p:not(:last-of-type) {margin-bottom: 12px;}


.clients-grid-row {background-color: #071B1B;}
  .clients-grid-row.extra, .row.green, .row.extra {background-color: #CBD8CE;}
  .clients-grid-row.white, .row.white {background-color: #fff;}

.row.agency-grid-row.green {padding: 0 0 90px;}
  .agency-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 210px));
    row-gap: 56px;
    justify-content: space-between;
    align-items: start;
  }
  .agency-grid__item h3 {
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 22px;
  }
  .agency-grid__item p {
    font-size: 18px;
    line-height: 1.2;
    margin: 0;
  }
  .agency-grid__cta {
    display: flex;
    align-items: center;
    align-self: center;
  }
  .agency-grid-row .single-cta-btn a {
    color: #fff !important;
    background-image: url(../images/white-action-arrow.png);
  }

.copy-width-decoration .container {
  border-bottom: 1px solid #000;
  position: relative;
}
.copy-width-decoration .copy-block {
  max-width: 800px;
  margin: 0 auto 64px auto;
}
  .copy-width-decoration .copy-block p {font-size: 32px; line-height: 40px;}

.locations-showcase {
  padding: 96px 0;
}
.locations-showcase .container {
  border-bottom: 1px solid #000;
  position: relative;
}
.locations-showcase .container .locations-grid  { flex-wrap: nowrap;}
.locations-showcase .locations-left {
  flex-basis: calc(20% - 32px) !important;
  max-width: calc(20% - 32px) !important;
  border-right: 1px solid #000;
  padding-right: 40px;
  position: relative;
}
.locations-showcase .locations-left h2 {
  font-size: 48px;
  line-height: 56px;
  margin-bottom: 32px;
}
.locations-showcase .locations-right {
  flex-basis: calc(73% - 32px) !important;
  max-width: calc(73% - 32px) !important;
  padding: 47px 0 68px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.locations-showcase .locations-left .kicker {
  font-family: "PT Sans Narrow", sans-serif;
  color: #2EB077;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: .9px;
  margin-bottom: 5px;
}
.locations-showcase .locations-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.locations-showcase .locations-left:after {
  display: block;
  content: "";
  width: 26px;
  height: 26px;
  position: absolute;
  right: -13px;
  bottom: -12px;
  background: url(../images/green-bubble-decoration.png) no-repeat scroll;
}
.locations-showcase .locations-list li {
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 30px;
  font-weight: 500;
  color: #071B1B;
}
.locations-showcase .locations-list li button {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-align: left;
}
.locations-showcase .locations-list li.active {
  font-weight: 700;
  text-decoration: underline;
}
.locations-showcase .locations-list li.active button {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.locations-showcase .locations-detail {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 424px));
  gap: 37px;
  align-items: start;
  justify-content: space-between;
}
.locations-showcase .locations-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: #CBD8CE;
  padding: 0 68px;
  width: 100%;
  max-width: 424px;
  height: 396px;
  line-height: 1.73;
}
.locations-showcase .locations-image {
  align-self: start;
  width: 100%;
  max-width: 424px;
  height: 396px;
  overflow: hidden;
}
.locations-showcase .locations-image img {
  min-height: auto;
  height: 100% !important;
}
.locations-showcase .locations-card h3 {
  font-size: 30px;
  line-height: 36px;
  margin-bottom: 12px;
}
.locations-showcase .locations-card address {
  font-style: normal;
  font-size: 22px;
  line-height: 28px;
  margin-bottom: 32px;
  line-height: 1.73;
}
.locations-showcase .locations-card .locations-phone a {
  font-size: 22px;
  line-height: 28px;
  color: #071B1B;
  text-decoration: underline;
}
.locations-showcase .locations-card .locations-phone a:hover {
  text-decoration: none;
}
.locations-showcase .locations-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.w-t-bd {border-top: 1px solid #071B1B;}
.w-b-bd {border-bottom: 1px solid #fff;}

.home-hero {
  margin-top: -86px;
  padding: 148px 0 96px 0;
  background: url(../images/home-hero-bg.jpg) no-repeat center top scroll;
  background-size: cover;
}
  .home-hero p em {
    font-family: "PT Sans Narrow", sans-serif;
    display: block;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 1.1px;
    margin: 0 0 24px 0;
  }
.contact-hero {
  margin-top: -86px;
  padding: 148px 0 96px 0;
  background: url(../images/home-hero-bg.jpg) no-repeat center top scroll;
  background-size: cover;
  color: #fff;
}
  .contact-hero .kicker {
    font-family: "PT Sans Narrow", sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #CFE8D8;
    text-transform: uppercase;
    letter-spacing: 1.1px;
    margin-bottom: 23px;
  }
  .contact-hero h1 {
    font-size: 63px;
    line-height: 1.10;
    margin-bottom: 44px;
  }
  .contact-hero .contact-hero-phone {
    font-size: 22px;
    line-height: 1.73;
    margin-bottom: 44px;
  }
  .contact-hero .contact-hero-phone a, .contact-hero-left a {color: #fff; text-decoration: underline;}
  .contact-hero .contact-hero-address {
    font-style: normal;
    font-size: 22px;
    line-height: 1.73;
  }
  .contact-hero .contact-hero-intro {
    max-width: 430px;
    margin: 0 0 24px 0;
  }
  .contact-hero .contact-hero-intro p {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 55px;
  }
  .contact-hero .contact-hero-form {
    max-width: 640px;
  }
  .contact-hero .contact-hero-left {
    flex-basis: calc(45% - 32px) !important;
    max-width: calc(45% - 32px) !important;
  }
  .contact-hero .contact-hero-right {
    flex-basis: calc(55% - 32px) !important;
    max-width: calc(55% - 32px) !important; 
    padding-top: 48px;
  }
  .contact-hero .contact-hero-form form {
    color: #fff;
  }
  .contact-hero .contact-hero-form label {
    color: #fff;
    font-weight: 600;
  }
  .contact-hero .contact-hero-form .hs-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 32px;
  }
  .contact-hero .contact-hero-form .hs-form .hs-form-field {
    width: 100%;
  }
  .contact-hero .contact-hero-form .hs-form label {
    display: block;
    margin: 0 0 12px 0;
    color: #fff;
    font-weight: 600;
  }
  .contact-hero .contact-hero-form .hs-form .hs_firstname > label,
  .contact-hero .contact-hero-form .hs-form .hs_lastname > label,
  .contact-hero .contact-hero-form .hs-form .hs_email > label,
  .contact-hero .contact-hero-form .hs-form .hs_phone > label,
  .contact-hero .contact-hero-form .hs-form .hs_how_can_we_help_ > label {
    display: block;
  }
  .contact-hero .contact-hero-form .hs-form .hs-error-msgs {
    margin: 8px 0 0 0;
  }
  .contact-hero .contact-hero-form .hs-form .hs-error-msg {
    color: #FFD5D5;
    font-weight: 600;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself > label {
    font-size: 22px;
    line-height: 40px;
    font-weight: 700;
    margin-bottom: 29px;
  }
  .contact-hero .contact-hero-form input[type=text],
  .contact-hero .contact-hero-form input[type=email],
  .contact-hero .contact-hero-form input[type=tel],
  .contact-hero .contact-hero-form select,
  .contact-hero .contact-hero-form textarea,
  .contact-hero .contact-hero-form .hs-input {
    width: 100%;
    background-color: #fff;
    border: 0;
        padding: 14px 30px;
    height: 48px;
    font-family: "Outfit", Arial, sans-serif;
    font-size: 16px;
    color: #071B1B;
    margin-bottom: 0;
  }
  .contact-hero .contact-hero-form .hs-input::placeholder {
    color: #071B1B;
    opacity: 1;
    font-weight: 400;
  }
  .contact-hero .contact-hero-form .hs-form textarea.hs-input {
    min-height: 280px;
    height: auto;
    padding-top: 16px;
  }
  .contact-hero .contact-hero-form input[type=submit],
  .contact-hero .contact-hero-form button,
  .contact-hero .contact-hero-form .hs-button {
    display: inline-block;
    font-size: 19px;
    background-color: #071B1B;
    color: #fff;
    border: 0;
    padding: 14px 28px;
    font-weight: 600;
  }
  .contact-hero .contact-hero-form .hs-form .hs_submit {
    width: 100%;
    margin-top: 8px;
    grid-column: 1 / -1;
  }
  .contact-hero .contact-hero-form .hs-form .hs_submit .hs-button {
    display: inline-block;
    padding: 12px 56px 12px 24px;
    background: #071B1B url(../images/white-action-arrow.png) no-repeat 84% center scroll;
    border: 1px solid #071B1B;
    color: #fff;
    text-decoration: none;
    transition: all 340ms ease-out;
  }
  .contact-hero .contact-hero-form .hs-form .hs_submit .hs-button:hover {
    background-color: transparent;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself {
    margin-top: 8px;
    grid-column: 1 / -1;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_can_we_help_ {
    grid-column: 1 / -1;
  }
  .contact-hero .contact-hero-form .hs-form .hs_i_agree_to_the_terms,
  .contact-hero .contact-hero-form .hs-form .hs_recaptcha {
    grid-column: 1 / -1;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container {
    list-style: none;
    margin: 0 0 24px 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px 30px;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container .hs-form-radio > label {
    margin: 0;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container li:nth-child(1) {order: 1;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container li:nth-child(4) {order: 2;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container li:nth-child(5) {order: 3;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container li:nth-child(3) {order: 4;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container li:nth-child(2) {order: 5;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container li:nth-child(6) {order: 6;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .hs-form-radio-display {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .hs-form-radio-display span {
    font-size: 14px; font-weight: 400;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself input[type="radio"] {
    padding: 11px;
    appearance: none;
    width: 26px;
    height: 26px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    background: transparent;
    position: relative;
  }
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself input[type="radio"]:checked:after {
    content: "";
    position: absolute;
    inset: 2px;
    background: white;
    border-radius: 50%;
  }
  .contact-hero .contact-hero-form .hs-form .hs_i_agree_to_the_terms .hs-form-booleancheckbox-display {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-weight: 500;
  }
  .contact-hero .contact-hero-form .hs-form .hs_i_agree_to_the_terms input[type="checkbox"] {
    appearance: none;
    padding: 11px;
    width: 11px;
    height: 11px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    background: transparent;
    position: relative;
  }
  .contact-hero .contact-hero-form .hs-form .hs_i_agree_to_the_terms input[type="checkbox"]:checked:after {
    content: "";
    position: absolute;
    left: 7px;
    top: 3px;
    width: 7px;
    height: 12px;
    border-right: 2px solid white;
    border-bottom: 2px solid white;
    transform: rotate(45deg);
  }
  .contact-hero .contact-hero-form .hs-form .hs_i_agree_to_the_terms span {font-weight: 400; font-size: 14px;}
  .contact-hero .contact-hero-form .hs-form .hs_recaptcha {display: none;}

.hubspot-form-row .container {width: min(90%, 1012px);}
.hubspot-form-row .hubspot-form-intro.copy-block {font-size: 20px; margin-bottom: 24px;}
.hubspot-form-row .hubspot-form-grid {align-items: flex-start;}
.hubspot-form-row .hubspot-form-embed {width: 100%;}
.hubspot-form-row .hubspot-form-embed--solo {max-width: 760px; margin: 0 auto;}
.hubspot-form-row .hubspot-form-embed .hs-form {
  display: grid;
  gap: 6px;
}
.hubspot-form-row .hubspot-form-embed .hs-form .hs-form-field {width: 100%;}
.hubspot-form-row .hubspot-form-embed .hs-form .hs-error-msgs {margin: 8px 0 0 0;}
.hubspot-form-row .hubspot-form-embed .hs-form .hs-error-msg {color: #b00020; font-weight: 600;}
.hubspot-form-row .hubspot-form-embed .hs-input {width: 100%;}
.hubspot-form-row .hubspot-form-embed .hs-form .hs_submit {margin-top: 8px;}
.hubspot-form-row .hubspot-form-embed .hs-button {
  display: inline-block;
  font-size: 18px;
  padding: 12px 56px 12px 24px;
  background: #2EB077 url(../images/black-action-arrow.png) no-repeat 88% center scroll;
  border: 1px solid #2EB077;
  color: #071B1B;
  font-weight: 600;
  text-decoration: none;
  transition: all 340ms ease-out;
}
.hubspot-form-row .hubspot-form-embed .hs-button:hover {background-color: transparent;}

.decorated-heading {
  display: inline-block;
  vertical-align: top;
  font-weight: 700;
  font-size: 48px;
  line-height: 56px;
  margin-bottom: 40px;
  padding: 16px;
  border: 1px solid #071B1B;
  color: #071B1B;
  position: relative;
}
.decorated-heading:after, .decorated-heading:before {
  display: block;
  content: "";
  width: 10px;
  height: 10px;
  border: 1px solid #071B1B;
  position: absolute;
  top: -10px;
}
  .decorated-heading:after {right: -10px;}
  .decorated-heading:before {left: -10px;}
  .decorated-heading span {
    display: block;
    position: relative;
  }
  .decorated-heading span:after, .decorated-heading span:before {
    display: block;
    content: "";
    width: 10px;
    height: 10px;
    border: 1px solid #071B1B;
    position: absolute;
    bottom: -26px;
  }
  .decorated-heading span:after {right: -26px;}
  .decorated-heading span:before {left: -25px;}
  .decorated-heading+.copy-block p {font-size: 24px; line-height: 32px;}

.copy-block-inner-deco {border-right: 1px solid #000; border-bottom: 1px solid #000; padding: 0 40px 48px 0;}

.aus-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 0;
  align-items: stretch;
}
.aus-grid .ag-entry {min-height: 242px; position: relative;}
  .aus-grid .ag-entry .age-image {height: 100%; background-position: center !important;}
  .aus-grid .ag-entry {background-color: #CBD8CE;}
    .aus-grid .ag-entry.green {background-color: #2EB077;}
    .aus-grid .ag-entry.cream {background-color: #E6D6C9;}
.aus-grid .ag-entry.expanded {grid-column: span 2 / auto;}
.aus-grid .ag-entry .age-copy {padding: 24px 32px;}
  .aus-grid .ag-entry .age-copy h3 {
    font-size: 64px;
    line-height: 84px;
    color: #071B1B;
  }
  .aus-grid .ag-entry .age-copy p {font-size: 16px; line-height: 1.5em;}
    .aus-grid .ag-entry .age-copy p:not(:last-of-type) {margin-bottom: 8px;}
    .aus-grid .ag-entry .age-copy p strong {font-size: 18px;}

.fh-image {min-height: 104px;}
  .fh-image img {max-height: 84px;}

body.visible-popup {overflow: hidden;}

.popup-modal {
  background-color: rgba(12, 74, 102, 0.7);
  width: 100vw;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99999;
}
  .popup-modal .pm-content {
    max-width: 1024px;
    margin: 0 auto;
    transform: translateY(4vw);
  }
  .popup-modal .close {
    display: inline-block;
    vertical-align: top;
    background-color: #0096A7;
    color: #fff;
    font-size: 32px;
    padding: 0;
    border-radius: 50%;
    position: absolute;
    right: 24px;
    top: 24px;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
  }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {outline: none;}
.slick-list.dragging {cursor: pointer; cursor: hand;}
.slick-slider .slick-track, .slick-slider .slick-list{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {display: table; content: '';}
.slick-track:after {clear: both;}
.slick-loading .slick-track {visibility: hidden;}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir='rtl'] .slick-slide {float: right;}
.slick-slide.slick-loading img {display: none;}
.slick-slide.dragging img {pointer-events: none;}
.slick-initialized .slick-slide {display: block;}
.slick-loading .slick-slide {visibility: hidden;}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {display: none;}

@media (min-width: 1056px) {
  .copy-width-decoration .container:before {
    display: block;
    content: "";
    width: 1px;
    height: 100%;
    position: absolute;
    left: 124px;
    top: 0;
    background-color: #000;
  }
  .copy-width-decoration .container:after {
    display: block;
    content: "";
    width: 26px;
    height: 26px;
    position: absolute;
    left: 110px;
    bottom: -12px;
    background: url(../images/green-bubble-decoration.png) no-repeat scroll;
  }
}
@media (max-width: 1216px) {
  .grid-listing {grid-template-columns: repeat(3, 1fr);}
  .locations-showcase .locations-detail {grid-template-columns: 1fr;}
  .locations-showcase .locations-card,
  .locations-showcase .locations-image {
    max-width: 100%;
    height: 396px;
  }
  .locations-showcase .locations-image {aspect-ratio: auto;}
  .locations-showcase .locations-left {
    flex: 0 0 220px;
    min-width: 220px;
  }
  .locations-showcase .locations-right {
    flex: 1 1 auto;
    max-width: calc(100% - 260px);
  }
}
@media (min-width: 1172px) {
  .m-h .nav li.show-on-mobile {
    display: none;
    pointer-events: none;
  }
}
@media (max-width: 1172px) {
  .m-h .grid-row {align-items: center;}
  .m-h .visible-on-mobile {display: block; pointer-events: auto;}
  .m-h .nav-trigger {display: block;}
  .m-h .nav.extra, .m-h .nav-extra, .m-h .cta-btn {display: none; pointer-events: none;}
  .m-h .nav {
    display: none;
    width: 248px;
    position: absolute;
    right: 2vw;
    top: 100%;
    background-color: #fff;
    padding: 16px;
  }
  .mobile-nav-active .m-h .nav {display: block; pointer-events: auto;}
  .m-h .nav li {float: none; margin-right: 0;}
  .m-h .nav li .mobile-submenu-trigger {
    display: block;
    cursor: pointer;
    width: 32px;
    height: 32px;
    position: absolute;
    top: 0;
    right: -16px;
  }
    .m-h .nav li .mobile-submenu-trigger:after {
      display: block;
      content: "";
      position: absolute;
      left: calc(50% - 6px);
      top: calc(50% - 4px);
      width: 0px;
      height: 0px;
      border-style: solid;
      border-width: 6px 6px 0 6px;
      border-color: #a8adad transparent transparent transparent;
      transform: rotate(0deg);
   }
   .m-h .nav li.active-submenu-child .mobile-submenu-trigger:after {
      border-width: 0 6px 6px 6px;
      border-color: transparent transparent #071B1B transparent;
    }
  .m-h .nav li:not(:last-of-type) {margin-right: 0; margin-bottom: 4px;}
  .m-h .nav li ul {
    box-shadow: none;
    padding: 8px 0 0 16px;
    max-height: 140px;
    overflow-y: auto;
  }
  .m-h .nav li ul {display: none; width: 100%; position: static; background-color: transparent; visibility: visible; pointer-events: none; border-radius: 0; padding: 8px 0 0 16px;}
    .m-h .nav li.active-submenu-child ul {display: block; pointer-events: auto;}
  .m-h .nav a {display: block;}
  .home .nav a,
  .has-contact-hero .nav a {color: #071B1B;}
  .m-h .nav .cta-btn {padding-top: 4px;}
  .m-h .nav .cta-btn a {display: block; padding: 8px 0; text-align: center;}
  .home .m-h .menu-item-has-children:after,
  .has-contact-hero .m-h .menu-item-has-children:after,
  .m-h .menu-item-has-children:after {display: none;}
  .copy-width-decoration .container:before {left: 64px;}
  .copy-width-decoration .container:after {left: 50px;}
}

@media (max-width: 1024px) {
  .grid-row.col-3-7 .gr-entry:nth-of-type(1), .grid-row.col-3-7 .gr-entry:nth-of-type(2) {flex-basis: calc(100% - 32px); max-width: calc(100% - 32px);}
  .grid-row.col-3-7 .gr-entry:nth-of-type(1) {margin-bottom: 24px;}
  .w-sidebar .jump-to-section, .w-sidebar .sac-copy {
    flex-basis: 100%;
    max-width: 100%;
  }
  .w-sidebar .sac-copy {padding: 32px 0 0 0;}
  .w-sidebar .jump-to-section .jump-to-section-links {position: static;}
    .w-sidebar .jump-to-section .jump-to-section-links .pb-16 {padding-bottom: 0;}
  .w-sidebar .jump-to-section h3 {cursor: pointer; position: relative;}
    .w-sidebar .jump-to-section h3:after {
      display: block;
      content: "+";
      position: absolute;
      right: 0;
      top: 0;
      color: #000;
      font-size: 32px;
      font-weight: 400;
    }
      .w-sidebar .jump-to-section .active h3:after {content: "-";}
  .w-sidebar .jump-to-section .jsl {display: none; pointer-events: none;}
  .w-sidebar .jump-to-section .active .jsl {display: block; pointer-events: auto;}
  .m-f .inner-grid {display: block;}
  .m-f .fe-right, .m-f p.kicker {display: none;}
  .m-f .mf-col-left .social, .m-f .mf-col-left .fe-cta {display: block;}
  .m-f .mf-col-left .social {padding: 24px 0 0 0;}
    .m-f .mf-col-left .social a {margin-right: 12px;}
    .m-f .mf-col-left .social a:last-of-type {margin-right: 0;}
  .m-f .mf-col-left .fe-cta {padding: 24px 0;}
  .m-f .mf-col-right {max-width: 100%;}
    .m-f .mf-col-right .inner-grid {display: flex;}
  .copy-block iframe, .inline-iframe {width: 80%; height: 332px;}
  .about-us {border-bottom: 0;}
  .au-grid .aug-image {display: none;}
  .au-grid .aug-copy .copy-block:nth-of-type(1), .au-grid .aug-copy .copy-block:nth-of-type(1) p {font-size: 24px; line-height: 40px;}
  .au-grid .aug-copy .copy-block {
    padding-right: 5vw;
    padding-left: 5vw;
    padding-top: 48px;
    padding-bottom: 64px;
  }
  .au-grid .aug-copy .copy-block.white {padding-bottom: 64px;}
  .au-grid .aug-copy .image-card {display: block; aspect-ratio: 16 / 9; background-position: center !important;}
  .aus-grid {grid-template-columns: repeat(2, 1fr);}
  .aus-grid .ag-entry.is-copy {min-height: 84px;}
  .aus-grid .ag-entry.grid-entry-4 {order: 2;}
  .aus-grid .ag-entry.grid-entry-9 {order: 3;}
  .aus-grid .ag-entry.grid-entry-10 {order: 4;}
  .aus-grid .ag-entry .age-copy h3 {
    font-size: 48px;
    line-height: 56px;
  }
  .locations-showcase .grid-row.col-3-7 {
    flex-wrap: nowrap;
  }
  .locations-showcase .grid-row.col-3-7 .gr-entry {
    flex-basis: auto;
    max-width: none;
  }
  .locations-showcase .grid-row.col-3-7 .gr-entry:nth-of-type(1) {margin-bottom: 0;}
  .locations-showcase .locations-left {
    flex: 0 0 220px;
    min-width: 220px;
  }
  .locations-showcase .locations-right {
    flex: 1 1 auto;
    max-width: calc(100% - 260px);
    min-width: 0;
    padding-left: 16px;
  }
}
@media (max-width: 984px) {
  .grid-listing, .grid-listing.extra, .grid-listing.provider-listing {grid-template-columns: repeat(2, 1fr);}
  .grid-listing .cta-block {grid-column: span 2 / auto;}
  .grid-row.col-4 .gr-entry {
    flex-basis: calc(50% - 32px);
    max-width: calc(50% - 32px);
  }
  .agency-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
    row-gap: 48px;
  }
  .agency-grid__cta {align-self: flex-start;}
}
@media (max-width: 924px) {
  .inner-grid {display: block;}
}
@media (max-width: 900px) {
  .grid-row.col-2 .gr-entry {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
  }
  .grid-row.col-2 .gr-entry:nth-of-type(1), .grid-row.col-2.reversed .gr-entry:nth-of-type(2) {margin-bottom: 24px;}
  .grid-row.col-2.reversed .gr-entry:nth-of-type(1) {margin-bottom: 0;}
  .grid-row.reversed .gr-entry:nth-of-type(1), .blog-featured .grid-row .gr-entry:nth-of-type(2) {order: 0;}
  .grid-row.reversed .gr-entry:nth-of-type(2), .blog-featured .grid-row .gr-entry:nth-of-type(1) {order: 1;}
  .contact-hero {padding: 124px 0 72px 0;}
  .contact-hero h1 {font-size: 48px; margin-bottom: 25px;}
  .contact-hero .contact-hero-phone {margin-bottom: 25px;}
  .contact-hero .grid-row.col-2 {flex-direction: column;}
  .contact-hero .grid-row.col-2 .gr-entry {max-width: 100%; flex-basis: 100%;}
  .contact-hero .grid-row.col-2 .gr-entry:nth-of-type(1) {margin-bottom: 32px;}
  .contact-hero .contact-hero-form {max-width: 100%;}
  .contact-hero .contact-hero-form .hs-form {grid-template-columns: 1fr;}
  .contact-hero .contact-hero-form .hs-form .hs_how_would_you_describe_yourself .inputs-list.multi-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .contact-hero .contact-hero-left,
  .contact-hero .contact-hero-right {
    padding-top: 0;
    flex-basis: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
  }
  .contact-hero .contact-hero-intro p {
    margin-bottom: 30px;
  }
  .page-header-row {padding: 72px 0 40px;}
  .page-id-149 .page-header-row {border-bottom: 0;}
  .page-header-row .copy-block p:not(.kicker) {font-size: 18px; line-height: 28px;}
  .page-header-row .grid-row.col-2 .gr-entry:last-of-type {display: block;}
  .page-header-row .page-header-side {
    max-width: none;
    margin-left: 0;
    text-align: left;
  }
  .page-header-row .single-cta-btn {text-align: left;}
  .page-body-row .copy-block h2 {font-size: 36px; line-height: 44px;}
  .page-body-row .copy-block p {font-size: 17px; line-height: 28px;}
  .error-404-row {padding: 96px 0 120px;}
  .copy-block .error-404-code {font-size: 50px;}
  .copy-block .error-404-title {font-size: 34px;}
}
@media (max-width: 840px) {
  .grid-row.col-3 .gr-entry {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
  }
  .multiple-columns-row .grid-row.col-3 .gr-entry {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
  }
  .multiple-columns-row .grid-row.col-3 .copy-block > *:first-child {
    min-height: unset;
    height: unset;
    margin-bottom: 16px;
  }
  .multiple-columns-row .grid-row.col-3 .copy-block p:first-of-type {margin-bottom: 32px;}
  .grid-row.col-3 .gr-entry:not(:last-of-type) {margin-bottom: 24px;}
  .multiple-columns-row .copy-block.pb-40+.grid-row.col-3 {padding-top: 24px;}
  .multiple-columns-row .grid-row.col-3 .gr-entry:not(:last-of-type) {margin-bottom: 64px;}
  .grid-listing.extra {grid-template-columns: repeat(1, 1fr);}
  .grid-listing.clients-grid > div {
    flex-basis: calc((100% - 1 * 40px) / 2);
    max-width: calc((100% - 1 * 40px) / 2);
  }
  .git {padding: 64px 0;}
}
@media (max-width: 816px) {
  .grid-row.col-7-3 .gr-entry:nth-of-type(1) {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
    padding: 0 0 32px 0;
  }
  .grid-row.col-7-3 .gr-entry:nth-of-type(2) {flex-basis: calc(100% - 32px); max-width: calc(100% - 32px);}
    .grid-row.col-7-3 .gr-entry:nth-of-type(2) img {margin: 0 auto;}
  .m-f .mf-col:not(:last-of-type) {max-width: 100%; flex-basis: 100%; padding: 0 0 24px 0;}
  .m-f .mf-col:last-of-type {padding: 0;}
  .grid-row.col-3-7 .grid-row.col-4-6 .gr-entry:nth-of-type(1) {
    flex-basis: calc(100% - 24px);
    max-width: calc(100% - 24px);
  }
    .grid-row.col-3-7 .grid-row.col-4-6 .gr-entry:nth-of-type(1) img {margin: 0 auto 16px auto;}
  .grid-row.col-3-7 .grid-row.col-4-6 .gr-entry:nth-of-type(2) {
    flex-basis: calc(100% - 24px);
    max-width: calc(100% - 24px);
  }
  .container.article {width: min(94%, 800px);}
  .page-body-row .container.article {width: min(90%, 902px);}
  .grid-row.col-40-60 .gr-entry.col-40 {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
    padding: 0 0 24px 0;
  }
  .grid-row.col-40-60 .gr-entry.col-60 {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
  }
  .decorated-heading {display: block; font-size: 40px; line-height: 48px;}
}
@media (max-width: 707px) {
  .locations-showcase {padding: 52px 0;}
  .locations-showcase .container {border-bottom: none;}
  .locations-showcase .container .locations-grid {flex-wrap: wrap;}
  .locations-showcase .grid-row.col-3-7 {flex-wrap: wrap;}
  .locations-showcase .grid-row.col-3-7 .gr-entry {
    flex-basis: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
  }
  .locations-showcase .locations-left {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: calc(100% - 32px) !important;
    border-right: 0 !important;
    border-right: 0;
    padding-right: 0;
  }
  .locations-showcase .locations-left:after {display: none !important;}
  .locations-showcase .locations-left h2 {font-size: 45px; line-height: 1.20;}
  .locations-showcase .locations-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, auto));
    column-gap: 0;
    row-gap: 6px;
    max-width: 300px;
  }
  .locations-showcase .locations-list li {margin-bottom: 0;}
  .locations-showcase .locations-right {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: calc(100% - 32px) !important;
    padding: 0 !important;
    margin-top: 32px;
  }
  .locations-showcase .locations-detail {grid-template-columns: 1fr; gap: 0;}
  .locations-showcase .locations-card,
  .locations-showcase .locations-image {
    max-width: 100%;
    width: 100%;
    min-height: 265px;
  }
  .locations-showcase .locations-image {aspect-ratio: 424 / 396;}
}
@media (max-width: 640px) {
  .grid-listing {grid-template-columns: repeat(1, 1fr);}
  .grid-listing .cta-block {grid-column: span 1 / auto;}
  .grid-listing.clients-grid > div {
    flex-basis: calc((100% - 1 * 40px) / 2);
    max-width: calc((100% - 1 * 40px) / 2);
  }
  .grid-row.col-4 .gr-entry {
    flex-basis: calc(100% - 32px);
    max-width: calc(100% - 32px);
  }
  .grid-row.col-4 .gr-entry:not(:last-of-type) {margin-bottom: 24px;}
  .alignright {float: none; margin: 0 0 24px 0;}
  .contact-hero h1 {font-size: 40px;}
  .page-header-row h1 {font-size: 48px; line-height: 56px;}
  .page-body-row .copy-block h2 {font-size: 30px; line-height: 38px;}
  .page-body-row .copy-block p {font-size: 16px; line-height: 26px;}
  .row.agency-grid-row {padding: 72px 0 88px;}
  .agency-grid {grid-template-columns: 1fr; row-gap: 48px;}
  .agency-grid__cta {align-self: flex-start;}
  .decorated-heading {padding: 0; border: 0;}
    .decorated-heading:after, .decorated-heading:before, .decorated-heading span:before, .decorated-heading span:after {display: none;}
  .copy-block-inner-deco {padding: 0 0 48px 0; border-right: 0;}
  .git .single-cta-btn {text-align: left;}
  .w-t-bd {position: relative;}
    .w-t-bd:before {
      display: block;
      content: "";
      width: 5vw;
      height: 1px;
      background-color: #071B1B;
      position: absolute;
      left: -5vw;
      top: -1px;
    }
  .copy-width-decoration .container {width: 100%; padding: 0 5vw;}
    .copy-width-decoration .container .copy-block {padding: 0 4vw;}
  .copy-block h1 {font-size: 48px; line-height: 56px;}
  .copy-block h2 {font-size: 40px; line-height: 48px;}
  .home-hero .copy-block, .home-hero .copy-block *, .home-hero .centered {text-align: left !important;}
}
@media (max-width: 548px) {
  .m-f .nav {justify-content: flex-start;}
  .m-f .nav li {flex-basis: 50%; max-width: 50%;}
    .m-f .nav li li, .m-f .nav li.nav-extras {flex-basis: 100%; max-width: 100%;}
  .m-f .nav li:not(:last-of-type) {margin-right: 0;}
  .page-header-row .grid-row.col-2 .gr-entry:nth-of-type(1) {margin-bottom: 0;}
  .page-header-row .copy-block p:not(.kicker) {margin-bottom: 25px;}
  .page-header-row .grid-row.center-copy {width: min(100%, 1090px);}
}