html, body {
  margin: 0;
  padding: 0;
  font-family: sans-serif;
  color: red; }

ol, ul, li {
  margin: 0;
  padding: 0;
  list-style-type: none; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
  margin: 0; }

p {
  max-width: 1000px; }

body {
  color: white;
  position: relative; }
  body.no-scroll {
    overflow: hidden; }

* {
  box-sizing: border-box; }

.bg-color--brown {
  background-color: #413239; }

.color--brown {
  color: #413239; }

.bg-color--white {
  background-color: #F4F2F1; }

.color--white {
  color: #F4F2F1; }

.bg-color--yellow {
  background-color: #F0C000; }

.color--yellow {
  color: #F0C000; }

.bg-color--teal {
  background-color: #C3F1FC; }

.color--teal {
  color: #C3F1FC; }

.bg-color--blue {
  background-color: #4171BA; }

.color--blue {
  color: #4171BA; }

.bg-color--green {
  background-color: #00948E; }

.color--green {
  color: #00948E; }

.bg-color--charcoal {
  background-color: #333333; }

.color--charcoal {
  color: #333333; }

.bg-color--transparent {
  background-color: transparent; }

.bg-white {
  background-color: #fff; }

.tungsten, .heading1, .node-title, #VizExplainer .heading, .node-subtitle, .node-intro .heading--aside, .slide .title, #header nav, #header ul li, #Circle.expanded .explainer .explainer-heading, #Circle.expanded .stats .label, #Circle .stat .value, .loader .loader--text, #ViewToggle, .controls, #mobileTop nav ul li a, .theme-nav, .nav-wrap__list-item > a, .theme-description__name, .article-module .article-title, .challenge__name, .article-module-title, .progress-post-inner .author, .process-slide-content-counter, .menu .menu-item, .menu .menu-item .title, .intro-menu-item .title, .section .hero__wrapper h1, .fourofour {
  font-family: "Tungsten Rounded A", "Tungsten Rounded B", 'Tungsten Rounded', sans-serif;
  font-style: normal;
  font-weight: 500; }

.brandon, .brandon--italic, .brandon--bold, .heading-aside, .node-badge, .progress-label, .progress-breadcrumb, .partner__type, .article-module .article-type, .nodetree > h2, .button, .link-button, .node-intro .cta, .article-module .article-read, .node-cta .cta, .submit-cta .cta, .form button,
.form input[type="submit"], .form-button, #Circle .stat .label, #Circle .explainer .explainer-heading, #goBack, .graph-tooltip .theme, .nav-wrap--accordion .nav-wrap__list-item > h3, .related-articles__header, .challenge__tag, .nodetree .heading--level1, .modal__inner .read-more-link, .brandon--bold--italic, .progress-pullquote, .body, #Circle .influences, #mobileTop .challenge-link, .node-intro .description, #formContainer .message, .viz-explainer, #Circle .explainer, .loader, .graph-nav-info, .graph-tooltip, .nav-wrap--theme .helper-txt, .nav-wrap--accordion, .theme-description, .article-module-body, .article-module .article-description, .progress-post-inner .affiliation, .progress-types, .partners, .partners .partner, .partner-index, .nodetree .heading--level2, .menu .menu-item .description, .menu-more, .intro-menu-item .description, .form, .search-nav__wrapper input, .section .hero__wrapper .body--challenges, .modal__inner {
  font-family: "brandon-grotesque", "brandon grotesque", Myriad, sans-serif; }
  @media (min-width: 1600px) {
    .brandon, .brandon--italic, .brandon--bold, .heading-aside, .node-badge, .progress-label, .progress-breadcrumb, .partner__type, .article-module .article-type, .nodetree > h2, .button, .link-button, .node-intro .cta, .article-module .article-read, .node-cta .cta, .submit-cta .cta, .form button,
    .form input[type="submit"], .form-button, #Circle .stat .label, #Circle .explainer .explainer-heading, #goBack, .graph-tooltip .theme, .nav-wrap--accordion .nav-wrap__list-item > h3, .related-articles__header, .challenge__tag, .nodetree .heading--level1, .modal__inner .read-more-link, .brandon--bold--italic, .progress-pullquote, .body, #Circle .influences, #mobileTop .challenge-link, .node-intro .description, #formContainer .message, .viz-explainer, #Circle .explainer, .loader, .graph-nav-info, .graph-tooltip, .nav-wrap--theme .helper-txt, .nav-wrap--accordion, .theme-description, .article-module-body, .article-module .article-description, .progress-post-inner .affiliation, .progress-types, .partners, .partners .partner, .partner-index, .nodetree .heading--level2, .menu .menu-item .description, .menu-more, .intro-menu-item .description, .form, .search-nav__wrapper input, .section .hero__wrapper .body--challenges, .modal__inner {
      font-size: 1.1rem; } }

.brandon--italic {
  font-style: italic; }

.brandon--bold, .heading-aside, .node-badge, .progress-label, .progress-breadcrumb, .partner__type, .article-module .article-type, .nodetree > h2, .button, .link-button, .node-intro .cta, .article-module .article-read, .node-cta .cta, .submit-cta .cta, .form button,
.form input[type="submit"], .form-button, #Circle .stat .label, #Circle .explainer .explainer-heading, #goBack, .graph-tooltip .theme, .nav-wrap--accordion .nav-wrap__list-item > h3, .related-articles__header, .challenge__tag, .nodetree .heading--level1, .modal__inner .read-more-link {
  font-weight: 700; }

.brandon--bold--italic, .progress-pullquote {
  font-weight: 700;
  font-style: italic; }

.large {
  font-size: 1.625em;
  font-weight: bold; }

.bold, .theme-description__type {
  font-weight: bold; }

/*	Node Pages */
.heading-aside, .node-badge, .progress-label, .progress-breadcrumb, .partner__type, .article-module .article-type, .nodetree > h2 {
  font-size: 0.875em;
  text-transform: uppercase;
  line-height: 1.3; }

.heading1, .node-title, #VizExplainer .heading, .node-subtitle, .node-intro .heading--aside, .slide .title {
  font-size: 3.4375em;
  line-height: 1;
  text-transform: uppercase; }
  @media (max-width: 600px) {
    .heading1, .node-title, #VizExplainer .heading, .node-subtitle, .node-intro .heading--aside, .slide .title {
      font-size: 2.8125em; } }

.subheading {
  font-size: 0.75rem;
  line-height: 1.5rem;
  text-transform: uppercase; }

.sentence-case::first-letter {
  text-transform: uppercase; }

.lowercase {
  text-transform: lowercase; }

.body, #Circle .influences, #mobileTop .challenge-link, .node-intro .description, #formContainer .message {
  font-size: 1.5625em;
  line-height: 1.3; }

.body--challenges {
  font-size: 1.125em; }
  .body--challenges a {
    color: inherit; }

.button, .link-button, .node-intro .cta, .article-module .article-read, .node-cta .cta, .submit-cta .cta, .form button,
.form input[type="submit"], .form-button {
  font-size: 0.75em;
  text-transform: uppercase;
  color: inherit; }

.button--lg {
  font-size: 1em; }

.link-button, .node-intro .cta, .article-module .article-read, .node-cta .cta, .submit-cta .cta, .form button,
.form input[type="submit"], .form-button {
  display: inline-flex;
  align-items: center;
  padding: .25em .8em;
  line-height: 2.5;
  border: 1px solid;
  transition-duration: .25s;
  transition-property: background-color, color, border-color;
  cursor: pointer; }

.link-button, .node-intro .cta, .article-module .article-read, .node-cta .cta, .submit-cta .cta, .form button,
.form input[type="submit"] {
  text-decoration: none; }

.link--inline {
  color: inherit;
  text-decoration: none; }
  .link--inline:hover {
    cursor: pointer;
    text-decoration: underline; }

.form-button {
  background-color: #4171BA;
  color: #F4F2F1;
  border: 1px solid #4171BA; }

.button--yellow {
  align-items: center;
  background-color: #F0C000;
  border: none;
  color: #413239;
  display: flex;
  padding: 10px;
  transition: background 0.5s; }
  .button--yellow:hover {
    cursor: pointer;
    background-color: #333333; }
    .button--yellow:hover span {
      color: #F0C000; }
    .button--yellow:hover svg * {
      stroke: #F0C000; }
  .button--yellow span {
    display: block;
    padding-left: 10px;
    transition: color 0.5s; }
  .button--yellow path {
    stroke: #333333;
    transition: stroke 0.5s; }

.button--blue {
  align-items: center;
  background-color: #4171BA;
  border: none;
  color: #fff;
  display: flex;
  padding: 10px;
  transition: background 0.5s; }
  .button--blue:hover {
    cursor: pointer;
    background-color: #fff; }
    .button--blue:hover span {
      color: #4171BA; }
    .button--blue:hover svg * {
      stroke: #4171BA; }
  .button--blue span {
    display: block;
    padding-left: 10px;
    transition: color 0.5s; }
  .button--blue path {
    stroke: #fff;
    transition: stroke 0.5s; }

.button--reset {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  outline: none; }
  .button--reset:focus {
    outline: none; }
  .button--reset:hover {
    cursor: pointer; }

.icon--yellow .st0 {
  stroke: #F0C000; }

.icon--arrow-down {
  bottom: 0;
  left: 0;
  margin: auto;
  right: 0;
  transform: rotate(90deg);
  height: 60px;
  opacity: 1;
  position: absolute;
  transition: opacity 0.4s;
  width: 30px; }
  .icon--arrow-down:hover {
    opacity: 0.6; }
  .icon--arrow-down svg {
    height: 100%;
    width: 70%; }
  .icon--arrow-down path {
    stroke-width: 5%; }
  .icon--arrow-down.fixed-bottom {
    bottom: 0;
    left: 0;
    margin: auto;
    right: 30%;
    position: fixed;
    z-index: 9; }
    @media (max-width: 1000px) {
      .icon--arrow-down.fixed-bottom {
        right: 40%; } }
    @media (max-width: 600px) {
      .icon--arrow-down.fixed-bottom {
        right: 0; } }
    @media (max-width: 600px) {
      .icon--arrow-down.fixed-bottom {
        bottom: -10px; } }

.icon--arrow-up {
  top: 0;
  left: 0;
  margin: auto;
  right: 0;
  transform: rotate(-90deg);
  height: 60px;
  position: absolute;
  width: 30px; }
  .icon--arrow-up svg {
    height: 100%;
    width: 70%; }
  .icon--arrow-up path {
    stroke-width: 5%; }
  .icon--arrow-up.fixed-top {
    top: 0;
    left: 0;
    margin: auto;
    right: 30%;
    position: fixed;
    z-index: 9; }
    @media (max-width: 1000px) {
      .icon--arrow-up.fixed-top {
        right: 40%; } }
    @media (max-width: 600px) {
      .icon--arrow-up.fixed-top {
        right: 0; } }
    @media (max-width: 600px) {
      .icon--arrow-up.fixed-top {
        top: -10px; } }

.list--bullet li {
  list-style-type: disc;
  margin-left: 20px; }

.js-fade-in {
  opacity: 0;
  transition: opacity 0.5s; }

.is-mobile-safari {
  top: 0 !important; }
  @media (max-width: 1000px) {
    .is-mobile-safari article.challenges {
      padding-top: 22px; } }
  .is-mobile-safari .challenges .section {
    min-height: calc(100vh - 44px); }
  .is-mobile-safari #fullpage--home {
    height: calc(100vh - 44px); }
  .is-mobile-safari .nav-wrap--collapsed .icon--theme {
    margin: 10px auto 0; }

.hidden--mobile-s {
  display: flex !important; }
  @media (max-width: 600px) {
    .hidden--mobile-s {
      display: none !important; } }

.hidden--mobile {
  display: flex !important; }
  @media (max-width: 1000px) {
    .hidden--mobile {
      display: none !important; } }

.hidden--desktop {
  display: none !important; }
  @media (max-width: 1000px) {
    .hidden--desktop {
      display: flex !important; } }

.visible--mobile-s {
  display: none !important; }
  @media (max-width: 600px) {
    .visible--mobile-s {
      display: flex !important; } }

.is-hidden {
  opacity: 0;
  visibility: hidden; }

.section--grid {
  flex-wrap: wrap; }

.section--75 {
  width: 75%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--75 {
      width: 100%;
      height: auto; } }

.section--80 {
  width: 80%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--80 {
      width: 100%;
      height: auto; } }

.section--70 {
  width: 70%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--70 {
      width: 100%;
      height: auto; } }

.section--60 {
  width: 60%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--60 {
      width: 100%;
      height: auto; } }

.section--50 {
  width: 50%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--50 {
      width: 100%;
      height: auto; } }

.section--40 {
  width: 40%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--40 {
      width: 100%;
      height: auto; } }

.section--30 {
  width: 30%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--30 {
      width: 100%;
      height: auto; } }

.section--25 {
  width: 25%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--25 {
      width: 100%;
      height: auto; } }

.section--20 {
  width: 20%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--20 {
      width: 100%;
      height: auto; } }

.section--wide {
  flex-direction: row; }
  @media (max-width: 1000px) {
    .section--wide {
      flex-direction: column; } }

.section--full {
  width: 100%;
  height: auto; }
  @media (max-width: 1000px) {
    .section--full {
      width: 100%;
      height: auto; } }

.section--white {
  background-color: #fff; }

.svg--white-fill svg * {
  fill: #fff; }

.svg--white-stroke svg * {
  stroke: #fff; }

.svg--white-fill--circle svg circle {
  fill: #fff; }

/*! Flickity v2.0.9
http://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: white;
  background: rgba(255, 255, 255, 0.75);
  cursor: pointer;
  /* vertically center */
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.flickity-prev-next-button:hover {
  background: white; }

.flickity-prev-next-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #09F; }

.flickity-prev-next-button:active {
  opacity: 0.6; }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button:disabled {
  opacity: 0.3;
  cursor: auto; }

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

.flickity-prev-next-button .arrow {
  fill: #333; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

.accordion-trigger .arrow {
  transition: transform .5s; }

.accordion-trigger.accordion-open .arrow {
  transform: rotate(180deg); }

.accordion-trigger.accordion-open + .arrow {
  transform: rotate(180deg); }

.accordion-content {
  transition: opacity .5s, max-height .5s;
  max-height: 0;
  opacity: 0;
  overflow: hidden; }
  .accordion-content.accordion-open {
    max-height: 1000px;
    opacity: 1; }

.fp-tableCell {
  position: relative; }

#container {
  width: 100%; }

.fade-in {
  transition: opacity 0.5s;
  opacity: 0; }
  .fade-in.is-in {
    opacity: 1; }

body.fade-in {
  background-color: #333333; }

.js-load-in > * {
  opacity: 1;
  transition: opacity 0.5s; }

.js-load-in.is-animating > * {
  opacity: 0; }

.slide-in--left {
  transition: transform 0.5s ease-in-out 0.3s;
  transform: translateX(-100%); }
  .slide-in--left.is-in {
    transform: translateX(0); }

.grow-in {
  transition: transform 0.5s;
  transform: scaleX(0); }
  .grow-in.is-in {
    transform: scaleX(1); }
  .grow-in--left {
    transform-origin: left; }
  .grow-in--right {
    transform-origin: right; }

.page-swipe {
  backface-visibility: hidden;
  background-color: #333333;
  height: 100%;
  position: fixed;
  top: 0;
  transform: scale(0, 1);
  width: 100%;
  z-index: 999; }

.introSlider {
  background-color: #333333;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  pointer-events: none;
  transform-origin: left;
  z-index: 9; }
  .introSlider.is-complete {
    display: none; }
  .introSlider.is-halfway {
    background-color: transparent; }

.introSlider__slide {
  backface-visibility: hidden;
  display: flex;
  flex-direction: column;
  height: 33.33%;
  position: fixed;
  transform: scale(0, 1);
  width: 100%; }
  .introSlider__slide.first {
    background-color: #F0C000;
    top: 0; }
  .introSlider__slide.second {
    background-color: #4171BA;
    top: 33.33%; }
  .introSlider__slide.third {
    background-color: #faeaaa;
    bottom: 0; }

#content.is-animating {
  display: flex;
  width: 200vw; }
  #content.is-animating .challenges, #content.is-animating #new-content, #content.is-animating #fullpage--home {
    width: 100vw; }

/**
 * Fix for vw, vh, vmin, vmax on iOS 7.
 * http://caniuse.com/#feat=viewport-units
 *
 * This fix works by replacing viewport units with px values on known screen sizes.
 *
 * iPhone 6 and 6 Plus cannot run iOS 7, so are not targeted by this fix.
 * Target devices running iOS 8+ will incidentally execute the media query,
 * but this will still produce the expected result; so this is not a problem.
 *
 * As an example, replace:
 *
 *   height: 50vh;
 *   font-size: 5vmin;
 *
 * with:
 *
 *   @include viewport-unit(height, 50vh);
 *   @include viewport-unit(font-size, 5vmin);
 */
.heading--aside {
  padding-bottom: 5px; }

html, body {
  /* Allows content to fill the viewport and go beyond the bottom */
  /* Allows you to scroll below the viewport; default value is visible */
  /* To smooth any scrolling behavior */
  -webkit-overflow-scrolling: touch; }

.elements li {
  padding: .25em 1em; }

.elements ul {
  margin: 1em 1em 2em; }

#header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999; }
  body.challenges-mobile #header {
    background-color: #20191c; }
  body.home #header {
    background-color: transparent; }
  body.progress #header {
    background-color: #4171BA; }
  @media (min-width: 1600px) {
    #header {
      font-size: 135%; } }
  #header nav {
    background-color: #4171BA;
    display: flex;
    padding: 10px 15px;
    height: 45px;
    font-size: 1.4375em; }
    @media (min-width: 1600px) {
      #header nav {
        height: 60px; } }
    @media (max-width: 600px) {
      #header nav {
        padding-left: 1rem;
        padding-right: 1rem; } }
  #header .site-name {
    font-size: 0.8125em;
    text-transform: uppercase; }
  #header .beta {
    font-size: 0.5em;
    margin-top: -3px;
    padding-left: 2px;
    text-transform: uppercase; }
  #header ul {
    display: flex; }
    #header ul.right {
      margin-left: auto; }
      #header ul.right li + li {
        margin-left: 20px; }
    #header ul li {
      align-items: center;
      display: flex;
      justify-content: center; }
      #header ul li + li {
        margin-left: 10px; }
      #header ul li:first-child {
        margin-left: 0; }
      #header ul li a {
        color: white;
        display: flex;
        line-height: 15px;
        text-decoration: none; }
    @media (max-width: 350px) {
      #header ul li + li {
        margin-left: 10px; } }
  #header button {
    position: relative; }
    @media (min-width: 1600px) {
      #header button svg {
        width: 20px;
        height: 20px; } }
  #header svg {
    display: block;
    overflow: visible; }
    @media (min-width: 1600px) {
      #header svg {
        height: 20px;
        width: auto; } }

