html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
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;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
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;
}
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  overflow-x: hidden;
}
.cf :before,
.cf:after {
  content: " ";
  display: table;
}
.cf:after {
  clear: both;
}
strong {
  font-weight: bold;
}
a {
  color: inherit;
  text-decoration: none;
}
p a {
  font-weight: 400;
}
input[type=text],
input[type=email] {
  border: none;
  outline: none;
}
input[type=submit] {
  border: none;
  outline: none;
}
main {
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 756px) {
  .container {
    margin: 0 25px;
  }
  .row {
    margin: 0 !important;
  }
  .col-1,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-10,
  .col-11,
  .col-12 {
    width: 100%;
    float: none;
    margin: 0 auto;
    clear: both;
  }
  .hide-xs {
    display: none !important;
  }
  .show-xs {
    display: block;
  }
  .flex-xs {
    display: flex;
  }
}
div[class^="col-"] {
  position: relative;
}
@media screen and (min-width: 756px) and (max-width: 948px) {
  .container {
    position: relative;
    margin: 0 auto;
    clear: both;
    width: 568px;
  }
  .page-title > h1 {
    max-width: 568px;
  }
  .row {
    margin-left: -10px;
    margin-right: -10px;
    display: flex;
    flex-wrap: wrap;
  }
  .col-1 {
    width: 29px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-1-sm {
    width: 29px !important;
  }
  .col-2 {
    width: 78px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-2-sm {
    width: 78px !important;
  }
  .col-3 {
    width: 127px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-3-sm {
    width: 127px !important;
  }
  .col-4 {
    width: 176px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-4-sm {
    width: 176px !important;
  }
  .col-5 {
    width: 225px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-5-sm {
    width: 225px !important;
  }
  .col-6 {
    width: 274px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-6-sm {
    width: 274px !important;
  }
  .col-7 {
    width: 323px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-7-sm {
    width: 323px !important;
  }
  .col-8 {
    width: 372px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-8-sm {
    width: 372px !important;
  }
  .col-9 {
    width: 421px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-9-sm {
    width: 421px !important;
  }
  .col-10 {
    width: 470px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-10-sm {
    width: 470px !important;
  }
  .col-11 {
    width: 519px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-11-sm {
    width: 519px !important;
  }
  .col-12 {
    width: 568px;
    margin-left: 10px;
    margin-right: 10px;
  }
  .col-12-sm {
    width: 568px !important;
  }
  .show-sm {
    display: block;
  }
  .flex-sm {
    display: flex;
  }
  .hide-sm {
    display: none !important;
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  .container {
    position: relative;
    margin: 0 auto;
    clear: both;
    width: 764px;
  }
  .page-title > h1 {
    max-width: 764px;
  }
  .row {
    margin-left: -20px;
    margin-right: -20px;
    display: flex;
    flex-wrap: wrap;
  }
  .col-1 {
    width: 27px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-1-md {
    width: 27px !important;
  }
  .col-2 {
    width: 94px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-2-md {
    width: 94px !important;
  }
  .col-3 {
    width: 161px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-3-md {
    width: 161px !important;
  }
  .col-4 {
    width: 228px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-4-md {
    width: 228px !important;
  }
  .col-5 {
    width: 295px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-5-md {
    width: 295px !important;
  }
  .col-6 {
    width: 362px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-6-md {
    width: 362px !important;
  }
  .col-7 {
    width: 429px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-7-md {
    width: 429px !important;
  }
  .col-8 {
    width: 496px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-8-md {
    width: 496px !important;
  }
  .col-9 {
    width: 563px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-9-md {
    width: 563px !important;
  }
  .col-10 {
    width: 630px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-10-md {
    width: 630px !important;
  }
  .col-11 {
    width: 697px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-11-md {
    width: 697px !important;
  }
  .col-12 {
    width: 764px;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-12-md {
    width: 764px !important;
  }
  .show-md {
    display: block;
  }
  .flex-md {
    display: flex;
  }
  .hide-md {
    display: none !important;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px) {
  .container {
    position: relative;
    margin: 0 auto;
    clear: both;
    width: 992px;
  }
  .page-title > h1 {
    max-width: 992px;
  }
  .row {
    margin-left: -20px;
    margin-right: -20px;
    display: flex;
    flex-wrap: wrap;
  }
  .col-1 {
    width: 46px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-1-lg {
    width: 46px !important;
  }
  .col-2 {
    width: 132px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-2-lg {
    width: 132px !important;
  }
  .col-3 {
    width: 218px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-3-lg {
    width: 218px !important;
  }
  .col-4 {
    width: 304px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-4-lg {
    width: 304px !important;
  }
  .col-5 {
    width: 390px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-5-lg {
    width: 390px !important;
  }
  .col-6 {
    width: 476px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-6-lg {
    width: 476px !important;
  }
  .col-7 {
    width: 562px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-7-lg {
    width: 562px !important;
  }
  .col-8 {
    width: 648px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-8-lg {
    width: 648px !important;
  }
  .col-9 {
    width: 734px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-9-lg {
    width: 734px !important;
  }
  .col-10 {
    width: 820px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-10-lg {
    width: 820px !important;
  }
  .col-11 {
    width: 906px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-11-lg {
    width: 906px !important;
  }
  .col-12 {
    width: 992px;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-12-lg {
    width: 992px !important;
  }
  .show-lg {
    display: block;
  }
  .flex-lg {
    display: flex;
  }
  .hide-lg {
    display: none !important;
  }
}
@media screen and (min-width: 1450px) and (max-width: 1700px) {
  .container {
    position: relative;
    margin: 0 auto;
    clear: both;
    width: 1196px;
  }
  .page-title > h1 {
    max-width: 1196px;
  }
  .row {
    margin-left: -20px;
    margin-right: -20px;
    display: flex;
    flex-wrap: wrap;
  }
  .col-1 {
    width: 63px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-1-xl {
    width: 63px !important;
  }
  .col-2 {
    width: 166px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-2-xl {
    width: 166px !important;
  }
  .col-3 {
    width: 269px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-3-xl {
    width: 269px !important;
  }
  .col-4 {
    width: 372px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-4-xl {
    width: 372px !important;
  }
  .col-5 {
    width: 475px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-5-xl {
    width: 475px !important;
  }
  .col-6 {
    width: 578px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-6-xl {
    width: 578px !important;
  }
  .col-7 {
    width: 681px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-7-xl {
    width: 681px !important;
  }
  .col-8 {
    width: 784px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-8-xl {
    width: 784px !important;
  }
  .col-9 {
    width: 887px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-9-xl {
    width: 887px !important;
  }
  .col-10 {
    width: 990px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-10-xl {
    width: 990px !important;
  }
  .col-11 {
    width: 1093px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-11-xl {
    width: 1093px !important;
  }
  .col-12 {
    width: 1196px;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-12-xl {
    width: 1196px !important;
  }
  .show-xl {
    display: block;
  }
  .flex-xl {
    display: flex;
  }
  .hide-xl {
    display: none !important;
  }
}
@media screen and (min-width: 1700px) {
  .container {
    position: relative;
    margin: 0 auto;
    clear: both;
    width: 1412px;
  }
  .page-title > h1 {
    max-width: 1412px;
  }
  .row {
    margin-left: -20px;
    margin-right: -20px;
    display: flex;
    flex-wrap: wrap;
  }
  .col-1 {
    width: 81px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-1-xxl {
    width: 81px !important;
  }
  .col-2 {
    width: 202px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-2-xxl {
    width: 202px !important;
  }
  .col-3 {
    width: 323px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-3-xxl {
    width: 323px !important;
  }
  .col-4 {
    width: 444px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-4-xxl {
    width: 444px !important;
  }
  .col-5 {
    width: 565px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-5-xxl {
    width: 565px !important;
  }
  .col-6 {
    width: 686px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-6-xxl {
    width: 686px !important;
  }
  .col-7 {
    width: 807px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-7-xxl {
    width: 807px !important;
  }
  .col-8 {
    width: 928px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-8-xxl {
    width: 928px !important;
  }
  .col-9 {
    width: 1049px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-9-xxl {
    width: 1049px !important;
  }
  .col-10 {
    width: 1170px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-10-xxl {
    width: 1170px !important;
  }
  .col-11 {
    width: 1291px;
    float: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-11-xxl {
    width: 1291px !important;
  }
  .col-12 {
    width: 1412px;
    margin-left: 20px;
    margin-right: 20px;
  }
  .col-12-xxl {
    width: 1412px !important;
  }
  .show-xxl {
    display: block;
  }
  .flex-xxl {
    display: flex;
  }
  .hide-xxl {
    display: none !important;
  }
}
.breakpoint-helper {
  display: inline-block;
  position: fixed;
  right: 10px;
  bottom: 10px;
  padding: 8px;
  justify-content: center;
  background-color: red;
  border-radius: 5px;
  z-index: 999999999999999999999999999999999;
  pointer-events: none;
}
.breakpoint-helper:before {
  display: block;
  content: "Full Width";
  color: white;
  text-transform: uppercase;
  font-weight: bold;
  font-family: "National", Helvetica, Arial, sans-serif;
}
@media screen and (min-width: 1450px) and (max-width: 1700px) {
  .breakpoint-helper:before {
    content: "Breakpoint XL";
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px) {
  .breakpoint-helper:before {
    content: "Breakpoint LG";
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  .breakpoint-helper:before {
    content: "Breakpoint MD";
  }
}
@media screen and (min-width: 756px) and (max-width: 948px) {
  .breakpoint-helper:before {
    content: "Breakpoint SM";
  }
}
@media screen and (max-width: 756px) {
  .breakpoint-helper:before {
    content: "Breakpoint XS";
  }
}
.gap-xs {
  display: block;
  position: relative;
  clear: both;
  width: 100%;
  height: 20px;
}
@media screen and (max-width: 756px) {
  .gap-xs {
    height: 10px;
  }
}
.gap-sm {
  display: block;
  position: relative;
  clear: both;
  width: 100%;
  height: 30px;
}
@media screen and (max-width: 756px) {
  .gap-sm {
    height: 20px;
  }
}
.gap-md {
  display: block;
  position: relative;
  clear: both;
  width: 100%;
  height: 50px;
}
@media screen and (max-width: 756px) {
  .gap-md {
    height: 40px;
  }
}
.gap-lg {
  display: block;
  position: relative;
  clear: both;
  width: 100%;
  height: 100px;
}
@media screen and (max-width: 756px) {
  .gap-lg {
    height: 60px;
  }
}
@media screen and (min-width: 756px) and (max-width: 948px) {
  .gap-lg {
    height: 80px;
  }
}
.gap-xl {
  display: block;
  position: relative;
  clear: both;
  width: 100%;
  height: 300px;
}
@media screen and (max-width: 756px) {
  .gap-xl {
    height: 250px;
  }
}
.row.justify-content-between {
  justify-content: space-between;
}
.row.justify-content-center {
  justify-content: center;
}
@font-face {
  font-family: "Tiempos";
  font-weight: 400;
  src: url("../fonts/TiemposText-Medium.woff") format("woff"), url("../fonts/TiemposText-Medium.eot") format("embedded-opentype"), url("../fonts/TiemposText-Medium.svg") format("svg");
}
@font-face {
  font-family: "Tiempos";
  font-style: italic;
  font-weight: normal;
  src: url("../fonts/TiemposText-RegularItalic.woff") format("woff"), url("../fonts/TiemposText-RegularItalic.eot") format("embedded-opentype"), url("../fonts/TiemposText-RegularItalic.svg#font") format("svg"), url("../fonts/TiemposText-RegularItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Tiempos";
  src: url('../fonts/TiemposTextWeb-Semibold.woff') format('woff'), url('../fonts/TiemposTextWeb-Semibold.eot') format('embedded-opentype');
  font-weight: 600;
}
@font-face {
  font-family: 'National';
  src: url('../fonts/National-Regular.woff') format('woff'), url('../fonts/National-Regular.svg#National-Regular') format('svg');
  font-weight: 400;
}
@font-face {
  font-family: 'National';
  src: url('../fonts/NationalWeb-Book.woff') format('woff'), url('../fonts/National-Regular.eot'), url('../fonts/NationalWeb-Book.eot') format('embedded-opentype');
  font-weight: 300;
}
@font-face {
  font-family: 'National';
  src: url('../fonts/National-Bold.woff') format('woff'), url('../fonts/National-Bold.eot'), url('../fonts/National-Bold.svg#National-Bold') format('svg');
  font-weight: 600;
}
@font-face {
  font-family: 'Capitaine';
  src: url('../fonts/Capitaine-Regular.woff2') format('woff2');
  font-weight: 400;
}
@font-face {
  font-family: 'Capitaine';
  src: url('../fonts/Capitaine-Medium.woff2') format('woff2');
  font-weight: 500;
}
@font-face {
  font-family: 'Capitaine';
  src: url('../fonts/Capitaine-SemiBold.woff2') format('woff2');
  font-weight: 600;
}
body {
  font-variant-numeric: lining-nums;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  cursor: default;
}
h1 {
  font-family: "Capitaine", Times, serif;
  font-size: 54px;
  line-height: 60px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h2 {
  font-family: "Capitaine", Times, serif;
  font-size: 36px;
  line-height: 43px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h3 {
  font-family: "Capitaine", Times, serif;
  font-size: 32px;
  line-height: 40px;
  color: #000000;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h4 {
  font-family: "Capitaine", Times, serif;
  font-size: 32px;
  line-height: 38px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h5 {
  font-family: "National", Helvetica, Arial, sans-serif;
  font-size: 24px;
  line-height: 28px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h6 {
  font-size: 18px;
  font-family: "National", Helvetica, Arial, sans-serif;
  line-height: 24px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
p,
li {
  font-family: "National", Helvetica, Arial, sans-serif;
  font-size: 24px;
  line-height: 28px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.body-links {
  font-family: "National", Helvetica, Arial, sans-serif;
  font-size: 20px;
  line-height: 26px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 1450px) and (max-width: 1700px) {
  p,
  li {
    font-size: 22px;
    line-height: 26px;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px) {
  h1 {
    font-size: 45px;
    line-height: 56px;
  }
  h2 {
    font-size: 34px;
    line-height: 38px;
  }
  h3 {
    font-size: 32px;
    line-height: 40px;
  }
  h4 {
    font-size: 28px;
    line-height: 30px;
  }
  h5 {
    font-size: 25px;
    line-height: 28px;
  }
  h6 {
    font-size: 18px;
    line-height: 24px;
  }
  p,
  li {
    font-size: 22px;
    line-height: 26px;
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  h1 {
    font-size: 42px;
    line-height: 48px;
  }
  h2 {
    font-size: 28px;
    line-height: 30px;
  }
  h3 {
    font-size: 28px;
    line-height: 34px;
  }
  h4 {
    font-size: 22px;
    line-height: 26px;
  }
  h5 {
    font-size: 22px;
    line-height: 28px;
  }
  h6 {
    font-size: 18px;
    line-height: 24px;
  }
  p,
  li {
    font-size: 22px;
    line-height: 24px;
  }
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (max-width: 756px) {
  h1 {
    font-size: 32px;
    line-height: 38px;
  }
  h2 {
    font-size: 28px;
    line-height: 32px;
  }
  h3 {
    font-size: 27px;
    line-height: 36px;
  }
  h4 {
    font-size: 22px;
    line-height: 32px;
  }
  h5 {
    font-size: 23px;
    line-height: 27px;
  }
  h6 {
    font-size: 17px;
    line-height: 24px;
  }
  p,
  li {
    font-size: 21px;
    line-height: 23px;
  }
  .body-links {
    font-size: 18px;
    line-height: 22px;
  }
}
a:hover {
  text-decoration: none;
}
.bg-blue {
  background-color: #0057FF !important;
}
.fg-blue {
  color: #0057FF !important;
}
.bc-blue {
  border-color: #0057FF !important;
}
.fill-blue {
  fill: #0057FF !important;
}
.fill-blue svg path {
  fill: #0057FF !important;
}
.stroke-blue {
  stroke: #0057FF !important;
}
.stroke-blue svg path,
.stroke-blue svg polyline {
  stroke: #0057FF !important;
}
.bg-green {
  background-color: #009F79 !important;
}
.fg-green {
  color: #009F79 !important;
}
.bc-green {
  border-color: #009F79 !important;
}
.fill-green {
  fill: #009F79 !important;
}
.fill-green svg path {
  fill: #009F79 !important;
}
.stroke-green {
  stroke: #009F79 !important;
}
.stroke-green svg path,
.stroke-green svg polyline {
  stroke: #009F79 !important;
}
.bg-pink {
  background-color: #C62AED !important;
}
.fg-pink {
  color: #C62AED !important;
}
.bc-pink {
  border-color: #C62AED !important;
}
.fill-pink {
  fill: #C62AED !important;
}
.fill-pink svg path {
  fill: #C62AED !important;
}
.stroke-pink {
  stroke: #C62AED !important;
}
.stroke-pink svg path,
.stroke-pink svg polyline {
  stroke: #C62AED !important;
}
.bg-red {
  background-color: #FF594F !important;
}
.fg-red {
  color: #FF594F !important;
}
.bc-red {
  border-color: #FF594F !important;
}
.fill-red {
  fill: #FF594F !important;
}
.fill-red svg path {
  fill: #FF594F !important;
}
.stroke-red {
  stroke: #FF594F !important;
}
.stroke-red svg path,
.stroke-red svg polyline {
  stroke: #FF594F !important;
}
.bg-white {
  background-color: #ffffff !important;
}
.fg-white {
  color: #ffffff !important;
}
.bc-white {
  border-color: #ffffff !important;
}
.fill-white {
  fill: #ffffff !important;
}
.fill-white svg path {
  fill: #ffffff !important;
}
.stroke-white {
  stroke: #ffffff !important;
}
.stroke-white svg path,
.stroke-white svg polyline {
  stroke: #ffffff !important;
}
.bg-lt-gray {
  background-color: #F4F1ED !important;
}
.fg-lt-gray {
  color: #F4F1ED !important;
}
.bc-lt-gray {
  border-color: #F4F1ED !important;
}
.fill-lt-gray {
  fill: #F4F1ED !important;
}
.fill-lt-gray svg path {
  fill: #F4F1ED !important;
}
.stroke-lt-gray {
  stroke: #F4F1ED !important;
}
.stroke-lt-gray svg path,
.stroke-lt-gray svg polyline {
  stroke: #F4F1ED !important;
}
.bg-md-gray {
  background-color: #959187 !important;
}
.fg-md-gray {
  color: #959187 !important;
}
.bc-md-gray {
  border-color: #959187 !important;
}
.fill-md-gray {
  fill: #959187 !important;
}
.fill-md-gray svg path {
  fill: #959187 !important;
}
.stroke-md-gray {
  stroke: #959187 !important;
}
.stroke-md-gray svg path,
.stroke-md-gray svg polyline {
  stroke: #959187 !important;
}
.bg-black {
  background-color: #0B0F1E !important;
}
.fg-black {
  color: #0B0F1E !important;
}
.bc-black {
  border-color: #0B0F1E !important;
}
.fill-black {
  fill: #0B0F1E !important;
}
.fill-black svg path {
  fill: #0B0F1E !important;
}
.stroke-black {
  stroke: #0B0F1E !important;
}
.stroke-black svg path,
.stroke-black svg polyline {
  stroke: #0B0F1E !important;
}
.bg-tutu {
  background-color: #FEF5FF !important;
}
.fg-tutu {
  color: #FEF5FF !important;
}
.bc-tutu {
  border-color: #FEF5FF !important;
}
.fill-tutu {
  fill: #FEF5FF !important;
}
.fill-tutu svg path {
  fill: #FEF5FF !important;
}
.stroke-tutu {
  stroke: #FEF5FF !important;
}
.stroke-tutu svg path,
.stroke-tutu svg polyline {
  stroke: #FEF5FF !important;
}
body.page--default {
  --top-logo: #0057FF;
  --bottom-logo: #0057FF;
  --primary: black;
  --primary-invert: white;
  --dark-bg: #0B0F1E;
  --accent: #0057FF;
  --secondary: #009F79;
  background-color: var(--dark-bg);
}
main {
  background-color: white;
}
body.page--default.page--home,
body.page--default.page--project {
  --top-logo: white;
}
.page-title {
  width: 100%;
  padding-top: 150px;
  padding-bottom: 40px;
  background-color: var(--dark-bg);
  position: relative;
}
.page--about .page-title {
  padding-bottom: 60px;
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .page--about .page-title {
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 756px) {
  .page--about .page-title {
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .page-title {
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 120px;
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 756px) {
  .page-title {
    padding-top: 120px;
    padding-bottom: 20px;
  }
}
.page-title p {
  color: var(--primary-invert);
}
.page-title h1 {
  color: var(--primary-invert);
}
.page-title.page-title--smaller > h1 {
  width: 940px;
}
.page-title h2 {
  color: var(--primary-invert);
}
.page-title hr {
  border-bottom-color: var(--secondary);
}
.section-label {
  font-size: 24px;
  font-weight: 600;
  margin-top: 100px;
  margin-bottom: 60px;
  color: var(--primary);
}
.section-label.section-label--no-margin {
  margin-top: 0;
  margin-bottom: 0;
}
.section-label:before {
  content: "";
  width: 220px;
  height: 5px;
  display: block;
  margin-bottom: 10px;
  background-color: var(--primary);
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .section-label {
    font-size: 21px;
    margin-top: 80px;
    margin-bottom: 40px;
  }
  .section-label:before {
    width: 160px;
  }
}
hr {
  border: none;
  border-bottom: 5px solid var(--accent);
  margin: 60px 0;
  width: 220px;
  max-width: 100%;
}
.page--project hr {
  border-bottom-color: black;
}
hr.hr-sm {
  margin: 40px 0;
}
.footerNav.right {
  float: right;
}
.footerNav.left {
  float: left;
}
.footerNav ul {
  list-style: none;
  margin-left: 0;
}
.social {
  list-style: none;
  margin-left: 0;
  float: right;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .social {
    float: left;
    margin-top: 20px;
  }
}
.footerNav h6,
.footerNav li {
  display: inline-block;
  margin-right: 20px;
  text-transform: uppercase;
}
.footerNav li.last {
  display: inline-block;
  margin-right: 0px;
}
.footerNav .icon {
  width: 24px;
}
.footer-map-link {
  cursor: pointer;
}
.footer-map-link a {
  color: inherit;
}
footer {
  background-color: var(--dark-bg);
  color: white;
  padding: 60px 0 90px 0;
  position: relative;
  margin-top: 20px;
}
@media screen and (min-width: 948px) and (max-width: 1172px),screen and (min-width: 756px) and (max-width: 948px),screen and (max-width: 756px) {
  footer {
    padding: 60px 0;
  }
}
footer a {
  color: inherit;
}
footer .col-title {
  font-size: 27px;
}
footer .body-links {
  font-size: 24px;
  color: white;
}
footer input[type=text],
footer input[type=email] {
  background: none;
  margin-top: 10px;
  padding-bottom: 3px;
  border: none;
  border-bottom: 1px solid #fff;
  outline: none;
  color: white;
}
footer input[type=submit] {
  background: none;
  border: none;
  padding: 15px 0 3px 0;
  outline: none;
  cursor: pointer;
}
.footer-icon {
  position: relative;
  top: 3px;
  margin-right: 4px;
}
.footer .col-title {
  color: #828187;
}
.footer .line-spacer {
  margin-top: 12px;
}
.footer .line-spacer-2x {
  margin-top: 24px;
}
.field-group input {
  font-size: inherit;
  font-family: inherit;
}
.field-group input[type=text],
.field-group input[type=email] {
  width: 80%;
}
#first-footer-box .body-links:hover .right-arrow {
  left: 10px;
}
.text-padding-small {
  padding-right: 40px;
}
.wave {
  position: absolute;
  bottom: -85px;
  left: 0;
  height: 100px;
  width: 100%;
}
.wave.wave-foot {
  top: -60px;
  bottom: unset;
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px),screen and (max-width: 756px) {
  .wave.wave-foot {
    top: -70px;
  }
}
.wave canvas {
  width: 100%;
  height: 100%;
}
#soso-logo-static-menu {
  display: none;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  #soso-logo-static-menu {
    opacity: 0;
    transition: opacity 200ms;
    position: absolute;
    top: 10px;
    left: 30px;
    z-index: 400;
    display: block;
  }
  #soso-logo-static-menu svg {
    width: 90px;
  }
}
#soso-logo-static {
  float: left;
  position: relative;
  z-index: 9999999;
}
#soso-logo-static svg {
  fill: var(--top-logo);
  transition: fill 500ms;
}
.mobile-menu-container.enabled + .container #soso-logo-static svg {
  fill: white;
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  #soso-logo-static {
    bottom: 8px;
  }
}
#soso-logo-footer svg {
  fill: var(--bottom-logo);
}
#soso-logo-static svg,
#soso-logo-footer svg {
  width: 145px;
}
@media screen and (min-width: 1450px) and (max-width: 1700px),screen and (min-width: 1172px) and (max-width: 1450px) {
  #soso-logo-static svg,
  #soso-logo-footer svg {
    width: 155px;
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  #soso-logo-static svg,
  #soso-logo-footer svg {
    width: 135px;
  }
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  #soso-logo-static svg,
  #soso-logo-footer svg {
    width: 110px;
  }
}
.static-header {
  margin: 0 auto;
  position: relative;
  padding: 32px 0 58px 0;
}
.menu-container-home {
  z-index: 300;
  padding-top: 15px;
}
.menu-container-home br {
  display: none;
}
.menu-container-home a:hover {
  text-decoration: none !important;
}
.menu-item {
  margin-left: 38px;
  display: inline-block;
}
.menu-item-first {
  margin-left: 0 !important;
}
.menu-container {
  position: relative;
  float: right !important;
  padding-top: 15px;
}
.menu-container br {
  display: none;
}
.menu-container a:hover {
  text-decoration: none !important;
}
#menu-sliding-bar {
  height: 3px;
  background-color: white;
  position: absolute;
  width: 30px;
  left: 200px;
  display: none;
}
.menu-items {
  text-align: right;
  color: white;
  position: relative;
}
#standard-header-mobile {
  display: none;
}
#soso-logo,
#menu-button {
  z-index: 300;
  cursor: pointer;
}
.floating-header {
  position: absolute;
  margin: 0 auto;
  top: 0;
  left: 0;
  right: 0;
  z-index: 500;
}
.mobile-menu-container {
  display: none;
  position: absolute;
  width: 100%;
  min-height: 100vh;
  max-height: 750px;
  top: 0;
  right: 0;
  z-index: 205;
  padding-top: 130px;
  background-color: var(--accent);
}
.mobile-menu-item {
  font-size: 32px;
  line-height: 42px;
  font-weight: 400;
  letter-spacing: 0.05em;
  display: block;
  text-align: right;
  text-transform: uppercase;
  font-family: "National", Helvetica, Arial, sans-serif;
}
.mobile-menu-item-active {
  position: relative;
}
.mobile-menu-item-active:after {
  content: ' ';
  position: absolute;
  bottom: 0px;
  width: 100%;
  height: 4px;
  background-color: white;
  left: 0;
}
#mobile-button {
  display: none;
  width: 40px;
  height: 56px;
  position: relative;
  cursor: pointer;
  z-index: 300;
  float: right;
}
.mobile-button-bar {
  height: 3px;
  width: 100%;
  margin-bottom: 10px;
  color: white;
  background-color: white;
}
.mobile-button-bar-last {
  margin-bottom: 0;
}
.mobile-button-x1,
.mobile-button-x2 {
  height: 4px;
  width: 100%;
  position: absolute;
  top: 60%;
  display: none;
  background-color: white;
}
.mobile-button-x1 {
  transform: rotate(45deg);
}
.mobile-button-x2 {
  transform: rotate(-45deg);
}
@media screen and (min-width: 1450px) and (max-width: 1700px),screen and (min-width: 1172px) and (max-width: 1450px) {
  .menu-item {
    margin-left: 30px;
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  .menu-container {
    padding-top: 6px;
  }
  .static-header {
    width: 100%;
    padding-left: 20px;
  }
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  #mobile-button {
    display: block;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
  }
  #menu-sliding-bar {
    display: none !important;
  }
  .menu-items {
    padding: 0;
  }
  .menu-items a:hover {
    color: white;
  }
  .floating-header .content-container {
    padding-bottom: 20px !important;
  }
  .menu-container {
    display: none;
  }
  #mobile-button {
    width: 36px;
    height: 40px;
    padding-top: 15px;
  }
  .mobile-button-bar {
    margin-bottom: 6px;
  }
  .static-header {
    padding-top: 30px;
    padding-bottom: 32px;
  }
}
.manifesto {
  display: flex;
  justify-content: center;
}
.manifesto h2 {
  font-weight: 500;
  font-family: "National", Helvetica, Arial, sans-serif;
}
@media screen and (max-width: 756px) {
  .manifesto {
    text-align: center;
  }
}
.var-width-floater {
  position: relative;
  padding: 40px 40px 10px 40px;
}
.about-process {
  width: 100px;
  height: 100px;
}
.about-callout {
  padding-top: 40px;
  padding-bottom: 40px;
}
.client-logo {
  width: 20%;
  float: left;
  margin-bottom: 40px;
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (max-width: 756px) {
  .client-logo {
    width: 33.333%;
    margin-bottom: 20px;
  }
}
.service-list p {
  margin-bottom: 9px;
  font-weight: 400;
  padding-right: 25px;
}
.divider-about-callout {
  margin-top: 28px;
  margin-bottom: 38px;
  width: 120px;
  height: 1px;
  border-bottom-width: 4px;
  border-bottom-style: solid;
}
.team-member {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.team-member .team-member__headshot {
  position: relative;
  border-radius: 100%;
  margin-bottom: 30px;
  width: 340px;
  max-width: 90%;
}
.team-member img {
  width: 100%;
  border-radius: 100%;
  display: block;
  position: relative;
}
.team-member p {
  text-align: center;
}
.team-member p:nth-of-type(1) {
  font-weight: 600;
}
.service-list a:hover {
  background-color: var(--primary);
  color: white;
}
p .service-list.body-type a {
  box-shadow: none;
}
p .service-list.body-type a:hover {
  color: inherit;
  background-color: inherit;
}
#apply {
  padding: 14px 34px;
}
.caption-blog {
  font-family: "National", Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 16px;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  margin: 0 auto;
}
.blog-body a {
  box-shadow: inset 0 -3px 0 #7dd6d5;
}
.blog-body a:hover {
  background-color: #7dd6d5;
  color: white;
}
.blog-body .blog-nav.body-links a {
  box-shadow: none;
}
.blog-body .blog-nav.body-links a:hover {
  color: inherit;
  background-color: inherit;
}
.blog-meta-small {
  display: none;
}
blockquote {
  padding: 15px 30px;
  margin-bottom: 10px;
  background-color: #CED1DA;
}
blockquote p:last-child {
  margin-bottom: 0;
}
.TextformatterVideoEmbed {
  margin-bottom: 24px;
  padding-top: 0 !important;
}
.align_center {
  max-width: 100%;
}
.byline {
  text-align: center;
  margin-bottom: 25px;
}
.divider-blog {
  margin: 15px auto 25px auto;
}
.blog-author {
  text-transform: capitalize;
}
.blog-title {
  text-align: center;
}
.blog-header-image img {
  width: 100%;
}
.blog-body p img,
.blog-image img {
  max-width: 100%;
  margin: 40px auto 0 auto;
  display: block;
}
.blog-body p:first-child {
  padding-top: 0px;
}
p .blog-image {
  position: relative;
  left: -121px;
}
.text-padding-blog {
  padding-left: 121px;
}
.blog-body .caption-blog {
  padding-top: 10px;
}
.blog-image {
  position: relative;
  margin-bottom: 24px;
}
.blog-nav {
  text-align: center;
}
.read-more-btn:hover .right-arrow {
  left: 10px;
}
.read-more-btn {
  text-align: center;
}
.read-more-btn .btn {
  display: inline-block;
  margin-top: 15px;
}
.MarkupPagerNav {
  padding-bottom: 20px;
  list-style: none;
  text-align: center;
}
.MarkupPagerNav li {
  display: inline;
  margin-left: 12px;
}
.MarkupPagerNav li a {
  color: inherit;
}
.MarkupPagerNav .MarkupPagerNavFirst {
  margin-left: 0;
}
.MarkupPagerNavOn {
  color: #7dd6d5;
}
.blog-topic-comma {
  display: inline;
}
.role-list h4 {
  margin-bottom: 40px;
}
.role-list ul {
  padding-left: 20px;
  list-style: outside;
}
.role-list ul li {
  padding-bottom: 20px;
}
.intro {
  float: none !important;
}
.intro h2 {
  margin-bottom: 25px;
}
.intro p {
  margin-bottom: 25px;
}
.apply-section {
  margin-bottom: 55px;
}
.apply-section .divider-about-callout {
  margin-top: 20px;
  margin-bottom: 65px;
  border-bottom-color: var(--primary);
}
.apply-section .apply-input {
  margin-bottom: 25px;
}
.apply-section .apply-input input,
.apply-section .apply-input textarea {
  width: 100%;
}
.apply-section .apply-input p {
  margin-bottom: 15px;
  float: none;
}
.apply-section .apply-input .apply-box {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}
.apply-section .apply-input input[type=text],
.apply-section .apply-input input[type=email],
.apply-section .apply-input textarea {
  border: solid 1px #1E386F;
  outline-width: 0;
  padding: 15px;
  margin: 0;
  resize: none;
  font-size: 14px;
  float: none;
}
.apply-section #additional {
  height: 200px;
}
.complete {
  min-height: 60vh;
}
.multi-column-text {
  margin-bottom: 40px;
  padding-right: 40px;
}
@media screen and (min-width: 948px) and (max-width: 1172px),screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .multi-column-text {
    padding-right: 0;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1450px) and (max-width: 1700px),screen and (min-width: 1172px) and (max-width: 1450px) {
  .multi-column-text {
    padding-right: 30px;
    margin-bottom: 20px;
  }
}
.culture {
  margin-top: 50px;
}
.culture h4 {
  margin-bottom: 15px;
}
.beliefs .multi-column-text:last-child .gap-md {
  display: none;
}
.office .office-image {
  float: none;
}
.office .office-image .off-img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  font-family: 'object-fit: cover;';
}
.office .office-description {
  position: absolute;
  z-index: 2;
  padding: 2em;
}
#opening-other {
  font-family: "National", Helvetica, Arial, sans-serif;
  font-weight: 500;
}
.job-opening + .gap-md:last-of-type {
  display: none;
}
.job-opening .job__title {
  margin-bottom: 10px;
  transition: all 0.3s ease;
}
.job-opening:hover .job__title {
  color: var(--accent);
}
.job-opening:hover .right-arrow {
  left: 10px;
}
.careers-intro a {
  color: #2a2b2c;
  box-shadow: inset 0 -3px 0 #478acc;
}
.careers-intro a:hover {
  background-color: #478acc;
  color: white;
  cursor: pointer;
}
.life-story img {
  margin-bottom: 30px;
  width: 100px;
  height: 100px;
}
.job-description p {
  margin-bottom: 30px;
}
.job-description p a {
  text-underline-offset: 4px;
  text-decoration: underline dotted var(--primary);
}
.job-description p:last-child {
  margin-bottom: 0;
}
.job-role-details .col-6:first-child {
  padding-right: 100px;
}
@media screen and (min-width: 1450px) and (max-width: 1700px) {
  .job-role-details .col-6:first-child {
    padding-right: 60px;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px) {
  .job-role-details .col-6:first-child {
    padding-right: 40px;
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px),screen and (min-width: 756px) and (max-width: 948px),screen and (max-width: 756px) {
  .job-role-details .col-6:first-child {
    padding-right: 0;
  }
}
#boston-clock,
#san-clock {
  width: 150px !important;
  height: 150px !important;
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (max-width: 756px) {
  #boston-clock,
  #san-clock {
    float: right;
  }
}
.contact-link:hover {
  text-decoration: none !important;
}
.contact {
  color: var(--primary-invert);
}
.contact p {
  margin-bottom: 30px;
}
.contact p a {
  color: inherit;
}
.contact p a:hover {
  background-color: var(--primary-invert);
  color: var(--primary);
  cursor: pointer;
}
.contact-mobile {
  display: none;
}
.contactInput input[type=text],
.contactInput input[type=email] {
  margin-top: 0px;
  margin-bottom: 10px;
  padding-bottom: 3px;
}
.contactInput input[type=text],
.contactInput input[type=email] {
  background: none;
  padding-bottom: 5px;
  border: none;
  border-bottom: 1px solid #000;
  outline: none;
  border-radius: 0;
  -webkit-appearance: none;
}
.contactInput ::-webkit-input-placeholder {
  color: #000;
}
.contactInput ::-moz-placeholder {
  color: #000;
}
.contactInput :-ms-input-placeholder {
  color: #000;
}
.contactInput :-moz-placeholder {
  color: #000;
}
.contactField-group {
  margin-bottom: 25px;
}
.contactField-group input {
  font-size: inherit;
  font-family: inherit;
}
#MERGE0,
#MERGE1 {
  width: 100%;
}
.city {
  margin-bottom: 10px;
}
.address a {
  box-shadow: none;
  color: #2a2b2c;
}
.address a:hover {
  color: #ffffff;
  background-color: var(--primary);
}
.hero-image {
  height: 100%;
  margin: auto;
  width: 100%;
  display: none;
}
.project-hero .hero-image {
  display: block;
}
#home-video-container {
  position: relative;
  height: 0;
  padding-bottom: 56%;
  width: 100%;
  overflow: hidden;
  background-color: #68564e;
}
#home-video {
  z-index: 0;
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
}
.home-mission {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  text-align: center;
}
@media screen and (max-width: 756px) {
  .home-mission {
    padding: 0 10%;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px),screen and (min-width: 1450px) and (max-width: 1700px) {
  #manifesto {
    padding-left: 40px;
  }
}
.explore-work-btn:hover .right-arrow {
  left: 10px;
}
.down-arrow {
  position: absolute;
  top: 0;
  right: -13px;
}
.social-integration {
  overflow: hidden;
  position: relative;
  width: 100%;
}
.social-integration:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.social-integration .content {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
#tweet-container.social-integration {
  background-color: #1E386F;
}
.social-integration .icon {
  position: absolute;
  z-index: 2;
  right: 20px;
  bottom: 20px;
  width: 36px;
  transition: bottom 200ms;
}
.social-integration:hover .icon {
  bottom: 30px;
}
#instagram-container .content {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.twitter-feed {
  padding: 20px;
  font-weight: bold;
  color: #7DD6D5;
}
.blog-feed {
  position: absolute;
  padding: 20px;
  font-weight: bold;
  color: white;
  z-index: 3;
}
#home-featured .large-block {
  height: 607px;
}
#home-featured .large-block .hover-state {
  position: absolute;
  z-index: 1;
  height: 447px;
  background: black;
  opacity: 0;
  transition: opacity 200ms;
}
#home-featured .large-block:hover .hover-state {
  opacity: 0.3;
}
#home-featured .center-align {
  padding-top: 80px;
}
#home-featured .std-block .hover-state {
  height: 447px;
}
#home-featured .large-block .description.top-left {
  top: 0px;
  left: 0px;
}
#home-featured .large-block .description.bottom-left {
  bottom: 0px;
  left: 0px;
}
#home-featured .large-block .description.top-right {
  top: 0px;
  right: 0px;
}
#home-featured .large-block .description.bottom-right {
  bottom: 0px;
  right: 0px;
}
#blogpost-container.social-integration .image {
  height: 100%;
  object-fit: cover;
  width: 100%;
  font-family: 'object-fit: cover;';
}
.social-integration .content .image-overlay {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: #000000;
  opacity: 0.2;
}
#explore-work.body-links {
  color: #2A2B2C;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  #home-video-container,
  #home-video {
    height: 400px;
  }
  #home-featured {
    padding-left: 0;
    padding-right: 0;
  }
  #projects .callout,
  #project-related-projects .callout,
  #home-featured .callout {
    padding: 1.5em 4em 0 0;
  }
  #home-featured .description {
    position: absolute;
    padding: 15px;
  }
  #home-featured .large-block .hover-state {
    height: 215px;
  }
  #home-featured .large-block .description.top-left,
  #home-featured .large-block .description.top-right,
  #home-featured .large-block .description.bottom-left {
    top: calc(100% - 30px);
    left: 30px;
    width: calc(100% - 30px);
    bottom: auto;
  }
  .home-hero h1 {
    padding: 6px 7px 5px 7px;
  }
  .home-hero .headline-desktop {
    display: none;
  }
  .home-hero .headline-mobile {
    display: block;
    padding: 30px 40px;
  }
  .twitter-feed {
    font-size: 18px;
    line-height: 22px;
  }
  .explore-container {
    margin-top: 0px;
  }
  .social-integration {
    height: 200px;
    margin-bottom: 20px;
  }
  .hero-tint {
    background-color: rgba(0,0,0,0.3);
  }
  .hero-image {
    display: block !important;
  }
  .learnMore-container {
    margin-top: 35px;
    width: 100%;
  }
}
#project-info-left {
  float: left;
}
#project-description-container a,
.blog-body a {
  font-weight: 300;
  color: inherit;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  padding-bottom: 1px;
}
#project-body a {
  border-bottom: 2px dotted var(--primary);
}
#project-body a:hover {
  color: var(--primary);
}
#project-body:not(.disable-more) > *:not(p:first-child) {
  opacity: 0;
  display: none;
}
.project-hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  aspect-ratio: 1.7777777777778;
  width: 100%;
}
.project-hero > img {
  min-height: 100%;
  min-width: 100%;
}
.project-photo {
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
}
.large-photo {
  padding-bottom: 60%;
  margin-bottom: 20px;
}
.tall-photo {
  padding-bottom: 110%;
  margin-bottom: 20px;
}
.text-photo {
  padding-bottom: 60%;
}
.invert {
  filter: invert(1);
}
.vimeo-play-button {
  width: 65px;
  height: 40px;
  background-color: rgba(23,35,34,0.75);
  border-radius: 5px;
  margin-left: -32.5px;
  margin-top: -20px;
  cursor: pointer;
  position: absolute;
  left: 50%;
  top: 50%;
  background-image: url(../images/vimeo-play-arrow.png);
  background-repeat: no-repeat;
  background-position: 55% center;
}
.vimeo-play-button:hover {
  background-color: #09adef;
}
.project-back-btn-wrapper {
  margin-top: 80px;
  text-align: center;
}
.project-back-btn:hover .left-arrow {
  margin-left: -10px;
}
.project-back-btn {
  margin: 20px auto;
}
.project-back-btn .text {
  margin-left: 20px;
}
#project #project-description-container.content-container {
  padding-top: 65px;
  padding-bottom: 0px;
}
#project #project-description-container .right {
  float: right;
}
#project #project-description-container #project-info-right .divider-tight-margins {
  margin-top: 0px !important;
}
#project-details a {
  color: inherit;
}
#project #project-summary {
  padding-top: 10px;
  font-family: "National", Helvetica, Arial, sans-serif;
  font-weight: 500;
}
#projects .five-wide {
  padding: 2em;
}
#more-button > .right-arrow {
  transform: rotate(90deg);
}
#project-body p {
  margin-bottom: 20px;
}
.pullout-quote-image-attribution {
  max-width: 300px;
  max-height: 160px;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .pullout-quote-image-attribution {
    max-width: 200px;
    max-height: 100px;
  }
}
.pullout-quote {
  margin-bottom: 36px;
  letter-spacing: 0.015em;
  position: relative;
  text-align: center;
}
.pullout-quote-attribution.h6 {
  line-height: 16px;
}
.pullout-quote-attribution.marg-bottom {
  margin-bottom: 36px;
}
.pullout-quote-attribution {
  text-align: center;
}
.pullout-quote-attribution p {
  margin-bottom: 12px;
  padding: 0;
  font-weight: 600;
}
.pullout-quote-attribution a:hover {
  color: white;
}
.pullout-quote-attribution a:hover .right-arrow {
  left: 10px;
}
.pullout-quote-attribution a:hover .link-arrow-dynamic {
  stroke: white;
}
.pullout-quote a,
.pullout-quote-attribution a {
  color: inherit;
}
.pullout-quote a:hover,
.pullout-quote-attribution a:hover {
  text-decoration: none;
}
.divider-tight-margins {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}
.press-container {
  margin: 0 auto;
  position: relative;
  padding-top: 70px;
  padding-bottom: 100px;
}
.press-container a {
  color: inherit;
}
@media screen and (min-width: 948px) and (max-width: 1172px),screen and (min-width: 1172px) and (max-width: 1450px),screen and (min-width: 1450px) and (max-width: 1700px),screen and (min-width: 1700px) {
  #project-photo-container .col-12 + .col-6,
  #project-photo-container .col-12 + .col-6 + .col-6 {
    flex-grow: 1;
  }
  #project-photo-container .col-12 + .col-6 + .caption-col {
    margin-left: 0;
  }
  #project-photo-container .col-12 + .caption-col + .col-6 {
    margin-left: 0;
  }
  #project-photo-container div.col-12 + div.col-6:last-child {
    flex-grow: unset;
  }
  #project-photo-container div.col-12 + div.col-6:last-child .photo-caption {
    position: absolute;
    left: 100%;
    top: 0;
    width: 100%;
    padding-left: 20px;
    padding-top: 20px;
  }
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  #project-photo-container .photo-caption {
    position: relative;
    margin: 0 0 40px 0;
  }
}
.award-copy {
  width: 270px;
  max-width: 100%;
  margin: 0 auto;
  font-size: 27px;
  font-family: "National", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0;
  text-align: center;
}
#project-info-right p {
  line-height: 28px;
}
.work-callout-padding {
  padding-left: 40px;
  float: right;
}
.small-proj-thumb-title {
  position: absolute;
  top: 1.5em;
  left: 0em;
  padding: .1em .4em .1em 1.6em;
  text-shadow: 1px 1px 10px rgba(0,0,0,0.3);
}
.projects-text-block {
  padding-top: 34px;
  padding-right: 40px;
}
#projects img,
#project-related-projects img,
#home-featured img {
  width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
#projects .description,
#project-related-projects .description,
#home-featured .description {
  position: absolute;
  z-index: 2;
  padding: 2em;
}
#projects .std-block,
#project-related-projects .std-block,
#home-featured .std-block {
  position: relative;
  height: 305px;
}
#projects .std-block img,
#project-related-projects .std-block img,
#home-featured .std-block img {
  height: 305px;
}
#projects .std-block .image,
#project-related-projects .std-block .image,
#home-featured .std-block .image {
  position: absolute;
  z-index: 0;
  width: 100%;
}
#projects .std-block .hover-state,
#project-related-projects .std-block .hover-state {
  height: 100%;
  opacity: 0;
  transition: opacity 200ms;
}
#projects .std-block:hover .hover-state,
#project-related-projects .std-block:hover .hover-state {
  opacity: 1;
}
#projects .description .callout:hover .right-arrow,
#project .callout:hover .right-arrow {
  left: 10px;
}
#projects .large-block,
#home-featured .large-block {
  position: relative;
}
#projects .large-block img,
#home-featured .large-block img {
  height: 447px;
}
#projects .large-block .description.top-left {
  top: 0px;
  left: 0px;
}
#projects .large-block .description.bottom-left {
  bottom: 0px;
  left: 0px;
}
#projects .large-block .description.top-right {
  top: 0px;
  right: 0px;
}
#projects .large-block .description.bottom-right {
  bottom: 0px;
  right: 0px;
}
#projects .large-block .hover-state {
  position: absolute;
  z-index: 1;
  height: 100%;
  background: black;
  opacity: 0;
  transition: opacity 200ms;
}
#projects .large-block:hover .hover-state {
  opacity: 0.3;
}
#projects .callout,
#project-related-projects .callout,
#home-featured .callout {
  display: inline-block;
  padding: 2em 4em 0 0;
}
#projects .large-block .right-arrow img,
#home-featured .large-block .right-arrow img,
.right-arrow img,
.left-arrow img {
  height: 11px !important;
  width: 14.63px !important;
}
#filter-mobile {
  display: none;
  position: absolute;
  top: 20px;
  left: 30px;
  width: calc(100% - 60px);
}
#filter-mobile .left-arrow {
  position: relative;
  margin-right: 7px;
}
.filter-back {
  display: none;
}
.filter-column > span {
  display: inline-block;
  margin-bottom: 15px;
}
.filter-right {
  right: 0;
  position: absolute;
}
.filter-column > div {
  margin-bottom: 10px;
}
#filter-menu a:not(.btn) {
  margin-bottom: 5px;
  padding-bottom: 3px;
  line-height: 24px;
}
#filter-menu a:not(.btn).current {
  color: var(--primary);
  box-shadow: inset 0 -3px 0 var(--primary);
}
.divider-callout {
  width: 243px;
  height: 1px;
  border-top: 4px solid gray;
  margin-top: 22px;
  margin-bottom: 42px;
}
.project-grid {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 1fr 1fr;
  margin: 20px 0;
}
.clear-filters {
  color: var(--primary);
}
.bx-wrapper {
  position: relative;
  margin: 0 auto 60px;
  padding: 0;
  *zoom: 1;
}
.bx-wrapper img {
  max-width: 100%;
  display: block;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.bx-wrapper .bx-viewport {
  -webkit-transform: translatez(0);
  -moz-transform: translatez(0);
  -ms-transform: translatez(0);
  -o-transform: translatez(0);
  transform: translatez(0);
}
.bx-wrapper .bx-loading {
  min-height: 50px;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px;
}
.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  *zoom: 1;
  *display: inline;
}
.bx-wrapper .bx-pager.bx-default-pager a {
  background: #666;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #000;
}
.bx-wrapper .bx-prev {
  left: 10px;
}
.bx-wrapper .bx-next {
  right: 10px;
}
.bx-wrapper .bx-prev:hover {
  background-position: 0 0;
}
.bx-wrapper .bx-next:hover {
  background-position: -43px 0;
}
.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9999;
}
.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}
.bx-wrapper .bx-controls-auto {
  text-align: center;
}
.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url(images/controls.png) -86px -11px no-repeat;
  margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
  background-position: -86px 0;
}
.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
  background-position: -86px -33px;
}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666 \9;
  background: rgba(80,80,80,0.75);
  width: 100%;
}
.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px;
}
@keyframes pebble_undulations {
  0% {
    transform: scale(1.5) rotate(0) translateZ(0);
  }
  50% {
    transform: scale(1.47) rotate(3deg) translateZ(0);
  }
  100% {
    transform: scale(1.5) rotate(0) translateZ(0);
  }
}
.pebble-group {
  position: relative;
  z-index: -2;
  width: 100vw;
  display: flex;
  justify-content: center;
}
.pebble {
  transform: scale(1.5) translateZ(0);
  animation-name: pebble_undulations;
  animation-duration: 8s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
  backface-visibility: hidden;
  position: absolute;
  z-index: -1;
}
.pebble.pebble--white svg path {
  fill: white;
}
.pebble.pebble--primary svg path {
  fill: var(--primary);
}
.pebble.pebble--secondary svg path {
  fill: var(--secondary);
}
.pebble.pebble--accent svg path {
  fill: var(--accent);
}
.pebble:nth-child(1) {
  animation-delay: 0s;
}
.pebble:nth-child(2) {
  animation-delay: 0.7s;
}
.pebble:nth-child(3) {
  animation-delay: 1.2s;
}
.pebble:nth-child(4) {
  animation-delay: 1.5s;
}
.pebble:nth-child(5) {
  animation-delay: 2s;
}
.split-block {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  align-items: stretch;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .split-block {
    flex-direction: column-reverse;
  }
}
.split-block .split-block__content {
  width: 33%;
  flex-basis: 33%;
  flex-shrink: 0;
  flex-grow: 0;
  padding: 0 40px 0 0;
}
.page--projects .split-block .split-block__content {
  padding-top: 40px;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .page--projects .split-block .split-block__content {
    padding-top: 20px;
  }
}
@media screen and (min-width: 1700px) {
  .split-block .split-block__content {
    height: 670px;
  }
}
@media screen and (min-width: 1450px) and (max-width: 1700px) {
  .split-block .split-block__content {
    height: 540px;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px) {
  .split-block .split-block__content {
    height: 420px;
  }
}
@media screen and (min-width: 948px) and (max-width: 1172px) {
  .split-block .split-block__content {
    height: 420px;
  }
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .split-block .split-block__content {
    margin-right: 0;
    width: 100%;
    flex-basis: unset;
  }
}
.split-block .split-block__title {
  margin-bottom: 30px;
  color: var(--primary);
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .split-block .split-block__title {
    margin-bottom: 15px;
  }
}
.split-block .split-block__copy {
  margin-bottom: 33px;
  font-size: 24px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  color: var(--primary);
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .split-block .split-block__copy {
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 20px;
  }
}
.split-block .split-block__image {
  width: 100%;
  flex: 1;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .split-block .split-block__image {
    flex-basis: 300px;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px),screen and (min-width: 1450px) and (max-width: 1700px),screen and (min-width: 1700px) {
  .split-block.split-block--flip {
    flex-direction: row-reverse;
  }
  .split-block.split-block--flip .split-block__content {
    padding: 0 0 40px 0;
    margin-right: 0;
    margin-left: 50px;
  }
  .page--projects .split-block.split-block--flip .split-block__content {
    padding-top: 40px;
  }
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px) {
  .split-block.split-block--flip {
    flex-direction: column-reverse;
  }
  .split-block.split-block--flip .split-block__content {
    margin-left: 0;
  }
}
.hover-block {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  width: 100%;
  height: 330px;
  box-shadow: rgba(50,50,93,0.02) 0px 50px 100px -20px, rgba(0,0,0,0.02) 0px 30px 60px -30px;
  padding: 40px;
  background-color: #f3f3f3;
  cursor: pointer;
  background-size: cover;
  background-position: center center;
  position: relative;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .hover-block {
    display: none;
  }
}
@media screen and (min-width: 1172px) and (max-width: 1450px) {
  .hover-block {
    height: 280px;
  }
}
.hover-block .hover-block__overlay {
  background-color: var(--accent);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0;
  transition: 0.3s ease;
  transition-delay: 0s;
}
.hover-block .hover-block__title {
  margin-bottom: 30px;
  color: white;
  opacity: 0;
  transition: 0.1s ease;
  transition-delay: 0s;
  cursor: pointer;
  z-index: 2;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .hover-block .hover-block__title {
    margin-bottom: 15px;
  }
}
.hover-block .hover-block__copy {
  font-size: 24px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  color: white;
  opacity: 0;
  transition: 0.1s ease;
  transition-delay: 0s;
  cursor: pointer;
  z-index: 2;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .hover-block .hover-block__copy {
    font-size: 21px;
  }
}
@media screen and (min-width: 1700px) {
  .hover-block .hover-block__copy {
    padding-right: 40%;
  }
}
.hover-block:hover .hover-block__overlay {
  opacity: 1;
  transition: 0.2s ease;
  transition-delay: 0s;
}
.hover-block:hover .hover-block__title {
  opacity: 1;
  transition: 0.4s ease;
  transition-delay: 0s;
}
.hover-block:hover .hover-block__copy {
  opacity: 1;
  transition: all 0.6s ease;
  transition-delay: 0.1s;
}
.icon-block .icon-block__icon {
  width: 100px;
  height: 100px;
}
@media screen and (max-width: 756px) {
  .icon-block .icon-block__copy {
    width: 70%;
    max-width: 100%;
  }
}
.btn {
  display: inline-block;
  padding: 15px 40px 15px 40px;
  cursor: pointer;
  border-radius: 10px;
  font-size: 22px;
  font-weight: 400;
  line-height: 38px;
  letter-spacing: 0;
  transform: translateY(0);
  transition: all 0.3s ease;
  color: var(--accent);
  border: 2px solid var(--accent);
  font-family: "National", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: rgba(0,0,0,0);
}
@media screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .btn {
    padding: 10px 40px;
    font-size: 18px;
  }
}
@media screen and (max-width: 756px) {
  .btn {
    padding: 10px 18px;
    font-size: 18px;
  }
}
.btn svg > * {
  transition: stroke 0.3s ease;
  stroke: var(--accent);
}
.btn:hover {
  background-color: var(--accent);
  color: white;
}
.btn:hover .left-arrow {
  right: 10px;
}
.btn:hover .right-arrow {
  left: 10px;
}
.btn:hover svg > * {
  stroke: white;
}
.btn.btn--narrow {
  padding: 15px 40px;
}
@media screen and (max-width: 756px),screen and (min-width: 756px) and (max-width: 948px),screen and (min-width: 948px) and (max-width: 1172px) {
  .btn.btn--narrow {
    padding: 10px 40px;
    font-size: 18px;
  }
}
input[type=submit].btn,
button.btn {
  border: 2px solid var(--accent);
}
.left-arrow {
  position: relative;
  margin-right: 10px;
  transition: margin-right 500ms;
}
.right-arrow {
  position: relative;
  left: 0;
  margin-left: 9px;
  transition: left 500ms;
}
.left-arrow {
  right: 0;
  transition: right 500ms;
}
.right-arrow img,
.left-arrow img {
  object-fit: none !important;
  height: initial !important;
}
.slideshow-container {
  position: relative;
  cursor: pointer;
  max-height: 100vh;
  overflow: hidden;
}
.bx-wrapper {
  max-height: 100vh;
}
.slide {
  width: 100%;
  height: 100%;
  position: relative;
}
.slide-image {
  width: 100%;
  height: 100%;
}
.slide-image.wh {
  height: 100% !important;
}
.slide-image.ww {
  width: 100% !important;
}
.results-set {
  text-align: center;
}