.nav-pad {
  padding-top: 45px; }
  @media (min-width: 1600px) {
    .nav-pad {
      padding-top: 60px; } }

.icon-button, #header button, #menu .close, #fullpage--home .scroll-down-link, #goBack, .section .hero__wrapper button {
  background-color: transparent;
  border-radius: 0;
  border: 0;
  font-size: 100%;
  display: block;
  padding: 0;
  cursor: pointer;
  outline: 0; }

#menu {
  display: block;
  height: 100%;
  right: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transform: translateX(100%);
  transition: 0.5s ease-in-out;
  width: 100%;
  z-index: 1000; }
  @media (min-width: 600px) {
    #menu {
      width: 50%; } }
  @media (min-width: 1200px) {
    #menu {
      width: 30%; } }
  #menu.open {
    pointer-events: auto;
    transform: translateX(0); }
  #menu .close {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 1; }

.scroll-section {
  max-height: 100vh;
  overflow: hidden; }
  @media (min-width: 1000px) {
    .scroll-section.enable-scroll {
      max-height: 100%;
      overflow: auto; } }

.intro-slides {
  background-color: #333333;
  height: 100%;
  position: relative;
  z-index: 1; }

.intro-slide {
  color: white;
  display: flex;
  flex-direction: column;
  padding: 3vw;
  padding-left: 0;
  height: 100vh; }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait) {
    .intro-slide {
      height: 1024px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape) {
    .intro-slide {
      height: 768px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: portrait) {
    .intro-slide {
      height: 480px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: landscape) {
    .intro-slide {
      height: 320px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: portrait) {
    .intro-slide {
      height: 568px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: landscape) {
    .intro-slide {
      height: 320px; } }
  @media (max-width: 1000px) {
    .intro-slide:first-child .intro-slide__pagination {
      width: calc(20% - 15px); } }
  .intro-slide:last-child .intro-slide__content-wrap {
    padding-bottom: 0; }

.intro-slides__wrapper {
  background-color: #333333;
  min-height: 100%; }
  @media (max-width: 600px) {
    .intro-slides__wrapper {
      background-color: #2b292b; } }

.intro-slide__animation-ph {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 33.33%;
  justify-content: flex-end;
  padding-bottom: 20px; }
  @media (min-width: 1200px) {
    .intro-slide__animation-ph {
      height: 70%; } }
  @media (max-width: 600px) {
    .intro-slide__animation-ph {
      padding-left: 3vw; } }

.intro-slide__animation {
  height: 50%;
  left: 0;
  position: absolute;
  right: 30%;
  top: 45px;
  width: 100%; }
  @media (max-width: 600px) {
    .intro-slide__animation {
      top: 10px; } }
  @media (min-width: 1300px) and (max-height: 700px) {
    .intro-slide__animation {
      height: calc(60% - 50px); } }
  @media (min-width: 1300px) and (min-height: 700px) {
    .intro-slide__animation {
      height: 60%; } }
  @media (min-width: 1500px) {
    .intro-slide__animation {
      height: calc(66% - 50px); } }
  @media (min-width: 1600px) {
    .intro-slide__animation {
      height: calc(70% - 50px); } }
  .intro-slide__animation #why-svg {
    height: auto;
    width: 66%;
    opacity: 0; }
    @media (max-width: 1000px) {
      .intro-slide__animation #why-svg {
        width: 95%; } }
  .intro-slide__animation #starfish {
    height: auto;
    width: 66%;
    opacity: 0; }
    @media (max-width: 1000px) {
      .intro-slide__animation #starfish {
        width: 95%; } }
  .intro-slide__animation .flex-end {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center; }
    .intro-slide__animation .flex-end svg {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      right: 0;
      margin: 0 auto; }
    .intro-slide__animation .flex-end.active--1 #why-svg {
      opacity: 0; }
    .intro-slide__animation .flex-end.active--1 #starfish {
      opacity: 1; }
    .intro-slide__animation .flex-end.active--2 #why-svg {
      opacity: 1; }
    .intro-slide__animation .flex-end.active--2 #starfish {
      opacity: 0; }
  .intro-slide__animation .intro-node-svg {
    bottom: 0;
    left: 0;
    overflow: visible;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0; }
    @media (max-width: 600px) {
      .intro-slide__animation .intro-node-svg {
        top: 50px; } }
    @media (min-width: 1300px) {
      .intro-slide__animation .intro-node-svg {
        margin: 0 2rem; } }
  .intro-slide__animation.is-fixed {
    position: fixed;
    width: auto; }
  .intro-slide__animation .centered-container {
    max-height: 100%;
    max-width: 100%; }
  @media (max-width: 1000px) {
    .intro-slide__animation {
      right: 40%; } }
  @media (max-width: 600px) {
    .intro-slide__animation {
      right: 0; } }

.intro-slide__content {
  bottom: -1em;
  display: flex;
  flex-direction: row;
  left: 0;
  min-height: 200px;
  opacity: 0;
  padding-left: 3vw;
  position: fixed;
  right: 30%;
  transition: all 0.6s;
  width: auto; }
  @media (max-width: 1000px) {
    .intro-slide__content {
      flex-direction: column;
      max-height: 300px;
      padding: 0 2vw;
      right: 40%; } }
  @media (max-width: 600px) {
    .intro-slide__content {
      max-height: none;
      min-height: 100px;
      padding: 0 4vw;
      right: 0; } }

.in-view .intro-slide__content {
  opacity: 1;
  bottom: 0; }
  @media (max-width: 1000px) {
    .in-view .intro-slide__content {
      bottom: 40px; } }
  @media (max-width: 600px) {
    .in-view .intro-slide__content {
      bottom: 20px; } }

.intro-slide__pagination {
  border-right: 1px solid white;
  color: #F0C000;
  font-size: 7rem;
  font-weight: 100;
  margin: 1.5rem 0;
  padding-right: 20px; }
  .intro-slide__pagination span {
    display: block;
    line-height: 5.25rem; }
  @media (max-width: 1000px) {
    .intro-slide__pagination {
      border: none;
      font-size: 4.5em;
      margin: 1rem 0;
      width: calc(20% - 12px);
      padding: 0; }
      .intro-slide__pagination span {
        line-height: 3.5rem; } }
  @media (max-width: 600px) {
    .intro-slide__pagination {
      border-right: 1px solid white;
      margin: 0.5rem 0;
      font-size: 5em; }
      .intro-slide__pagination span {
        line-height: 3rem;
        margin-top: -1px; } }
  @media (min-width: 1600px) {
    .intro-slide__pagination {
      font-size: 8rem; }
      .intro-slide__pagination span {
        line-height: 6.25rem; } }

.intro-slide__content-wrap {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  padding: 20px 20px 30px;
  width: 100%; }
  @media (max-width: 1000px) {
    .intro-slide__content-wrap {
      padding: 0 0 40px; } }
  @media (max-width: 600px) {
    .intro-slide__content-wrap {
      padding: 0; } }

.intro-slide__heading {
  height: auto;
  text-transform: uppercase; }
  .intro-slide__heading h2 {
    font-size: 3rem;
    font-weight: 100;
    line-height: 3rem;
    margin-right: 1rem;
    max-width: 250px; }
  @media (max-width: 1600px) {
    .intro-slide__heading h2 {
      font-size: 2.5rem;
      line-height: 2.5rem; } }
  @media (max-width: 1000px) {
    .intro-slide__heading {
      left: 5.5rem;
      line-height: 3.5rem;
      position: absolute;
      top: 0.75rem; }
      .intro-slide__heading h2 {
        font-size: 2rem;
        line-height: 2rem;
        max-width: 180px; } }
  @media (max-width: 600px) {
    .intro-slide__heading {
      top: 0.25rem; }
      .intro-slide__heading h2 {
        font-size: 1.75rem;
        line-height: 1.75rem;
        max-width: 150px; } }
  @media (min-width: 1600px) {
    .intro-slide__heading h2 {
      font-size: 3.5rem;
      line-height: 3.5rem;
      max-width: 300px; } }

.intro-slide__copy {
  display: flex; }
  .intro-slide__copy p {
    font-size: 1rem;
    font-weight: 100;
    width: 50%; }
    .intro-slide__copy p:first-child {
      margin-right: 2rem; }
    .intro-slide__copy p:nth-child(3) {
      margin-left: 2rem; }
  @media (max-width: 600px) {
    .intro-slide__copy p:first-child {
      margin-top: 0.5em; } }
  @media (max-width: 1000px) {
    .intro-slide__copy {
      display: block; }
      .intro-slide__copy p {
        margin-right: 0;
        width: auto; }
        .intro-slide__copy p:nth-child(3) {
          margin-left: 0; } }
  @media (max-width: 1200px) {
    .intro-slide__copy p {
      font-size: 0.9rem; } }
  @media (min-width: 1600px) {
    .intro-slide__copy p {
      font-size: 1.2rem; } }

.intro-side__image {
  display: block;
  width: 100%; }
  @media (min-width: 600px) {
    .intro-side__image {
      display: none; } }

.node-circle {
  fill: #F0C000; }

#fullpage--home .section--30 {
  height: 30%;
  transition: height 0.4s; }
  @media (max-width: 1000px) {
    #fullpage--home .section--30 {
      width: 40%; } }
  @media (max-width: 600px) {
    #fullpage--home .section--30 {
      width: 100%; } }
  #fullpage--home .section--30 .intro-menu {
    transform: translateY(0);
    transition: transform 0.6s; }
  @media (max-width: 600px) {
    #fullpage--home .section--30.hide-me {
      height: 0 !important; }
      #fullpage--home .section--30.hide-me .intro-menu {
        transform: translateY(100%); } }
  @media (max-width: 600px) {
    #fullpage--home .section--30.stretch-me {
      height: 93% !important; } }

#fullpage--home .section--70 {
  height: 70%;
  transition: height 0.4s; }
  @media (max-width: 1000px) {
    #fullpage--home .section--70 {
      width: 60%; } }
  @media (max-width: 600px) {
    #fullpage--home .section--70 {
      width: 100%; } }
  @media (max-width: 600px) {
    #fullpage--home .section--70.stretch-me {
      height: 100% !important; } }
  @media (max-width: 600px) {
    #fullpage--home .section--70.hide-me {
      height: 0 !important; } }

#fullpage--home .section--70::-webkit-scrollbar {
  display: none; }

#fullpage--home .scroll-down-link {
  bottom: 50px;
  color: #F0C000;
  left: 50%;
  font-size: 0.75rem;
  justify-content: center;
  margin: auto;
  min-width: 250px;
  position: absolute;
  transform: translateX(-50%); }
  @media (max-width: 1000px) {
    #fullpage--home .scroll-down-link {
      right: 40%; } }
  @media (max-width: 600px) {
    #fullpage--home .scroll-down-link {
      bottom: 10px;
      right: 0; } }

#fullpage--home .scroll-down-link--mobile {
  background: #F4F2F1;
  bottom: 0;
  height: 80px;
  position: absolute;
  right: 0;
  width: 100%;
  z-index: 2; }
  #fullpage--home .scroll-down-link--mobile button {
    align-items: center;
    display: flex;
    flex-direction: row;
    height: 100%;
    margin: 0;
    padding: 0 20px;
    transition: transform 0.15s;
    width: 100%; }
  #fullpage--home .scroll-down-link--mobile .icon--main {
    max-height: 50px;
    width: 60px; }
    #fullpage--home .scroll-down-link--mobile .icon--main svg {
      height: auto;
      width: 100%; }
      #fullpage--home .scroll-down-link--mobile .icon--main svg * {
        stroke: #333333;
        fill: #333333; }
  #fullpage--home .scroll-down-link--mobile .icon--arrow {
    height: 60px;
    transform: rotate(90deg);
    width: 30px;
    position: absolute;
    right: 25px; }
    #fullpage--home .scroll-down-link--mobile .icon--arrow svg {
      height: 100%;
      width: 70%; }
    #fullpage--home .scroll-down-link--mobile .icon--arrow path {
      stroke-width: 5%; }
  #fullpage--home .scroll-down-link--mobile h2.title {
    text-transform: uppercase; }

@media (max-width: 600px) {
  .is-mobile-safari #fullpage--home .scroll-down-link--mobile {
    height: 70px; } }

#Viz {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #413239;
  display: flex; }
  #Viz .controls {
    background-color: white;
    position: absolute;
    bottom: 0;
    left: 0; }
  #Viz .viz-inner {
    display: flex;
    flex-direction: column;
    width: 100%; }
  #Viz .loader {
    background-color: #413239; }
    #Viz .loader .loader--icon {
      width: 100px;
      height: 100px; }
    #Viz .loader svg {
      width: 100%;
      height: 100%; }
      #Viz .loader svg g {
        fill: #F0C000; }

#VizExplainer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 36px calc(36px - 10px); }
  body.content-open #VizExplainer {
    display: none; }
  #VizExplainer .heading {
    margin-bottom: 18px;
    padding: 0 10px; }

.viz-explainer {
  font-size: 1.0625em;
  margin-bottom: 0;
  margin-top: 0;
  padding-left: 40px; }

/*
body[data-view="challenges"] .viz-explainer[data-view="challenges"] {
	display: block;
}

body[data-view="themes"] .viz-explainer[data-view="themes"] {
	display: block;
}

body[data-view="catalysts"] .viz-explainer[data-view="catalysts"] {
	display: block;
}
*/
.bg-dk, #goBack:hover {
  background-color: rgba(0, 0, 0, 0.15); }

#Circle .inner {
  position: relative;
  display: none;
  align-items: center;
  background-color: #2e262a;
  position: fixed;
  bottom: 0;
  z-index: 1;
  cursor: zoom-in;
  height: auto; }
  #Circle .inner .x {
    display: none;
    position: absolute;
    top: calc( 45px + 1em);
    right: 1em;
    width: 1em;
    height: 1em; }
  #Circle .inner:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-left: 2.5em solid transparent;
    border-right: 2.5em solid transparent;
    border-bottom: 2.5em solid #2e262a;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -100%); }

#Circle .inner-pad {
  padding: 18px 36px 18px; }

#Circle .incoming .influences-toggle .toggle-inner:after {
  content: 'More Incoming'; }

#Circle .incoming .influences-toggle.open .toggle-inner:after {
  content: 'Less Incoming'; }

#Circle .outgoing .influences-toggle .toggle-inner:after {
  content: 'More Outgoing'; }

#Circle .outgoing .influences-toggle.open .toggle-inner:after {
  content: 'Less Incoming'; }

#Circle .influences-toggle {
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: #F0C000;
  font-size: 100%;
  text-transform: uppercase;
  cursor: pointer;
  margin-top: 1em;
  outline: 0; }

#Circle .influences {
  display: none;
  font-size: 15px;
  padding-left: calc( 50px + 18px);
  margin-top: 18px;
  position: relative; }
  #Circle .influences .remaining-influences {
    display: none; }
  #Circle .influences ul + ul, #Circle .influences li + li {
    margin-top: 18px; }
  #Circle .influences li {
    position: relative; }
    #Circle .influences li:before {
      width: 1em;
      height: 1em;
      border-radius: 50%;
      background-color: #F0C000;
      content: '';
      display: inline-block;
      position: absolute;
      left: -2em;
      margin-right: .25em;
      top: 50%;
      transform: translateY(-50%); }
  #Circle .influences a {
    color: inherit;
    opacity: .5;
    display: block; }
    #Circle .influences a:first-letter {
      text-transform: uppercase; }

#Circle.open .inner {
  display: block; }

#Circle.open .inner-pad {
  display: flex; }

#Circle.expanded .x {
  display: block; }

#Circle.expanded .explainer .explainer-heading {
  font-size: 2.1875em; }

#Circle.expanded .explainer .explainer-body.extended {
  display: block; }

#Circle.expanded .influences {
  display: block; }

#Circle.expanded .inner {
  cursor: zoom-out;
  overflow: auto; }

#Circle.expanded .inner-pad {
  padding-top: calc( 45px + 18px);
  padding-bottom: calc( 45px + 18px); }

#Circle.expanded .inner-pad, #Circle.expanded .stats {
  flex-direction: column;
  align-items: flex-start; }

#Circle.expanded .stats {
  order: 2;
  margin-top: 36px;
  display: block; }
  #Circle.expanded .stats .stat {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    text-align: left; }
    #Circle.expanded .stats .stat + .stat {
      margin-top: 18px; }
  #Circle.expanded .stats .value {
    margin: 0; }
  #Circle.expanded .stats .label {
    margin-top: 0;
    margin-left: 18px;
    font-size: 2.1875em; }

#Circle.expanded .explainer {
  order: 1; }

#Circle .stats {
  display: flex; }

#Circle .stat {
  text-align: center;
  padding: 0 18px; }
  #Circle .stat .value {
    background-color: #F0C000;
    color: #413239;
    font-size: 45px;
    border-radius: 50%;
    margin: 0 auto;
    line-height: 1.1;
    text-align: center;
    width: 50px;
    height: 50px; }
  #Circle .stat .label {
    font-size: 9px;
    text-transform: uppercase;
    margin-top: 1em; }
  #Circle .stat.incoming .value, #Circle .stat.incoming .influences li:before {
    opacity: .5; }

#Circle .explainer {
  margin-left: 18px; }
  #Circle .explainer a {
    color: #F0C000; }
  #Circle .explainer .explainer-heading {
    text-transform: uppercase; }
  #Circle .explainer .explainer-body {
    opacity: .5;
    margin-bottom: 0;
    font-size: 0.875em; }
    #Circle .explainer .explainer-body + .explainer-body {
      margin-top: 1em; }
    #Circle .explainer .explainer-body.extended {
      display: none; }

#vizContainer {
  height: 100%;
  position: relative;
  flex: 1 1 auto;
  overflow: hidden; }
  #vizContainer canvas {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%); }

#Content {
  position: absolute;
  top: 0;
  width: 50%;
  min-height: 100vh;
  background-color: #F4F2F1;
  display: none; }
  body[data-view="themes"] #Content .loader {
    background-color: #00948E; }
  #Content.loading {
    overflow-y: hidden; }

.loader {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F0C000;
  z-index: 1;
  pointer-events: none;
  text-transform: uppercase; }
  .loader .loader--icon {
    margin: 0 auto;
    animation: spin 20s infinite linear; }
  .loader .loader--text {
    margin-top: 18px;
    font-size: 22px; }

@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(359deg); } }

#ViewToggle {
  border: 0;
  z-index: 1;
  margin: 0;
  padding: 0;
  display: inline-block;
  padding-right: 36px; }
  #ViewToggle label {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 10px;
    position: relative;
    cursor: pointer; }
    #ViewToggle label svg, #ViewToggle label .text {
      position: relative; }
    #ViewToggle label .text {
      font-size: 35px;
      text-transform: uppercase; }
    #ViewToggle label svg {
      display: block;
      margin-right: 10px;
      width: 30px;
      height: 100%; }
  #ViewToggle .text, #ViewToggle .viz-explainer {
    opacity: .5; }
  #ViewToggle input[type="radio"] {
    display: none; }
    #ViewToggle input[type="radio"]:hover + label:before, #ViewToggle input[type="radio"]:checked + label:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.15); }
    #ViewToggle input[type="radio"]:hover + label .text, #ViewToggle input[type="radio"]:hover + label .viz-explainer, #ViewToggle input[type="radio"]:checked + label .text, #ViewToggle input[type="radio"]:checked + label .viz-explainer {
      opacity: 1; }
    #ViewToggle input[type="radio"] + label {
      margin-top: 10px; }
  #ViewToggle .heading, #ViewToggle label {
    max-width: 450px; }

#goBack {
  display: none;
  position: absolute;
  top: calc( 45px + 10px);
  right: 36px;
  z-index: 1;
  padding: 9px;
  box-sizing: content-box;
  transition: background-color 0.5s;
  width: 60px;
  color: #F4F2F1;
  font-size: 9px;
  text-transform: uppercase; }
  @media (min-width: 1600px) {
    #goBack {
      top: calc( 60px + 10px); } }
  body.content-open #goBack {
    display: block; }
  #goBack .back-inner {
    display: none; }
  body[data-view="challenges"] #goBack .challenges {
    display: block; }
  body[data-view="themes"] #goBack .themes {
    display: block; }
  body[data-view="catalysts"] #goBack .catalysts {
    display: block; }

body.content-open #ViewToggle {
  display: none; }

.controls {
  color: black; }

.cursor--grab {
  cursor: -webkit-grab;
  cursor: grab; }

.cursor--grabbing {
  cursor: -webkit-grabbing !important;
  cursor: grabbing; }

.cursor--pointer {
  cursor: pointer; }

.clickTarget {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0; }

#mobileTop {
  position: fixed;
  top: 45px;
  left: 0;
  width: 100%;
  background-color: #413239;
  z-index: 1; }
  #mobileTop .challenge-link {
    text-decoration: none;
    color: #413239;
    background-color: #F0C000;
    align-items: center;
    padding: 36px 72px 36px 36px;
    position: absolute;
    width: 100%;
    min-height: 100%;
    top: 0;
    left: 0;
    display: none;
    font-size: 0.875em; }
    #mobileTop .challenge-link .title:first-letter {
      text-transform: uppercase; }
    #mobileTop .challenge-link.show {
      display: flex; }
    @media (max-width: 600px) {
      #mobileTop .challenge-link {
        padding: 0.5rem 2rem 0.5rem 1rem; } }
    #mobileTop .challenge-link > svg {
      display: block;
      margin-left: auto;
      width: 10px;
      height: 100%;
      position: absolute;
      right: 36px;
      top: 0; }
      @media (max-width: 600px) {
        #mobileTop .challenge-link > svg {
          right: 1rem; } }
  #mobileTop nav ul {
    display: flex; }
    #mobileTop nav ul li {
      width: 33.33%; }
      #mobileTop nav ul li a {
        color: inherit;
        text-decoration: none;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
        background-color: #2e262a;
        text-transform: uppercase;
        font-size: 1.1875em; }
        #mobileTop nav ul li a.is-active {
          background-color: #413239; }
        #mobileTop nav ul li a svg {
          width: 1.25em;
          height: 1.25em;
          margin-right: 5px; }
  #mobileTop .viz-explainer {
    padding: 1rem 36px;
    position: relative; }
    @media (max-width: 600px) {
      #mobileTop .viz-explainer {
        padding: 1rem; } }

.graph-nav-info {
  bottom: 5px;
  opacity: 0;
  transform: translateX(-50%);
  transition: opacity 0.5s; }
  #vizContainer:hover .graph-nav-info {
    opacity: 0.5; }

.graph-info-msg {
  position: absolute;
  top: 50%;
  width: 100%;
  text-align: center;
  color: lavender;
  opacity: 0.7;
  font-size: 22px;
  display: none; }

.graph-tooltip {
  max-width: 200px;
  transform: translate(-50%, -105%); }
  .graph-tooltip:first-letter {
    text-transform: uppercase; }
  .graph-tooltip .theme {
    color: #00948E;
    text-transform: uppercase;
    font-size: 14px; }

.graph-nav-info, .graph-tooltip {
  position: absolute;
  font-size: 16px;
  z-index: 1;
  display: inline-block;
  left: 50%; }
  .graph-nav-info:before, .graph-tooltip:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #413239;
    opacity: .7; }
  .graph-nav-info > div, .graph-tooltip > div {
    position: relative;
    padding: 5px; }

.challenges-mobile {
  background-color: #413239;
  min-height: 100vh; }
  @media (min-width: 1000px) {
    .challenges-mobile {
      font-size: 120%; } }
  .challenges-mobile .content {
    position: relative;
    top: 7.9375em;
    background-color: #413239; }
  .challenges-mobile .heading1, .challenges-mobile .node-title, .challenges-mobile #VizExplainer .heading, #VizExplainer .challenges-mobile .heading, .challenges-mobile .node-subtitle, .challenges-mobile .node-intro .heading--aside, .node-intro .challenges-mobile .heading--aside, .challenges-mobile .slide .title, .slide .challenges-mobile .title {
    padding: calc(45px + 36px) 36px 36px;
    background-color: #413239; }
    @media (max-width: 600px) {
      .challenges-mobile .heading1, .challenges-mobile .node-title, .challenges-mobile #VizExplainer .heading, #VizExplainer .challenges-mobile .heading, .challenges-mobile .node-subtitle, .challenges-mobile .node-intro .heading--aside, .node-intro .challenges-mobile .heading--aside, .challenges-mobile .slide .title, .slide .challenges-mobile .title {
        padding: calc(45px + 1rem) 1rem 1rem; } }
  .challenges-mobile .node {
    cursor: pointer;
    transform: scale(1);
    transform-origin: center;
    fill: #F0C000; }
    body[data-view="catalysts"] .challenges-mobile .node[data-isCatalyst=false] {
      fill: #483937; }
    body[data-view="catalysts"] .challenges-mobile .node[data-isCatalyst=true] {
      transform: scale(1.5); }
  .challenges-mobile .link {
    pointer-events: none;
    stroke: #9f989c;
    vector-effect: non-scaling-stroke;
    stroke-width: 0.1; }
  .challenges-mobile #map.dim-links .link:not(.active) {
    display: none; }
  .challenges-mobile .node-x {
    display: none;
    pointer-events: none; }
    .challenges-mobile .node-x path {
      stroke: #413239; }
  .challenges-mobile #map.node-selected .node {
    fill: #483937; }
    .challenges-mobile #map.node-selected .node.outgoing {
      fill: #F0C000; }
    .challenges-mobile #map.node-selected .node.incoming {
      fill: #6a5531; }
    .challenges-mobile #map.node-selected .node.selected {
      fill: #F4F2F1;
      transform: scale(2); }
  .challenges-mobile #map.node-selected .node-x {
    display: block; }
  body[data-view="catalysts"] .challenges-mobile .node[data-isCatalyst=false] {
    pointer-events: none; }
  .challenges-mobile .viz-explanation {
    display: none; }
  .challenges-mobile #map, .challenges-mobile .theme-nav {
    display: none; }
  body[data-view="challenges"] .challenges-mobile #map {
    display: block; }
  body[data-view="challenges"] .challenges-mobile .viz-explainer .viz-explanation[data-view="challenges"] {
    display: block; }
  body[data-view="themes"] .challenges-mobile .theme-nav {
    display: block; }
  body[data-view="themes"] .challenges-mobile .viz-explainer .viz-explanation[data-view="themes"] {
    display: block; }
  body[data-view="catalysts"] .challenges-mobile #map {
    display: block; }
  body[data-view="catalysts"] .challenges-mobile .viz-explainer .viz-explanation[data-view="catalysts"] {
    display: block; }

.theme-nav {
  font-size: 1.875em;
  text-transform: uppercase;
  background-color: #00948E;
  color: #F4F2F1; }
  .theme-nav li {
    border-top-style: solid;
    border-color: rgba(0, 0, 0, 0.1);
    border-width: 1px; }
    .theme-nav li:last-child {
      border-bottom-style: solid; }
  .theme-nav a {
    display: block;
    padding: 1rem;
    color: inherit;
    text-decoration: none;
    display: flex; }
    .theme-nav a .icon {
      margin-left: auto; }
      .theme-nav a .icon svg {
        vector-effect: non-scaling-stroke; }

.challenges {
  background-color: #333333;
  display: flex;
  flex-direction: column;
  font-weight: 100;
  overflow-x: hidden;
  position: relative;
  top: 22px;
  width: 100%; }
  .challenges .bg-video {
    max-height: 100vh;
    top: 0;
    transform: translateX(-50%); }
  @media (min-width: 1000px) {
    .challenges {
      top: 0;
      flex-direction: row; } }
  .challenges .section {
    display: flex;
    min-height: 100vh;
    position: relative;
    z-index: 2; }
    @media (max-width: 1000px) {
      .challenges .section {
        height: auto; } }
    .challenges .section .hero {
      justify-content: flex-start; }
    .challenges .section .hero__wrapper {
      margin: 0; }
      @media (max-width: 1000px) {
        .challenges .section .hero__wrapper {
          width: 100%; }
          .challenges .section .hero__wrapper h1 {
            font-size: 2.75em; } }
  .challenges .hero__wrapper {
    padding-left: 100px;
    text-align: left; }
    @media (max-width: 1000px) {
      .challenges .hero__wrapper {
        padding-left: 0; } }
    @media (max-width: 1200px) {
      .challenges .hero__wrapper {
        padding-left: 50px; } }
    .challenges .hero__wrapper h1 {
      text-transform: uppercase; }
    .challenges .hero__wrapper p {
      line-height: 2em; }
  .challenges .icon--theme {
    display: block;
    margin: 30px 30px 0;
    max-width: 50px; }
    .challenges .icon--theme svg {
      height: 100%;
      margin: 0;
      max-height: 100px;
      width: 100%; }
      .challenges .icon--theme svg * {
        transition: fill 0.5s; }
  .challenges #content {
    position: relative;
    top: 0; }

.hero__link-back {
  width: 15px; }
  .hero__link-back:hover path {
    opacity: 0.5; }
  .hero__link-back svg {
    height: auto;
    transform: rotate(180deg);
    width: 100%; }
    .hero__link-back svg path {
      transition: opacity 0.5s; }

.nav-wrap {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  padding-top: 0;
  width: 100%; }
  .nav-wrap.is-transitioning * {
    opacity: 0; }
  @media (min-width: 1000px) {
    .nav-wrap {
      padding-top: 0; } }
  @media (min-width: 1200px) {
    .nav-wrap {
      padding-top: 45px; } }
  @media (min-width: 1600px) {
    .nav-wrap {
      padding-top: 60px; } }

.nav-wrap__list-item {
  border-top: 1px solid rgba(244, 242, 241, 0.1);
  position: relative;
  transition: background-color 0.5s; }
  .nav-wrap__list-item:last-child {
    border-bottom: 1px solid rgba(244, 242, 241, 0.1); }
  .nav-wrap__list-item > a {
    color: inherit;
    display: block;
    font-size: 1.55em;
    padding: 10px 30px;
    text-transform: uppercase;
    text-decoration: none;
    transition: color 0.5s; }
  @media (max-height: 775px) and (min-width: 1000px) {
    .nav-wrap__list-item > a {
      font-size: 1.25em; } }
  @media (max-height: 725px) and (min-width: 1000px) {
    .nav-wrap__list-item > a {
      font-size: 1.15em; } }
  .nav-wrap__list-item .accordion-trigger {
    position: relative; }
  .nav-wrap__list-item .icon--arrow {
    height: 17px;
    position: absolute;
    right: 30px;
    top: calc(50% - 9px);
    width: 15px; }
    .nav-wrap__list-item .icon--arrow svg {
      height: 100%;
      width: 100%; }
      .nav-wrap__list-item .icon--arrow svg * {
        stroke: #F0C000;
        transition: all 0.5s; }

.nav-wrap--nested {
  flex-direction: column;
  padding-bottom: 30px; }
  .nav-wrap--nested .nav-wrap--nested__item {
    padding: 0;
    width: 100%; }
  @media (min-width: 600px) {
    .nav-wrap--nested {
      flex-direction: row; }
      .nav-wrap--nested .nav-wrap--nested__item {
        padding: 0 10px; }
        .nav-wrap--nested .nav-wrap--nested__item:first-of-type {
          order: 2; }
        .nav-wrap--nested .nav-wrap--nested__item:last-of-type {
          order: 1; } }
  @media (min-width: 1000px) {
    .nav-wrap--nested {
      flex-direction: column; }
      .nav-wrap--nested .nav-wrap--nested__item {
        padding: 0;
        width: 100%; }
        .nav-wrap--nested .nav-wrap--nested__item:first-of-type {
          order: 1; }
        .nav-wrap--nested .nav-wrap--nested__item:last-of-type {
          order: 2; } }

.nav-wrap--theme {
  background-color: #333333;
  color: #F4F2F1; }
  .nav-wrap--theme.center {
    justify-content: center;
    transform: translateX(100%); }
  .nav-wrap--theme .helper-txt {
    padding: 30px 30px 0;
    width: 80%; }
    .nav-wrap--theme .helper-txt:first-of-type {
      padding-top: 0; }
  @media (max-height: 725px) and (min-width: 1000px) {
    .nav-wrap--theme .helper-txt {
      font-size: 0.9em; } }
  .nav-wrap--theme .nav-wrap__list-item {
    background-color: transparent;
    transition: all 0.5s; }
    .nav-wrap--theme .nav-wrap__list-item.is-active {
      background-color: #fff; }
      .nav-wrap--theme .nav-wrap__list-item.is-active a {
        color: #333333; }
      .nav-wrap--theme .nav-wrap__list-item.is-active svg * {
        stroke: #333333; }
    @media (min-width: 1000px) {
      .nav-wrap--theme .nav-wrap__list-item:hover {
        background-color: #fff; }
        .nav-wrap--theme .nav-wrap__list-item:hover a {
          color: #333333; }
        .nav-wrap--theme .nav-wrap__list-item:hover svg * {
          stroke: #333333; } }
  .nav-wrap--theme .nav-wrap__highlighter {
    display: none;
    background-color: #fff;
    height: 52px;
    left: 0;
    position: absolute;
    right: 0;
    transition: all 0.5s; }
  .nav-wrap--theme .logo-link {
    position: relative; }
    .nav-wrap--theme .logo-link .icon--arrow-back path {
      transition: stroke 0.5s; }
    .nav-wrap--theme .logo-link:hover .icon--theme ellipse {
      fill: #fff; }
    .nav-wrap--theme .logo-link:hover .icon--arrow-back path {
      stroke: #fff; }
  .nav-wrap--theme .nav-wrap__list:nth-of-type(2) {
    padding-bottom: 30px; }
  .nav-wrap--theme .icon--arrow-back {
    position: absolute;
    left: 15px;
    top: 50%;
    display: inline-block;
    width: 30px;
    height: 30px; }
    .nav-wrap--theme .icon--arrow-back svg {
      transform: rotate(180deg); }
      .nav-wrap--theme .icon--arrow-back svg * {
        stroke: #F0C000; }

.nav-wrap--collapsed {
  align-items: center;
  background-color: #333333;
  color: #F0C000;
  justify-content: space-between;
  padding: 40px 0;
  overflow-x: hidden;
  text-decoration: none;
  transition: background-color 0.5s;
  width: 50px; }
  @media (min-width: 1000px) {
    .nav-wrap--collapsed {
      width: 80px; } }
  .nav-wrap--collapsed span {
    margin: 0 auto; }
  .nav-wrap--collapsed .icon--theme {
    margin: 40px auto 0; }
  .nav-wrap--collapsed .icon--arrow--back {
    transform: rotate(180deg); }
    .nav-wrap--collapsed .icon--arrow--back svg {
      height: 35px;
      width: 20px; }
      .nav-wrap--collapsed .icon--arrow--back svg * {
        stroke: #F0C000;
        transition: stroke 0.5s; }
  .nav-wrap--collapsed .nav-wrap--collapsed__heading {
    height: 80px;
    margin-left: -10px;
    transform: rotate(-90deg) translateX(50%);
    transform-origin: bottom;
    transition: color 0.5s; }
    .nav-wrap--collapsed .nav-wrap--collapsed__heading h2 {
      line-height: 80px; }
      @media (min-width: 600px) {
        .nav-wrap--collapsed .nav-wrap--collapsed__heading h2 {
          line-height: 50px; } }
      @media (min-width: 1000px) {
        .nav-wrap--collapsed .nav-wrap--collapsed__heading h2 {
          line-height: 80px; } }
  .nav-wrap--collapsed:hover {
    cursor: pointer; }
    @media (min-width: 1000px) {
      .nav-wrap--collapsed:hover {
        background-color: #F0C000; }
        .nav-wrap--collapsed:hover .nav-wrap--collapsed__heading {
          color: #333333; }
        .nav-wrap--collapsed:hover .icon--arrow--back svg * {
          stroke: #333333; }
        .nav-wrap--collapsed:hover .icon--theme svg ellipse {
          fill: #333333; } }

.helper-txt__sub {
  flex: 1 100%;
  font-size: 0.875em;
  font-weight: normal;
  margin-left: 40px;
  margin-top: 0;
  opacity: 0.5;
  text-transform: none; }

.nav-wrap--accordion {
  background-color: rgba(240, 192, 0, 0.33);
  color: #333333;
  justify-content: flex-start;
  position: relative; }
  .nav-wrap--accordion .helper-txt {
    align-items: center;
    display: flex;
    flex-flow: row wrap;
    padding: 15px; }
    .nav-wrap--accordion .helper-txt p {
      display: inline; }
      .nav-wrap--accordion .helper-txt p:first-of-type {
        font-size: 0.75em;
        text-transform: uppercase; }
    @media (min-width: 1000px) {
      .nav-wrap--accordion .helper-txt {
        padding: 30px 30px 0; }
        .nav-wrap--accordion .helper-txt .helper-txt {
          padding: 30px 40px 0; } }
    @media (min-width: 1200px) {
      .nav-wrap--accordion .helper-txt {
        padding: 30px 20px 0; } }
  .nav-wrap--accordion .helper-txt--icon {
    display: flex;
    flex-direction: column;
    height: auto;
    margin-right: 10px;
    width: 30px; }
  .nav-wrap--accordion .related-partners .helper-txt {
    flex-wrap: nowrap; }
  .nav-wrap--accordion .related-partners .helper-txt--icon {
    width: 25px; }
  .nav-wrap--accordion .error-state {
    font-size: 1em;
    text-transform: none; }
  .nav-wrap--accordion .list--level1__header {
    padding-bottom: 15px;
    margin-bottom: 15px; }
  .nav-wrap--accordion .nav-wrap__list-item {
    border-top: 1px solid rgba(46, 38, 42, 0.1);
    min-height: 45px; }
    .nav-wrap--accordion .nav-wrap__list-item:last-child {
      border-bottom: 1px solid rgba(46, 38, 42, 0.1); }
    .nav-wrap--accordion .nav-wrap__list-item:hover {
      cursor: pointer; }
    .nav-wrap--accordion .nav-wrap__list-item > h3 {
      font-size: 1.125em;
      padding: 10px 50px 10px 40px;
      text-transform: none; }
      @media (min-width: 1000px) {
        .nav-wrap--accordion .nav-wrap__list-item > h3 {
          padding: 10px 50px 10px 55px; } }
      @media (min-width: 1200px) {
        .nav-wrap--accordion .nav-wrap__list-item > h3 {
          padding: 10px 50px 10px 20px; } }
    .nav-wrap--accordion .nav-wrap__list-item h4 {
      font-weight: 100; }
    .nav-wrap--accordion .nav-wrap__list-item .icon--arrow.arrow svg * {
      stroke: #333333;
      transition: all 0.5s; }

.theme-description {
  background-color: #fff;
  color: #333333;
  height: auto;
  padding: 0; }
  .theme-description img {
    width: 100%; }
  .theme-description figure {
    margin: 0;
    max-height: 500px;
    overflow: hidden;
    position: relative; }
  @media (min-width: 1000px) {
    .theme-description {
      padding: 45px 0; } }
  @media (min-width: 1600px) {
    .theme-description {
      padding: 60px 0; } }

.theme-description--pad {
  padding: 0 40px; }
  @media (min-width: 1000px) {
    .theme-description--pad {
      padding: 0 55px; } }

.playlist .theme-description {
  width: 100%; }

.rootCause .theme-description {
  width: 100%; }
  @media (min-width: 1000px) {
    .rootCause .theme-description {
      width: 70%; } }

.theme-description__type {
  font-size: 0.6875em;
  padding: 0;
  text-transform: uppercase; }
  @media (min-width: 1000px) {
    .theme-description__type {
      padding: 30px 0 0; } }

.theme-description__name {
  font-size: 3em;
  line-height: 1;
  margin: 15px 0;
  max-width: 550px; }
  @media (max-width: 600px) {
    .theme-description__name {
      font-size: 2.8125em; } }

.theme-description__copy {
  font-size: 1.25em;
  width: 80%; }
  .theme-description__copy a {
    color: #4171BA;
    text-decoration: none; }
    .theme-description__copy a:hover {
      text-decoration: underline; }
  @media (max-width: 600px) {
    .theme-description__copy {
      font-size: 1.0625em;
      width: 100%; } }

.challenge--detail {
  display: flex;
  flex-flow: row wrap;
  padding-left: 50px;
  padding-top: 0;
  width: 100%; }
  .challenge--detail header {
    padding: 55px 15px 50px; }
  .challenge--detail .related-challenges {
    background-color: #fff;
    height: auto;
    position: relative;
    right: 0; }
    .challenge--detail .related-challenges a {
      color: inherit; }
    .challenge--detail .related-challenges .nav-wrap {
      height: 100%;
      padding-top: 0; }
    @media (min-width: 1000px) {
      .challenge--detail .related-challenges {
        bottom: 0;
        height: 100%;
        position: fixed;
        top: 45px; }
        .challenge--detail .related-challenges .nav-wrap {
          height: calc(100% - 45px); } }
    @media (min-width: 1600px) {
      .challenge--detail .related-challenges {
        top: 60px; } }
  @media (min-width: 600px) {
    .challenge--detail header {
      padding: 55px 100px 50px 40px; } }
  @media (min-width: 1000px) {
    .challenge--detail {
      padding-left: 80px;
      padding-top: 45px; } }
  @media (min-width: 1600px) {
    .challenge--detail {
      padding-top: 60px; } }
  .challenge--detail .related-articles {
    align-items: flex-start;
    background-color: transparent;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0;
    width: 100%; }

.related-articles--wrapper {
  background-color: #e6f9fe;
  padding: 30px;
  width: 70%; }
  @media (max-width: 600px) {
    .related-articles--wrapper {
      padding: 15px;
      flex-direction: column; } }
  @media (max-width: 1000px) {
    .related-articles--wrapper {
      width: 100%; } }
  .related-articles--wrapper .article-module {
    margin: 30px 12px;
    width: 45%; }
    @media (max-width: 600px) {
      .related-articles--wrapper .article-module {
        width: 100%; } }
    .related-articles--wrapper .article-module:first-child, .related-articles--wrapper .article-module:last-child {
      margin: 30px 12px; }
    .related-articles--wrapper .article-module:nth-of-type(-n+2) {
      margin-top: 15px; }

.related-articles--placeholder {
  background-color: #fff; }

.grandChallenge .section--70 {
  flex-wrap: wrap; }
  .grandChallenge .section--70 .theme-description,
  .grandChallenge .section--70 .related-articles {
    width: 100%; }
  .grandChallenge .section--70 .related-articles--wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap; }

.article-module {
  background-color: transparent;
  border: none;
  border-top: 1px solid #6898CE; }
  .article-module > a {
    display: block; }
  .article-module .article-type {
    background-color: transparent;
    font-size: 0.625em;
    padding: .5em; }
  .article-module .inner {
    flex-direction: column;
    padding: 36px 15px; }
  .article-module .article-description {
    font-size: 1em; }
  .article-module .headshot {
    margin: 0 auto;
    width: 25%; }
    .article-module .headshot img {
      border-radius: 50%; }
  .article-module .hero {
    width: 100%; }
  .article-module .article-image-wrap {
    background-color: transparent !important;
    margin: 0 auto 15px;
    padding: 0 !important; }
  @media (max-width: 600px) {
    .article-module {
      margin: 30px 0;
      width: 100%; }
      .article-module:first-child, .article-module:last-child {
        margin: 30px 0; } }

.related-articles__header {
  color: #4171BA;
  font-size: 0.6875em;
  margin: 0;
  padding: 0 12px;
  text-transform: uppercase;
  width: 100%; }
  @media (max-width: 600px) {
    .related-articles__header {
      margin-left: 15px;
      padding: 0; } }

.challenge__tag {
  background-color: rgba(51, 51, 51, 0.1);
  color: #333333;
  display: inline-block;
  font-size: 0.6875em;
  margin-right: 5px;
  padding: 2px 5px;
  text-transform: uppercase; }

.inverse-color-link--gray .challenge__tag {
  transition: all 0.5s; }

.inverse-color-link--gray:hover .challenge__tag {
  background-color: #333333;
  color: rgba(255, 255, 255, 0.9); }

.challenge__name {
  font-size: 3em;
  line-height: 1; }
  @media (max-width: 600px) {
    .challenge__name {
      font-size: 2.8125em; } }

.challenges .section--fixed-nav {
  bottom: 0;
  left: 0;
  position: fixed;
  top: 0;
  z-index: 9; }

.playlist .section--30,
.grandChallenge .section--30 {
  transition: width 0.5s; }

.playlist .section--full,
.grandChallenge .section--full {
  flex-direction: column;
  position: relative; }
  .playlist .section--full .section,
  .grandChallenge .section--full .section {
    min-height: inherit; }

@media (min-width: 600px) {
  .playlist > .section--30,
  .grandChallenge > .section--30 {
    position: fixed;
    top: 45px;
    left: 0;
    bottom: 0;
    z-index: 9; }
  .playlist .section--full,
  .grandChallenge .section--full {
    height: 100%;
    left: 30%; }
    .playlist .section--full .section,
    .grandChallenge .section--full .section {
      height: 100%;
      min-height: 50vh; }
    .playlist .section--full .section--30,
    .grandChallenge .section--full .section--30 {
      width: 100%; } }

@media (max-width: 1000px) {
  .playlist > .section--30,
  .grandChallenge > .section--30 {
    position: relative;
    top: 0;
    width: 100%; }
  .playlist .section--full,
  .grandChallenge .section--full {
    left: 50px;
    width: calc(100% - 50px); }
    .playlist .section--full .section,
    .grandChallenge .section--full .section {
      height: 100%; } }

@media (min-width: 1000px) {
  .playlist .section--white.section--30,
  .grandChallenge .section--white.section--30 {
    width: 70%; } }

@media (min-width: 1200px) {
  .playlist > .section--30,
  .grandChallenge > .section--30 {
    position: relative;
    top: 0; }
  .playlist .section--full,
  .grandChallenge .section--full {
    flex-direction: row;
    left: unset;
    height: auto; }
    .playlist .section--full .section--30,
    .grandChallenge .section--full .section--30 {
      width: 30%; } }

.partner__header {
  padding-bottom: 1rem; }

.partner__info {
  margin-top: 1rem; }

.partner__type {
  display: inline-block;
  margin-top: 0; }

.partner__social {
  align-items: center;
  display: flex; }

.node-title + .node-subtitle, #VizExplainer .heading + .node-subtitle {
  margin-top: .5em; }

.node-badge {
  font-size: 12px;
  line-height: 1;
  text-transform: uppercase;
  position: relative;
  padding-right: .5em;
  padding-top: .25em;
  padding-bottom: .25em;
  color: #413239; }
  .node-badge.catalyst {
    display: inline-block;
    padding-left: 36px;
    color: #F0C000;
    background-color: #413239;
    left: -36px; }
    .node-badge.catalyst:before, .node-badge.catalyst:after {
      content: '';
      display: block;
      width: 0;
      height: 0;
      position: absolute;
      left: 100%;
      border-color: #413239;
      border-width: 1em; }
    .node-badge.catalyst:before {
      border-right-style: solid;
      border-right-color: transparent;
      border-top-style: solid;
      top: 0; }
    .node-badge.catalyst:after {
      border-right-style: solid;
      border-right-color: transparent;
      border-bottom-style: solid;
      bottom: 0; }

.node-subtitle {
  font-size: 35px; }

.node-intro {
  background-color: #F4F2F1; }
  .node-intro .description_wrap {
    padding: 36px; }
    @media (max-width: 600px) {
      .node-intro .description_wrap {
        padding: 1rem; } }
  .node-intro .title_wrap_inner {
    padding: 36px; }
    @media (max-width: 600px) {
      .node-intro .title_wrap_inner {
        padding: 1rem; } }
  .node-intro .heading--aside {
    font-size: 35px;
    color: #F4F2F1;
    background-color: #00948E;
    padding-bottom: 0; }
    .node-intro .heading--aside a {
      display: block;
      color: inherit;
      text-decoration: none;
      padding: 18px 36px;
      background-color: #00948E; }
      @media (max-width: 600px) {
        .node-intro .heading--aside a {
          padding-right: 1rem;
          padding-left: 1rem; } }
      .node-intro .heading--aside a .objective-title {
        letter-spacing: 2px;
        max-width: 40em; }
      .node-intro .heading--aside a svg g {
        fill: #F4F2F1; }
      .node-intro .heading--aside a:hover {
        filter: brightness(1.2); }
  .node-intro .description {
    color: #413239; }
    @media (max-width: 600px) {
      .node-intro .description {
        font-size: 1.125em; } }
    .node-intro .description p:first-child {
      margin-top: 0; }
    .node-intro .description p:last-child {
      margin-bottom: 0; }
    .node-intro .description + .cta {
      margin-top: 18px; }
  .node-intro .cta {
    color: #413239;
    background-color: #F0C000;
    border-color: #F0C000;
    text-decoration: none; }
    .node-intro .cta:hover {
      background-color: #413239;
      border-color: #413239;
      color: #F0C000; }
  .node-article.rootCause .node-intro {
    /*
		.description_wrap {
			padding-top: $pad/2;
		}
*/
    /*
		.title_wrap_inner {
			padding-top: 0;
			padding-bottom: 0;
		}
*/ }
    .node-article.rootCause .node-intro .title_wrap {
      background-color: #F0C000;
      color: #F4F2F1; }
    .node-article.rootCause .node-intro .node-title, .node-article.rootCause .node-intro #VizExplainer .heading, #VizExplainer .node-article.rootCause .node-intro .heading {
      /*
			color: $yellow;		
			padding-top: $pad;
			padding-bottom: $pad/2;			
			border-width: 1px;
			border-bottom-style: solid;
*/ }
  .node-article.grandChallenge .node-intro {
    color: #F4F2F1; }
    .node-article.grandChallenge .node-intro .title_wrap {
      background-color: #00948E; }
    .node-article.grandChallenge .node-intro .node-title, .node-article.grandChallenge .node-intro #VizExplainer .heading, #VizExplainer .node-article.grandChallenge .node-intro .heading {
      font-size: 70px; }
    .node-article.grandChallenge .node-intro .description_wrap {
      background-color: #F4F2F1; }

.related-articles {
  background-color: #e6f9fe;
  padding: 36px 18px; }
  @media (max-width: 600px) {
    .related-articles {
      padding-left: 0;
      padding-right: 0;
      padding-top: 1rem; }
      .related-articles .article-module {
        margin-top: 1rem;
        margin-bottom: 1rem; } }

.article-module {
  break-inside: avoid;
  position: relative;
  display: inline-block; }

@media (min-width: 1000px) {
  .node-page .related-articles {
    column-count: 2; } }

@media (min-width: 1600px) {
  .node-page .related-articles {
    column-count: 3; } }

@media (min-width: 1600px) {
  #Content .related-articles {
    column-count: 2; } }

.progress-breadcrumbs {
  display: flex;
  margin-bottom: .5em; }

.progress-breadcrumb, .partner__type {
  text-decoration: none;
  color: inherit; }
  .progress-breadcrumb + .progress-breadcrumb, .partner__type + .progress-breadcrumb, .progress-breadcrumb + .partner__type, .partner__type + .partner__type {
    margin-left: 1em; }

.article-module-title, .article-module .article-title, .progress-post-inner .author {
  font-size: 26px;
  line-height: 1.2; }

.article-module-body, .article-module .article-description, .progress-post-inner .affiliation {
  font-size: 20px;
  line-height: 1.2; }

.article-module {
  background-color: #e6f9fe;
  color: #4171BA;
  border-top: 1px solid;
  margin: 36px 18px;
  border-color: #6898CE;
  transition: background-color 0.5s; }
  .article-module:hover {
    background-color: #C3F1FC; }
    .article-module:hover .article-read {
      background-color: #4171BA;
      border-color: #4171BA;
      color: #C3F1FC; }
  .article-module:first-child {
    margin-top: 0; }
  .article-module:last-child {
    margin-bottom: 0; }
  .article-module a {
    text-decoration: none;
    color: inherit; }
  .article-module .article-type {
    margin-top: 5px;
    display: inline-block; }
  .article-module .article-description {
    margin-bottom: 0; }
  .article-module .article-read {
    border: 1px solid #6898CE;
    margin-top: 36px; }
    .article-module .article-read svg {
      display: block;
      margin-right: .8em; }
  .article-module .inner {
    padding: 36px; }
    @media (max-width: 1000px) {
      .article-module .inner {
        padding: 36px 1rem 1rem; } }
  .article-module img {
    width: 100%;
    height: auto;
    display: block; }
  .article-module .button_wrap {
    display: flex; }
    .article-module .button_wrap * + * {
      margin-left: 36px; }
  .article-module.stories-from-the-field .inner {
    display: flex; }
    @media (max-width: 1000px) {
      .article-module.stories-from-the-field .inner {
        display: block; } }
  .article-module.stories-from-the-field .inner-content {
    margin-left: 18px; }
    @media (max-width: 1000px) {
      .article-module.stories-from-the-field .inner-content {
        margin-left: 0; } }
  .article-module .headshot {
    width: 100%;
    max-width: 150px;
    padding: 30px 0; }
    .article-module .headshot img {
      border-radius: 50%;
      width: 100%;
      height: auto; }
    @media (max-width: 600px) {
      .article-module .headshot + .inner-content {
        margin-top: 18px; } }
  .article-module .hero {
    margin-bottom: 18px; }

.progress {
  background-color: #e6f9fe;
  color: #4171BA; }

.progress-post-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 36px; }
  @media (max-width: 600px) {
    .progress-post-inner {
      padding-left: 1rem;
      padding-right: 1rem;
      font-size: 80%; }
      .progress .progress-post-inner .header {
        padding-top: calc( 45px + 36px); }
        .progress .progress-post-inner .header .heading1, .progress .progress-post-inner .header .node-title, .progress .progress-post-inner .header #VizExplainer .heading, #VizExplainer .progress .progress-post-inner .header .heading, .progress .progress-post-inner .header .node-subtitle, .progress .progress-post-inner .header .node-intro .heading--aside, .node-intro .progress .progress-post-inner .header .heading--aside, .progress .progress-post-inner .header .slide .title, .slide .progress .progress-post-inner .header .title {
          font-size: 3.75em; } }
  .progress-post-inner .header, .progress-post-inner .body, .progress-post-inner #Circle .influences, #Circle .progress-post-inner .influences, .progress-post-inner #mobileTop .challenge-link, #mobileTop .progress-post-inner .challenge-link, .progress-post-inner .node-intro .description, .node-intro .progress-post-inner .description, .progress-post-inner #formContainer .message, #formContainer .progress-post-inner .message {
    text-align: left; }
  .progress-post-inner .body.first-body p:first-child, .progress-post-inner #Circle .first-body.influences p:first-child, #Circle .progress-post-inner .first-body.influences p:first-child, .progress-post-inner #mobileTop .first-body.challenge-link p:first-child, #mobileTop .progress-post-inner .first-body.challenge-link p:first-child, .progress-post-inner .node-intro .first-body.description p:first-child, .node-intro .progress-post-inner .first-body.description p:first-child, .progress-post-inner #formContainer .first-body.message p:first-child, #formContainer .progress-post-inner .first-body.message p:first-child {
    font-size: 1.25em; }
  .progress-post-inner .author {
    margin-top: .5em;
    text-align: center; }
  .progress-post-inner .affiliation {
    text-align: center; }
  .progress-post-inner a {
    color: inherit; }

.progress-related {
  margin-top: 72px; }
  .progress-related > .heading-aside, .progress-related > .node-badge, .progress-related > .progress-label, .progress-related > .progress-breadcrumb, .progress-related > .partner__type, .article-module .progress-related > .article-type, .nodetree.progress-related > h2 {
    text-align: center;
    padding: 0 36px;
    margin-bottom: 36px; }
  .progress-related .article-module {
    margin-top: 18px;
    margin-bottom: 18px;
    width: 50%; }
    @media (max-width: 1000px) {
      .progress-related .article-module {
        width: 100%; } }

.article-image, .header .hero {
  max-width: 1600px;
  padding-top: 20px;
  padding-bottom: 20px; }
  .article-image img, .header .hero img {
    display: block;
    width: 100%;
    height: auto; }

.header {
  text-align: center;
  margin-bottom: -20px; }
  .header, .header.article-pad {
    padding-top: calc( 45px + 100px); }
    @media (max-width: 600px) {
      .header, .header.article-pad {
        padding-top: calc( 45px + 50px); } }
  .header .heading1, .header .node-title, .header #VizExplainer .heading, #VizExplainer .header .heading, .header .node-subtitle, .header .node-intro .heading--aside, .node-intro .header .heading--aside, .header .slide .title, .slide .header .title {
    padding-bottom: 30px;
    font-size: 5em; }
    @media (max-width: 350px) {
      .header .heading1, .header .node-title, .header #VizExplainer .heading, #VizExplainer .header .heading, .header .node-subtitle, .header .node-intro .heading--aside, .node-intro .header .heading--aside, .header .slide .title, .slide .header .title {
        font-size: 3.75em; } }
    .header .heading1 + .image_wrap, .header .node-title + .image_wrap, .header #VizExplainer .heading + .image_wrap, #VizExplainer .header .heading + .image_wrap, .header .node-subtitle + .image_wrap, .header .node-intro .heading--aside + .image_wrap, .node-intro .header .heading--aside + .image_wrap, .header .slide .title + .image_wrap, .slide .header .title + .image_wrap {
      margin-bottom: 60px; }
  .header img {
    display: block;
    width: 100%;
    height: auto; }
  .header .headshot {
    max-width: 250px;
    margin: 0 auto; }
    .header .headshot img {
      border-radius: 50%; }

.article-pad {
  padding: 20px 120px; }
  @media (max-width: 1000px) {
    .article-pad {
      padding-left: 60px;
      padding-right: 60px; } }
  @media (max-width: 600px) {
    .article-pad {
      padding-left: 0;
      padding-right: 0; } }

.node-cta, .submit-cta {
  text-align: center;
  transition: filter 0.5s; }
  .node-cta:hover, .submit-cta:hover {
    filter: brightness(1.2); }
  .node-cta .inner, .submit-cta .inner {
    max-width: 30em;
    margin: 0 auto; }
  .node-cta .icon, .submit-cta .icon {
    width: 50px;
    margin: 0 auto; }
    .node-cta .icon .title_wrap svg, .submit-cta .icon .title_wrap svg {
      display: block;
      width: 100%;
      height: 100%; }
    .node-cta .icon + .node-title, .node-cta #VizExplainer .icon + .heading, #VizExplainer .node-cta .icon + .heading, .submit-cta .icon + .node-title, .submit-cta #VizExplainer .icon + .heading, #VizExplainer .submit-cta .icon + .heading {
      margin-top: 18px; }
  .node-cta .cta, .submit-cta .cta {
    margin-top: 18px; }
  .node-cta.grandChallenge, .submit-cta.grandChallenge {
    background-color: #00948E;
    color: #F4F2F1; }
    .node-cta.grandChallenge .icon .title_wrap svg g, .submit-cta.grandChallenge .icon .title_wrap svg g {
      fill: #F4F2F1; }
    .node-cta.grandChallenge .cta, .submit-cta.grandChallenge .cta {
      background-color: #F0C000;
      color: #00948E; }
  .node-cta.rootCause, .submit-cta.rootCause {
    background-color: #F0C000;
    color: #413239; }
    .node-cta.rootCause .node-subtitle, .submit-cta.rootCause .node-subtitle {
      color: #F4F2F1; }
    .node-cta.rootCause .icon .title_wrap svg g, .submit-cta.rootCause .icon .title_wrap svg g {
      fill: #413239; }
    .node-cta.rootCause .cta, .submit-cta.rootCause .cta {
      background-color: #413239;
      color: #F0C000; }
  .node-cta a, .submit-cta a {
    text-decoration: none;
    color: inherit;
    padding: 36px;
    display: block; }

.submit-cta {
  background-color: #95E4F9;
  padding: 36px;
  cursor: pointer; }

.body p:first-child, #Circle .influences p:first-child, #mobileTop .challenge-link p:first-child, .node-intro .description p:first-child, #formContainer .message p:first-child {
  margin-top: 0; }

.body p:last-child, #Circle .influences p:last-child, #mobileTop .challenge-link p:last-child, .node-intro .description p:last-child, #formContainer .message p:last-child {
  margin-bottom: 0; }

.progress-pullquote {
  border-width: 1px;
  border-top-style: solid;
  border-bottom-style: solid;
  padding-top: 36px;
  padding-bottom: 36px;
  margin: 20px 60px;
  font-size: 36px;
  line-height: 1.2; }
  @media (max-width: 600px) {
    .progress-pullquote {
      margin-left: 0;
      margin-right: 0; } }

.progress {
  padding-bottom: 36px; }
  .progress .header .title_wrap svg {
    width: 55px;
    height: 100%; }
    .progress .header .title_wrap svg + .heading1, .progress .header .title_wrap svg + .node-title, .progress .header .title_wrap #VizExplainer svg + .heading, #VizExplainer .progress .header .title_wrap svg + .heading, .progress .header .title_wrap svg + .node-subtitle, .progress .header .title_wrap .node-intro svg + .heading--aside, .node-intro .progress .header .title_wrap svg + .heading--aside, .progress .header .title_wrap .slide svg + .title, .slide .progress .header .title_wrap svg + .title {
      margin-top: 18px; }
  .progress .bottom {
    text-align: center; }
    .progress .bottom .link-button, .progress .bottom .node-intro .cta, .node-intro .progress .bottom .cta, .progress .bottom .article-module .article-read, .article-module .progress .bottom .article-read, .progress .bottom .node-cta .cta, .node-cta .progress .bottom .cta, .progress .bottom .submit-cta .cta, .submit-cta .progress .bottom .cta, .progress .bottom .form button, .form .progress .bottom button,
    .progress .bottom .form input[type="submit"], .form .progress .bottom input[type="submit"] {
      background-color: transparent;
      cursor: pointer;
      margin: 36px auto;
      display: inline-block; }
      .progress .bottom .link-button:hover, .progress .bottom .node-intro .cta:hover, .node-intro .progress .bottom .cta:hover, .progress .bottom .article-module .article-read:hover, .article-module .progress .bottom .article-read:hover, .progress .bottom .node-cta .cta:hover, .node-cta .progress .bottom .cta:hover, .progress .bottom .submit-cta .cta:hover, .submit-cta .progress .bottom .cta:hover, .progress .bottom .form button:hover, .form .progress .bottom button:hover,
      .progress .bottom .form input[type="submit"]:hover, .form .progress .bottom input[type="submit"]:hover {
        background-color: #4171BA;
        color: #C3F1FC; }
  @media (max-width: 600px) {
    .progress .header {
      padding-top: 45px; }
    .progress .title_wrap {
      display: flex;
      align-items: center;
      padding-left: 1rem; }
      .progress .title_wrap .heading1, .progress .title_wrap .node-title, .progress .title_wrap #VizExplainer .heading, #VizExplainer .progress .title_wrap .heading, .progress .title_wrap .node-subtitle, .progress .title_wrap .node-intro .heading--aside, .node-intro .progress .title_wrap .heading--aside, .progress .title_wrap .slide .title, .slide .progress .title_wrap .title {
        margin-top: 0 !important;
        margin-left: 1rem;
        padding: 36px 0; } }

.progress-types {
  display: flex;
  font-size: 22px;
  justify-content: center;
  padding: 36px;
  text-align: left; }
  .progress-types a {
    color: inherit;
    text-decoration: none; }
  @media (max-width: 600px) {
    .progress-types {
      flex-direction: column;
      padding: 0; }
      .progress-types .progress-type + .progress-type {
        margin-top: 36px; } }
  @media (max-width: 1600px) {
    .progress-types {
      font-size: 17px; } }
  .progress-types .progress-type {
    border-left-width: 1px;
    border-left-style: solid;
    max-width: 15em;
    transition: background-color 0.5s; }
    .progress-types .progress-type a {
      display: block;
      padding-left: 0.75em;
      padding-right: 2em; }
    .progress-types .progress-type:hover {
      background-color: #C3F1FC; }
      .progress-types .progress-type:hover .description {
        color: #4171BA; }
    .progress-types .progress-type.clear {
      background-color: #4171BA;
      color: #C3F1FC;
      position: relative;
      position: relative; }
      .progress-types .progress-type.clear:before, .progress-types .progress-type.clear:after {
        content: '';
        display: block;
        width: 20px;
        height: 2px;
        background-color: #C3F1FC;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1; }
      .progress-types .progress-type.clear:before {
        transform: rotate(45deg); }
      .progress-types .progress-type.clear:after {
        transform: rotate(-45deg); }
      .progress-types .progress-type.clear .description {
        color: #C3F1FC; }
      .progress-types .progress-type.clear:before, .progress-types .progress-type.clear:after {
        top: 12px;
        right: 2px;
        left: auto;
        pointer-events: none; }
    .progress-types .progress-type .label {
      font-weight: bold; }
    .progress-types .progress-type .description {
      color: #6898CE; }
      @media (max-width: 600px) {
        .progress-types .progress-type .description {
          display: none; } }
    @media (max-width: 600px) {
      .progress-types .progress-type {
        border-left-style: none;
        border-top-style: solid;
        width: 100%;
        max-width: 100%;
        border-width: 1px; }
        .progress-types .progress-type + .progress-type {
          margin-top: 0; }
        .progress-types .progress-type .label {
          text-transform: uppercase;
          font-family: "Tungsten Rounded A", "Tungsten Rounded B";
          font-style: normal;
          font-weight: 500;
          font-size: 30px; }
        .progress-types .progress-type.clear:before, .progress-types .progress-type.clear:after {
          top: calc(50% - 2px);
          right: 1rem; }
        .progress-types .progress-type:last-child {
          border-bottom-style: solid; } }

#progressModules {
  margin-top: 50px;
  padding: 18px;
  position: relative;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap; }
  @media (max-width: 600px) {
    #progressModules {
      padding: 0;
      margin-top: 36px; } }

.progress-module-contain {
  display: flex;
  align-items: flex-start; }
  @media (max-width: 800px) {
    .progress-module-contain {
      flex-wrap: wrap; }
      .progress-module-contain .article-module {
        margin-top: 0;
        margin-left: 0;
        margin-right: 0; } }

.article-module-resize, #progressModules .article-module {
  margin-bottom: 18px;
  margin-top: 0;
  width: calc( 100% - 2rem); }
  @media (min-width: 600px) {
    .article-module-resize, #progressModules .article-module {
      width: calc( 100% - 72px); } }
  @media (min-width: 1000px) {
    .article-module-resize, #progressModules .article-module {
      margin-top: 18px;
      width: calc( 50% - 54px); } }
  @media (min-width: 1400px) {
    .article-module-resize, #progressModules .article-module {
      width: calc( 33.3333% - 47.9988px); } }

.progress-label, .progress-breadcrumb, .partner__type, .article-module .article-type {
  background-color: #C3F1FC;
  padding: .25em .8em;
  font-size: 12px; }

.partners {
  background-color: #F0C000;
  color: #333333; }
  .partners h2 {
    font-size: 2.5rem; }
  .partners h3 {
    font-weight: 700; }
  .partners .link-button, .partners .node-intro .cta, .node-intro .partners .cta, .partners .article-module .article-read, .article-module .partners .article-read, .partners .node-cta .cta, .node-cta .partners .cta, .partners .submit-cta .cta, .submit-cta .partners .cta, .partners .form button, .form .partners button,
  .partners .form input[type="submit"], .form .partners input[type="submit"] {
    line-height: 2.25; }
    .partners .link-button:hover, .partners .node-intro .cta:hover, .node-intro .partners .cta:hover, .partners .article-module .article-read:hover, .article-module .partners .article-read:hover, .partners .node-cta .cta:hover, .node-cta .partners .cta:hover, .partners .submit-cta .cta:hover, .submit-cta .partners .cta:hover, .partners .form button:hover, .form .partners button:hover,
    .partners .form input[type="submit"]:hover, .form .partners input[type="submit"]:hover {
      background-color: #333333;
      border-color: #333333;
      color: #F0C000; }
  .partners #content {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 36px 36px; }
    @media (max-width: 600px) {
      .partners #content {
        padding: 0 1rem 1rem; } }
  .partners .partner__header {
    padding-bottom: 30px;
    padding-top: calc(45px + 72px); }
    @media (max-width: 600px) {
      .partners .partner__header {
        padding-top: calc(45px + 36px); } }
  .partners .partner__type {
    background-color: #333333;
    color: #F0C000; }
  .partners .partner__info {
    margin-top: 2rem; }
    .partners .partner__info h4 {
      margin-bottom: 0.5rem; }
    .partners .partner__info > p:first-of-type {
      margin-top: 0; }
  .partners .inner {
    column-count: 2;
    margin-top: 25px;
    margin-left: -10px;
    margin-right: -10px; }
    .partners .inner .heading-aside, .partners .inner .node-badge, .partners .inner .progress-label, .partners .inner .progress-breadcrumb, .partners .inner .partner__type, .partners .inner .article-module .article-type, .article-module .partners .inner .article-type, .partners .inner .nodetree > h2 {
      margin-left: 10px;
      font-size: 12px;
      color: #95E4F9; }
    @media (max-width: 600px) {
      .partners .inner {
        column-count: 1; } }
  .partners .partner_wrap {
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    column-break-inside: avoid; }
    .partners .partner_wrap + .partner_wrap {
      margin-top: 25px; }
  .partners .partner {
    font-size: 16px;
    line-height: 1.1;
    padding: 10px; }
    .partners .partner img {
      display: block;
      margin-right: .5em;
      width: 16px;
      height: 16px;
      display: inline-block;
      vertical-align: top; }
    .partners .partner div {
      width: calc(100% - 16px - 1em);
      margin-left: auto;
      display: inline-block; }
    .partners .partner a {
      display: block;
      color: inherit;
      text-decoration: none; }
      .partners .partner a:hover, .partners .partner a:hover div {
        text-decoration: underline; }

.partner-index {
  background-color: rgba(240, 192, 0, 0.33);
  color: #333333; }
  .partner-index .header {
    padding-bottom: 30px;
    padding-left: 1rem;
    padding-right: 1rem; }
  .partner-index .header .title_wrap svg {
    width: 55px;
    height: 100%; }
    .partner-index .header .title_wrap svg + .heading1, .partner-index .header .title_wrap svg + .node-title, .partner-index .header .title_wrap #VizExplainer svg + .heading, #VizExplainer .partner-index .header .title_wrap svg + .heading, .partner-index .header .title_wrap svg + .node-subtitle, .partner-index .header .title_wrap .node-intro svg + .heading--aside, .node-intro .partner-index .header .title_wrap svg + .heading--aside, .partner-index .header .title_wrap .slide svg + .title, .slide .partner-index .header .title_wrap svg + .title {
      margin-top: 18px; }
  .partner-index .header .title_wrap p {
    margin: 0 auto 30px; }
  @media (max-width: 600px) {
    .partner-index .header {
      padding: 45px 1rem 30px; }
      .partner-index .header .title_wrap {
        align-items: center;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        padding: 18px 0; }
        .partner-index .header .title_wrap svg {
          height: auto; }
        .partner-index .header .title_wrap .heading1, .partner-index .header .title_wrap .node-title, .partner-index .header .title_wrap #VizExplainer .heading, #VizExplainer .partner-index .header .title_wrap .heading, .partner-index .header .title_wrap .node-subtitle, .partner-index .header .title_wrap .node-intro .heading--aside, .node-intro .partner-index .header .title_wrap .heading--aside, .partner-index .header .title_wrap .slide .title, .slide .partner-index .header .title_wrap .title {
          margin: 0;
          padding: 10px 0; }
        .partner-index .header .title_wrap p {
          margin: 1rem auto; } }

.process {
  background-color: #413239;
  position: relative;
  height: 100vh; }
  @media (max-width: 1000px) {
    .process {
      height: 100%; } }
  .process .carousel {
    height: 100%; }
  @media (min-width: 1600px) {
    .process {
      font-size: 135%; } }
  .process .flickity-page-dots {
    bottom: 25px; }
    .process .flickity-page-dots .dot {
      background-color: #F4F2F1; }
  .process .carousel-cell {
    opacity: .6;
    transition: opacity 0.5s;
    height: 100%;
    display: flex;
    align-items: center; }
    .process .carousel-cell .process-image {
      width: 375px;
      max-width: 100%;
      height: auto;
      display: inline-block;
      margin: 0 auto; }
    @media (max-width: 1000px) {
      .process .carousel-cell {
        opacity: 1;
        position: relative;
        z-index: 1; }
        .process .carousel-cell.process-slide {
          padding: 36px 0; }
          .process .carousel-cell.process-slide:first-child {
            padding-top: 117px; } }
      @media (max-width: 1000px) and (max-width: 600px) {
        .process .carousel-cell.process-slide:first-child {
          padding-top: 45px; } }
    @media (max-width: 1000px) {
        .process .carousel-cell .heading_wrap {
          font-size: 80%; }
        .process .carousel-cell .link-button, .process .carousel-cell .node-intro .cta, .node-intro .process .carousel-cell .cta, .process .carousel-cell .article-module .article-read, .article-module .process .carousel-cell .article-read, .process .carousel-cell .node-cta .cta, .node-cta .process .carousel-cell .cta, .process .carousel-cell .submit-cta .cta, .submit-cta .process .carousel-cell .cta, .process .carousel-cell .form button, .form .process .carousel-cell button,
        .process .carousel-cell .form input[type="submit"], .form .process .carousel-cell input[type="submit"] {
          font-size: 1em; }
        .process .carousel-cell .process-slide-inner {
          flex-wrap: wrap; }
        .process .carousel-cell .process-image {
          width: 100%;
          max-width: 100%; }
        .process .carousel-cell .process-slide-content {
          margin-top: 36px;
          padding: 0 1em; } }
    @media (max-width: 350px) {
      .process .carousel-cell .heading1, .process .carousel-cell .node-title, .process .carousel-cell #VizExplainer .heading, #VizExplainer .process .carousel-cell .heading, .process .carousel-cell .node-subtitle, .process .carousel-cell .node-intro .heading--aside, .node-intro .process .carousel-cell .heading--aside, .process .carousel-cell .slide .title, .slide .process .carousel-cell .title {
        font-size: 2.5em; }
      .process .carousel-cell .process-slide-content-counter {
        font-size: 6.25em;
        padding-right: 0; }
      .process .carousel-cell .link-button, .process .carousel-cell .node-intro .cta, .node-intro .process .carousel-cell .cta, .process .carousel-cell .article-module .article-read, .article-module .process .carousel-cell .article-read, .process .carousel-cell .node-cta .cta, .node-cta .process .carousel-cell .cta, .process .carousel-cell .submit-cta .cta, .submit-cta .process .carousel-cell .cta, .process .carousel-cell .form button, .form .process .carousel-cell button,
      .process .carousel-cell .form input[type="submit"], .form .process .carousel-cell input[type="submit"] {
        font-size: 0.75em; } }
    .process .carousel-cell > .title {
      position: absolute;
      left: 0;
      top: calc( 45px + 18px);
      width: 20vw;
      display: flex;
      align-items: center;
      padding-left: 36px; }
      @media (max-width: 1000px) {
        .process .carousel-cell > .title {
          position: static;
          width: 100%;
          padding: 0 1rem;
          margin-bottom: 36px;
          margin-top: 36px; } }
      .process .carousel-cell > .title svg {
        margin-right: 18px;
        width: 50px;
        max-width: 50px;
        height: 100%;
        flex: 1 1 auto; }
      .process .carousel-cell > .title .heading1, .process .carousel-cell > .title .node-title, .process .carousel-cell > .title #VizExplainer .heading, #VizExplainer .process .carousel-cell > .title .heading, .process .carousel-cell > .title .node-subtitle, .process .carousel-cell > .title .node-intro .heading--aside, .node-intro .process .carousel-cell > .title .heading--aside, .process .carousel-cell > .title .slide .title, .slide .process .carousel-cell > .title .title {
        font-size: 4.375em; }
    .process .carousel-cell a {
      color: inherit; }
    .process .carousel-cell.is-selected {
      opacity: 1; }
  .process.no-gradient .flickity-prev-next-button:after {
    opacity: 0; }
  .process .flickity-prev-next-button {
    height: 100%;
    border-radius: 0;
    width: 100px;
    background-color: transparent; }
    .process .flickity-prev-next-button[disabled] {
      display: none; }
    .process .flickity-prev-next-button svg {
      width: 100px;
      left: calc( 50% - 50px);
      z-index: 1;
      transition: transform 0.25s, opacity 0.25s; }
    .process .flickity-prev-next-button:after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      height: 100%;
      width: 100%;
      opacity: .5;
      transition: opacity 0.5s; }
    .process .flickity-prev-next-button:hover:after {
      opacity: 1; }
    .process .flickity-prev-next-button:hover.next svg, .process .flickity-prev-next-button:hover.previous svg {
      opacity: 1;
      transform: translateX(0); }
    .process .flickity-prev-next-button:active {
      opacity: 1; }
      .process .flickity-prev-next-button:active:after {
        opacity: 1; }
      .process .flickity-prev-next-button:active.next svg, .process .flickity-prev-next-button:active.previous svg {
        opacity: 0.6;
        transform: translateY(1%); }
    .process .flickity-prev-next-button.previous {
      left: 0; }
      .process .flickity-prev-next-button.previous svg {
        transform: translateX(5%); }
      .process .flickity-prev-next-button.previous:after {
        left: 0; }
    .process .flickity-prev-next-button.next {
      right: 0; }
      .process .flickity-prev-next-button.next svg {
        transform: translateX(-5%); }
      .process .flickity-prev-next-button.next:after {
        right: 0; }
    .process .flickity-prev-next-button .arrow {
      fill: #F4F2F1; }
  .process .process-slide {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 0 100px; }
    .process .process-slide .body, .process .process-slide #Circle .influences, #Circle .process .process-slide .influences, .process .process-slide #mobileTop .challenge-link, #mobileTop .process .process-slide .challenge-link, .process .process-slide .node-intro .description, .node-intro .process .process-slide .description, .process .process-slide #formContainer .message, #formContainer .process .process-slide .message {
      font-size: 1.25em; }
  .process .process-slide-inner {
    margin: 0 auto;
    display: flex;
    align-items: flex-start; }
    .process .process-slide-inner .heading_wrap {
      display: flex;
      transform: translateY(-0.1875em); }
      .process .process-slide-inner .heading_wrap .heading1, .process .process-slide-inner .heading_wrap .node-title, .process .process-slide-inner .heading_wrap #VizExplainer .heading, #VizExplainer .process .process-slide-inner .heading_wrap .heading, .process .process-slide-inner .heading_wrap .node-subtitle, .process .process-slide-inner .heading_wrap .node-intro .heading--aside, .node-intro .process .process-slide-inner .heading_wrap .heading--aside, .process .process-slide-inner .heading_wrap .slide .title, .slide .process .process-slide-inner .heading_wrap .title {
        transform: translateY(-0.1125em); }

.menu-slide {
  width: 100%;
  height: 100%; }
  .menu-slide nav {
    width: 100%; }

.process-slide-content {
  padding: 0 18px 0 36px;
  background-color: #413239;
  display: flex;
  max-width: 31.25em;
  margin: 0 auto; }
  .process-slide-content .heading1 + .body, .process-slide-content .node-title + .body, .process-slide-content #VizExplainer .heading + .body, #VizExplainer .process-slide-content .heading + .body, .process-slide-content .node-subtitle + .body, .process-slide-content .node-intro .heading--aside + .body, .node-intro .process-slide-content .heading--aside + .body, .process-slide-content .slide .title + .body, .slide .process-slide-content .title + .body, .process-slide-content #Circle .heading1 + .influences, #Circle .process-slide-content .heading1 + .influences, .process-slide-content #Circle .node-title + .influences, #Circle .process-slide-content .node-title + .influences, .process-slide-content #VizExplainer #Circle .heading + .influences, #Circle .process-slide-content #VizExplainer .heading + .influences, #VizExplainer .process-slide-content #Circle .heading + .influences, #Circle #VizExplainer .process-slide-content .heading + .influences, .process-slide-content #Circle .node-subtitle + .influences, #Circle .process-slide-content .node-subtitle + .influences, .process-slide-content .node-intro #Circle .heading--aside + .influences, #Circle .process-slide-content .node-intro .heading--aside + .influences, .node-intro .process-slide-content #Circle .heading--aside + .influences, #Circle .node-intro .process-slide-content .heading--aside + .influences, .process-slide-content .slide #Circle .title + .influences, #Circle .process-slide-content .slide .title + .influences, .slide .process-slide-content #Circle .title + .influences, #Circle .slide .process-slide-content .title + .influences, .process-slide-content #mobileTop .heading1 + .challenge-link, #mobileTop .process-slide-content .heading1 + .challenge-link, .process-slide-content #mobileTop .node-title + .challenge-link, #mobileTop .process-slide-content .node-title + .challenge-link, .process-slide-content #VizExplainer #mobileTop .heading + .challenge-link, #mobileTop .process-slide-content #VizExplainer .heading + .challenge-link, #VizExplainer .process-slide-content #mobileTop .heading + .challenge-link, #mobileTop #VizExplainer .process-slide-content .heading + .challenge-link, .process-slide-content #mobileTop .node-subtitle + .challenge-link, #mobileTop .process-slide-content .node-subtitle + .challenge-link, .process-slide-content .node-intro #mobileTop .heading--aside + .challenge-link, #mobileTop .process-slide-content .node-intro .heading--aside + .challenge-link, .node-intro .process-slide-content #mobileTop .heading--aside + .challenge-link, #mobileTop .node-intro .process-slide-content .heading--aside + .challenge-link, .process-slide-content .slide #mobileTop .title + .challenge-link, #mobileTop .process-slide-content .slide .title + .challenge-link, .slide .process-slide-content #mobileTop .title + .challenge-link, #mobileTop .slide .process-slide-content .title + .challenge-link, .process-slide-content .node-intro .heading1 + .description, .node-intro .process-slide-content .heading1 + .description, .process-slide-content .node-intro .node-title + .description, .node-intro .process-slide-content .node-title + .description, .process-slide-content #VizExplainer .node-intro .heading + .description, .node-intro .process-slide-content #VizExplainer .heading + .description, #VizExplainer .process-slide-content .node-intro .heading + .description, .node-intro #VizExplainer .process-slide-content .heading + .description, .process-slide-content .node-intro .node-subtitle + .description, .node-intro .process-slide-content .node-subtitle + .description, .process-slide-content .node-intro .heading--aside + .description, .node-intro .process-slide-content .heading--aside + .description, .process-slide-content .slide .node-intro .title + .description, .node-intro .process-slide-content .slide .title + .description, .slide .process-slide-content .node-intro .title + .description, .node-intro .slide .process-slide-content .title + .description, .process-slide-content #formContainer .heading1 + .message, #formContainer .process-slide-content .heading1 + .message, .process-slide-content #formContainer .node-title + .message, #formContainer .process-slide-content .node-title + .message, .process-slide-content #VizExplainer #formContainer .heading + .message, #formContainer .process-slide-content #VizExplainer .heading + .message, #VizExplainer .process-slide-content #formContainer .heading + .message, #formContainer #VizExplainer .process-slide-content .heading + .message, .process-slide-content #formContainer .node-subtitle + .message, #formContainer .process-slide-content .node-subtitle + .message, .process-slide-content .node-intro #formContainer .heading--aside + .message, #formContainer .process-slide-content .node-intro .heading--aside + .message, .node-intro .process-slide-content #formContainer .heading--aside + .message, #formContainer .node-intro .process-slide-content .heading--aside + .message, .process-slide-content .slide #formContainer .title + .message, #formContainer .process-slide-content .slide .title + .message, .slide .process-slide-content #formContainer .title + .message, #formContainer .slide .process-slide-content .title + .message {
    margin-top: 18px; }
  .process-slide-content .body + .link-button, .process-slide-content #Circle .influences + .link-button, #Circle .process-slide-content .influences + .link-button, .process-slide-content #mobileTop .challenge-link + .link-button, #mobileTop .process-slide-content .challenge-link + .link-button, .process-slide-content .node-intro .description + .link-button, .node-intro .process-slide-content .description + .link-button, .process-slide-content #formContainer .message + .link-button, #formContainer .process-slide-content .message + .link-button, .process-slide-content .node-intro .body + .cta, .node-intro .process-slide-content .body + .cta, .process-slide-content #Circle .node-intro .influences + .cta, .node-intro .process-slide-content #Circle .influences + .cta, #Circle .process-slide-content .node-intro .influences + .cta, .node-intro #Circle .process-slide-content .influences + .cta, .process-slide-content #mobileTop .node-intro .challenge-link + .cta, .node-intro .process-slide-content #mobileTop .challenge-link + .cta, #mobileTop .process-slide-content .node-intro .challenge-link + .cta, .node-intro #mobileTop .process-slide-content .challenge-link + .cta, .process-slide-content .node-intro .description + .cta, .node-intro .process-slide-content .description + .cta, .process-slide-content #formContainer .node-intro .message + .cta, .node-intro .process-slide-content #formContainer .message + .cta, #formContainer .process-slide-content .node-intro .message + .cta, .node-intro #formContainer .process-slide-content .message + .cta, .process-slide-content .article-module .body + .article-read, .article-module .process-slide-content .body + .article-read, .process-slide-content #Circle .article-module .influences + .article-read, .article-module .process-slide-content #Circle .influences + .article-read, #Circle .process-slide-content .article-module .influences + .article-read, .article-module #Circle .process-slide-content .influences + .article-read, .process-slide-content #mobileTop .article-module .challenge-link + .article-read, .article-module .process-slide-content #mobileTop .challenge-link + .article-read, #mobileTop .process-slide-content .article-module .challenge-link + .article-read, .article-module #mobileTop .process-slide-content .challenge-link + .article-read, .process-slide-content .node-intro .article-module .description + .article-read, .article-module .process-slide-content .node-intro .description + .article-read, .node-intro .process-slide-content .article-module .description + .article-read, .article-module .node-intro .process-slide-content .description + .article-read, .process-slide-content #formContainer .article-module .message + .article-read, .article-module .process-slide-content #formContainer .message + .article-read, #formContainer .process-slide-content .article-module .message + .article-read, .article-module #formContainer .process-slide-content .message + .article-read, .process-slide-content .node-cta .body + .cta, .node-cta .process-slide-content .body + .cta, .process-slide-content #Circle .node-cta .influences + .cta, .node-cta .process-slide-content #Circle .influences + .cta, #Circle .process-slide-content .node-cta .influences + .cta, .node-cta #Circle .process-slide-content .influences + .cta, .process-slide-content #mobileTop .node-cta .challenge-link + .cta, .node-cta .process-slide-content #mobileTop .challenge-link + .cta, #mobileTop .process-slide-content .node-cta .challenge-link + .cta, .node-cta #mobileTop .process-slide-content .challenge-link + .cta, .process-slide-content .node-intro .node-cta .description + .cta, .node-intro .process-slide-content .node-cta .description + .cta, .process-slide-content #formContainer .node-cta .message + .cta, .node-cta .process-slide-content #formContainer .message + .cta, #formContainer .process-slide-content .node-cta .message + .cta, .node-cta #formContainer .process-slide-content .message + .cta, .process-slide-content .submit-cta .body + .cta, .submit-cta .process-slide-content .body + .cta, .process-slide-content #Circle .submit-cta .influences + .cta, .submit-cta .process-slide-content #Circle .influences + .cta, #Circle .process-slide-content .submit-cta .influences + .cta, .submit-cta #Circle .process-slide-content .influences + .cta, .process-slide-content #mobileTop .submit-cta .challenge-link + .cta, .submit-cta .process-slide-content #mobileTop .challenge-link + .cta, #mobileTop .process-slide-content .submit-cta .challenge-link + .cta, .submit-cta #mobileTop .process-slide-content .challenge-link + .cta, .process-slide-content .node-intro .submit-cta .description + .cta, .node-intro .process-slide-content .submit-cta .description + .cta, .process-slide-content #formContainer .submit-cta .message + .cta, .submit-cta .process-slide-content #formContainer .message + .cta, #formContainer .process-slide-content .submit-cta .message + .cta, .submit-cta #formContainer .process-slide-content .message + .cta, .process-slide-content .form .body + button, .form .process-slide-content .body + button, .process-slide-content #Circle .form .influences + button, .form .process-slide-content #Circle .influences + button, #Circle .process-slide-content .form .influences + button, .form #Circle .process-slide-content .influences + button, .process-slide-content #mobileTop .form .challenge-link + button, .form .process-slide-content #mobileTop .challenge-link + button, #mobileTop .process-slide-content .form .challenge-link + button, .form #mobileTop .process-slide-content .challenge-link + button, .process-slide-content .node-intro .form .description + button, .form .process-slide-content .node-intro .description + button, .node-intro .process-slide-content .form .description + button, .form .node-intro .process-slide-content .description + button, .process-slide-content #formContainer .form .message + button, .form .process-slide-content #formContainer .message + button, #formContainer .process-slide-content .form .message + button, .form #formContainer .process-slide-content .message + button,
  .process-slide-content .form .body + input[type="submit"], .form .process-slide-content .body + input[type="submit"],
  .process-slide-content #Circle .form .influences + input[type="submit"], .form .process-slide-content #Circle .influences + input[type="submit"], #Circle .process-slide-content .form .influences + input[type="submit"], .form #Circle .process-slide-content .influences + input[type="submit"],
  .process-slide-content #mobileTop .form .challenge-link + input[type="submit"], .form .process-slide-content #mobileTop .challenge-link + input[type="submit"], #mobileTop .process-slide-content .form .challenge-link + input[type="submit"], .form #mobileTop .process-slide-content .challenge-link + input[type="submit"],
  .process-slide-content .node-intro .form .description + input[type="submit"], .form .process-slide-content .node-intro .description + input[type="submit"], .node-intro .process-slide-content .form .description + input[type="submit"], .form .node-intro .process-slide-content .description + input[type="submit"],
  .process-slide-content #formContainer .form .message + input[type="submit"], .form .process-slide-content #formContainer .message + input[type="submit"], #formContainer .process-slide-content .form .message + input[type="submit"], .form #formContainer .process-slide-content .message + input[type="submit"] {
    margin-top: 36px; }
  .process-slide-content a.link-button, .process-slide-content .node-intro a.cta, .node-intro .process-slide-content a.cta, .process-slide-content .article-module a.article-read, .article-module .process-slide-content a.article-read, .process-slide-content .node-cta a.cta, .node-cta .process-slide-content a.cta, .process-slide-content .submit-cta a.cta, .submit-cta .process-slide-content a.cta {
    background-color: #00948E;
    border-color: #00948E;
    color: #F4F2F1; }

.process-slide-content-counter {
  font-size: 8.375em;
  color: #00948E;
  margin-right: 18px;
  line-height: 1;
  position: relative; }
  .process-slide-content-counter > span {
    display: block;
    transform: translateY(-0.15em); }
  @media (max-width: 600px) {
    .process-slide-content-counter {
      margin-right: 1rem;
      padding-right: 1rem; } }

.nodetree {
  background-color: #F0C000;
  color: #413239;
  padding: 36px; }
  @media (max-width: 600px) {
    .nodetree {
      padding: 1rem; } }
  .nodetree > h2 {
    border-bottom: 1px solid rgba(65, 50, 57, 0.5); }
  .nodetree .heading--level1 {
    font-size: 1.625em;
    line-height: 1.2;
    padding: 20px 0;
    border-bottom: 1px solid rgba(65, 50, 57, 0.5);
    cursor: pointer; }
    @media (max-width: 600px) {
      .nodetree .heading--level1 {
        font-size: 1.25em; } }
    .nodetree .heading--level1 .title {
      width: calc( 100% - 25px);
      padding-right: 1em; }
    .nodetree .heading--level1 svg, .nodetree .heading--level1 span {
      display: inline-block;
      vertical-align: middle; }
    .nodetree .heading--level1 .arrow {
      margin-left: auto;
      width: 25px; }
      .nodetree .heading--level1 .arrow svg {
        display: block;
        width: 0.8375em;
        height: 0.4625em; }
  .nodetree .heading--level2 {
    font-size: 16px;
    line-height: 1.2;
    display: inline-block;
    align-items: center;
    max-width: 30em; }
    .nodetree .heading--level2 svg, .nodetree .heading--level2 span {
      display: inline-block;
      vertical-align: middle; }
    .nodetree .heading--level2 svg {
      width: 16px;
      margin-left: 20px;
      margin-right: 20px; }
    .nodetree .heading--level2 span {
      width: calc(100% - 60px); }
      .nodetree .heading--level2 span:first-letter {
        text-transform: uppercase; }
  .nodetree .list--level2 {
    border-bottom: 1px solid rgba(65, 50, 57, 0.5); }
  .nodetree .item--level2 {
    list-style-type: none;
    align-items: center;
    display: flex; }
    .nodetree .item--level2 a {
      width: 100%;
      color: inherit;
      padding: 20px 0;
      transition-duration: 0.5s;
      transition-property: background-color, color; }
      .nodetree .item--level2 a:hover {
        background-color: #413239;
        color: #F0C000; }
        .nodetree .item--level2 a:hover svg {
          fill: #F0C000; }

.menu-wrapper {
  background-color: #4171BA;
  display: flex;
  flex-direction: column;
  height: 100vh;
  overflow: auto;
  margin-left: auto;
  width: 100%; }

.menu {
  display: flex;
  flex-direction: column;
  padding: 80px 40px 20px; }
  @media (min-width: 1600px) {
    .menu {
      font-size: 135%; } }
  .menu .menu-item {
    font-size: 1.65em;
    font-weight: 100;
    height: 40%;
    overflow: hidden;
    padding: 10px 15px;
    position: relative;
    text-transform: uppercase;
    width: 100%; }
    @media (max-width: 600px) {
      .menu .menu-item {
        font-size: 2.5em;
        height: 50%; }
        .menu .menu-item .menu-item__svg {
          height: 50px; } }
    .menu .menu-item > a {
      align-items: center;
      color: #fff;
      display: flex;
      height: 100%;
      opacity: 1;
      transition: opacity 0.5s;
      text-decoration: none; }
      .menu .menu-item > a:hover {
        opacity: 0.6; }
    .menu .menu-item .menu-item-inner {
      max-width: 20em; }
    .menu .menu-item .title {
      font-size: 2.625em;
      text-transform: uppercase; }
      .menu .menu-item .title + .description {
        margin-top: 10px; }
    .menu .menu-item .description {
      font-size: 1.25em;
      line-height: 1.2;
      padding: 0 1em; }
      @media (max-width: 600px) {
        .menu .menu-item .description {
          font-size: 1em; } }
      @media (max-width: 350px) {
        .menu .menu-item .description {
          font-size: 0.875em; } }
      .menu .menu-item .description + .cta {
        margin-top: 30px; }
    .menu .menu-item .cta {
      padding: 8px 30px; }
    .menu .menu-item.menu-item--large {
      width: 100%;
      height: 60%; }
      @media (max-width: 600px) {
        .menu .menu-item.menu-item--large {
          height: 50%; } }
    .menu .menu-item:nth-last-child(2) {
      position: relative;
      padding-top: 75px; }
      .menu .menu-item:nth-last-child(2):before {
        background-color: #fff;
        content: "";
        height: 1px;
        left: 0;
        position: absolute;
        right: 0;
        top: 37.5px; }
    .menu .menu-item:last-child {
      margin-top: 20px; }
      .menu .menu-item:last-child svg {
        height: 100%;
        padding: 1px;
        width: 130px; }
  .menu .menu-item__svg {
    height: 35px;
    padding-right: 15px; }
    .menu .menu-item__svg svg {
      height: 100%;
      width: 40px; }

.menu-more {
  padding: 0 40px;
  color: white; }
  .menu-more a {
    padding: 10px 15px;
    color: inherit;
    text-decoration: none; }
    .menu-more a:hover {
      color: #F0C000; }

.intro-menu {
  display: block;
  width: 100%;
  height: 100vh; }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait) {
    .intro-menu {
      height: 1024px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape) {
    .intro-menu {
      height: 768px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: portrait) {
    .intro-menu {
      height: 480px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: landscape) {
    .intro-menu {
      height: 320px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: portrait) {
    .intro-menu {
      height: 568px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: landscape) {
    .intro-menu {
      height: 320px; } }
  @media (max-width: 600px) {
    .intro-menu {
      height: 100%; } }

.intro-menu__wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative; }
  @media (min-width: 600px) {
    .intro-menu__wrapper {
      position: fixed;
      width: 100%; } }

.intro-menu-item {
  font-size: 1em;
  height: 50%;
  overflow: hidden;
  position: relative;
  width: 100%; }
  .intro-menu-item > a {
    align-items: center;
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    padding: 30px 50px;
    text-decoration: none;
    text-align: center;
    display: grid;
    grid-template-rows: 2fr 1fr 2fr; }
    @media (max-width: 1024px) {
      .intro-menu-item > a {
        padding: 1rem; } }
    @media (max-width: 600px) {
      .intro-menu-item > a {
        flex-direction: row;
        justify-content: flex-start;
        padding: 0 15px;
        text-align: left;
        grid-template-columns: 60px auto;
        grid-template-rows: auto; } }
  .intro-menu-item .icon--main {
    height: auto; }
  .intro-menu-item .icon--main svg {
    height: 100%;
    max-height: 70px;
    max-width: 70px;
    width: 100%; }
    @media (max-width: 1024px) {
      .intro-menu-item .icon--main svg {
        max-height: 60px;
        width: 60px; } }
    @media (max-width: 600px) {
      .intro-menu-item .icon--main svg {
        max-height: 45px;
        width: 45px; } }
  .intro-menu-item .icon--arrow {
    bottom: 0;
    content: "";
    display: block;
    height: 60px;
    margin: auto;
    position: absolute;
    right: 30px;
    top: 0;
    width: 30px; }
    .intro-menu-item .icon--arrow svg {
      height: 100%;
      width: 70%; }
    .intro-menu-item .icon--arrow path {
      stroke-width: 5%; }
    @media (max-width: 600px) {
      .intro-menu-item .icon--arrow {
        margin: 0;
        right: 20px;
        top: 50%;
        transform: translateY(-50%); } }
  .intro-menu-item .transparency {
    background-color: #F4F2F1;
    opacity: 0; }
    @media (max-width: 600px) {
      .intro-menu-item .transparency {
        pointer-events: none; } }
  .intro-menu-item.first {
    background-color: #F0C000;
    color: #2e262a; }
    .intro-menu-item.first .slide-in--left {
      transition-delay: 0s; }
    .intro-menu-item.first .icon--main svg * {
      fill: #2e262a; }
    .intro-menu-item.first .icon--main svg path,
    .intro-menu-item.first .icon--arrow svg path {
      stroke: #2e262a; }
  .intro-menu-item.second {
    background-color: #4171BA;
    color: #F4F2F1; }
    .intro-menu-item.second .slide-in--left {
      transition-delay: 0.1s; }
    .intro-menu-item.second .icon--main svg * {
      fill: #F4F2F1; }
    .intro-menu-item.second .icon--main svg path,
    .intro-menu-item.second .icon--arrow svg path {
      stroke: #F4F2F1; }
    .intro-menu-item.second .transparency {
      background-color: #6898CE; }
  .intro-menu-item.third {
    background-color: #faeaaa;
    color: #333333; }
    .intro-menu-item.third .slide-in--left {
      transition-delay: 0.15s; }
    .intro-menu-item.third .icon--main svg * {
      fill: #333333; }
    .intro-menu-item.third .icon--main svg path,
    .intro-menu-item.third .icon--arrow svg path {
      stroke: #333333; }
    .intro-menu-item.third .transparency {
      background-color: #faeaaa; }
  .intro-menu-item .title {
    font-size: 2.625em;
    text-transform: uppercase; }
  .intro-menu-item .description {
    font-size: 1em;
    line-height: 1.2;
    max-width: 350px;
    margin: 0;
    padding: 0 1em; }
    @media (min-width: 1200px) {
      .intro-menu-item .description {
        max-width: 250px; } }
    .intro-menu-item .description + .cta {
      margin-top: 30px; }
  .intro-menu-item .cta {
    padding: 8px 30px; }
  .intro-menu-item .transparency {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -1;
    transform: translateZ(0);
    transition: opacity 0.5s; }
  .intro-menu-item:hover .transparency {
    filter: brightness(1.2);
    opacity: 0.85; }
  .intro-menu-item.is-animated {
    width: 0; }

.bg-video {
  filter: blur(2px);
  height: auto;
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  z-index: -1; }
  @media (max-width: 1000px) {
    .bg-video {
      display: none; } }

.bg-image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
  left: 0;
  position: absolute;
  transition: opacity 0.2s;
  top: 0;
  width: 100%;
  z-index: -2; }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait) {
    .bg-image {
      height: 1024px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape) {
    .bg-image {
      height: 768px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: portrait) {
    .bg-image {
      height: 480px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: landscape) {
    .bg-image {
      height: 320px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: portrait) {
    .bg-image {
      height: 568px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: landscape) {
    .bg-image {
      height: 320px; } }
  @media (max-width: 600px) {
    .bg-image {
      height: 100%; } }

.form {
  background-color: #C3F1FC;
  color: #4171BA;
  padding: 18px;
  max-width: 800px;
  margin: 0 auto; }
  .form .heading1, .form .node-title, .form #VizExplainer .heading, #VizExplainer .form .heading, .form .node-subtitle, .form .node-intro .heading--aside, .node-intro .form .heading--aside, .form .slide .title, .slide .form .title {
    padding: 18px; }
  .form .tab {
    display: flex;
    flex-wrap: wrap; }
  .form .field.required .heading:after {
    content: '*'; }
  .form .field.plaintext, .form .field.sproutfields_email {
    width: 100%; }
    .form .field.plaintext input, .form .field.plaintext textarea, .form .field.sproutfields_email input, .form .field.sproutfields_email textarea {
      width: 100%; }
  .form .tab.half .field.plaintext, .form .tab.half .field.sproutfields_email {
    width: 50%; }
  .form .field.radiobuttons {
    width: 100%; }
    .form .field.radiobuttons label {
      display: inline-flex;
      align-items: center;
      cursor: pointer; }
      .form .field.radiobuttons label input {
        margin-right: .5em;
        cursor: pointer; }
      .form .field.radiobuttons label + label {
        margin-left: 2em; }
  .form .field, .form .submit {
    padding: 18px; }
  .form input, .form textarea {
    border: 1px solid #4171BA;
    font-size: 100%;
    background-color: inherit;
    padding: .25em;
    color: inherit;
    border-radius: 0; }
  .form input[type="text"], .form input[type="email"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none; }
  .form select {
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    border: 1px solid #4171BA;
    color: inherit;
    font-size: 100%;
    font-family: inherit;
    border-radius: 0;
    width: 100%;
    padding: .25em 1.5em .25em .5em;
    cursor: pointer;
    background-image: url(/assets/select.svg);
    background-position: calc( 100% - .5em) center;
    background-size: .75em;
    background-repeat: no-repeat; }
  .form button,
  .form input[type="submit"] {
    background-color: transparent;
    color: inherit;
    border-style: solid;
    border-width: 1px;
    padding: 9px; }
    .form button:hover,
    .form input[type="submit"]:hover {
      background-color: #4171BA;
      color: #C3F1FC;
      cursor: pointer; }
  .form input[type="radio"] {
    -webkit-appearance: none;
    width: 1em;
    height: 1em;
    margin: 0; }
    .form input[type="radio"]:checked {
      background-color: #4171BA; }

#formContainer {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999999;
  overflow: auto;
  background-color: #C3F1FC; }
  #formContainer .close {
    position: absolute;
    top: 36px;
    right: 36px;
    background-color: transparent;
    font-size: 100%;
    border-radius: 0;
    display: block;
    padding: 0; }
    #formContainer .close > div {
      position: relative; }
      #formContainer .close > div:before, #formContainer .close > div:after {
        content: '';
        display: block;
        width: 20px;
        height: 2px;
        background-color: #4171BA;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1; }
      #formContainer .close > div:before {
        transform: rotate(45deg); }
      #formContainer .close > div:after {
        transform: rotate(-45deg); }
  #formContainer.open {
    display: block; }
  #formContainer .message {
    display: none;
    color: #4171BA;
    text-align: center; }
  #formContainer.show-success {
    display: flex;
    align-items: center;
    justify-content: center; }
    #formContainer.show-success .form {
      display: none; }
    #formContainer.show-success .message.success {
      display: block; }

.search-nav {
  background-color: #F0C000;
  color: #333333;
  left: 0;
  position: -webkit-sticky;
  position: sticky;
  right: 0;
  top: 45px;
  z-index: 2; }
  .search-nav .form {
    margin: 0 20px;
    max-width: none; }
    .search-nav .form button,
    .search-nav .form input[type="submit"] {
      border-radius: 0;
      line-height: unset;
      margin-left: 10px;
      padding: 10px; }
      .search-nav .form button:hover,
      .search-nav .form input[type="submit"]:hover {
        border-color: #333333;
        background-color: #333333;
        color: #F0C000; }
    .search-nav .form select {
      margin-left: 10px;
      padding: 7px 1.5em 6px .5em;
      width: 40%; }
  @media (min-width: 1600px) {
    .search-nav {
      top: 60px; } }
  @media (max-width: 1000px) {
    .search-nav .form select {
      margin-bottom: 10px;
      margin-left: 0;
      width: 100%; }
    .search-nav .form button,
    .search-nav .form input[type="submit"] {
      padding: 9px;
      -webkit-appearance: none;
      -moz-appearance: none;
      -ms-appearance: none; }
    .search-nav .form button {
      margin-left: 0; } }

.search-nav__form {
  align-items: center;
  background-color: inherit;
  color: inherit;
  display: flex;
  flex-direction: row;
  justify-content: flex-start; }
  @media (max-width: 1000px) {
    .search-nav__form {
      flex-wrap: wrap;
      padding: 18px 10px;
      width: auto; } }

.search-nav__wrapper {
  position: relative;
  width: 50%; }
  .search-nav__wrapper input {
    border-color: #333333;
    padding: 6px 10px 7px;
    outline: none;
    width: 100%; }
  .search-nav__wrapper label {
    left: 10px;
    position: absolute;
    top: 7px;
    opacity: 1;
    pointer-events: none;
    transition: all 0.3s; }
    .search-nav__wrapper label.active {
      opacity: 0; }
  .search-nav__wrapper input.active + label,
  .search-nav__wrapper input:focus + label,
  .search-nav__wrapper input:active + label {
    opacity: 0; }
  @media (max-width: 1000px) {
    .search-nav__wrapper {
      width: calc(100% - 51px); } }

.search-nav__filters {
  align-items: center;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  width: 50%; }
  .search-nav__filters select {
    border-color: #333333;
    background-image: url(/assets/select-dark.svg); }
    .search-nav__filters select.active {
      background-color: #333333;
      background-image: url(/assets/select-yellow.svg);
      color: #F0C000; }
  .search-nav__filters label {
    margin-left: 10px; }
  @media (max-width: 1000px) {
    .search-nav__filters {
      align-items: flex-start;
      flex-direction: column;
      width: 100%; }
      .search-nav__filters label {
        line-height: 30px;
        margin-left: 0;
        margin-top: 10px; } }

#share {
  align-items: center;
  background-color: #F0C000;
  color: #413239;
  display: none;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 99999999; }
  #share.open {
    display: flex;
    flex-direction: column; }
  #share .close {
    align-items: center;
    background: transparent;
    border: none;
    display: flex;
    justify-content: space-around;
    order: 3;
    padding: 10px 0;
    width: 100px; }
    #share .close:hover {
      cursor: pointer; }
  #share .close--icon {
    background-color: transparent;
    border-radius: 0;
    border: 0;
    color: inherit;
    cursor: pointer;
    font-size: 100%;
    height: 20px;
    padding: 10px 0;
    width: 20px;
    position: relative; }
    #share .close--icon:before, #share .close--icon:after {
      content: '';
      display: block;
      width: 20px;
      height: 2px;
      background-color: #413239;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1; }
    #share .close--icon:before {
      transform: rotate(45deg); }
    #share .close--icon:after {
      transform: rotate(-45deg); }
    #share .close--icon:before, #share .close--icon:after {
      top: 50%; }
  #share .close--txt {
    text-transform: uppercase;
    font-weight: bold;
    color: #413239;
    font-size: 1.375em; }
  #share .share-header {
    font-size: 3.75em;
    padding: 10px; }
  #share .list__share-buttons {
    display: flex;
    max-width: 100%;
    padding: 5px; }
  #share .list-item__share-button {
    width: 100px;
    height: 100px; }
    #share .list-item__share-button + .list-item__share-button {
      margin-left: 1em; }
    #share .list-item__share-button svg {
      width: 100%;
      height: 100%;
      display: block;
      stroke: #413239;
      stroke-width: 2; }
      #share .list-item__share-button svg * {
        fill: none;
        vector-effect: non-scaling-stroke; }
      #share .list-item__share-button svg:hover * {
        fill: #413239;
        stroke: #F0C000; }

.nav-wrap__list {
  position: relative; }

.list--level2__item {
  padding: 15px 40px; }
  .list--level2__item a {
    color: #2e262a;
    display: flex;
    padding: 0;
    position: relative;
    text-decoration: none; }
    .list--level2__item a:hover .list--level2__header {
      text-decoration: underline; }
  .list--level2__item .icon--bullet {
    display: flex;
    align-items: center; }
    .list--level2__item .icon--bullet svg {
      height: 8px;
      margin-right: 10px;
      width: 8px; }
      .list--level2__item .icon--bullet svg * {
        stroke: transparent;
        fill: #F0C000; }
  .list--level2__item .icon--arrow {
    max-width: 5px;
    position: absolute;
    right: 15px;
    top: calc(50% - 10px); }
    .list--level2__item .icon--arrow svg {
      width: 100%; }
  @media (min-width: 1000px) {
    .list--level2__item {
      padding: 15px 55px; } }
  @media (min-width: 1200px) {
    .list--level2__item {
      padding: 15px 20px; } }

.list--level2__header {
  padding-right: 25px; }

.list--level1__header {
  position: relative; }
  .list--level1__header:after {
    background-color: #333333;
    bottom: 0;
    content: '';
    height: 1px;
    left: 0;
    opacity: 0.4;
    position: absolute;
    right: 0; }

.logo-list.list--level1 {
  padding-left: 10px; }

.logo-list:last-of-type {
  padding-bottom: 30px; }

.logo-list__header {
  color: rgba(51, 51, 51, 0.5);
  padding: 0 30px; }

.logo-list__item-wrap {
  align-items: center;
  color: #333333;
  display: flex;
  flex-direction: row;
  padding: 5px 20px;
  text-decoration: none; }

a.logo-list__item-wrap:hover .logo-list__name {
  text-decoration: underline; }

.logo-list__name {
  margin: 0; }

.logo-list__logo + .logo-list__name {
  padding-left: 15px; }

.logo-list__logo {
  align-items: center;
  display: flex;
  height: auto;
  justify-content: flex-start;
  width: 15px; }
  .logo-list__logo img {
    height: 100%;
    width: 100%; }

.challenge--detail .list--level2__item {
  padding: 0 30px; }

.nav-wrap--accordion .list--level1__header {
  padding-bottom: 15px; }
  .nav-wrap--accordion .list--level1__header p:first-of-type {
    margin: 0; }

#fullpage--home {
  background-color: #333333;
  display: flex;
  flex-direction: row;
  font-weight: 100; }
  @media (max-width: 600px) {
    #fullpage--home {
      font-size: 80%;
      flex-direction: column;
      height: 100vh; } }
  @media only screen and (max-width: 600px) and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait) {
    #fullpage--home {
      height: 1024px; } }
  @media only screen and (max-width: 600px) and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape) {
    #fullpage--home {
      height: 768px; } }
  @media only screen and (max-width: 600px) and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: portrait) {
    #fullpage--home {
      height: 480px; } }
  @media only screen and (max-width: 600px) and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: landscape) {
    #fullpage--home {
      height: 320px; } }
  @media only screen and (max-width: 600px) and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: portrait) {
    #fullpage--home {
      height: 568px; } }
  @media only screen and (max-width: 600px) and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: landscape) {
    #fullpage--home {
      height: 320px; } }
  @media (max-width: 600px) {
      #fullpage--home .title {
        font-size: 2.5rem;
        margin-left: 15px; } }
  @media (max-width: 350px) {
    #fullpage--home {
      font-size: 70%; } }
  @media (max-width: 320px) {
    #fullpage--home {
      font-size: 60%; } }
  #fullpage--home .section {
    display: inline-block;
    height: 100vh;
    z-index: 2; }
    #fullpage--home .section:first-child {
      position: relative;
      overflow-x: hidden; }
    @media screen and (max-width: 1000px) and (orientation: landscape) {
      #fullpage--home .section {
        min-height: 100vh;
        height: auto; } }
    @media (max-width: 1000px) {
      #fullpage--home .section .section--70 {
        width: 60% !important; }
      #fullpage--home .section .section--30 {
        width: 40% !important; } }
    @media (max-width: 600px) {
      #fullpage--home .section:first-child {
        height: 70%;
        min-height: unset; }
      #fullpage--home .section:last-child {
        height: 30%;
        min-height: unset; } }
    #fullpage--home .section .fp-tableCell {
      display: flex;
      align-items: center;
      justify-content: center; }
    #fullpage--home .section .screen {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: black;
      opacity: .4; }
    #fullpage--home .section .section-inner {
      position: relative;
      padding: 36px; }
      #fullpage--home .section .section-inner .title, #fullpage--home .section .section-inner .body, #fullpage--home .section .section-inner #Circle .influences, #Circle #fullpage--home .section .section-inner .influences, #fullpage--home .section .section-inner #mobileTop .challenge-link, #mobileTop #fullpage--home .section .section-inner .challenge-link, #fullpage--home .section .section-inner .node-intro .description, .node-intro #fullpage--home .section .section-inner .description, #fullpage--home .section .section-inner #formContainer .message, #formContainer #fullpage--home .section .section-inner .message {
        margin-left: auto;
        margin-right: auto; }
    #fullpage--home .section nav {
      width: 100%; }
    #fullpage--home .section .bg-video {
      top: 0;
      transform: translateX(-50%); }
  #fullpage--home + .loader {
    position: fixed; }
  #fullpage--home .slide:first-child .logo {
    position: relative;
    left: 1.1875em; }
  @media (min-width: 1600px) {
    #fullpage--home {
      font-size: 135%; } }

@media (max-width: 600px) {
  .is-mobile-safari #fullpage--home .section:last-child {
    height: 25%; } }

.slide {
  text-align: center;
  transform: translateZ(0); }
  .slide .logo {
    width: 6.25em; }
    .slide .logo + .title {
      margin-top: 10px; }
  .slide .title p:first-child, .slide .body p:first-child, .slide #Circle .influences p:first-child, #Circle .slide .influences p:first-child, .slide #mobileTop .challenge-link p:first-child, #mobileTop .slide .challenge-link p:first-child, .slide .node-intro .description p:first-child, .node-intro .slide .description p:first-child, .slide #formContainer .message p:first-child, #formContainer .slide .message p:first-child {
    margin-top: 0; }
  .slide .title p:last-child, .slide .body p:last-child, .slide #Circle .influences p:last-child, #Circle .slide .influences p:last-child, .slide #mobileTop .challenge-link p:last-child, #mobileTop .slide .challenge-link p:last-child, .slide .node-intro .description p:last-child, .node-intro .slide .description p:last-child, .slide #formContainer .message p:last-child, #formContainer .slide .message p:last-child {
    margin-bottom: 0; }
  .slide .title {
    font-size: 4.6875em;
    letter-spacing: 3px;
    max-width: 1000px; }
    .slide .title + .body, .slide #Circle .title + .influences, #Circle .slide .title + .influences, .slide #mobileTop .title + .challenge-link, #mobileTop .slide .title + .challenge-link, .slide .node-intro .title + .description, .node-intro .slide .title + .description, .slide #formContainer .title + .message, #formContainer .slide .title + .message {
      margin-top: 10px; }
  .slide .body, .slide #Circle .influences, #Circle .slide .influences, .slide #mobileTop .challenge-link, #mobileTop .slide .challenge-link, .slide .node-intro .description, .node-intro .slide .description, .slide #formContainer .message, #formContainer .slide .message {
    max-width: 800px; }
    @media (min-width: 1600px) {
      .slide .body, .slide #Circle .influences, #Circle .slide .influences, .slide #mobileTop .challenge-link, #mobileTop .slide .challenge-link, .slide .node-intro .description, .node-intro .slide .description, .slide #formContainer .message, #formContainer .slide .message {
        max-width: 1200px; } }
  .slide .bg {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.section .hero {
  align-items: center;
  background-color: transparent;
  display: flex;
  flex-direction: row;
  height: 100vh;
  justify-content: center;
  padding: 0 5%;
  position: relative;
  text-align: center;
  transition: opacity 0.2s;
  overflow: hidden !important; }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait) {
    .section .hero {
      height: 1024px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape) {
    .section .hero {
      height: 768px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: portrait) {
    .section .hero {
      height: 480px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 480px) and (orientation: landscape) {
    .section .hero {
      height: 320px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: portrait) {
    .section .hero {
      height: 568px; } }
  @media only screen and (-webkit-min-device-pixel-ratio: 1) and (device-width: 320px) and (device-height: 568px) and (orientation: landscape) {
    .section .hero {
      height: 320px; } }
  @media (max-width: 600px) {
    .section .hero {
      background-color: rgba(51, 51, 51, 0.5);
      height: 100%;
      padding-bottom: 70px; } }

.section .hero__wrapper {
  margin: 0;
  max-width: 700px;
  width: 100%;
  z-index: 3; }
  @media (min-width: 1000px) {
    .section .hero__wrapper {
      width: 75%; } }
  @media (min-width: 1600px) {
    .section .hero__wrapper {
      max-width: none;
      width: 60%; } }
  .section .hero__wrapper h1 {
    font-size: 3em;
    text-transform: uppercase; }
  .section .hero__wrapper button {
    align-items: center;
    display: flex;
    flex-direction: row;
    margin: 50px auto 0;
    opacity: 1;
    transition: opacity 0.5s; }
    @media (max-width: 600px) {
      .section .hero__wrapper button {
        margin: 20px auto 0; } }
    .section .hero__wrapper button span.button, .section .hero__wrapper button span.link-button, .section .hero__wrapper button .node-intro span.cta, .node-intro .section .hero__wrapper button span.cta, .section .hero__wrapper button .article-module span.article-read, .article-module .section .hero__wrapper button span.article-read, .section .hero__wrapper button .node-cta span.cta, .node-cta .section .hero__wrapper button span.cta, .section .hero__wrapper button .submit-cta span.cta, .submit-cta .section .hero__wrapper button span.cta, .section .hero__wrapper button span.form-button {
      display: inline-block;
      padding-left: 7px; }
    .section .hero__wrapper button:hover {
      opacity: 0.6; }
  .section .hero__wrapper a {
    opacity: 1;
    transition: opacity 0.5s; }
    .section .hero__wrapper a:hover {
      opacity: 0.6; }

.section .hero__logo {
  display: inline;
  padding: 5px;
  position: relative; }
  .section .hero__logo:after {
    background-color: #F4F2F1;
    bottom: 0;
    content: '';
    height: 1px;
    left: 0;
    margin: 0 auto;
    opacity: 0.6;
    position: absolute;
    right: 0; }

.home #header {
  display: none; }

.home .hero__wrapper {
  padding: 1em 0; }
  .home .hero__wrapper h1 {
    font-size: 5em;
    line-height: 1em; }
  .home .hero__wrapper .body--challenges {
    font-size: 1.25em; }
  @media (min-width: 1000px) {
    .home .hero__wrapper {
      padding: 0; } }
  @media (max-width: 600px) {
    .home .hero__wrapper h1 {
      font-size: 3.75em;
      line-height: 1.1em; } }

div[style="z-index:9999999;position:fixed; top: 20px; left:20px; background:red; padding: 7px 15px; font-size: 14px; font-family: arial; color: #fff; display: inline-block;"] {
  display: none !important; }

body.modal-open {
  overflow: hidden;
  position: relative; }
  body.modal-open:after {
    background-color: rgba(51, 51, 51, 0.75);
    content: '';
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 9998; }

.modal {
  background-color: #F0C000;
  color: #333333;
  display: block;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  transition: all 0.3s;
  opacity: 0;
  overflow: auto;
  pointer-events: none;
  width: 100%;
  z-index: 9999;
  -webkit-overflow-scrolling: touch; }
  @media (min-width: 600px) {
    .modal {
      height: auto;
      left: 50%;
      max-height: 80%;
      max-width: 800px;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 85%; } }
  @media (min-width: 1000px) {
    .modal {
      width: 75%; } }
  .modal.is-open {
    opacity: 1;
    pointer-events: all; }

.modal-close {
  position: absolute;
  right: 15px;
  top: 15px; }
  .modal-close svg * {
    stroke: #333333; }

.modal__inner {
  padding: 1rem; }
  .modal__inner h2 {
    font-size: 2.5rem; }
  .modal__inner h3 {
    font-weight: 700; }
  .modal__inner .link-button, .modal__inner .node-intro .cta, .node-intro .modal__inner .cta, .modal__inner .article-module .article-read, .article-module .modal__inner .article-read, .modal__inner .node-cta .cta, .node-cta .modal__inner .cta, .modal__inner .submit-cta .cta, .submit-cta .modal__inner .cta, .modal__inner .form button, .form .modal__inner button,
  .modal__inner .form input[type="submit"], .form .modal__inner input[type="submit"] {
    line-height: 2.25; }
    .modal__inner .link-button:hover, .modal__inner .node-intro .cta:hover, .node-intro .modal__inner .cta:hover, .modal__inner .article-module .article-read:hover, .article-module .modal__inner .article-read:hover, .modal__inner .node-cta .cta:hover, .node-cta .modal__inner .cta:hover, .modal__inner .submit-cta .cta:hover, .submit-cta .modal__inner .cta:hover, .modal__inner .form button:hover, .form .modal__inner button:hover,
    .modal__inner .form input[type="submit"]:hover, .form .modal__inner input[type="submit"]:hover {
      background-color: #333333;
      border-color: #333333;
      color: #F0C000; }
  .modal__inner .partner__type {
    background-color: #333333;
    color: #F0C000; }
  .modal__inner .read-more-link {
    align-items: center;
    display: flex;
    font-size: 0.75em;
    text-decoration: underline;
    text-transform: uppercase; }
    .modal__inner .read-more-link .icon--arrow {
      align-items: center;
      display: flex;
      flex-direction: row;
      justify-content: flex-end;
      width: 15px; }
      .modal__inner .read-more-link .icon--arrow svg {
        max-height: 12px; }
  @media (min-width: 600px) {
    .modal__inner {
      padding: 36px; } }

.search-results {
  margin-top: 20px;
  overflow-x: hidden;
  padding: 2rem 18px;
  min-height: 100vh; }
  .search-results h2 {
    padding: 5px 20px 10px; }

.search-results__list {
  padding: 0 20px; }

.search-results__group {
  width: 100%; }
  .search-results__group ul {
    padding-right: 40px; }
  .search-results__group > h3 {
    padding: 10px 0; }
  .search-results__group li a {
    padding: 10px 0; }
  .search-results__group .logo-list__name {
    max-width: 350px; }
  @media (min-width: 600px) {
    .search-results__group {
      padding: 1rem;
      width: calc(50% - 2rem); }
      .search-results__group--single {
        padding: 5px; }
      .search-results__group ul {
        padding-right: 1rem; } }
  @media (min-width: 1000px) {
    .search-results__group {
      width: calc(33% - 1rem); }
      .search-results__group li a {
        padding: 5px 0; } }

.fourofour {
  width: 100%;
  height: 100vh;
  background-color: #F0C000;
  color: #F4F2F1;
  display: flex;
  align-items: center;
  justify-content: center; }
  .fourofour h1 {
    font-size: 50vw; }
