@charset "UTF-8";
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: .67em 0; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

main {
  display: block; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

abbr[title] {
  border-bottom: 0;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: inherit; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

audio,
video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html [type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText; }

input {
  overflow: visible; }

[type='checkbox'],
[type='radio'] {
  padding: 0; }

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto; }

[type='search'] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }
  [type='search']::-webkit-search-cancel-button, [type='search']::-webkit-search-decoration {
    -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

fieldset {
  padding: .35em .75em .625em; }

legend {
  box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

details {
  display: block; }

summary {
  display: list-item; }

menu {
  display: block; }

canvas {
  display: inline-block; }

template {
  display: none; }

[hidden] {
  display: none; }

@use "../../settings.scss" as *;
* {
  box-sizing: border-box; }
  *::after, *::before {
    box-sizing: border-box; }

body,
html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  height: 100%; }

html {
  -webkit-font-smoothing: antialiased;
  font-size: 16px;
  font-variant-ligatures: no-common-ligatures;
  -moz-osx-font-smoothing: grayscale; }
  html.-js-menu-open, html.-js-foundation-menu-open {
    overflow: hidden; }
    html.-js-menu-open .blocker, html.-js-foundation-menu-open .blocker {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      opacity: 1;
      visibility: visible;
      background-color: rgba(2, 115, 186, 0.96);
      z-index: 9; }
      @media screen and (min-width: 1000px) {
        html.-js-menu-open .blocker, html.-js-foundation-menu-open .blocker {
          display: none; } }

body {
  color: #1a1a1a;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 100%;
  min-width: 320px;
  min-height: 100vh;
  line-height: 1.77; }
  @media (min-width: 1921px) {
    body {
      max-width: 1920px;
      margin-left: auto;
      margin-right: auto;
      box-shadow: 0 0 8px 0 rgba(26, 26, 26, 0.15); } }

.js-blocker {
  pointer-events: none;
  cursor: pointer;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #1a1a1a;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease-in-out;
  z-index: 99; }
  html[data-search='open'] .js-blocker,
  html[data-mobile-menu='open'] .js-blocker {
    pointer-events: auto;
    opacity: .9;
    visibility: visible; }
  @media screen and (min-width: 1300px) {
    html[data-mobile-menu='open'] .js-blocker {
      pointer-events: none;
      visibility: hidden; } }

hr {
  background-color: transparent;
  border: 0;
  border-bottom: solid 1px #edeff1;
  margin: 40px auto;
  clear: both; }

img {
  display: block;
  max-width: 100%;
  height: auto; }

figure {
  margin: 0; }

.video-container {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden; }
  .video-container .placeholder,
  .video-container embed,
  .video-container iframe,
  .video-container object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

iframe {
  border: 0; }

.sr-text {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  position: absolute;
  white-space: nowrap;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.-bg-left,
.-bg-right {
  position: relative; }
  .-bg-left::before,
  .-bg-right::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #edeff1;
    z-index: -1; }
  .-bg-left.-blue .-arrow-link,
  .-bg-right.-blue .-arrow-link {
    color: #fff; }
    .-bg-left.-blue .-arrow-link::before,
    .-bg-right.-blue .-arrow-link::before {
      color: #9fd64d; }
    .-bg-left.-blue .-arrow-link::after,
    .-bg-right.-blue .-arrow-link::after {
      color: #fff; }
    .-bg-left.-blue .-arrow-link.-external::after,
    .-bg-right.-blue .-arrow-link.-external::after {
      border-left: 1px solid rgba(255, 255, 255, 0.7); }
    .-bg-left.-blue .-arrow-link:active, .-bg-left.-blue .-arrow-link:hover, .-bg-left.-blue .-arrow-link:focus, .-bg-left.-blue .-arrow-link.-focused,
    .-bg-right.-blue .-arrow-link:active,
    .-bg-right.-blue .-arrow-link:hover,
    .-bg-right.-blue .-arrow-link:focus,
    .-bg-right.-blue .-arrow-link.-focused {
      color: #fff; }

.-bg-left::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  @media screen and (min-width: 1400px) {
    .-bg-left::before {
      position: absolute;
      top: 0;
      right: 20px;
      bottom: 0;
      left: 0;
      border-top-right-radius: 40px;
      border-bottom-right-radius: 40px; } }
  @media screen and (min-width: 1600px) {
    .-bg-left::before {
      position: absolute;
      top: 0;
      right: 80px;
      bottom: 0;
      left: 0; } }
  @media screen and (min-width: 1800px) {
    .-bg-left::before {
      position: absolute;
      top: 0;
      right: 167px;
      bottom: 0;
      left: 0; } }

.-bg-left.-blue::before {
  background: #253a6e;
  background: -webkit-linear-gradient(right, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
  background: linear-gradient(to left, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }

.-bg-right::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  @media screen and (min-width: 1400px) {
    .-bg-right::before {
      border-top-left-radius: 40px;
      border-bottom-left-radius: 40px;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 20px; } }
  @media screen and (min-width: 1600px) {
    .-bg-right::before {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 80px; } }
  @media screen and (min-width: 1800px) {
    .-bg-right::before {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 167px; } }

.-bg-right.-blue::before {
  background: #253a6e;
  background: -webkit-linear-gradient(left, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
  background: linear-gradient(to right, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }

.photo-credit {
  position: absolute;
  z-index: 0;
  top: auto;
  bottom: 0;
  right: 0;
  left: auto;
  padding: 5px 10px;
  background-color: rgba(26, 26, 26, 0.7);
  font-size: 15px;
  font-size: 0.9375rem;
  color: #e5e8ec; }

.wysiwyg-image {
  position: relative;
  margin-bottom: 30px; }
  .wysiwyg-image img {
    width: 100%; }
  .wysiwyg-image-photo-credit {
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: auto;
    right: 0;
    left: auto;
    padding: 5px 10px;
    background-color: rgba(26, 26, 26, 0.7);
    font-size: 15px;
    font-size: 0.9375rem;
    color: #e5e8ec;
    font-style: normal; }
    .wysiwyg-image-photo-credit::before {
      content: 'Photo: '; }
  .wysiwyg-image figcaption {
    position: relative;
    padding: 24px 30px 24px 35px;
    font-size: 16px;
    font-size: 1rem;
    font-style: italic;
    line-height: 1.5;
    box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.08);
    background-color: #fff; }
    .wysiwyg-image figcaption::before {
      content: '';
      width: 5px;
      height: calc(100% - 48px);
      position: absolute;
      top: 50%;
      right: auto;
      bottom: auto;
      left: 0;
      transform: translateY(-50%);
      background: #9fd64d;
      background: -webkit-linear-gradient(-270deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      background: linear-gradient(360deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      border-radius: 3px; }
  .wysiwyg-image.-center figcaption {
    border-radius: 0 0 8px; }
  .wysiwyg-image.-left, .wysiwyg-image.-right {
    margin: 30px 0;
    display: flex;
    flex-direction: column; }
    @media screen and (min-width: 768px) {
      .wysiwyg-image.-left, .wysiwyg-image.-right {
        display: inline-flex;
        width: 50%;
        max-width: 514px;
        margin: 30px 40px; } }
    @media screen and (min-width: 600px) {
      .wysiwyg-image.-left.-small, .wysiwyg-image.-right.-small {
        display: inline-flex;
        width: 30%;
        max-width: 514px;
        margin: 0 30px 20px; } }
    @media screen and (min-width: 768px) {
      .wysiwyg-image.-left.-small, .wysiwyg-image.-right.-small {
        width: 30%;
        margin: 0 30px 20px; } }
    .wysiwyg-image.-left figcaption, .wysiwyg-image.-right figcaption {
      margin-top: -45px; }
      @media screen and (min-width: 768px) {
        .wysiwyg-image.-left figcaption, .wysiwyg-image.-right figcaption {
          max-width: calc(100% - 82px);
          border-radius: 0 8px 8px 0; } }
  @media screen and (min-width: 600px) {
    .wysiwyg-image.-left.-small {
      float: left;
      margin-left: 0; } }
  @media screen and (min-width: 768px) {
    .wysiwyg-image.-left {
      float: left;
      margin-left: 0; } }
  @media screen and (min-width: 600px) {
    .wysiwyg-image.-right.-small {
      float: right;
      margin-right: 0; } }
  @media screen and (min-width: 768px) {
    .wysiwyg-image.-right {
      float: right;
      margin-right: 0; } }

.loader {
  color: #0273ba;
  font-size: 20px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0); }

@-webkit-keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0; }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em; }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0; }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em; } }

@keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0; }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em; }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em; }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0; }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em; } }

[class^='icon-']::before,
[class*=' icon-']::before {
  display: inline-block;
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-alert::before {
  content: ""; }

.icon-arrow-thick::before {
  content: ""; }

.icon-arrow-up::before {
  content: ""; }

.icon-book::before {
  content: ""; }

.icon-bubble::before {
  content: ""; }

.icon-calendar::before {
  content: ""; }

.icon-chevron::before {
  content: ""; }

.icon-chevron-back::before {
  content: ""; }

.icon-chevron-down::before {
  content: ""; }

.icon-circle::before {
  content: ""; }

.icon-close::before {
  content: ""; }

.icon-home::before {
  content: ""; }

.icon-lock::before {
  content: ""; }

.icon-mail::before {
  content: ""; }

.icon-menu::before {
  content: ""; }

.icon-minus::before {
  content: ""; }

.icon-plus::before {
  content: ""; }

.icon-search::before {
  content: ""; }

.icon-facebook::before {
  content: ""; }

.icon-instagram::before {
  content: ""; }

.icon-linkedin::before {
  content: ""; }

.icon-twitter::before {
  content: ""; }

.icon-youtube::before {
  content: ""; }

.icon-zoom-in::before {
  content: ""; }

.icon-shield::before {
  content: ""; }

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  color: #1a1a1a;
  font-weight: 800;
  margin: 0 0 20px;
  font-kerning: normal;
  font-variant-ligatures: common-ligatures, contextual;
  font-feature-settings: 'kern', 'liga', 'clig', 'calt'; }
  .h1:last-child,
  .h2:last-child,
  .h3:last-child,
  .h4:last-child,
  .h5:last-child,
  .h6:last-child,
  h1:last-child,
  h2:last-child,
  h3:last-child,
  h4:last-child,
  h5:last-child,
  h6:last-child {
    margin-bottom: 0; }
  .h1 a,
  .h2 a,
  .h3 a,
  .h4 a,
  .h5 a,
  .h6 a,
  h1 a,
  h2 a,
  h3 a,
  h4 a,
  h5 a,
  h6 a {
    text-decoration: none;
    box-shadow: none; }
  .h1.-center,
  .h2.-center,
  .h3.-center,
  .h4.-center,
  .h5.-center,
  .h6.-center,
  h1.-center,
  h2.-center,
  h3.-center,
  h4.-center,
  h5.-center,
  h6.-center {
    text-align: center; }
  .h1.-right,
  .h2.-right,
  .h3.-right,
  .h4.-right,
  .h5.-right,
  .h6.-right,
  h1.-right,
  h2.-right,
  h3.-right,
  h4.-right,
  h5.-right,
  h6.-right {
    text-align: right; }
  .h1.-white,
  .h2.-white,
  .h3.-white,
  .h4.-white,
  .h5.-white,
  .h6.-white,
  h1.-white,
  h2.-white,
  h3.-white,
  h4.-white,
  h5.-white,
  h6.-white {
    color: #fff; }
  .h1.-gray,
  .h2.-gray,
  .h3.-gray,
  .h4.-gray,
  .h5.-gray,
  .h6.-gray,
  h1.-gray,
  h2.-gray,
  h3.-gray,
  h4.-gray,
  h5.-gray,
  h6.-gray {
    color: #edeff1; }
  .h1.-line-above::before,
  .h2.-line-above::before,
  .h3.-line-above::before,
  .h4.-line-above::before,
  .h5.-line-above::before,
  .h6.-line-above::before,
  h1.-line-above::before,
  h2.-line-above::before,
  h3.-line-above::before,
  h4.-line-above::before,
  h5.-line-above::before,
  h6.-line-above::before {
    content: '';
    display: block;
    text-align: center;
    margin: 0 auto 35px;
    width: 120px;
    height: 6px;
    border-radius: 3px;
    background-color: #9fd64d; }

.h1,
.wysiwyg-content h1 {
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  text-rendering: optimizeLegibility;
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.13333;
  margin: 0 0 20px; }
  @media screen and (min-width: 1000px) {
    .h1,
    .wysiwyg-content h1 {
      font-size: 60px;
      font-size: 3.75rem; } }

.h2,
.wysiwyg-content h2 {
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  text-rendering: optimizeLegibility;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.13333; }
  @media screen and (min-width: 1000px) {
    .h2,
    .wysiwyg-content h2 {
      font-size: 50px;
      font-size: 3.125rem; } }

.h3,
.wysiwyg-content h3 {
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1.2; }
  @media screen and (min-width: 1000px) {
    .h3,
    .wysiwyg-content h3 {
      font-size: 40px;
      font-size: 2.5rem; } }

.h4,
.wysiwyg-content h4 {
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.3125; }
  @media screen and (min-width: 1000px) {
    .h4,
    .wysiwyg-content h4 {
      font-size: 32px;
      font-size: 2rem; } }

.h5,
.wysiwyg-content h5 {
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.41667; }
  @media screen and (min-width: 1000px) {
    .h5,
    .wysiwyg-content h5 {
      font-size: 24px;
      font-size: 1.5rem; } }

.h6,
.wysiwyg-content h6 {
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 20px;
  line-height: 1.7; }
  @media screen and (min-width: 1000px) {
    .h6,
    .wysiwyg-content h6 {
      font-size: 20px;
      font-size: 1.25rem; } }

.eyebrow {
  display: flex;
  align-items: center;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  margin-bottom: 20px;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 1.4px; }
  .eyebrow::before {
    content: '';
    display: block;
    width: 5px;
    height: 30px;
    margin-right: 15px;
    background: #9fd64d;
    background: -webkit-linear-gradient(-270deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
    background: linear-gradient(360deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
    border-radius: 3px; }
  .eyebrow.-centered {
    justify-content: center; }
  .eyebrow.-large {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 800; }
    .eyebrow.-large::before {
      height: 45px; }
  .eyebrow.-lowercase {
    letter-spacing: normal;
    text-transform: none; }

p {
  font-size: 18px;
  font-size: 1.125rem;
  margin: 0 0 20px;
  line-height: 1.6; }
  @media screen and (min-width: 768px) {
    p {
      line-height: 1.77; } }
  p:last-child {
    margin-bottom: 0; }
  p.-center {
    text-align: center; }
  p.-right {
    text-align: right; }
  p.-white {
    color: #fff; }
  p.-gray {
    color: #edeff1; }

ul,
ol {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 18px;
  font-size: 1.125rem;
  margin: 0 0 35px; }

.wysiwyg-content h1,
.wysiwyg-content h2,
.wysiwyg-content h3,
.wysiwyg-content h4,
.wysiwyg-content h5,
.wysiwyg-content h6 {
  margin: 1.5rem 0 .75rem; }

.wysiwyg-content h1 {
  font-size: 30px;
  font-size: 1.875rem; }
  @media screen and (min-width: 1000px) {
    .wysiwyg-content h1 {
      font-size: 40px;
      font-size: 2.5rem; } }

.wysiwyg-content h2 {
  font-size: 26px;
  font-size: 1.625rem; }
  @media screen and (min-width: 1000px) {
    .wysiwyg-content h2 {
      font-size: 32px;
      font-size: 2rem; } }

.wysiwyg-content h3 {
  font-size: 22px;
  font-size: 1.375rem; }
  @media screen and (min-width: 1000px) {
    .wysiwyg-content h3 {
      font-size: 24px;
      font-size: 1.5rem; } }

.wysiwyg-content h4 {
  font-size: 20px;
  font-size: 1.25rem; }
  @media screen and (min-width: 1000px) {
    .wysiwyg-content h4 {
      font-size: 20px;
      font-size: 1.25rem; } }

.wysiwyg-content h5,
.wysiwyg-content h6 {
  font-size: 18px;
  font-size: 1.125rem; }
  @media screen and (min-width: 1000px) {
    .wysiwyg-content h5,
    .wysiwyg-content h6 {
      font-size: 18px;
      font-size: 1.125rem; } }

.wysiwyg-content ul,
.wysiwyg-content ol {
  overflow: auto;
  margin-bottom: 20px; }
  .wysiwyg-content ul ul,
  .wysiwyg-content ul ol,
  .wysiwyg-content ol ul,
  .wysiwyg-content ol ol {
    margin-top: 20px;
    margin-bottom: 0; }

.wysiwyg-content li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 22px; }
  .wysiwyg-content li::before {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 10px;
    right: auto;
    bottom: auto;
    left: 0;
    font-size: 8px;
    font-size: 0.5rem;
    color: #059bd6; }

.wysiwyg-content ol {
  counter-reset: item; }
  .wysiwyg-content ol li::before {
    position: static;
    content: counters(item, ".") ".";
    counter-increment: item;
    color: #1a1a1a;
    font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif !important;
    line-height: 29px;
    line-height: 1.8125rem;
    font-weight: 800;
    margin-right: 8px;
    font-size: inherit; }

.-blue .wysiwyg-content a:not(.btn) {
  color: #fff;
  border-bottom: 2px solid #9fd64d; }
  .-blue .wysiwyg-content a:not(.btn):active, .-blue .wysiwyg-content a:not(.btn):hover, .-blue .wysiwyg-content a:not(.btn):focus, .-blue .wysiwyg-content a:not(.btn).-focused {
    color: #9fd64d;
    border-color: rgba(159, 214, 77, 0.7);
    box-shadow: 0 2px 0 rgba(159, 214, 77, 0.7); }

.-blue .wysiwyg-content li {
  color: #fff; }
  .-blue .wysiwyg-content li::before {
    color: #9fd64d; }

ol {
  counter-reset: item; }
  ol li::before {
    content: counters(item, ".") ".";
    counter-increment: item;
    color: #1a1a1a;
    font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif !important;
    line-height: 29px;
    line-height: 1.8125rem;
    font-weight: 800;
    margin-right: 8px; }
  ol li ol {
    margin-left: 24px; }
  ol:last-child {
    margin-bottom: 0; }

blockquote {
  position: relative;
  font-size: 20px;
  font-size: 1.25rem;
  padding-left: 28px;
  margin: 0 0 38px;
  line-height: 1.4;
  font-weight: 800; }
  blockquote::before {
    content: '';
    display: block;
    width: 5px;
    position: absolute;
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    background: #9fd64d;
    background: -webkit-linear-gradient(-270deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
    background: linear-gradient(360deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
    border-radius: 3px; }
  @media screen and (min-width: 768px) {
    blockquote {
      font-size: 24px;
      font-size: 1.5rem; } }
  blockquote:last-child {
    margin-bottom: 0; }

.callout {
  position: relative;
  margin: 40px 0 30px;
  padding: 30px 36px;
  background: rgba(37, 58, 110, 0.93);
  background: -webkit-linear-gradient(-190deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
  background: linear-gradient(280deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
  border-radius: 10px; }
  .callout::before {
    content: '';
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    position: absolute;
    top: 2px;
    right: auto;
    bottom: auto;
    left: 2px;
    background-color: #fff;
    border-radius: 8px; }
  @media screen and (min-width: 768px) {
    .callout {
      padding: 36px 40px; } }
  .callout * {
    position: relative;
    z-index: 2; }
  .callout:last-child {
    margin-bottom: 0; }

a {
  display: inline-block;
  color: #0273ba;
  text-decoration: none;
  transition: color 0.15s ease-in-out, border 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  a:active, a:hover, a:focus, a.-focused {
    color: #015488;
    outline: 0; }
  a.-underline:not(.btn),
  .wysiwyg-content a:not(.btn) {
    display: inline;
    color: #0273ba;
    border-bottom: 2px solid rgba(5, 155, 214, 0.5); }
    a.-underline:not(.btn):active, a.-underline:not(.btn):hover, a.-underline:not(.btn):focus, a.-underline:not(.btn).-focused,
    .wysiwyg-content a:not(.btn):active,
    .wysiwyg-content a:not(.btn):hover,
    .wysiwyg-content a:not(.btn):focus,
    .wysiwyg-content a:not(.btn).-focused {
      color: #059bd6;
      border-color: rgba(5, 155, 214, 0.5);
      box-shadow: 0 2px 0 rgba(5, 155, 214, 0.5); }
  a:disabled, a[disabled] {
    opacity: .5;
    pointer-events: none; }
  a.-white {
    color: #fff; }
    a.-white:not(.btn) {
      display: inline;
      border-bottom: 2px solid rgba(255, 255, 255, 0.5); }
      a.-white:not(.btn):active, a.-white:not(.btn):hover, a.-white:not(.btn):focus, a.-white:not(.btn).-focused {
        border-bottom: 2px solid white;
        box-shadow: 0 2px 0 white; }
  a.-arrow-link {
    position: relative;
    padding-left: 28px;
    color: #253a6e;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 700;
    transition: 0.15s ease-in-out; }
    a.-arrow-link::before {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      display: inline-block;
      top: 7px;
      left: 0;
      margin-right: 10px;
      color: #059bd6;
      transition: 0.15s ease-in-out; }
    a.-arrow-link span {
      display: inline;
      background-image: linear-gradient(#059bd6, #059bd6);
      background-position: 0% 100%;
      background-repeat: no-repeat;
      background-size: 0% 3px;
      transition: 0.15s ease-in-out;
      padding-bottom: 3px; }
    a.-arrow-link.-external::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: relative;
      top: -2px;
      color: #253a6e;
      font-size: 10px;
      font-size: 0.625rem;
      transition: 0.15s ease-in-out;
      border-left: 1px solid rgba(95, 106, 120, 0.3);
      margin-left: 4px;
      padding: 2px 0 2px 7px; }
    a.-arrow-link.-lock::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: relative;
      margin-left: 5px;
      color: #5f6a78;
      font-size: 13px;
      font-size: 0.8125rem;
      transition: 0.15s ease-in-out; }
    a.-arrow-link.-white {
      color: #fff; }
      a.-arrow-link.-white:not(.btn) {
        display: inline-block;
        border-bottom: 0; }
      a.-arrow-link.-white::before {
        color: #9fd64d; }
      a.-arrow-link.-white span {
        background-image: linear-gradient(#059bd6, #059bd6);
        background-size: 100% 3px; }
      a.-arrow-link.-white:active, a.-arrow-link.-white:hover, a.-arrow-link.-white:focus, a.-arrow-link.-white.-focused {
        color: #fff; }
        a.-arrow-link.-white:active:not(.btn), a.-arrow-link.-white:hover:not(.btn), a.-arrow-link.-white:focus:not(.btn), a.-arrow-link.-white.-focused:not(.btn) {
          border-bottom: 0;
          box-shadow: none; }
    a.-arrow-link:active, a.-arrow-link:hover, a.-arrow-link:focus, a.-arrow-link.-focused {
      color: #059bd6; }
      a.-arrow-link:active span, a.-arrow-link:hover span, a.-arrow-link:focus span, a.-arrow-link.-focused span {
        background-size: 100% 3px; }
      a.-arrow-link:active::before, a.-arrow-link:hover::before, a.-arrow-link:focus::before, a.-arrow-link.-focused::before {
        left: 5px; }
      a.-arrow-link:active::after, a.-arrow-link:hover::after, a.-arrow-link:focus::after, a.-arrow-link.-focused::after {
        color: #059bd6; }

button {
  cursor: pointer; }
  button:focus {
    outline: 0; }

.btn,
.button {
  cursor: pointer;
  display: inline-block;
  position: relative;
  background-color: #fff;
  background-clip: padding-box;
  color: #1a1a1a;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 24px;
  line-height: 1.5rem;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
  padding: 15px 35px;
  border: solid 2px transparent;
  border-radius: 30px;
  transition: 0.15s ease-in-out, background-color 0s; }
  .-bg-left .btn,
  .-bg-right .btn, .-bg-left
  .button,
  .-bg-right
  .button {
    background-color: #edeff1; }
  .btn::before,
  .button::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(40deg, #059bd6 6%, #253a6e 98%);
    border-radius: inherit;
    margin: -2px;
    transition: 0.15s ease-in-out;
    z-index: -1; }
  .btn.-small,
  .button.-small {
    padding: 8px 24px; }
  .btn.-external::after,
  .button.-external::after {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    top: 0;
    color: #0273ba;
    font-size: 12px;
    font-size: 0.75rem;
    transition: 0.15s ease-in-out;
    border-left: 1px solid rgba(95, 106, 120, 0.3);
    margin-left: 4px;
    padding: 4px 0 4px 10px; }
  .btn.-lock::after,
  .button.-lock::after {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    top: 0;
    margin-left: 5px;
    padding: 4px 0 4px 10px;
    border-left: 1px solid rgba(95, 106, 120, 0.3);
    color: #0273ba;
    font-size: 13px;
    font-size: 0.8125rem;
    transition: 0.15s ease-in-out; }
  .btn:active, .btn:hover, .btn:focus, .btn.-focused,
  .button:active,
  .button:hover,
  .button:focus,
  .button.-focused {
    background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
    color: #fff;
    outline: 0;
    background-color: transparent; }
    .btn:active::before, .btn:hover::before, .btn:focus::before, .btn.-focused::before,
    .button:active::before,
    .button:hover::before,
    .button:focus::before,
    .button.-focused::before {
      background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
    .btn:active::after, .btn:hover::after, .btn:focus::after, .btn.-focused::after,
    .button:active::after,
    .button:hover::after,
    .button:focus::after,
    .button.-focused::after {
      color: #fff;
      border-left: 1px solid rgba(229, 232, 236, 0.3); }
  .btn:focus,
  .button:focus {
    background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
    color: #fff;
    outline: 0;
    background-color: transparent; }
    .btn:focus::before,
    .button:focus::before {
      background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='30' ry='30' stroke='rgba(95,106,120, .58)' stroke-width='3' stroke-dasharray='4%2c 5' stroke-dashoffset='14' stroke-linecap='square'/%3e%3c/svg%3e");
      border-radius: 30px; }
  .btn.-white,
  .button.-white {
    transition: ease-in-out 0.15s, background-color 0.3s ease, color 0.1s ease;
    color: #1a1a1a; }
    .btn.-white::before,
    .button.-white::before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-image: linear-gradient(40deg, #9fd64d 6%, #9fd64d 98%);
      margin: 0;
      border-radius: inherit;
      transition: 0.15s ease-in-out;
      z-index: -1; }
    .btn.-white:active, .btn.-white:hover, .btn.-white:focus, .btn.-white.-focused,
    .button.-white:active,
    .button.-white:hover,
    .button.-white:focus,
    .button.-white.-focused {
      background-image: linear-gradient(40deg, #9fd64d 6%, #9fd64d 98%);
      color: #012a52;
      outline: 0;
      margin: 0;
      background-color: transparent; }
      .btn.-white:active::before, .btn.-white:hover::before, .btn.-white:focus::before, .btn.-white.-focused::before,
      .button.-white:active::before,
      .button.-white:hover::before,
      .button.-white:focus::before,
      .button.-white.-focused::before {
        background-image: linear-gradient(40deg, #9fd64d 6%, #9fd64d 98%); }
      .btn.-white:active::after, .btn.-white:hover::after, .btn.-white:focus::after, .btn.-white.-focused::after,
      .button.-white:active::after,
      .button.-white:hover::after,
      .button.-white:focus::after,
      .button.-white.-focused::after {
        color: #0273ba;
        border-left: 1px solid rgba(2, 115, 186, 0.8); }
    .btn.-white:focus,
    .button.-white:focus {
      background-image: linear-gradient(40deg, #9fd64d 6%, #9fd64d 98%);
      color: #0273ba;
      outline: 0;
      background-color: transparent; }
      .btn.-white:focus::before,
      .button.-white:focus::before {
        background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='30' ry='30' stroke='rgba(255, 255, 255, .7)' stroke-width='3' stroke-dasharray='4%2c 5' stroke-dashoffset='14' stroke-linecap='square'/%3e%3c/svg%3e");
        border-radius: 30px;
        margin: -2px; }
  .btn.-gray,
  .button.-gray {
    background-color: #edeff1; }
  .wysiwyg-content .btn,
  .wp-editor .btn, .wysiwyg-content
  .button,
  .wp-editor
  .button {
    margin-top: 5px; }
  .btn:disabled, .btn[disabled],
  .button:disabled,
  .button[disabled] {
    pointer-events: none;
    background: #949494;
    color: #fff;
    border-color: #949494; }
    .btn:disabled::before, .btn[disabled]::before,
    .button:disabled::before,
    .button[disabled]::before {
      display: none; }

.slick-arrow {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  background-color: #037fb0;
  border: 0;
  outline: 0;
  padding: 0;
  border-radius: 50%;
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.1);
  color: #fff;
  font-size: 0;
  transition: 0.15s ease-in-out; }
  .slick-arrow::before {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    left: calc(50% + 2px);
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 16px;
    font-size: 1rem; }
  .slick-arrow:active, .slick-arrow:hover, .slick-arrow:focus, .slick-arrow.-focused {
    background-color: #fff;
    color: #059bd6; }
  .slick-arrow.slick-prev::before {
    left: calc(50% - 2px);
    transform: scaleX(-1) translate(50%, -50%); }

.wufoo-form-asce-container input[type='submit'] {
  border: 2px solid #0273ba;
  transition: border 0s; }
  .wufoo-form-asce-container input[type='submit']:active, .wufoo-form-asce-container input[type='submit']:hover, .wufoo-form-asce-container input[type='submit']:focus, .wufoo-form-asce-container input[type='submit'].-focused {
    border: 0;
    padding: 17px 37px; }

.wufoo-form-asce-container input.btn[type='submit'] {
  border: 2px solid #0273ba;
  transition: border 0s; }
  .wufoo-form-asce-container input.btn[type='submit']:active, .wufoo-form-asce-container input.btn[type='submit']:hover, .wufoo-form-asce-container input.btn[type='submit']:focus, .wufoo-form-asce-container input.btn[type='submit'].-focused {
    border: 0;
    padding: 17px 37px; }

input.btn {
  border: 2px solid #0273ba;
  transition: border 0s; }
  input.btn:active, input.btn:hover, input.btn:focus, input.btn.-focused {
    border: 0;
    padding: 17px 37px; }

fieldset {
  padding: 0;
  border: 0;
  margin: 0; }
  fieldset legend {
    display: block;
    margin-bottom: 10px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500; }
  fieldset.is-required legend::after {
    display: inline-block;
    position: relative;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    padding-left: .5rem;
    color: #dc3545;
    content: "*"; }

label {
  display: block; }

.form-field {
  margin: 0 0 30px; }
  .form-field label {
    margin-bottom: 10px; }
  .form-field:not(.checks):not(.radios) label {
    font-weight: 800; }
  .form-field.is-required:not(.radios):not(.checks) label::after {
    display: inline-block;
    position: relative;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    padding-left: .5rem;
    color: #dc3545;
    content: "*"; }

.error-message {
  color: #dc3545;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  margin-top: 8px; }

input[type='text'],
input[type='email'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='url'],
select,
textarea {
  display: block;
  width: 100%;
  background-color: #fff;
  color: #1a1a1a;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 16px;
  padding: 12px 15px;
  border: 1px solid rgba(95, 106, 120, 0.6);
  border-radius: 26px;
  box-shadow: 0;
  margin: 0;
  -webkit-appearance: none;
  transition: 0.15s ease-in-out; }
  input[type='text']::-webkit-input-placeholder,
  input[type='email']::-webkit-input-placeholder,
  input[type='password']::-webkit-input-placeholder,
  input[type='search']::-webkit-input-placeholder,
  input[type='tel']::-webkit-input-placeholder,
  input[type='url']::-webkit-input-placeholder,
  select::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #767676;
    opacity: 1; }
  input[type='text']::-ms-placeholder,
  input[type='email']::-ms-placeholder,
  input[type='password']::-ms-placeholder,
  input[type='search']::-ms-placeholder,
  input[type='tel']::-ms-placeholder,
  input[type='url']::-ms-placeholder,
  select::-ms-placeholder,
  textarea::-ms-placeholder {
    color: #767676;
    opacity: 1; }
  input[type='text']::placeholder,
  input[type='email']::placeholder,
  input[type='password']::placeholder,
  input[type='search']::placeholder,
  input[type='tel']::placeholder,
  input[type='url']::placeholder,
  select::placeholder,
  textarea::placeholder {
    color: #767676;
    opacity: 1; }
  input[type='text']:focus,
  input[type='email']:focus,
  input[type='password']:focus,
  input[type='search']:focus,
  input[type='tel']:focus,
  input[type='url']:focus,
  select:focus,
  textarea:focus {
    border-color: #5fcffb;
    box-shadow: 0 0 0 0.25rem rgba(5, 155, 214, 0.25);
    outline: none; }
  input[type='text'].-invalid,
  input[type='email'].-invalid,
  input[type='password'].-invalid,
  input[type='search'].-invalid,
  input[type='tel'].-invalid,
  input[type='url'].-invalid,
  select.-invalid,
  textarea.-invalid {
    color: #dc3545;
    border-color: #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); }
    input[type='text'].-invalid::-webkit-input-placeholder,
    input[type='email'].-invalid::-webkit-input-placeholder,
    input[type='password'].-invalid::-webkit-input-placeholder,
    input[type='search'].-invalid::-webkit-input-placeholder,
    input[type='tel'].-invalid::-webkit-input-placeholder,
    input[type='url'].-invalid::-webkit-input-placeholder,
    select.-invalid::-webkit-input-placeholder,
    textarea.-invalid::-webkit-input-placeholder {
      color: inherit; }
    input[type='text'].-invalid::-ms-placeholder,
    input[type='email'].-invalid::-ms-placeholder,
    input[type='password'].-invalid::-ms-placeholder,
    input[type='search'].-invalid::-ms-placeholder,
    input[type='tel'].-invalid::-ms-placeholder,
    input[type='url'].-invalid::-ms-placeholder,
    select.-invalid::-ms-placeholder,
    textarea.-invalid::-ms-placeholder {
      color: inherit; }
    input[type='text'].-invalid::placeholder,
    input[type='email'].-invalid::placeholder,
    input[type='password'].-invalid::placeholder,
    input[type='search'].-invalid::placeholder,
    input[type='tel'].-invalid::placeholder,
    input[type='url'].-invalid::placeholder,
    select.-invalid::placeholder,
    textarea.-invalid::placeholder {
      color: inherit; }
  input[type='text']:disabled,
  input[type='email']:disabled,
  input[type='password']:disabled,
  input[type='search']:disabled,
  input[type='tel']:disabled,
  input[type='url']:disabled,
  select:disabled,
  textarea:disabled {
    color: #636363;
    background-color: #f1f3f5;
    border-color: rgba(95, 106, 120, 0.6);
    box-shadow: none; }

textarea {
  min-height: 100px;
  resize: vertical;
  border-radius: 13px; }

input[type='number'] {
  display: block;
  width: auto;
  background-color: #fff;
  color: #1a1a1a;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 16px;
  padding: 12px 15px;
  border: 1px solid rgba(95, 106, 120, 0.6);
  border-radius: 13px;
  box-shadow: 0;
  margin: 0;
  -webkit-appearance: none;
  transition: 0.15s ease-in-out; }
  input[type='number']::-webkit-input-placeholder {
    color: #767676;
    opacity: 1; }
  input[type='number']::-ms-placeholder {
    color: #767676;
    opacity: 1; }
  input[type='number']::placeholder {
    color: #767676;
    opacity: 1; }
  input[type='number']:focus {
    border-color: #5fcffb;
    box-shadow: 0 0 0 0.25rem rgba(5, 155, 214, 0.25);
    outline: none; }
  input[type='number'].-invalid {
    color: #dc3545;
    border-color: #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); }
    input[type='number'].-invalid::-webkit-input-placeholder {
      color: inherit; }
    input[type='number'].-invalid::-ms-placeholder {
      color: inherit; }
    input[type='number'].-invalid::placeholder {
      color: inherit; }
  input[type='number']:disabled {
    color: #636363;
    background-color: #f1f3f5;
    border-color: rgba(95, 106, 120, 0.6);
    box-shadow: none; }

input[type='date'],
input[type='datetime-local'],
input[type='month'],
input[type='time'],
input[type='week'] {
  display: block;
  width: auto;
  background-color: #fff;
  color: #1a1a1a;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-size: 16px;
  padding: 12px 15px;
  border: 1px solid rgba(95, 106, 120, 0.6);
  border-radius: 26px;
  box-shadow: 0;
  margin: 0;
  -webkit-appearance: none;
  transition: 0.15s ease-in-out;
  cursor: default; }
  input[type='date']::-webkit-calendar-picker-indicator,
  input[type='datetime-local']::-webkit-calendar-picker-indicator,
  input[type='month']::-webkit-calendar-picker-indicator,
  input[type='time']::-webkit-calendar-picker-indicator,
  input[type='week']::-webkit-calendar-picker-indicator {
    cursor: pointer; }
  input[type='date']::-webkit-input-placeholder,
  input[type='datetime-local']::-webkit-input-placeholder,
  input[type='month']::-webkit-input-placeholder,
  input[type='time']::-webkit-input-placeholder,
  input[type='week']::-webkit-input-placeholder {
    color: #767676;
    opacity: 1; }
  input[type='date']::-ms-placeholder,
  input[type='datetime-local']::-ms-placeholder,
  input[type='month']::-ms-placeholder,
  input[type='time']::-ms-placeholder,
  input[type='week']::-ms-placeholder {
    color: #767676;
    opacity: 1; }
  input[type='date']::placeholder,
  input[type='datetime-local']::placeholder,
  input[type='month']::placeholder,
  input[type='time']::placeholder,
  input[type='week']::placeholder {
    color: #767676;
    opacity: 1; }
  input[type='date']:focus,
  input[type='datetime-local']:focus,
  input[type='month']:focus,
  input[type='time']:focus,
  input[type='week']:focus {
    border-color: #5fcffb;
    box-shadow: 0 0 0 0.25rem rgba(5, 155, 214, 0.25);
    outline: none; }
  input[type='date'].-invalid,
  input[type='datetime-local'].-invalid,
  input[type='month'].-invalid,
  input[type='time'].-invalid,
  input[type='week'].-invalid {
    color: #dc3545;
    border-color: #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); }
    input[type='date'].-invalid::-webkit-input-placeholder,
    input[type='datetime-local'].-invalid::-webkit-input-placeholder,
    input[type='month'].-invalid::-webkit-input-placeholder,
    input[type='time'].-invalid::-webkit-input-placeholder,
    input[type='week'].-invalid::-webkit-input-placeholder {
      color: inherit; }
    input[type='date'].-invalid::-ms-placeholder,
    input[type='datetime-local'].-invalid::-ms-placeholder,
    input[type='month'].-invalid::-ms-placeholder,
    input[type='time'].-invalid::-ms-placeholder,
    input[type='week'].-invalid::-ms-placeholder {
      color: inherit; }
    input[type='date'].-invalid::placeholder,
    input[type='datetime-local'].-invalid::placeholder,
    input[type='month'].-invalid::placeholder,
    input[type='time'].-invalid::placeholder,
    input[type='week'].-invalid::placeholder {
      color: inherit; }
  input[type='date']:disabled,
  input[type='datetime-local']:disabled,
  input[type='month']:disabled,
  input[type='time']:disabled,
  input[type='week']:disabled {
    color: #636363;
    background-color: #f1f3f5;
    border-color: rgba(95, 106, 120, 0.6);
    box-shadow: none; }

input[type='range'] {
  display: block;
  width: 100%;
  background: #fff; }
  input[type='range']:focus {
    outline: none; }
  input[type='range']:disabled {
    opacity: 0.65; }

select {
  background-image: url("https://cdn.asce.org/asg/images/blue-select-arrow-down.svg");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 32px auto;
  text-decoration: none;
  appearance: none;
  padding-right: 35px; }
  select:hover {
    cursor: pointer; }
  select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #666; }
  select::-ms-expand {
    display: none; }
  select:disabled {
    cursor: default;
    color: #636363;
    background-color: #f1f3f5;
    border-color: rgba(95, 106, 120, 0.6);
    box-shadow: none;
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='34px' height='32px' viewBox='0 0 34 32' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3Ebutton / down-arrow / gray%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='Event-Detail-multiple-dates_alt' transform='translate(-693.000000, -524.000000)'%3E%3Cg id='button-/-down-arrow' transform='translate(693.000000, 524.000000)'%3E%3Cg transform='translate(0.333333, 0.000000)'%3E%3Ccircle id='Oval' fill='%23636363' fill-opacity='.65' cx='16.8333333' cy='16' r='16'%3E%3C/circle%3E%3Cg id='Group' transform='translate(5.333333, 5.000000)' fill='%23FFFFFF' fill-opacity='.65'%3E%3Cg id='ui-/-icon-/-chevron' transform='translate(11.500000, 11.500000) rotate(90.000000) translate(-11.500000, -11.500000) '%3E%3Cpath d='M9.99338447,5.84813946 C9.79976363,5.65490866 9.567649,5.55833333 9.29741559,5.55833333 C9.03221826,5.55833333 8.80280917,5.65490866 8.60905439,5.84813946 L8.03550488,6.42016459 C7.84172331,6.60324363 7.74485931,6.83205902 7.74485931,7.10666422 C7.74485931,7.38121598 7.84172331,7.61003138 8.03550488,7.79316384 L11.636612,11.4999466 L8.03542452,15.1993025 C7.84166974,15.3923997 7.74477895,15.6238065 7.74477895,15.8933892 C7.74477895,16.1629185 7.84166974,16.3942986 8.03542452,16.5873958 L8.60900081,17.1594209 C8.80789881,17.3475759 9.0373079,17.4416667 9.29733523,17.4416667 C9.56250577,17.4416667 9.79459362,17.3475759 9.9933309,17.1594209 L14.9721564,12.1940333 C15.1608215,12.0058784 15.255221,11.7745785 15.255221,11.4999466 C15.255221,11.2203189 15.1608215,10.9913967 14.9722367,10.8135271 L9.99338447,5.84813946 Z' id='Fill-1'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }

.checks legend,
.radios legend {
  margin-bottom: 15px; }

.checks .error-message,
.radios .error-message {
  margin-top: -10px;
  margin-bottom: 15px; }

.checks .check,
.checks .radio,
.radios .check,
.radios .radio {
  position: relative;
  margin-bottom: 15px; }
  .checks .check:last-child,
  .checks .radio:last-child,
  .radios .check:last-child,
  .radios .radio:last-child {
    margin: 0; }

.checks label,
.radios label {
  cursor: pointer;
  position: relative;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.25;
  padding: 0 0 0 40px;
  margin: 0; }
  .checks label::before,
  .radios label::before {
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    color: transparent;
    font-size: 16px;
    font-size: 1rem;
    line-height: 22px;
    text-align: center;
    border: 1px solid rgba(95, 106, 120, 0.6);
    transition: color 0.15s ease-in-out; }

.checks input[type='checkbox'],
.checks input[type='radio'],
.radios input[type='checkbox'],
.radios input[type='radio'] {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  position: absolute;
  white-space: nowrap;
  height: 1px;
  width: 1px;
  overflow: hidden; }
  .checks input[type='checkbox']:focus + label::before,
  .checks input[type='checkbox'] + label:hover::before,
  .checks input[type='radio']:focus + label::before,
  .checks input[type='radio'] + label:hover::before,
  .radios input[type='checkbox']:focus + label::before,
  .radios input[type='checkbox'] + label:hover::before,
  .radios input[type='radio']:focus + label::before,
  .radios input[type='radio'] + label:hover::before {
    border-color: #5fcffb;
    box-shadow: 0 0 0 0.25rem rgba(5, 155, 214, 0.25); }
  .checks input[type='checkbox']:checked + label::before,
  .checks input[type='checkbox']:checked ~ label::before,
  .checks input[type='radio']:checked + label::before,
  .checks input[type='radio']:checked ~ label::before,
  .radios input[type='checkbox']:checked + label::before,
  .radios input[type='checkbox']:checked ~ label::before,
  .radios input[type='radio']:checked + label::before,
  .radios input[type='radio']:checked ~ label::before {
    color: #9fd64d; }

.checks input[type='checkbox'] + label::before,
.checks input[type='checkbox'] ~ label::before,
.radios input[type='checkbox'] + label::before,
.radios input[type='checkbox'] ~ label::before {
  content: ""; }

.checks input[type='checkbox'] + label::before,
.checks input[type='checkbox'] ~ label::before,
.radios input[type='checkbox'] + label::before,
.radios input[type='checkbox'] ~ label::before {
  border-radius: 0.25rem; }

.checks input[type='checkbox']:checked + label::before,
.checks input[type='checkbox']:checked ~ label::before,
.radios input[type='checkbox']:checked + label::before,
.radios input[type='checkbox']:checked ~ label::before {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75%;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%239fd64d' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"); }

.checks input[type='checkbox'].-validated.-invalid + label::before,
.checks input[type='checkbox'].-validated.-invalid ~ label::before,
.radios input[type='checkbox'].-validated.-invalid + label::before,
.radios input[type='checkbox'].-validated.-invalid ~ label::before {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); }

.checks input[type='checkbox']:disabled + label,
.checks input[type='checkbox']:disabled ~ label,
.radios input[type='checkbox']:disabled + label,
.radios input[type='checkbox']:disabled ~ label {
  cursor: default;
  color: #767676; }
  .checks input[type='checkbox']:disabled + label::before,
  .checks input[type='checkbox']:disabled ~ label::before,
  .radios input[type='checkbox']:disabled + label::before,
  .radios input[type='checkbox']:disabled ~ label::before {
    background-color: #f1f3f5;
    border-color: rgba(95, 106, 120, 0.6);
    box-shadow: none;
    opacity: 0.65; }

.checks input[type='checkbox']:disabled:checked + label::before,
.checks input[type='checkbox']:disabled:checked ~ label::before,
.radios input[type='checkbox']:disabled:checked + label::before,
.radios input[type='checkbox']:disabled:checked ~ label::before {
  color: #767676;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23767676' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"); }

.checks input[type='radio'] + label::before,
.checks input[type='radio'] ~ label::before,
.radios input[type='radio'] + label::before,
.radios input[type='radio'] ~ label::before {
  content: "";
  border-radius: 50%; }

.checks input[type='radio']:disabled + label,
.checks input[type='radio']:disabled ~ label,
.radios input[type='radio']:disabled + label,
.radios input[type='radio']:disabled ~ label {
  cursor: default;
  color: #767676; }
  .checks input[type='radio']:disabled + label::before,
  .checks input[type='radio']:disabled ~ label::before,
  .radios input[type='radio']:disabled + label::before,
  .radios input[type='radio']:disabled ~ label::before {
    background-color: #f1f3f5;
    border-color: rgba(95, 106, 120, 0.6);
    box-shadow: none;
    opacity: 0.65; }

.checks input[type='radio']:disabled:checked + label::before,
.checks input[type='radio']:disabled:checked ~ label::before,
.radios input[type='radio']:disabled:checked + label::before,
.radios input[type='radio']:disabled:checked ~ label::before {
  color: #767676; }

.page-container > main .grid-container, .card-grid, .card-grid-icons, .careers-feed, .contact-panel, .double-promo, .error-hero, .home-hero, .image-slider, .institute-link-list, .institute-news-list, .institute-news-list-button, .juicer-embed, .link-list, .logo-grid, .masonry-grid, .news-list, .promo-splitter, .site-footer, .source-sub-nav, .topics-news-list, .topics-news-list-button, .trending-news-topics, .component-switcher-components {
  display: grid;
  grid-template-columns: [full-start] minmax(20px, 1fr) [main-start] minmax(0, 1280px) [main-end] minmax(20px, 1fr) [full-end]; }
  @media screen and (min-width: 768px) {
    .page-container > main .grid-container, .card-grid, .card-grid-icons, .careers-feed, .contact-panel, .double-promo, .error-hero, .home-hero, .image-slider, .institute-link-list, .institute-news-list, .institute-news-list-button, .juicer-embed, .link-list, .logo-grid, .masonry-grid, .news-list, .promo-splitter, .site-footer, .source-sub-nav, .topics-news-list, .topics-news-list-button, .trending-news-topics, .component-switcher-components {
      grid-template-columns: [full-start] minmax(40px, 1fr) [main-start] minmax(0, 1280px) [main-end] minmax(40px, 1fr) [full-end]; } }

.page-container {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-areas: 'header' 'main' 'footer';
  grid-template-columns: minmax(0, 1fr);
  min-height: 100%;
  background: #fff;
  box-shadow: 0 0 100px rgba(0, 0, 0, 0.1);
  z-index: 1; }
  .page-container > .site-header,
  .page-container > .mobile-header {
    grid-area: header; }
  .page-container > main {
    grid-area: main; }
  .page-container > .site-footer {
    grid-area: footer; }

.loading-spinner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.95);
  opacity: 0;
  visibility: hidden;
  z-index: 99999;
  transition: 0.15s ease-in-out; }
  .loading-spinner.-loading {
    opacity: 1;
    visibility: visible; }
  .loading-spinner::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 100px;
    background-image: url("https://cdn.asce.org/asg/images/spinner.svg");
    background-position: center;
    background-size: 100px auto;
    transform: translate(-50px, -50px);
    z-index: 99999; }
  .loading-spinner-text {
    position: absolute;
    top: calc(50% + 60px);
    color: #edeff1;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.09375rem;
    text-transform: uppercase; }
    .loading-spinner-text::after {
      content: '\2026';
      position: absolute;
      overflow: hidden;
      animation: ellipsis steps(4, end) 0.75s infinite;
      width: 0; }

@keyframes ellipsis {
  to {
    width: 18px; } }

.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  opacity: 0.95;
  background-image: linear-gradient(270deg, #1C2C54 0%, #028CC2 100%); }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  top: 0;
  right: 0;
  text-decoration: none;
  text-align: center;
  padding: 0 0 18px 10px;
  color: #333;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  @media (min-width: 900px) {
    .mfp-close {
      top: -44px;
      right: -44px;
      color: #FFF; } }
  .mfp-close:hover, .mfp-close:focus {
    opacity: 0.65; }

.mfp-close-btn-in .mfp-close {
  color: #ccc; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before, .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

/* overlay at start */
.mfp-fade.mfp-bg {
  opacity: 0 !important;
  transition: all 0.2s ease-out !important; }

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8 !important; }

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0 !important; }

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0 !important;
  transition: all 0.2s ease-out !important; }

/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1 !important; }

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0 !important; }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

/* sass-lint:disable-all */
/*
 * Core styles for PriorityNav.js
 * These styles are not optional and should always be included
 *
 * Free to use under the MIT License.
 * http://twitter.com/GijsRoge
 */
.priority-nav {
  white-space: nowrap;
  /*
    * Makes sure the menu's are inline-block so they don't take up
    * the entire width of its parent. This will break the plugin. doot
    */ }

.priority-nav > ul {
  display: inline-block; }

.priority-nav > ul > li {
  display: inline-block; }

.priority-nav-has-dropdown .priority-nav__dropdown-toggle {
  position: relative; }

.priority-nav__wrapper {
  position: relative; }

.priority-nav__dropdown {
  position: absolute;
  visibility: hidden; }

.priority-nav__dropdown.show {
  visibility: visible; }

.priority-nav__dropdown-toggle {
  visibility: hidden;
  position: absolute; }

.priority-nav-is-visible {
  visibility: visible; }

.priority-nav-is-hidden {
  visibility: hidden; }

/* sass-lint:disable-all */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.tooltip {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 22px;
  height: 22px;
  background: #0273ba;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 14px;
  line-height: 0.875rem;
  font-weight: 700;
  padding: 0;
  color: #fff;
  border-radius: 50%;
  border: 0;
  margin-top: 4px;
  margin-left: 8px; }

.tippy-box {
  position: relative;
  background: #d9eaf5;
  border-radius: 10px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 18px;
  line-height: 1.125rem;
  padding: 12px 18px;
  text-align: center;
  transition: 0.15s ease-in-out; }
  .tippy-box[data-animation='scale'][data-placement='top'] {
    transform-origin: bottom; }
  .tippy-box[data-animation='scale'][data-placement='bottom'] {
    transform-origin: top; }
  .tippy-box[data-animation='scale'][data-state='hidden'] {
    transform: scale(0.7);
    opacity: 0; }

.tippy-arrow {
  bottom: -7px;
  width: 16px;
  height: 8px;
  background-image: url("https://cdn.asce.org/asg/images/tooltip-arrow-down.svg");
  background-size: cover;
  background-repeat: no-repeat; }
  [data-placement='bottom'] .tippy-arrow {
    top: -7px;
    bottom: auto;
    background-image: url("https://cdn.asce.org/asg/images/tooltip-arrow-up.svg"); }

.video-with-text {
  position: relative;
  grid-column: main;
  margin-bottom: 80px; }
  @media screen and (min-width: 600px) {
    .video-with-text-inner {
      max-width: 560px;
      margin: 0 auto; } }
  @media screen and (min-width: 1000px) {
    .video-with-text-inner {
      display: flex;
      align-items: center;
      max-width: none; } }
  [data-video-position='right'] .video-with-text-inner {
    flex-direction: row-reverse; }
  .video-with-text-video {
    position: relative;
    margin: 0 -20px; }
    @media screen and (min-width: 600px) {
      .video-with-text-video {
        margin: 0 auto; } }
    @media screen and (min-width: 1000px) {
      .video-with-text-video {
        width: 51%; } }
    @media screen and (min-width: 1200px) {
      .video-with-text-video {
        width: 62%; } }
    @media screen and (min-width: 1400px) {
      .video-with-text-video {
        width: 74%; } }
  .video-with-text-content {
    padding: 30px 0 0; }
    @media screen and (min-width: 1000px) {
      .video-with-text-content {
        width: 49%;
        padding: 0 0 0 60px; } }
    @media screen and (min-width: 1200px) {
      .video-with-text-content {
        width: 38%;
        padding-left: 40px; } }
    @media screen and (min-width: 1400px) {
      .video-with-text-content {
        width: 26%; } }
    @media screen and (min-width: 1000px) {
      [data-video-position='right'] .video-with-text-content {
        padding: 0 60px 0 0; } }
    @media screen and (min-width: 1200px) {
      [data-video-position='right'] .video-with-text-content {
        padding-right: 40px; } }
  .video-with-text .wysiwyg-content {
    margin-bottom: 30px; }

.wufoo-form-asce-container {
  grid-column: main;
  margin-bottom: 80px;
  padding-top: 80px; }
  .detail-layout .wufoo-form-asce-container {
    padding-top: 0; }

.zoomable-image {
  position: relative;
  margin-bottom: 80px;
  display: block; }
  .zoomable-image::before {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 13px;
    left: 13px;
    width: 50px;
    height: 50px;
    background: #0273ba;
    color: #fff;
    font-size: 20px;
    font-size: 1.25rem;
    border-radius: 10px;
    opacity: 0;
    transition: 0.15s ease-in-out;
    z-index: 10; }
  .zoomable-image:active, .zoomable-image:hover, .zoomable-image:focus, .zoomable-image.-focused {
    cursor: zoom-in; }
    .zoomable-image:active::before, .zoomable-image:hover::before, .zoomable-image:focus::before, .zoomable-image.-focused::before {
      opacity: 1; }
  .zoomable-image + .rich-text,
  .zoomable-image + .tags {
    margin-top: -40px; }

.accordion {
  margin-bottom: 80px;
  grid-column: main; }
  .accordion-items {
    list-style: none;
    padding: 0;
    margin: 0;
    border-top: 1px solid #253a6e; }
  .accordion-item {
    border-bottom: 1px solid #ccc; }
    .accordion-item h3 {
      margin: 0; }
    .accordion-item-subtitle {
      color: #555;
      font-size: 16px;
      font-size: 1rem;
      font-weight: 700;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      line-height: 1.125;
      margin-bottom: 30px; }
    .accordion-item-text {
      margin-bottom: 30px; }
      .accordion-item-text img {
        margin: 0 20px 20px 0;
        float: left; }
    .accordion-item-button {
      margin-bottom: 40px; }
  .accordion table {
    border-collapse: collapse;
    width: 100%; }
    @media screen and (min-width: 900px) {
      .accordion table {
        width: calc(100% - 80px); } }
    .accordion table tbody {
      width: 100%; }
    .accordion table tr {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      width: 100%;
      border-bottom: 1px solid #d0d6db; }
      @media screen and (min-width: 900px) {
        .accordion table tr {
          display: table-row; } }
      .accordion table tr:last-child {
        border-bottom: 0; }
    .accordion table td {
      padding: 20px 0;
      flex: 1 0 auto; }
      .accordion table td.title {
        color: #0273ba;
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 800;
        line-height: 1.66667;
        width: 100%; }
        @media screen and (min-width: 900px) {
          .accordion table td.title {
            width: auto; } }
      .accordion table td.date {
        padding-top: 0;
        width: calc(50% - 20px); }
        @media screen and (min-width: 900px) {
          .accordion table td.date {
            width: auto;
            text-align: right;
            padding-top: 20px; } }
      .accordion table td.link {
        display: flex;
        width: 100%;
        padding-top: 0; }
        @media screen and (min-width: 900px) {
          .accordion table td.link {
            padding-top: 20px;
            width: auto; } }
        @media screen and (min-width: 900px) {
          .accordion table td.link a {
            margin-left: auto; } }
  .accordion-trigger {
    position: relative;
    display: block;
    width: 100%;
    -webkit-appearance: none;
    background: none;
    text-align: left;
    padding: 25px 40px 25px 0;
    border: 0;
    transition: ease-in-out 0.15s; }
    .accordion-trigger[aria-expanded='false']::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      right: -15px;
      top: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      justify-content: center;
      align-items: center;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      font-size: 14px;
      font-size: 0.875rem;
      color: white;
      background-color: #059bd6; }
      @media screen and (min-width: 768px) {
        .accordion-trigger[aria-expanded='false']::after {
          right: 0; } }
    .accordion-trigger[aria-expanded='true']::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      right: -15px;
      top: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      justify-content: center;
      align-items: center;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      font-size: 14px;
      font-size: 0.875rem;
      color: white;
      background-color: #059bd6; }
      @media screen and (min-width: 768px) {
        .accordion-trigger[aria-expanded='true']::after {
          right: 0; } }
    .accordion-trigger[aria-expanded='true']:active, .accordion-trigger[aria-expanded='true']:hover, .accordion-trigger[aria-expanded='true']:focus, .accordion-trigger[aria-expanded='true'].-focused {
      background-color: transparent; }
    .accordion-trigger:active, .accordion-trigger:hover, .accordion-trigger:focus, .accordion-trigger.-focused {
      color: #0273ba; }
      @media screen and (min-width: 768px) {
        .accordion-trigger:active, .accordion-trigger:hover, .accordion-trigger:focus, .accordion-trigger.-focused {
          background-color: rgba(5, 155, 214, 0.1);
          padding-left: 10px; } }
  .accordion-content {
    display: none; }
  .accordion .wysiwyg-content a {
    border-bottom: 0; }
    .accordion .wysiwyg-content a:active, .accordion .wysiwyg-content a:hover, .accordion .wysiwyg-content a:focus, .accordion .wysiwyg-content a.-focused {
      box-shadow: none; }

.ad-space-300 {
  margin: 0 auto;
  margin-bottom: 80px;
  width: 300px; }
  .ad-space-300-embed {
    background-color: #edeff1;
    width: 100%;
    height: 250px; }
  .ad-space-300-description {
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 1.3px;
    text-transform: uppercase;
    text-align: center; }

.ad-space-728 {
  grid-column: full;
  margin-bottom: 80px;
  background-color: #edeff1;
  padding: 50px 20px; }
  .ad-space-728:last-child {
    margin-bottom: 0; }
  .ad-space-728-embed {
    width: 100%;
    max-width: 728px;
    max-height: 90px;
    margin: 0 auto;
    background-color: #1a1a1a; }
  .ad-space-728 + .promo-full-width {
    margin-top: -80px; }
    .ad-space-728 + .promo-full-width:last-child {
      margin-top: -80px; }

.ad-space-970 {
  grid-column: full;
  margin-bottom: 80px;
  background-color: #edeff1;
  padding: 50px 20px; }
  .ad-space-970:last-child {
    margin-bottom: 0; }
  .ad-space-970-embed {
    width: 100%;
    height: 100%;
    max-width: 970px;
    max-height: 250px;
    margin: 0 auto;
    background-color: #1a1a1a; }
  .ad-space-970 + .promo-full-width {
    margin-top: -80px; }
    .ad-space-970 + .promo-full-width:last-child {
      margin-top: -80px; }

.alert-banner {
  position: relative;
  padding: 45px 20px 35px;
  background: linear-gradient(to right, #9fd64d, #c8f267); }
  @media screen and (min-width: 768px) {
    .alert-banner {
      padding: 45px 40px 35px; } }
  @media screen and (min-width: 1000px) {
    .alert-banner {
      padding: 35px 40px; } }
  .alert-banner-inner {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto; }
    .alert-banner-inner hr {
      margin: 25px -20px;
      border-color: #fff; }
      @media screen and (min-width: 768px) {
        .alert-banner-inner hr {
          margin: 25px -40px; } }
  @media screen and (min-width: 1000px) {
    .alert-banner-alert {
      display: flex;
      align-items: center; } }
  .alert-banner-icon {
    display: none; }
    .alert-banner-icon::before {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      flex: none;
      margin: 0 40px 0 0;
      font-size: 72px;
      font-size: 4.5rem;
      color: #fff; }
    @media screen and (min-width: 1000px) {
      .alert-banner-icon {
        display: block; } }
  .alert-banner-title {
    margin-bottom: 10px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 800;
    line-height: 1.5; }
  .alert-banner-text {
    margin-bottom: 20px; }
    @media screen and (min-width: 1000px) {
      .alert-banner-text {
        flex: 1 1 auto;
        margin: 0;
        padding-right: 50px; } }
    .alert-banner-text p {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.5; }
    .alert-banner-text.wysiwyg-content a:not(.btn) {
      color: #1a1a1a;
      border-color: #1a1a1a; }
      .alert-banner-text.wysiwyg-content a:not(.btn):active, .alert-banner-text.wysiwyg-content a:not(.btn):hover, .alert-banner-text.wysiwyg-content a:not(.btn):focus, .alert-banner-text.wysiwyg-content a:not(.btn).-focused {
        color: #1a1a1a;
        border-color: #1a1a1a;
        box-shadow: 0 2px 0 #1a1a1a; }
  @media screen and (max-width: 999px) {
    .alert-banner .btn {
      padding-top: 8px;
      padding-bottom: 8px; } }
  @media screen and (min-width: 1100px) {
    .alert-banner .btn {
      margin: 0 40px 0 0; } }
  .alert-banner-close {
    position: absolute;
    top: 5px;
    right: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background: none;
    border: 0;
    outline: 0;
    transition: 0.15s ease-in-out; }
    .alert-banner-close::before {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    @media screen and (min-width: 1400px) {
      .alert-banner-close {
        top: 10px;
        right: 10px; } }
    .alert-banner-close:active, .alert-banner-close:hover, .alert-banner-close:focus, .alert-banner-close.-focused {
      color: #fff; }

.article-header-title {
  margin-bottom: 30px;
  max-width: 850px; }

.article-header .hero-metadata {
  margin-bottom: 40px; }

.author-block {
  grid-column: main;
  margin: 80px 0 60px;
  background-color: #f6f7f8;
  border-radius: 10px; }
  .author-block-inner {
    padding: 40px 20px 30px; }
    @media screen and (min-width: 400px) {
      .author-block-inner {
        padding: 40px 40px 30px; } }
  .author-block-title {
    margin-bottom: 27px; }
  .author-block-items {
    margin: 0 -10px; }
    @media screen and (min-width: 600px) {
      .author-block-items {
        display: flex;
        flex-wrap: wrap; } }
  .author-block-item {
    display: flex;
    align-items: center;
    margin: 10px; }
    @media screen and (min-width: 600px) {
      .author-block-item {
        width: calc(50% - 20px); } }
    .author-block-item-image {
      display: flex;
      align-items: center;
      justify-content: center;
      flex: none;
      position: relative;
      width: 66px;
      height: 66px;
      border-radius: 50%;
      margin-right: 20px;
      border: 1px solid transparent;
      z-index: 1; }
      .author-block-item-image::before, .author-block-item-image::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        border-radius: inherit;
        z-index: -1; }
      .author-block-item-image::before {
        background: rgba(37, 58, 110, 0.93);
        background: -webkit-linear-gradient(90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
        background: linear-gradient(0deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
        margin: -1px; }
      .author-block-item-image::after {
        background-color: #f6f7f8;
        transition: 0.4s ease-in-out; }
      .author-block-item-image > img {
        border: 1px solid transparent;
        border-radius: 50%;
        background: #fff; }
    .author-block-item-text {
      color: #0273ba;
      transition: 0.15s ease-in-out;
      line-height: 1.3; }
    .author-block-item-credentials {
      color: #1a1a1a;
      font-weight: 400;
      font-size: 16px;
      font-size: 1rem; }
    .author-block-item:active .author-block-item-text, .author-block-item:hover .author-block-item-text, .author-block-item:focus .author-block-item-text, .author-block-item.-focused .author-block-item-text {
      color: #015488; }
    .author-block-item:active .author-block-item-image::after, .author-block-item:hover .author-block-item-image::after, .author-block-item:focus .author-block-item-image::after, .author-block-item.-focused .author-block-item-image::after {
      transform: scale(0.9); }

.author-hero {
  grid-column: main;
  margin-bottom: 80px; }
  @media screen and (min-width: 600px) {
    .author-hero h1.h1 {
      font-size: 60px;
      font-size: 3.75rem; }
    .author-hero-eyebrow.h5 {
      font-size: 24px;
      font-size: 1.5rem; } }
  .author-hero-inner {
    text-align: center; }
    @media screen and (min-width: 600px) {
      .author-hero-inner {
        text-align: left; } }
  @media screen and (min-width: 600px) {
    .author-hero-content {
      display: flex; } }
  .author-hero-credentials {
    color: #1a1a1a;
    font-weight: 700;
    font-size: 16px;
    font-size: 1rem; }
  .author-hero-image {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
    position: relative;
    width: 187px;
    height: 187px;
    border-radius: 50%;
    margin: 0 auto 20px;
    border: 1px solid transparent;
    z-index: 1;
    text-align: center; }
    @media screen and (min-width: 600px) {
      .author-hero-image {
        margin: 0 30px 0 0; } }
    .author-hero-image::before, .author-hero-image::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      border-radius: inherit;
      z-index: -1; }
    .author-hero-image::before {
      background: rgba(37, 58, 110, 0.93);
      background: -webkit-linear-gradient(90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
      background: linear-gradient(0deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
      margin: -1px; }
    .author-hero-image::after {
      background-color: #fff; }
    .author-hero-image > img {
      border: 1px solid transparent;
      border-radius: 50%;
      background: #fff; }
  .author-hero-social-links {
    flex: 0 1 auto;
    padding-top: 10px; }
    @media screen and (min-width: 600px) {
      .author-hero-social-links {
        display: flex;
        align-items: center;
        text-align: left; } }
    .author-hero-social-links-label {
      margin-bottom: 10px;
      justify-content: center; }
      @media screen and (min-width: 600px) {
        .author-hero-social-links-label {
          margin-right: 10px;
          margin-bottom: 0;
          justify-content: flex-start; } }
      .author-hero-social-links-label::before {
        display: none;
        padding: 0; }
    .author-hero-social-links ul {
      display: flex;
      list-style: none;
      padding: 0;
      margin: 0;
      justify-content: center; }
      @media screen and (min-width: 600px) {
        .author-hero-social-links ul {
          justify-content: flex-start; } }
    .author-hero-social-links li {
      margin-right: 10px; }
    .author-hero-social-links a {
      width: 44px;
      height: 44px;
      padding: 2px;
      background-image: linear-gradient(90deg, #059bd6 6%, #253a6e 98%);
      border-radius: 100%;
      font-size: 18px;
      font-size: 1.125rem;
      transition: 0.15s ease-in-out; }
      .author-hero-social-links a::before {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: #fff;
        border-radius: 100%;
        color: #253a6e;
        transition: 0.15s ease-in-out; }
      .author-hero-social-links a:active, .author-hero-social-links a:hover, .author-hero-social-links a:focus, .author-hero-social-links a.-focused {
        background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
        .author-hero-social-links a:active::before, .author-hero-social-links a:hover::before, .author-hero-social-links a:focus::before, .author-hero-social-links a.-focused::before {
          background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
          color: #fff; }

.bio-social-links {
  flex: 0 1 auto;
  padding-top: 10px;
  margin-bottom: 30px; }
  @media screen and (min-width: 600px) {
    .bio-social-links {
      display: flex;
      align-items: center;
      text-align: left; } }
  .bio-social-links-label {
    margin-bottom: 10px;
    justify-content: center; }
    @media screen and (min-width: 600px) {
      .bio-social-links-label {
        margin-right: 10px;
        margin-bottom: 0;
        justify-content: flex-start; } }
    .bio-social-links-label::before {
      display: none;
      padding: 0; }
  .bio-social-links ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: center; }
    @media screen and (min-width: 600px) {
      .bio-social-links ul {
        justify-content: flex-start; } }
  .bio-social-links li {
    position: static;
    padding-left: 0;
    margin-bottom: 0;
    margin-right: 10px; }
    .bio-social-links li::before {
      display: none; }
  .bio-social-links a {
    width: 44px;
    height: 44px;
    padding: 2px;
    background-image: linear-gradient(90deg, #059bd6 6%, #253a6e 98%);
    border-radius: 100%;
    font-size: 18px;
    font-size: 1.125rem;
    transition: 0.15s ease-in-out; }
    .bio-social-links a::before {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      height: 100%;
      line-height: 1;
      background-color: #fff;
      border-radius: 100%;
      color: #253a6e;
      transition: 0.15s ease-in-out; }
    .bio-social-links a:active, .bio-social-links a:hover, .bio-social-links a:focus, .bio-social-links a.-focused {
      background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
      .bio-social-links a:active::before, .bio-social-links a:hover::before, .bio-social-links a:focus::before, .bio-social-links a.-focused::before {
        background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
        color: #fff; }
  .wysiwyg-content .bio-social-links a {
    display: block;
    color: transparent;
    border-bottom: 0; }
    .wysiwyg-content .bio-social-links a:active, .wysiwyg-content .bio-social-links a:hover, .wysiwyg-content .bio-social-links a:focus, .wysiwyg-content .bio-social-links a.-focused {
      box-shadow: none; }

.bluberry-embed {
  margin-bottom: 30px; }

.breadcrumbs {
  position: relative;
  margin-bottom: 18px;
  color: #5f6a78;
  height: 50px;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
  z-index: 5; }
  .breadcrumbs.-wide {
    max-width: none; }
  .breadcrumbs::before {
    content: '';
    position: absolute;
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    width: 30px;
    background: linear-gradient(to left, rgba(255, 255, 255, 0), white);
    opacity: 0;
    visibility: hidden;
    transition: 0.15s ease-in-out; }
  .breadcrumbs.-overlay::before {
    opacity: 1;
    visibility: visible; }
  .breadcrumbs a {
    color: inherit; }
    .breadcrumbs a:active, .breadcrumbs a:hover, .breadcrumbs a:focus, .breadcrumbs a.-focused {
      color: #059bd6; }
  .breadcrumbs ul li {
    font-size: 16px;
    font-size: 1rem; }
  .breadcrumbs-divider {
    margin: 0 10px; }
  .breadcrumbs-list {
    display: flex;
    align-items: center;
    height: 100%;
    width: 100%;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none; }
    .-wide .breadcrumbs-list {
      display: flex;
      justify-content: center;
      overflow-x: visible; }
    .breadcrumbs-list-item {
      position: static;
      white-space: nowrap;
      scroll-snap-align: end;
      scroll-margin-right: -25px; }
      .-wide .breadcrumbs-list-item {
        position: relative; }
      .breadcrumbs-list-item::after {
        position: relative;
        top: 4px;
        display: inline-block;
        border: 0.5px solid #5f6a78;
        content: '';
        opacity: .5;
        margin: 0 10px;
        width: 1px;
        height: 18px;
        transform: rotate(20deg); }
      .breadcrumbs-list-item:last-child {
        scroll-margin-right: 0; }
        .breadcrumbs-list-item:last-child::after {
          display: none; }
      .breadcrumbs-list-item-link.icon-home {
        font-size: 14px;
        font-size: 0.875rem; }
      .breadcrumbs-list-item-arrow {
        position: relative;
        top: 2px;
        transform: rotate(90deg);
        font-size: 16px;
        font-size: 1rem;
        color: inherit;
        padding: 0 10px;
        margin: 0;
        background: none;
        border: 0;
        pointer-events: all;
        transition: 0.4s ease-out; }
        .-wide .breadcrumbs-list-item-arrow {
          pointer-events: none;
          font-size: 12px;
          font-size: 0.75rem;
          top: 0; }
      .breadcrumbs-list-item-dropdown {
        position: absolute;
        top: 100%;
        right: auto;
        bottom: auto;
        left: 50%;
        transform: translate(-50%, 15px);
        width: calc(100% - 40px);
        max-width: 500px;
        padding: 20px 22px !important;
        background-color: #fff;
        border-radius: 10px;
        box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.08);
        line-height: 1.5;
        white-space: normal;
        z-index: 1;
        visibility: hidden;
        opacity: 0;
        transition: 0.4s ease-out; }
        .-wide .breadcrumbs-list-item-dropdown {
          width: 250px;
          left: calc(100% - 30px);
          transform: translate(-50%, 15px); }
        .breadcrumbs-list-item-dropdown a:focus {
          outline: 1px dashed; }
        .breadcrumbs-list-item-dropdown > li {
          margin-bottom: 15px; }
          .breadcrumbs-list-item-dropdown > li:last-child {
            margin-bottom: 0; }
        .breadcrumbs-list-item-dropdown::before {
          content: '';
          width: 1px;
          height: calc(100% - 40px);
          position: absolute;
          top: 50%;
          right: auto;
          bottom: auto;
          left: 0;
          transform: translateY(-50%);
          background-color: #059bd6; }
      .breadcrumbs-list-item.-hovered .breadcrumbs-list-item-arrow {
        transform: rotate(90deg) scaleX(-1);
        color: #059bd6; }
      .breadcrumbs-list-item.-hovered .breadcrumbs-list-item-dropdown {
        visibility: visible;
        opacity: 1;
        left: 50%;
        transform: translate(-50%, 0); }
        .-wide .breadcrumbs-list-item.-hovered .breadcrumbs-list-item-dropdown {
          left: calc(100% - 30px); }

.brightcove-video-playlist-embed {
  grid-column: main;
  margin-bottom: 80px; }

.card-grid {
  position: relative;
  grid-column: full;
  margin-bottom: 80px;
  background-color: #f6f7f8; }
  .card-grid-inner {
    grid-column: main;
    padding: 80px 0; }
  .card-grid::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: -32px;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gradient-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1500px) {
      .card-grid::after {
        display: block;
        left: -100px; } }
    @media screen and (min-width: 1600px) {
      .card-grid::after {
        left: -50px; } }
    @media screen and (min-width: 1700px) {
      .card-grid::after {
        left: 0; } }
  .card-grid h2 {
    text-align: center;
    margin-bottom: 50px; }
  @media screen and (min-width: 768px) {
    .card-grid-items {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      margin: 0 -30px 0 0; } }
  @media screen and (min-width: 768px) {
    .card-grid-items[data-items='2'] {
      justify-content: center; } }
  .card-grid-item {
    position: relative;
    display: flex;
    flex-direction: column;
    max-width: 400px;
    margin: 0 auto 30px;
    padding: 50px 20px;
    background-color: #fff;
    border-radius: 8px;
    cursor: pointer;
    transition: ease-in-out 0.15s;
    animation-delay: 0s; }
    @media screen and (min-width: 400px) {
      .card-grid-item {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.08);
        padding: 50px 40px; } }
    @media screen and (min-width: 768px) {
      .card-grid-item {
        width: calc(50% - 30px);
        max-width: none;
        margin: 0 30px 30px 0; }
        .card-grid-item:nth-child(2n+1) {
          animation-delay: 0s; }
        .card-grid-item:nth-child(2n+2) {
          animation-delay: .3s; } }
    @media screen and (min-width: 1100px) {
      .card-grid-item {
        width: calc(100% / 3 - 30px); }
        .card-grid-item:nth-child(3n+1) {
          animation-delay: 0s; }
        .card-grid-item:nth-child(3n+2) {
          animation-delay: .3s; }
        .card-grid-item:nth-child(3n+3) {
          animation-delay: .6s; } }
    .card-grid-item-title {
      transition: ease-in-out 0.15s; }
      .card-grid-item-title.-external::after {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: relative;
        top: -2px;
        color: #253a6e;
        font-size: 11.2px;
        font-size: 0.7rem;
        transition: 0.15s ease-in-out;
        border-left: 1px solid rgba(95, 106, 120, 0.3);
        margin-left: 9px;
        padding: 2px 0 2px 9px; }
      .card-grid-item-title.-gated::after {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: relative;
        color: #5f6a78;
        font-size: 16px;
        font-size: 1rem;
        border-left: 1px solid rgba(95, 106, 120, 0.3);
        margin-left: 9px;
        padding-left: 9px;
        transition: 0.15s ease-in-out; }
    .card-grid-item:last-child {
      margin-right: auto; }
    @media screen and (min-width: 768px) {
      [data-items='2'] .card-grid-item:last-child {
        margin-right: 30px; } }
    .card-grid-item:active, .card-grid-item:hover, .card-grid-item:focus, .card-grid-item.-focused {
      background-color: #253a6e;
      color: #fff; }
      .card-grid-item:active a, .card-grid-item:hover a, .card-grid-item:focus a, .card-grid-item.-focused a {
        color: #fff; }
        .card-grid-item:active a::after, .card-grid-item:hover a::after, .card-grid-item:focus a::after, .card-grid-item.-focused a::after {
          color: #fff; }
  .card-grid video {
    position: relative;
    z-index: 999; }

.card-grid-icons {
  position: relative;
  grid-column: full;
  margin-bottom: 80px;
  padding: 80px 0 0; }
  @media screen and (min-width: 1000px) {
    .card-grid-icons {
      padding: 80px 0 0; } }
  .card-grid-icons::after {
    content: '';
    position: absolute;
    z-index: -1;
    bottom: 70px;
    right: 10px;
    display: block;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/white-dots-square.svg");
    background-size: 226px 186px;
    background-repeat: no-repeat;
    background-position: top left; }
    @media screen and (min-width: 768px) {
      .card-grid-icons::after {
        bottom: 100px; } }
    @media screen and (min-width: 1500px) {
      .card-grid-icons::after {
        right: auto;
        left: calc(50% + 514px); } }
  .card-grid-icons.-bg-right::before {
    bottom: 48px; }
    @media screen and (min-width: 768px) {
      .card-grid-icons.-bg-right::before {
        bottom: 80px; } }
  .card-grid-icons-inner {
    position: relative;
    grid-column: main; }
  .card-grid-icons-intro {
    padding: 0 0 30px; }
    @media screen and (min-width: 768px) {
      .card-grid-icons-intro-links {
        display: flex; } }
    @media screen and (min-width: 768px) {
      .card-grid-icons-intro-link {
        margin: 0 35px 0 0; } }
    @media screen and (max-width: 767px) {
      .card-grid-icons-intro-link:not(:last-child) {
        margin-bottom: 10px; } }
    .card-grid-icons-intro-text {
      max-width: 940px; }
  @media screen and (min-width: 768px) {
    .card-grid-icons-items {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      margin: 0 -30px 0 0; } }
  @media screen and (min-width: 768px) {
    .card-grid-icons-items[data-items='2'] {
      justify-content: center; } }
  .card-grid-icons-item {
    position: relative;
    display: flex;
    flex-direction: column;
    max-width: 400px;
    margin: 0 auto 30px;
    padding: 40px 20px 30px;
    background-color: #fff;
    border-radius: 8px;
    cursor: pointer;
    transition: ease-in-out 0.15s;
    animation-delay: 0s; }
    @media screen and (min-width: 400px) {
      .card-grid-icons-item {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.08);
        padding: 40px 40px 30px; } }
    @media screen and (min-width: 768px) {
      .card-grid-icons-item {
        width: calc(50% - 30px);
        max-width: none;
        margin: 0 30px 30px 0; }
        .card-grid-icons-item:nth-child(2n+1) {
          animation-delay: 0s; }
        .card-grid-icons-item:nth-child(2n+2) {
          animation-delay: .3s; } }
    @media screen and (min-width: 1100px) {
      .card-grid-icons-item {
        width: calc(100% / 3 - 30px); }
        .card-grid-icons-item:nth-child(3n+1) {
          animation-delay: 0s; }
        .card-grid-icons-item:nth-child(3n+2) {
          animation-delay: .3s; }
        .card-grid-icons-item:nth-child(3n+3) {
          animation-delay: .6s; } }
    .card-grid-icons-item::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      border-radius: 8px;
      border-style: solid;
      border-image: url("https://cdn.asce.org/asg/images/border-dotted.svg") 7/7px round;
      opacity: 0;
      pointer-events: none;
      transition: 0.15s ease-in-out; }
    .card-grid-icons-item-content {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      height: 100%; }
    .card-grid-icons-item-icon {
      max-width: 74px;
      margin-bottom: 20px; }
    .card-grid-icons-item-shield {
      max-width: 80px;
      margin-bottom: 35px; }
    .card-grid-icons-item-title {
      display: inline;
      background-image: linear-gradient(rgba(2, 115, 186, 0.45), rgba(2, 115, 186, 0.45));
      background-position: 0% 100%;
      background-repeat: no-repeat;
      background-size: 0% 2px;
      padding-bottom: 3px;
      transition: ease-in-out 0.15s; }
    .card-grid-icons-item-text {
      margin-top: 20px; }
    .card-grid-icons-item:last-child {
      margin-right: auto; }
    .card-grid-icons-item-link {
      margin-top: 45px;
      text-align: right; }
    @media screen and (min-width: 768px) {
      [data-items='2'] .card-grid-icons-item:last-child {
        margin-right: 30px; } }
    .card-grid-icons-item:hover a {
      color: #0273ba;
      background-size: 100% 3px; }
    .card-grid-icons-item:focus a, .card-grid-icons-item:active a, .card-grid-icons-item.-focused a {
      color: #0273ba;
      background-size: 100% 3px; }
    .card-grid-icons-item:focus::after, .card-grid-icons-item:active::after, .card-grid-icons-item.-focused::after {
      opacity: 1; }
  @media screen and (min-width: 768px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro {
      display: flex;
      align-items: center; } }
  @media screen and (min-width: 500px) and (max-width: 599px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-text {
      max-width: 550px;
      margin: 0 auto; } }
  @media screen and (min-width: 768px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-text {
      width: 60%;
      padding-right: 50px; } }
  @media screen and (min-width: 1100px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-text {
      padding-bottom: 75px; } }
  @media screen and (min-width: 1400px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-text {
      width: 57%; } }
  .card-grid-icons[data-img='true'] .card-grid-icons-intro-img {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 30px -20px -70px; }
    @media screen and (min-width: 500px) and (max-width: 599px) {
      .card-grid-icons[data-img='true'] .card-grid-icons-intro-img {
        max-width: 550px;
        margin: 30px auto -100px; } }
    @media screen and (min-width: 768px) {
      .card-grid-icons[data-img='true'] .card-grid-icons-intro-img {
        width: 40%;
        margin: 0; } }
    @media screen and (min-width: 1400px) {
      .card-grid-icons[data-img='true'] .card-grid-icons-intro-img {
        width: 43%;
        margin: -80px 0 0; } }
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-img-credit {
      position: absolute;
      z-index: 0;
      top: 0;
      bottom: auto;
      right: 0;
      left: auto;
      padding: 5px 10px;
      background-color: rgba(26, 26, 26, 0.7);
      font-size: 15px;
      font-size: 0.9375rem;
      color: #e5e8ec; }
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-img::before {
      content: '';
      display: none;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(159, 214, 77, 0.6);
      background: -webkit-linear-gradient(135deg, rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6));
      background: linear-gradient(-45deg, rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6)); }
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-img img {
      margin: 0 auto; }
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-img[data-gradient='true']::before {
      display: block; }
  @media screen and (min-width: 768px) and (max-width: 1099px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-links {
      flex-direction: column; } }
  @media screen and (min-width: 768px) and (max-width: 1099px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-intro-link {
      margin-bottom: 10px; } }
  @media screen and (min-width: 1100px) {
    .card-grid-icons[data-img='true'] .card-grid-icons-items {
      margin-top: -75px; } }

.careers-feed {
  grid-column: full;
  margin-bottom: 80px; }
  .careers-feed-inner {
    grid-column: main;
    padding: 50px 0; }
    @media screen and (min-width: 768px) {
      .careers-feed-inner {
        display: flex; } }
    @media screen and (min-width: 1000px) {
      .careers-feed-inner {
        padding: 80px 0; } }
  .careers-feed-intro {
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      .careers-feed-intro {
        flex: 0 0 290px;
        width: 290px;
        padding-right: 30px; } }
    @media screen and (min-width: 1200px) {
      .careers-feed-intro {
        flex: 1 1 33%;
        width: 33%; } }
  @media screen and (min-width: 768px) {
    .careers-feed-listings {
      flex: 1 1 auto; } }
  @media screen and (min-width: 1200px) {
    .careers-feed-listings {
      width: 67%; } }
  .careers-feed-list {
    margin: 0; }
    @media screen and (min-width: 1000px) {
      .careers-feed-list {
        column-count: 2;
        column-gap: 40px; } }
  .careers-feed-listing {
    position: relative;
    padding-left: 30px;
    line-height: 1.77778; }
    @media screen and (min-width: 1000px) {
      .careers-feed-listing {
        break-inside: avoid; } }
    @media screen and (min-width: 1000px) and (max-width: 999px) {
      .careers-feed-listing {
        padding-left: 15px;
        font-size: 17px;
        font-size: 1.0625rem; } }
    .careers-feed-listing:not(:last-child) {
      margin-bottom: 20px; }
    .careers-feed-listing::before {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 1px;
      height: 100%;
      background: #9fd64d;
      background: -webkit-linear-gradient(135deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      background: linear-gradient(-45deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2); }
  .careers-feed-listing-name {
    display: inline;
    padding-bottom: 3px;
    font-weight: 700;
    color: #253a6e;
    background-image: linear-gradient(#059bd6, #059bd6);
    background-position: 0% 100%;
    background-repeat: no-repeat;
    background-size: 0% 3px;
    transition: 0.15s ease-in-out; }
    .careers-feed-listing-name:active, .careers-feed-listing-name:hover, .careers-feed-listing-name:focus, .careers-feed-listing-name.-focused {
      color: #059bd6;
      background-size: 100% 3px; }

.column-links {
  grid-column: main;
  margin-bottom: 80px; }
  .column-links h4 {
    font-size: 1.5rem; }
  .column-links-inner {
    margin: 20px 0;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    display: grid;
    grid-template-columns: repeat(1, 1fr); }
    @media screen and (min-width: 500px) {
      .column-links-inner {
        grid-template-columns: repeat(2, 1fr); } }
    @media screen and (min-width: 900px) {
      .column-links-inner {
        grid-template-columns: repeat(4, 1fr); } }
  .column-links-section {
    padding-right: 10px; }
  .column-links li {
    margin-bottom: 5px; }
  @media screen and (min-width: 600px) {
    .column-links-links {
      flex: 1 1 auto; } }
  @media screen and (min-width: 768px) {
    .column-links-links {
      padding-left: 40px; } }
  @media screen and (min-width: 1000px) {
    .column-links-links {
      padding-left: 0; } }
  @media screen and (min-width: 1200px) {
    .column-links-links {
      padding-left: 20px; } }

.column-list {
  grid-column: main;
  margin-bottom: 80px; }
  .column-list h4 {
    font-size: 1.5rem; }
  .column-list-columns {
    margin: 20px 0 0;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    display: grid;
    grid-template-columns: repeat(1, 1fr); }
    @media screen and (min-width: 768px) {
      .column-list-columns {
        grid-template-columns: repeat(2, 1fr); } }
    @media screen and (min-width: 1000px) {
      [data-columns='3'] .column-list-columns {
        grid-template-columns: repeat(3, 1fr); } }
  .column-list-column {
    padding-right: 20px;
    margin-bottom: 20px; }
  .column-list ul {
    margin-bottom: 0; }
  .column-list li {
    margin-bottom: 5px; }
    .column-list li::before {
      top: 12px; }
  .column-list-header {
    max-width: 700px; }
  .column-list-description {
    max-width: 900px;
    margin-bottom: 30px; }

.columns-slider {
  grid-column: full;
  margin-bottom: 80px;
  padding: 0; }
  .columns-slider.-gray-bg {
    background-color: #f6f7f8;
    margin-bottom: 0;
    padding: 80px 0; }
    @media screen and (min-width: 768px) {
      .columns-slider.-gray-bg {
        padding: 80px 60px; } }
    @media screen and (min-width: 1400px) {
      .columns-slider.-gray-bg {
        padding: 80px 80px; } }
  @media screen and (min-width: 768px) {
    .columns-slider {
      padding: 0 60px; } }
  @media screen and (min-width: 1400px) {
    .columns-slider {
      padding: 0 80px; } }
  .columns-slider-intro {
    margin-bottom: 20px;
    padding: 0 20px;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .columns-slider-intro {
        margin-bottom: 40px; } }
  .columns-slider-intro-link a {
    display: inline; }
    .columns-slider-intro-link a::before {
      top: 4px; }
  .columns-slider-button {
    padding: 40px 20px 0;
    text-align: center; }
  .columns-slider-slides {
    position: relative; }
    .columns-slider-slides::before, .columns-slider-slides::after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #e5e8ec; }
      @media screen and (min-width: 768px) {
        .columns-slider-slides::before, .columns-slider-slides::after {
          left: -60px;
          width: calc(100% + 120px); } }
      @media screen and (min-width: 1400px) {
        .columns-slider-slides::before, .columns-slider-slides::after {
          left: -80px;
          width: calc(100% + 160px); } }
    .columns-slider-slides::after {
      top: auto;
      bottom: 0; }
    .columns-slider-slides .slick-track {
      display: flex !important; }
    .columns-slider-slides .slick-slide {
      position: relative;
      height: inherit; }
      .columns-slider-slides .slick-slide > div {
        display: flex;
        min-height: 100%; }
    .columns-slider-slides.slick-dotted + .columns-slider-button {
      margin-top: 50px; }
      @media screen and (min-width: 768px) {
        .columns-slider-slides.slick-dotted + .columns-slider-button {
          margin-top: 25px; } }
  .columns-slider-slide {
    border-left: 1px solid #e5e8ec;
    padding: 30px;
    transition: 0.15s ease-in-out; }
    @media screen and (min-width: 500px) and (max-width: 599px) {
      .columns-slider-slide {
        padding: 20px; } }
    @media screen and (min-width: 1000px) {
      .columns-slider-slide {
        padding: 40px; } }
    [data-images='false'] .columns-slider-slide {
      padding: 60px 30px; }
    .slick-current .columns-slider-slide {
      border-left: 1px solid transparent; }
    .columns-slider-slide-img {
      margin-bottom: 30px; }
      .columns-slider-slide-img img {
        margin: 0 auto; }
    .columns-slider-slide .eyebrow {
      margin-bottom: 25px;
      transition: 0.15s ease-in-out; }
      @media screen and (min-width: 500px) and (max-width: 899px) {
        .columns-slider-slide .eyebrow {
          font-size: 14px;
          font-size: 0.875rem; } }
      .columns-slider-slide .eyebrow::before {
        transition: 0.15s ease-in-out; }
    .columns-slider-slide .h5 {
      margin-bottom: 10px; }
    .columns-slider-slide-title {
      display: inline;
      background-image: linear-gradient(rgba(2, 115, 186, 0.45), rgba(2, 115, 186, 0.45));
      background-position: 0% 100%;
      background-repeat: no-repeat;
      background-size: 0% 2px;
      padding-bottom: 3px;
      color: #1a1a1a;
      transition: 0.15s ease-in-out; }
      @media screen and (min-width: 500px) and (max-width: 599px) {
        .columns-slider-slide-title {
          font-size: 16px;
          font-size: 1rem; } }
      .columns-slider-slide-title:focus {
        color: #0273ba;
        background-size: 100% 3px; }
    .columns-slider-slide-date {
      display: flex;
      align-items: center;
      margin-bottom: 25px;
      font-size: 15px;
      font-size: 0.9375rem;
      color: #1a1a1a;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.0875rem; }
      .columns-slider-slide-date::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        margin-right: 12px;
        font-size: 23px;
        font-size: 1.4375rem;
        color: #0273ba; }
      @media screen and (min-width: 500px) and (max-width: 599px) {
        .columns-slider-slide-date {
          font-size: 12px;
          font-size: 0.75rem; } }
    .columns-slider-slide-location {
      font-size: 16px;
      font-size: 1rem;
      font-style: italic; }
      @media screen and (min-width: 500px) and (max-width: 599px) {
        .columns-slider-slide-location {
          font-size: 13px;
          font-size: 0.8125rem; } }
    .columns-slider-slide-sponsor {
      position: absolute;
      top: 0;
      left: 0;
      padding: 7px 20px;
      background: #edeff1;
      font-size: 14px;
      font-size: 0.875rem;
      font-weight: 700;
      color: #1a1a1a;
      transition: 0.15s ease-in-out; }
    .columns-slider-slide.js-link-event:hover {
      cursor: pointer;
      background-color: #f6f7f8; }
      .-gray-bg .columns-slider-slide.js-link-event:hover {
        background-color: #edeff1; }
      .columns-slider-slide.js-link-event:hover .eyebrow {
        color: #0273ba; }
        .columns-slider-slide.js-link-event:hover .eyebrow::before {
          background: #253a6e;
          background: -webkit-linear-gradient(-270deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
          background: linear-gradient(360deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }
      .columns-slider-slide.js-link-event:hover .columns-slider-slide-date,
      .columns-slider-slide.js-link-event:hover .columns-slider-slide-location {
        color: #0273ba; }
      .columns-slider-slide.js-link-event:hover .columns-slider-slide-title {
        color: #0273ba;
        background-size: 100% 3px; }
      .columns-slider-slide.js-link-event:hover .columns-slider-slide-sponsor {
        background-color: #0273ba;
        color: #fff; }
    .columns-slider-slide.js-link-event.-focused {
      background: red; }
  .columns-slider .slick-arrow {
    position: absolute;
    z-index: 100;
    left: calc(50% - 60px);
    top: calc(100% + 20px); }
    @media screen and (min-width: 768px) {
      .columns-slider .slick-arrow {
        top: calc(50% - 22px);
        left: -52px; } }
    @media screen and (min-width: 1400px) {
      .columns-slider .slick-arrow {
        left: -65px; } }
    .columns-slider .slick-arrow.slick-next {
      left: auto;
      right: calc(50% - 60px); }
      @media screen and (min-width: 768px) {
        .columns-slider .slick-arrow.slick-next {
          right: -52px; } }
      @media screen and (min-width: 1400px) {
        .columns-slider .slick-arrow.slick-next {
          right: -65px; } }
    .columns-slider .slick-arrow:focus {
      outline: 0;
      background-color: #fff;
      color: #0273ba; }
  .columns-slider .slick-dots {
    display: none !important;
    position: absolute;
    top: calc(100% + 20px);
    left: 50%;
    transform: translateX(-50%);
    justify-content: center;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0 0 10px; }
    @media screen and (min-width: 768px) {
      .columns-slider .slick-dots {
        display: flex !important; } }
    .columns-slider .slick-dots li {
      margin: 0 5px; }
      .columns-slider .slick-dots li.slick-active button {
        background-color: #059bd6; }
    .columns-slider .slick-dots button {
      display: block;
      width: 10px;
      height: 10px;
      padding: 0;
      margin: 0;
      border: 0;
      border-radius: 50%;
      background-color: rgba(175, 180, 187, 0.5);
      font-size: 0;
      outline: 0;
      transition: 0.15s ease-in-out; }
      .columns-slider .slick-dots button:active, .columns-slider .slick-dots button:hover, .columns-slider .slick-dots button:focus, .columns-slider .slick-dots button.-focused {
        background-color: #059bd6; }

.committee-membership-panel {
  grid-column: main;
  margin-bottom: 80px; }
  .committee-membership-panel-eyebrow {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700; }
  @media screen and (min-width: 1000px) {
    .committee-membership-panel .h4 {
      margin-bottom: 45px; } }
  @media screen and (min-width: 768px) {
    .committee-membership-panel-items {
      column-count: 2;
      column-gap: 60px; } }
  @media screen and (min-width: 1200px) {
    .committee-membership-panel-items {
      column-gap: 100px; } }
  .committee-membership-panel-items.-priority-members {
    margin-bottom: 5px; }
  .committee-membership-panel-item {
    margin-bottom: 30px;
    break-inside: avoid; }
  .committee-membership-panel-name {
    font-weight: 800; }
  .committee-membership-panel-credentials {
    white-space: nowrap; }

.alpha-scroll-nav {
  border-top: 3px solid #9fd64d; }

.alpha-scroll-nav-letters {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  margin: 20px -1px 30px; }
  @media screen and (min-width: 500px) {
    .alpha-scroll-nav-letters {
      grid-template-columns: repeat(10, 1fr); } }
  @media screen and (min-width: 768px) {
    .alpha-scroll-nav-letters {
      grid-template-columns: repeat(13, 1fr); } }
  @media screen and (min-width: 1000px) {
    .alpha-scroll-nav-letters {
      display: flex;
      justify-content: space-between; } }
  .alpha-scroll-nav-letters li {
    margin: 1px; }
    @media screen and (min-width: 1000px) {
      .alpha-scroll-nav-letters li {
        min-width: 32px; } }

.alpha-scroll-nav-letter {
  display: flex;
  justify-content: center;
  width: 100%;
  line-height: 1;
  padding: 10px 0 8px;
  border-radius: 3px;
  border: 0;
  background-color: #edeff1;
  color: #0273ba;
  font-weight: 800;
  transition: 0.15s ease-in-out; }
  @media screen and (min-width: 1000px) {
    .alpha-scroll-nav-letter {
      align-items: center;
      height: 36px;
      padding: 0;
      font-size: 24px;
      font-size: 1.5rem;
      border-radius: 0;
      background-color: transparent; } }
  .alpha-scroll-nav-letter:hover, .alpha-scroll-nav-letter:focus, .alpha-scroll-nav-letter:active, .alpha-scroll-nav-letter.-active {
    background-color: #0273ba;
    color: #fff; }
    @media screen and (min-width: 1000px) {
      .alpha-scroll-nav-letter:hover, .alpha-scroll-nav-letter:focus, .alpha-scroll-nav-letter:active, .alpha-scroll-nav-letter.-active {
        background-color: transparent;
        color: #0273ba;
        font-size: 32px;
        font-size: 2rem; } }
  @media screen and (min-width: 1000px) {
    .alpha-scroll-nav-letter.-active {
      color: #059bd6; } }
  .alpha-scroll-nav-letter.-disabled {
    color: rgba(95, 106, 120, 0.5);
    pointer-events: none; }
    @media screen and (min-width: 1000px) {
      .alpha-scroll-nav-letter.-disabled {
        color: #d9dadc; } }

.alpha-scroll-section-header-letter {
  font-size: 32px;
  font-size: 2rem;
  font-weight: 800; }

.alpha-scroll-content {
  position: relative;
  max-height: 830px;
  overflow-y: scroll;
  border-bottom: 1px solid #e5e8ec; }

.contact-panel {
  grid-column: full;
  margin-bottom: 80px;
  position: relative; }
  .contact-panel-inner {
    grid-column: main;
    padding-top: 50px;
    padding-bottom: 30px; }
    @media screen and (min-width: 1000px) {
      .contact-panel-inner {
        padding-top: 80px;
        padding-bottom: 50px; } }
  .contact-panel-title {
    text-align: center; }
    @media screen and (min-width: 400px) {
      .contact-panel-title {
        text-align: left; } }
  @media screen and (min-width: 900px) {
    .contact-panel-wrapper {
      display: flex; } }
  .contact-panel-column {
    width: 100%;
    margin-right: 30px;
    border-top: 1px solid #5f6a78;
    padding-top: 15px;
    margin-top: 10px; }
    @media screen and (min-width: 900px) {
      .contact-panel-column {
        flex: 1 1 auto;
        width: 33%; }
        .contact-panel-column:nth-child(2) {
          margin-right: -70px; }
        .contact-panel-column:last-child {
          margin-right: 0;
          margin-left: 100px; } }
    @media screen and (min-width: 1000px) {
      .contact-panel-column {
        flex: 0 1 auto;
        margin-right: 30px; } }
    .contact-panel-column ul {
      margin-bottom: 10px; }
    .contact-panel-column li a[href^='tel:'] {
      color: #1a1a1a;
      transition: 0.15s ease-in-out; }
      .contact-panel-column li a[href^='tel:']:active, .contact-panel-column li a[href^='tel:']:hover, .contact-panel-column li a[href^='tel:']:focus, .contact-panel-column li a[href^='tel:'].-focused {
        text-decoration: underline;
        color: #0273ba; }
  .contact-panel-position {
    font-weight: 600;
    letter-spacing: 1.2px;
    line-height: 1.3;
    font-size: 14px;
    font-size: 0.875rem; }
  .contact-panel-header {
    margin-bottom: 10px; }
  .contact-panel::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: -32px;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("../images/gradient-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1500px) {
      .contact-panel::after {
        display: block;
        left: -120px; } }
    @media screen and (min-width: 1600px) {
      .contact-panel::after {
        left: -75px; } }
    @media screen and (min-width: 1700px) {
      .contact-panel::after {
        left: -20px; } }
  .contact-panel .social-share-services {
    display: flex;
    flex-direction: row !important;
    align-items: center;
    padding: 0;
    margin: 0; }
    .contact-panel .social-share-services li {
      margin-left: -2px; }
      @media screen and (min-width: 1000px) {
        .contact-panel .social-share-services li {
          margin: 13px 0 0 -8px; } }
      .contact-panel .social-share-services li + li {
        margin-left: -2px !important; }
        @media screen and (min-width: 1000px) {
          .contact-panel .social-share-services li + li {
            margin: 13px 0 0 -8px !important; } }
      .contact-panel .social-share-services li a {
        background-image: none;
        font-size: 24px;
        font-size: 1.5rem;
        margin-right: 15px; }
        .contact-panel .social-share-services li a[data-service='facebook']::before {
          content: ""; }
        .contact-panel .social-share-services li a[data-service='facebook']::before {
          display: flex;
          justify-content: center;
          align-items: flex-start;
          background-color: transparent;
          background-image: none;
          color: #0d71ba;
          height: 34px;
          width: 34px; }
        .contact-panel .social-share-services li a[data-service='facebook']:active, .contact-panel .social-share-services li a[data-service='facebook']:hover, .contact-panel .social-share-services li a[data-service='facebook']:focus, .contact-panel .social-share-services li a[data-service='facebook'].-focused {
          background-image: none; }
          .contact-panel .social-share-services li a[data-service='facebook']:active::before, .contact-panel .social-share-services li a[data-service='facebook']:hover::before, .contact-panel .social-share-services li a[data-service='facebook']:focus::before, .contact-panel .social-share-services li a[data-service='facebook'].-focused::before {
            background: none;
            color: #059bd6; }
        .contact-panel .social-share-services li a[data-service='twitter']::before {
          content: ""; }
        .contact-panel .social-share-services li a[data-service='twitter']::before {
          display: flex;
          justify-content: center;
          align-items: flex-start;
          background-color: transparent;
          background-image: none;
          color: #0d71ba;
          height: 34px;
          width: 34px; }
        .contact-panel .social-share-services li a[data-service='twitter']:active, .contact-panel .social-share-services li a[data-service='twitter']:hover, .contact-panel .social-share-services li a[data-service='twitter']:focus, .contact-panel .social-share-services li a[data-service='twitter'].-focused {
          background-image: none; }
          .contact-panel .social-share-services li a[data-service='twitter']:active::before, .contact-panel .social-share-services li a[data-service='twitter']:hover::before, .contact-panel .social-share-services li a[data-service='twitter']:focus::before, .contact-panel .social-share-services li a[data-service='twitter'].-focused::before {
            background: none;
            color: #059bd6; }
        .contact-panel .social-share-services li a[data-service='linkedin']::before {
          content: ""; }
        .contact-panel .social-share-services li a[data-service='linkedin']::before {
          display: flex;
          justify-content: center;
          align-items: flex-start;
          background-color: transparent;
          background-image: none;
          color: #0d71ba;
          height: 34px;
          width: 34px; }
        .contact-panel .social-share-services li a[data-service='linkedin']:active, .contact-panel .social-share-services li a[data-service='linkedin']:hover, .contact-panel .social-share-services li a[data-service='linkedin']:focus, .contact-panel .social-share-services li a[data-service='linkedin'].-focused {
          background-image: none; }
          .contact-panel .social-share-services li a[data-service='linkedin']:active::before, .contact-panel .social-share-services li a[data-service='linkedin']:hover::before, .contact-panel .social-share-services li a[data-service='linkedin']:focus::before, .contact-panel .social-share-services li a[data-service='linkedin'].-focused::before {
            background: none;
            color: #059bd6; }
        .contact-panel .social-share-services li a[data-service='instagram']::before {
          content: ""; }
        .contact-panel .social-share-services li a[data-service='instagram']::before {
          display: flex;
          justify-content: center;
          align-items: flex-start;
          background-color: transparent;
          background-image: none;
          color: #0d71ba;
          height: 34px;
          width: 34px; }
        .contact-panel .social-share-services li a[data-service='instagram']:active, .contact-panel .social-share-services li a[data-service='instagram']:hover, .contact-panel .social-share-services li a[data-service='instagram']:focus, .contact-panel .social-share-services li a[data-service='instagram'].-focused {
          background-image: none; }
          .contact-panel .social-share-services li a[data-service='instagram']:active::before, .contact-panel .social-share-services li a[data-service='instagram']:hover::before, .contact-panel .social-share-services li a[data-service='instagram']:focus::before, .contact-panel .social-share-services li a[data-service='instagram'].-focused::before {
            background: none;
            color: #059bd6; }
        .contact-panel .social-share-services li a[data-service='youtube']::before {
          content: ""; }
        .contact-panel .social-share-services li a[data-service='youtube']::before {
          display: flex;
          justify-content: center;
          align-items: flex-start;
          background-color: transparent;
          background-image: none;
          color: #0d71ba;
          height: 34px;
          width: 34px; }
        .contact-panel .social-share-services li a[data-service='youtube']:active, .contact-panel .social-share-services li a[data-service='youtube']:hover, .contact-panel .social-share-services li a[data-service='youtube']:focus, .contact-panel .social-share-services li a[data-service='youtube'].-focused {
          background-image: none; }
          .contact-panel .social-share-services li a[data-service='youtube']:active::before, .contact-panel .social-share-services li a[data-service='youtube']:hover::before, .contact-panel .social-share-services li a[data-service='youtube']:focus::before, .contact-panel .social-share-services li a[data-service='youtube'].-focused::before {
            background: none;
            color: #059bd6; }

.coveo-filter-controller {
  display: block;
  position: relative;
  width: 100%;
  margin-bottom: 10px;
  padding: 10px 20px 10px 40px;
  background: #f1f3f5;
  color: #1a1a1a !important;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700; }
  .coveo-filter-controller::before {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    left: 10px;
    font-size: 12px;
    font-size: 0.75rem;
    padding-top: 7px; }
  .coveo-filter-controller.-closed::after {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 10px;
    font-size: 12px;
    font-size: 0.75rem;
    padding-top: 5px; }
  .coveo-filter-controller.-opened::after {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 10px;
    font-size: 12px;
    font-size: 0.75rem;
    padding-top: 5px; }
  @media screen and (min-width: 1000px) {
    .coveo-filter-controller {
      display: none; } }

.coveo-wrapper {
  grid-column: main;
  margin-bottom: 80px; }

.cta-panel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-column: main;
  margin-bottom: 80px; }
  @media screen and (min-width: 1000px) {
    .cta-panel {
      flex-direction: row;
      align-items: center; } }
  .cta-panel-label {
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 15px 20px;
    min-width: 300px;
    margin-bottom: -26px;
    background-color: #253a6e;
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: 800;
    color: #edeff1;
    text-transform: uppercase;
    letter-spacing: 0.09375rem;
    text-align: center; }
    @media screen and (min-width: 1000px) {
      .cta-panel-label {
        max-width: 300px;
        margin-bottom: 0; } }
  .cta-panel-content {
    padding: 2px;
    background: rgba(37, 58, 110, 0.93);
    background: -webkit-linear-gradient(90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    background: linear-gradient(0deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    border-radius: 10px; }
    @media screen and (min-width: 1000px) {
      .cta-panel-content {
        margin-left: -75px; } }
    .cta-panel-content-inner {
      padding: 60px 40px 50px;
      background-color: #f1f3f5;
      border-radius: 10px; }
      @media screen and (min-width: 1000px) {
        .cta-panel-content-inner {
          padding: 40px 40px 40px 105px; } }
  .cta-panel-secondary-link {
    margin-top: 25px; }
  @media screen and (min-width: 1000px) {
    .cta-panel.-detail {
      flex-direction: column;
      align-items: flex-start; } }
  @media screen and (min-width: 1000px) {
    .cta-panel.-detail .cta-panel-label {
      margin-bottom: -26px; } }
  @media screen and (min-width: 1000px) {
    .cta-panel.-detail .cta-panel-content {
      margin-left: 0; } }
  .cta-panel.-detail .cta-panel-content-inner {
    padding: 60px 40px 50px; }
    @media screen and (min-width: 1000px) {
      .cta-panel.-detail .cta-panel-content-inner {
        padding-left: 40px; } }

.disqus_chat {
  grid-column: main;
  margin-bottom: 80px; }

.double-promo {
  grid-column: full;
  margin-bottom: 80px;
  overflow-x: hidden; }
  .double-promo-inner {
    position: relative;
    grid-column: main; }
  .double-promo-title {
    text-align: center; }
    @media screen and (min-width: 768px) {
      .double-promo-title {
        text-align: left; } }
  @media screen and (min-width: 768px) {
    .double-promo-items {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; } }
  .double-promo-item {
    cursor: pointer;
    margin-bottom: 40px; }
    @media screen and (min-width: 768px) {
      .double-promo-item {
        width: calc(50% - 17px);
        margin-bottom: 0; }
        .double-promo-item:nth-child(n + 3) {
          margin-top: 50px; } }
    .double-promo-item-image {
      width: 100%;
      overflow: hidden;
      margin-bottom: 40px;
      backface-visibility: hidden; }
      .double-promo-item-image img {
        width: 100%;
        transition: transform .5s ease;
        transform: translateZ(0); }
    @media screen and (min-width: 1200px) {
      .double-promo-item-content {
        padding-right: 120px; } }
    .double-promo-item-description {
      margin-bottom: 30px; }
    .double-promo-item:active img, .double-promo-item:hover img, .double-promo-item:focus img, .double-promo-item.-focused img {
      transform: scale3d(1.05, 1.05, 1) translateZ(0); }
    .double-promo-item:active .double-promo-item-heading, .double-promo-item:hover .double-promo-item-heading, .double-promo-item:focus .double-promo-item-heading, .double-promo-item.-focused .double-promo-item-heading {
      color: #0273ba;
      text-decoration: underline; }
    .double-promo-item:active .btn, .double-promo-item:hover .btn, .double-promo-item:focus .btn, .double-promo-item.-focused .btn {
      background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
      color: #fff;
      outline: 0;
      margin: 0;
      background-color: transparent; }
      .double-promo-item:active .btn::before, .double-promo-item:hover .btn::before, .double-promo-item:focus .btn::before, .double-promo-item.-focused .btn::before {
        background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
      .double-promo-item:active .btn::after, .double-promo-item:hover .btn::after, .double-promo-item:focus .btn::after, .double-promo-item.-focused .btn::after {
        color: #fff;
        border-left: 1px solid rgba(229, 232, 236, 0.3); }
  .double-promo .dots {
    display: none;
    position: absolute;
    top: calc(50% + 125px);
    right: -190px;
    width: 226px;
    height: 186px;
    z-index: -2;
    transform: translate(0, -50%); }
    @media screen and (min-width: 1400px) {
      .double-promo .dots {
        display: block; } }
    @media screen and (min-width: 1600px) {
      .double-promo .dots {
        right: -250px; } }
    @media screen and (min-width: 1800px) {
      .double-promo .dots {
        right: -300px; } }
  .double-promo.-no-images {
    padding: 40px 0;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .double-promo.-no-images {
        text-align: left;
        padding: 80px 0; } }
    .double-promo.-no-images .dots {
      top: 50%;
      right: -190px; }
      @media screen and (min-width: 1600px) {
        .double-promo.-no-images .dots {
          right: -250px; } }
      @media screen and (min-width: 1800px) {
        .double-promo.-no-images .dots {
          right: -300px; } }
    .double-promo.-no-images .double-promo-item {
      max-width: 500px;
      margin: 0 auto 40px; }
      @media screen and (min-width: 768px) {
        .double-promo.-no-images .double-promo-item {
          margin: 0;
          max-width: none; }
          .double-promo.-no-images .double-promo-item:nth-child(n + 3) {
            margin-top: 50px; } }
  .double-promo.-bg-left {
    padding-bottom: 80px; }
    .double-promo.-bg-left::before {
      top: 180px; }
    .double-promo.-bg-left.-no-images {
      padding-bottom: 40px; }
      @media screen and (min-width: 768px) {
        .double-promo.-bg-left.-no-images {
          padding-bottom: 80px; } }
      .double-promo.-bg-left.-no-images::before {
        top: 0; }

.enroll-form {
  grid-column: main;
  margin-bottom: 50px; }
  @media screen and (min-width: 768px) {
    .enroll-form-wrapper {
      display: flex;
      align-items: center; } }
  .enroll-form-eyebrow {
    margin-bottom: 30px; }
  .enroll-form select {
    height: 52px;
    max-width: 480px;
    margin-bottom: 20px;
    border: 1px solid rgba(95, 106, 120, 0.6);
    border-radius: 26px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 700;
    color: #1a1a1a; }
    .enroll-form select option {
      font-size: 18px;
      font-size: 1.125rem;
      font-weight: 700; }
    .enroll-form select.-single-event {
      background-image: none; }
    @media screen and (min-width: 768px) {
      .enroll-form select {
        margin-right: 10px;
        margin-bottom: 0; } }
  .enroll-form .btn {
    padding: 12px 35px; }

.error-hero {
  grid-column: full;
  position: relative;
  background: #1a1a1a; }
  .error-hero img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: .4; }
  .error-hero .inner {
    grid-column: main;
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    text-align: center;
    padding: Min(Max(60px, 12vw), 180px) 0 Min(Max(80px, 16vw), 230px); }
  .error-hero .h1,
  .error-hero p {
    color: #fff; }
  .error-hero .h1 {
    font-size: Min(Max(2.5rem, 8vw), 7.5rem);
    line-height: 1.25833;
    text-transform: uppercase; }
  .error-hero p {
    font-size: Min(Max(1.25rem, 4vw), 2rem);
    font-weight: 800;
    line-height: 1.3125;
    margin-bottom: 45px; }
  .error-hero .buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: -10px; }
  .error-hero-btn {
    flex: none;
    max-width: 100%;
    background-color: #fff;
    color: #1a1a1a;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 24px;
    line-height: 1.5rem;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
    padding: 12px 44px;
    border: 2px solid #fff;
    border-radius: 30px;
    margin: 10px;
    transition: 0.15s ease-in-out; }
    .error-hero-btn:active, .error-hero-btn:hover, .error-hero-btn:focus, .error-hero-btn.-focused {
      background-color: transparent;
      color: #fff; }

.events-slider {
  grid-column: full;
  margin-bottom: 80px;
  padding: 0; }
  @media screen and (min-width: 768px) {
    .events-slider {
      padding: 0 60px; } }
  @media screen and (min-width: 1400px) {
    .events-slider {
      padding: 0 80px; } }
  .events-slider-intro {
    margin-bottom: 20px;
    padding: 0 20px;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .events-slider-intro {
        margin-bottom: 40px; } }
  .events-slider-intro-link a {
    display: inline; }
    .events-slider-intro-link a::before {
      top: 4px; }
  .events-slider-button {
    padding: 40px 20px 0;
    text-align: center; }
  .events-slider-slides {
    position: relative; }
    .events-slider-slides::before, .events-slider-slides::after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #e5e8ec; }
      @media screen and (min-width: 768px) {
        .events-slider-slides::before, .events-slider-slides::after {
          left: -60px;
          width: calc(100% + 120px); } }
      @media screen and (min-width: 1400px) {
        .events-slider-slides::before, .events-slider-slides::after {
          left: -80px;
          width: calc(100% + 160px); } }
    .events-slider-slides::after {
      top: auto;
      bottom: 0; }
    .events-slider-slides .slick-track {
      display: flex !important; }
    .events-slider-slides .slick-slide {
      position: relative;
      height: inherit; }
      .events-slider-slides .slick-slide > div {
        display: flex;
        min-height: 100%; }
    .events-slider-slides.slick-dotted + .events-slider-button {
      margin-top: 50px; }
      @media screen and (min-width: 768px) {
        .events-slider-slides.slick-dotted + .events-slider-button {
          margin-top: 25px; } }
  .events-slider-slide {
    border-left: 1px solid #e5e8ec;
    padding: 30px;
    transition: 0.15s ease-in-out; }
    @media screen and (min-width: 500px) and (max-width: 599px) {
      .events-slider-slide {
        padding: 20px; } }
    @media screen and (min-width: 1000px) {
      .events-slider-slide {
        padding: 40px; } }
    [data-images='false'] .events-slider-slide {
      padding: 60px 30px; }
    .slick-current .events-slider-slide {
      border-left: 1px solid transparent; }
    .events-slider-slide-img {
      margin-bottom: 30px; }
      .events-slider-slide-img img {
        margin: 0 auto; }
    .events-slider-slide .h5 {
      margin-bottom: 10px; }
    .events-slider-slide-title {
      display: inline;
      background-image: linear-gradient(rgba(2, 115, 186, 0.45), rgba(2, 115, 186, 0.45));
      background-position: 0% 100%;
      background-repeat: no-repeat;
      background-size: 0% 2px;
      padding-bottom: 3px;
      color: #1a1a1a;
      transition: 0.15s ease-in-out; }
      @media screen and (min-width: 500px) and (max-width: 599px) {
        .events-slider-slide-title {
          font-size: 16px;
          font-size: 1rem; } }
      .events-slider-slide-title:focus {
        color: #0273ba;
        background-size: 100% 3px; }
    .events-slider-slide-date {
      display: flex;
      align-items: center;
      margin-bottom: 25px;
      font-size: 15px;
      font-size: 0.9375rem;
      color: #1a1a1a;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.0875rem; }
      .events-slider-slide-date::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        margin-right: 12px;
        font-size: 23px;
        font-size: 1.4375rem;
        color: #0273ba; }
      @media screen and (min-width: 500px) and (max-width: 599px) {
        .events-slider-slide-date {
          font-size: 12px;
          font-size: 0.75rem; } }
    .events-slider-slide-location {
      font-size: 16px;
      font-size: 1rem;
      font-style: italic; }
      @media screen and (min-width: 500px) and (max-width: 599px) {
        .events-slider-slide-location {
          font-size: 13px;
          font-size: 0.8125rem; } }
    .events-slider-slide-sponsor {
      position: absolute;
      top: 0;
      left: 0;
      padding: 7px 20px;
      background: #edeff1;
      font-size: 14px;
      font-size: 0.875rem;
      font-weight: 700;
      color: #1a1a1a;
      transition: 0.15s ease-in-out; }
    .events-slider-slide.js-link-event:hover {
      cursor: pointer;
      background-color: #f6f7f8; }
      .events-slider-slide.js-link-event:hover .eyebrow {
        color: #0273ba; }
        .events-slider-slide.js-link-event:hover .eyebrow::before {
          background: #253a6e;
          background: -webkit-linear-gradient(-270deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
          background: linear-gradient(360deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }
      .events-slider-slide.js-link-event:hover .events-slider-slide-date,
      .events-slider-slide.js-link-event:hover .events-slider-slide-location {
        color: #0273ba; }
      .events-slider-slide.js-link-event:hover .events-slider-slide-title {
        color: #0273ba;
        background-size: 100% 3px; }
      .events-slider-slide.js-link-event:hover .events-slider-slide-sponsor {
        background-color: #0273ba;
        color: #fff; }
    .events-slider-slide.js-link-event.-focused {
      background: red; }
  .events-slider .slick-arrow {
    position: absolute;
    z-index: 100;
    left: calc(50% - 60px);
    top: calc(100% + 20px); }
    @media screen and (min-width: 768px) {
      .events-slider .slick-arrow {
        top: calc(50% - 22px);
        left: -52px; } }
    @media screen and (min-width: 1400px) {
      .events-slider .slick-arrow {
        left: -65px; } }
    .events-slider .slick-arrow.slick-next {
      left: auto;
      right: calc(50% - 60px); }
      @media screen and (min-width: 768px) {
        .events-slider .slick-arrow.slick-next {
          right: -52px; } }
      @media screen and (min-width: 1400px) {
        .events-slider .slick-arrow.slick-next {
          right: -65px; } }
    .events-slider .slick-arrow:focus {
      outline: 0;
      background-color: #fff;
      color: #0273ba; }
  .events-slider .slick-dots {
    display: none !important;
    position: absolute;
    top: calc(100% + 20px);
    left: 50%;
    transform: translateX(-50%);
    justify-content: center;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0 0 10px; }
    @media screen and (min-width: 768px) {
      .events-slider .slick-dots {
        display: flex !important; } }
    .events-slider .slick-dots li {
      margin: 0 5px; }
      .events-slider .slick-dots li.slick-active button {
        background-color: #059bd6; }
    .events-slider .slick-dots button {
      display: block;
      width: 10px;
      height: 10px;
      padding: 0;
      margin: 0;
      border: 0;
      border-radius: 50%;
      background-color: rgba(175, 180, 187, 0.5);
      font-size: 0;
      outline: 0;
      transition: 0.15s ease-in-out; }
      .events-slider .slick-dots button:active, .events-slider .slick-dots button:hover, .events-slider .slick-dots button:focus, .events-slider .slick-dots button.-focused {
        background-color: #059bd6; }

.events-sub-nav {
  margin: 50px 0 40px;
  grid-column: main; }
  .events-sub-nav-inner {
    background: #edeff1;
    padding: 12px 20px;
    border-radius: 35px; }
    @media screen and (min-width: 600px) {
      .events-sub-nav-inner {
        padding: 10px; } }
  .events-sub-nav-links {
    position: relative; }
    .events-sub-nav-links ul {
      margin: 0; }
  .events-sub-nav-link {
    font-weight: 700;
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.66667;
    color: #1a1a1a;
    margin-right: 20px; }
    @media screen and (min-width: 600px) {
      .events-sub-nav-link {
        border-radius: 25px;
        padding: 10px 14px;
        font-size: 15px;
        font-size: 0.9375rem;
        margin-right: 10px; } }
    @media screen and (min-width: 800px) {
      .events-sub-nav-link {
        padding: 10px 24px;
        font-size: 18px;
        font-size: 1.125rem; } }
    @media screen and (min-width: 800px) {
      .events-sub-nav-link:active, .events-sub-nav-link:hover, .events-sub-nav-link:focus, .events-sub-nav-link.-focused {
        background-color: rgba(255, 255, 255, 0.5); } }
    @media screen and (min-width: 600px) {
      .events-sub-nav-link.-active {
        background: #fff;
        box-shadow: 0 2px 20px 0 rgba(26, 26, 26, 0.08); } }
  .events-sub-nav .priority-nav-dropdown-wrapper {
    position: absolute;
    top: 0;
    right: 0; }
    @media screen and (min-width: 600px) {
      .events-sub-nav .priority-nav-dropdown-wrapper {
        top: 4px; } }
  .events-sub-nav .priority-nav-dropdown-toggle {
    display: flex;
    align-items: center;
    border: 0;
    border-radius: 25px;
    background: #dfe2e6;
    font-size: 13px;
    font-size: 0.8125rem;
    padding: 10px;
    font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
    font-weight: 700; }
    .events-sub-nav .priority-nav-dropdown-toggle::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 10px;
      font-size: 0.625rem;
      margin-left: 8px; }
    .events-sub-nav .priority-nav-dropdown-toggle:active, .events-sub-nav .priority-nav-dropdown-toggle:hover, .events-sub-nav .priority-nav-dropdown-toggle:focus, .events-sub-nav .priority-nav-dropdown-toggle.-focused {
      background: #0273ba;
      color: #fff; }
    .events-sub-nav .priority-nav-dropdown-toggle.is-open {
      background: #0273ba;
      color: #fff; }
    @media screen and (min-width: 600px) {
      .events-sub-nav .priority-nav-dropdown-toggle {
        padding: 10px 14px;
        font-size: 15px;
        font-size: 0.9375rem; } }
    @media screen and (min-width: 800px) {
      .events-sub-nav .priority-nav-dropdown-toggle {
        font-size: 18px;
        font-size: 1.125rem; } }
  .events-sub-nav .priority-nav-dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    background: #f6f7f8;
    padding: 14px 12px 14px 40px;
    width: 220px;
    font-weight: 400;
    box-shadow: 0 8px 18px 0 rgba(0, 0, 0, 0.18);
    border-radius: 10px; }
    .events-sub-nav .priority-nav-dropdown a {
      padding: 0;
      font-size: 15px;
      font-size: 0.9375rem; }
      .events-sub-nav .priority-nav-dropdown a:active, .events-sub-nav .priority-nav-dropdown a:hover, .events-sub-nav .priority-nav-dropdown a:focus, .events-sub-nav .priority-nav-dropdown a.-focused {
        background: none; }
    .events-sub-nav .priority-nav-dropdown::before {
      content: '';
      position: absolute;
      top: 22px;
      left: 20px;
      width: 1px;
      bottom: 22px;
      background: #059bd6; }

.find-a-group-search {
  grid-column: main;
  margin-bottom: 80px; }
  .find-a-group-search-form {
    display: block;
    width: 100%;
    background: rgba(37, 58, 110, 0.93);
    background: -webkit-linear-gradient(180deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    background: linear-gradient(-90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    padding: 30px 20px;
    border-radius: 10px; }
    @media screen and (min-width: 600px) {
      .find-a-group-search-form {
        padding: 30px 80px; } }
    @media screen and (min-width: 1100px) {
      .find-a-group-search-form {
        display: flex;
        align-items: center;
        justify-content: center; } }
    .find-a-group-search-form-inner {
      display: flex;
      position: relative;
      flex: 1 1 auto; }
    .find-a-group-search-form-left {
      margin: 0 0 20px; }
      @media screen and (min-width: 1100px) {
        .find-a-group-search-form-left {
          margin: 0 20px 0 0; } }
    .find-a-group-search-form-right {
      position: relative;
      flex: 1 1 auto;
      margin: 0 0 20px;
      max-width: 700px; }
      @media screen and (min-width: 1100px) {
        .find-a-group-search-form-right {
          max-width: 440px;
          margin: 0 20px 0 0; } }
    .find-a-group-search-form input[type='text'] {
      margin: 0;
      height: 50px;
      border-radius: 1000px;
      max-width: 700px;
      border: 2px solid transparent; }
      .find-a-group-search-form input[type='text']::placeholder {
        text-transform: uppercase;
        font-weight: 700;
        font-size: 14px;
        font-size: 0.875rem;
        color: #1a1a1a;
        letter-spacing: 1.31px; }
      .find-a-group-search-form input[type='text']:focus {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.1);
        border-color: #9fd64d; }
        .find-a-group-search-form input[type='text']:focus::placeholder {
          opacity: .5; }
    .find-a-group-search-form label {
      margin-right: 30px;
      color: #fff;
      font-size: 24px;
      font-size: 1.5rem;
      font-weight: 700; }
    .find-a-group-search-form-submit {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 0;
      right: -1px;
      width: 50px;
      height: 50px;
      color: #253a6e;
      background: #9fd64d;
      border: 0;
      border-radius: 1000px;
      transition: 0.15s ease-in-out; }
      .find-a-group-search-form-submit::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-size: 20px;
        font-size: 1.25rem; }
      .find-a-group-search-form-submit:active, .find-a-group-search-form-submit:hover, .find-a-group-search-form-submit:focus, .find-a-group-search-form-submit.-focused {
        color: #fff;
        background: #0273ba; }
    .find-a-group-search-form-link {
      color: #d9eaf5;
      margin-left: auto; }
      .find-a-group-search-form-link a {
        position: relative;
        display: flex;
        align-items: center;
        color: #d9eaf5;
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 800;
        transition: ease-in-out 0.15s; }
        @media screen and (min-width: 1100px) {
          .find-a-group-search-form-link a {
            font-size: 24px;
            font-size: 1.5rem; } }
        .find-a-group-search-form-link a::before {
          content: "";
          display: inline-block;
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          text-transform: none;
          speak: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          font-size: 21px;
          font-size: 1.3125rem;
          margin-right: 5px; }
          @media screen and (min-width: 1100px) {
            .find-a-group-search-form-link a::before {
              font-size: 27px;
              font-size: 1.6875rem; } }
        .find-a-group-search-form-link a span {
          position: relative;
          display: flex;
          align-items: center;
          border-bottom: 3px solid rgba(217, 234, 245, 0.7);
          line-height: 1;
          transition: border-color 0.15s ease-in-out; }
          .find-a-group-search-form-link a span::after {
            content: "";
            display: inline-block;
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            line-height: 1;
            text-transform: none;
            speak: none;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            font-size: 14px;
            font-size: 0.875rem; }
            @media screen and (min-width: 1100px) {
              .find-a-group-search-form-link a span::after {
                font-size: 18px;
                font-size: 1.125rem; } }
        .find-a-group-search-form-link a:active, .find-a-group-search-form-link a:hover, .find-a-group-search-form-link a:focus, .find-a-group-search-form-link a.-focused {
          color: #9fd64d; }
          .find-a-group-search-form-link a:active span, .find-a-group-search-form-link a:hover span, .find-a-group-search-form-link a:focus span, .find-a-group-search-form-link a.-focused span {
            border-color: rgba(159, 214, 77, 0.7); }
  .find-a-group-search-text {
    margin-bottom: 10px; }
  .find-a-group-search-results {
    max-width: 630px;
    margin: 80px auto 0; }
    .find-a-group-search-results-title {
      padding-bottom: 30px;
      border-bottom: 1px solid #5f6a78;
      margin-bottom: 30px; }
      .find-a-group-search-results-title .-region {
        color: #253a6e; }
    .find-a-group-search-results-data-link {
      margin-bottom: 20px; }
    .find-a-group-search-results-data-branches, .find-a-group-search-results-data-committees {
      margin-bottom: 10px;
      font-size: 18px;
      font-size: 1.125rem;
      color: #555; }
    .find-a-group-search-results-loader {
      margin-top: 180px;
      display: none; }

.full-width-slider {
  grid-column: main;
  margin-bottom: 80px;
  color: #fff; }
  .full-width-slider-inner {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    position: relative; }
  .full-width-slider-slick {
    opacity: 0;
    transition: opacity 0.25s ease-in-out; }
    .full-width-slider-slick.slick-initialized {
      opacity: 1; }
  .full-width-slider .full-width-slide {
    position: relative;
    min-height: 100%; }
    .full-width-slider .full-width-slide::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: transparent;
      background: -webkit-linear-gradient(-90deg, transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 75%, black 100%);
      background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 75%, black 100%);
      z-index: 2;
      opacity: .85; }
    .full-width-slider .full-width-slide-inner {
      display: flex;
      flex-direction: column;
      min-height: 100%;
      padding: 60px 20px 30px; }
      @media screen and (min-width: 500px) {
        .full-width-slider .full-width-slide-inner {
          padding: 60px 60px 30px; } }
      @media screen and (min-width: 1000px) {
        .full-width-slider .full-width-slide-inner {
          padding: 60px 100px 30px; } }
    .full-width-slider .full-width-slide.js-link-event {
      cursor: pointer; }
      .full-width-slider .full-width-slide.js-link-event .full-width-slide-title {
        text-decoration: underline; }
      .full-width-slider .full-width-slide.js-link-event:active .full-width-slide-image, .full-width-slider .full-width-slide.js-link-event:hover .full-width-slide-image, .full-width-slider .full-width-slide.js-link-event:focus .full-width-slide-image, .full-width-slider .full-width-slide.js-link-event.-focused .full-width-slide-image {
        transform: scale(1.05); }
      .full-width-slider .full-width-slide.js-link-event:active .full-width-slide-title, .full-width-slider .full-width-slide.js-link-event:hover .full-width-slide-title, .full-width-slider .full-width-slide.js-link-event:focus .full-width-slide-title, .full-width-slider .full-width-slide.js-link-event.-focused .full-width-slide-title {
        color: #9fd64d;
        transition: color .5s ease; }
    .full-width-slider .full-width-slide-credit {
      position: absolute;
      z-index: 0;
      top: 0;
      bottom: auto;
      right: 0;
      left: auto;
      padding: 5px 10px;
      background-color: rgba(26, 26, 26, 0.7);
      font-size: 15px;
      font-size: 0.9375rem;
      color: #e5e8ec;
      z-index: 3; }
    .full-width-slider .full-width-slide-image {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      transition: transform .5s ease; }
    .full-width-slider .full-width-slide-content {
      position: relative;
      margin-top: auto;
      max-width: 1000px;
      z-index: 3; }
    .full-width-slider .full-width-slide-title {
      color: #fff; }
    .full-width-slider .full-width-slide a {
      text-decoration: none;
      color: inherit; }
  .full-width-slider .slick-slide {
    height: inherit; }
    .full-width-slider .slick-slide:not(.slick-active) {
      transition-delay: 300ms !important; }
    .full-width-slider .slick-slide > div {
      display: flex;
      min-height: 100%; }
  .full-width-slider .slick-track {
    display: flex !important;
    min-height: 558px; }
  .full-width-slider .slick-arrow {
    position: absolute;
    z-index: 100;
    left: calc(50% - 60px);
    top: calc(100% + 15px); }
    @media screen and (min-width: 768px) {
      .full-width-slider .slick-arrow {
        top: calc(50% - 45px);
        left: -20px; } }
    .full-width-slider .slick-arrow.slick-next {
      left: auto;
      right: calc(50% - 60px); }
      @media screen and (min-width: 768px) {
        .full-width-slider .slick-arrow.slick-next {
          right: -20px; } }
  .full-width-slider .slick-dots {
    display: none !important; }
    @media screen and (min-width: 768px) {
      .full-width-slider .slick-dots {
        display: flex !important;
        justify-content: center;
        align-items: center;
        list-style: none;
        padding: 0;
        margin: 30px 0 0; }
        .full-width-slider .slick-dots li {
          margin: 0 5px; }
          .full-width-slider .slick-dots li.slick-active button {
            background-color: #059bd6; }
        .full-width-slider .slick-dots button {
          display: block;
          width: 10px;
          height: 10px;
          padding: 0;
          margin: 0;
          border: 0;
          border-radius: 50%;
          background-color: rgba(175, 180, 187, 0.5);
          font-size: 0;
          outline: 0;
          transition: 0.15s ease-in-out; }
          .full-width-slider .slick-dots button:active, .full-width-slider .slick-dots button:hover, .full-width-slider .slick-dots button:focus, .full-width-slider .slick-dots button.-focused {
            background-color: #059bd6; } }

.gated-content-modal {
  margin-bottom: 80px;
  position: relative;
  text-align: center; }
  .gated-content-modal::after {
    content: '';
    position: absolute;
    top: -400px;
    left: 0;
    width: 100%;
    height: 400px;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.01) 35%, #fff 100%);
    z-index: 10; }
  .gated-content-modal-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    background-color: #fff;
    margin-bottom: 30px; }
    .gated-content-modal-title h6 {
      flex: 0 0 auto;
      margin: 0 12px; }
    .gated-content-modal-title::before, .gated-content-modal-title::after {
      content: '';
      flex: 1 1 auto;
      height: 1px;
      width: 35%;
      background: #5f6a78;
      opacity: .3;
      margin-top: 1px; }
  .gated-content-modal-button {
    display: flex;
    flex-direction: column;
    margin-top: 10px;
    margin-bottom: 50px; }
    @media screen and (min-width: 400px) {
      .gated-content-modal-button {
        align-items: center;
        justify-content: center;
        flex-direction: row; } }
    .gated-content-modal-button .btn:first-child {
      margin-bottom: 20px; }
      @media screen and (min-width: 400px) {
        .gated-content-modal-button .btn:first-child {
          margin-right: 20px;
          margin-bottom: 0; } }
    .gated-content-modal-button .btn:last-child {
      border-style: none;
      background-color: #d9eaf5; }
  .gated-content-modal-description {
    text-align: center;
    margin-bottom: 20px;
    margin-right: auto;
    margin-left: auto; }
  .gated-content-modal .-arrow-link {
    text-align: left; }

.hero-metadata {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.4px;
  margin-bottom: 20px; }
  .hero-metadata > div {
    margin-bottom: 10px;
    padding: 0 20px;
    font-size: 15px;
    font-size: 0.9375rem;
    border-right: 1px solid #d0d6db; }
    .hero-metadata > div:first-child {
      padding-left: 0; }
    .hero-metadata > div:last-child {
      border-right: 0;
      border-top: 1px solid #d0d6db;
      padding: 20px 0 0;
      flex: 1 0 100%; }
      @media screen and (min-width: 768px) {
        .hero-metadata > div:last-child {
          flex: 1 0 auto;
          padding: 0 20px;
          border-top: 0; } }
    .hero-metadata > div.hero-metadata-duration {
      border-right: 0;
      padding-right: 0; }
      @media screen and (min-width: 768px) {
        .hero-metadata > div.hero-metadata-duration {
          border-right: 1px solid #d0d6db;
          padding: 0 20px; } }
  .hero-metadata-eyebrow {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    font-weight: 700; }
    .hero-metadata-eyebrow::before {
      display: inline-block; }
  .hero-metadata-sponsors {
    display: flex;
    align-items: center; }
    .hero-metadata-sponsors-text {
      margin-right: 10px; }
    .hero-metadata-sponsors-logo {
      max-width: 80px;
      max-height: 50px; }
  .hero-metadata-comment-count a {
    position: relative;
    color: #1a1a1a;
    background-color: #9fd64d;
    border-radius: 50%;
    padding: 5px 12px;
    font-size: 12px;
    font-size: 0.75rem; }
    .hero-metadata-comment-count a::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: -2px;
      width: 12px;
      height: 8px;
      background-image: url("https://cdn.asce.org/asg/images/chat-point.svg");
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      z-index: -1; }

.home-hero {
  grid-column: full;
  margin-top: 80px;
  position: relative;
  z-index: 3; }
  @media screen and (min-width: 1000px) {
    .home-hero::before {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      background-color: #edeff1;
      width: 100%;
      height: 116px; } }
  .home-hero-inner {
    grid-column: full; }
    @media screen and (min-width: 1000px) {
      .home-hero-inner {
        grid-column: main/full; } }
  @media screen and (min-width: 1000px) {
    .home-hero-grid-container {
      display: grid;
      grid-template-columns: .8fr 1.2fr;
      grid-template-rows: 1fr 116px;
      grid-template-areas: 'hero-left hero-right' 'search search'; } }
  .home-hero-content {
    padding: 30px 20px; }
    @media screen and (min-width: 768px) {
      .home-hero-content {
        padding: 40px; } }
    @media screen and (min-width: 1000px) {
      .home-hero-content {
        grid-area: hero-left;
        padding-left: 0;
        padding-bottom: 100px; } }
    @media screen and (min-width: 1200px) {
      .home-hero-content {
        padding-right: 120px; } }
  .home-hero-feature {
    position: relative; }
    @media screen and (min-width: 1000px) {
      .home-hero-feature {
        grid-area: hero-right;
        margin-bottom: -100px; } }
    @media screen and (min-width: 1200px) {
      .home-hero-feature {
        margin-bottom: -120px; } }
    .home-hero-feature img,
    .home-hero-feature video {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  .home-hero-search {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    background: #253a6e;
    background: -webkit-linear-gradient(180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    background: linear-gradient(-90deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    padding: 30px 20px;
    max-width: 1280px;
    z-index: 3; }
    @media screen and (min-width: 1000px) {
      .home-hero-search {
        grid-area: search;
        height: 116px;
        border-radius: 10px;
        margin-top: -58px;
        margin-right: 40px; } }
    @media (min-width: 1400px) {
      .home-hero-search {
        margin-right: 0; } }
    @media screen and (min-width: 1000px) {
      .home-hero-search::before {
        content: '';
        position: absolute;
        top: -72px;
        width: 226px;
        height: 80px;
        background-image: url("../images/gray-dots.svg");
        background-repeat: no-repeat;
        background-position: top center;
        background-size: 226px 186px;
        z-index: 2; } }
    .home-hero-search-inner {
      position: relative;
      flex: 1 1 auto;
      max-width: 545px; }
    .home-hero-search input[type='text'] {
      margin: 0;
      height: 50px;
      border-radius: 1000px;
      max-width: 545px;
      border: 2px solid transparent; }
      .home-hero-search input[type='text']::placeholder {
        text-transform: uppercase;
        font-weight: 700;
        font-size: 14px;
        font-size: 0.875rem;
        color: #1a1a1a;
        letter-spacing: 1.31px; }
      .home-hero-search input[type='text']:focus {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.1);
        border-color: #9fd64d; }
        .home-hero-search input[type='text']:focus::placeholder {
          opacity: .5; }
    .home-hero-search-submit {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 0;
      right: -1px;
      width: 50px;
      height: 50px;
      color: #253a6e;
      background: #9fd64d;
      border: 0;
      border-radius: 1000px;
      transition: 0.15s ease-in-out; }
      .home-hero-search-submit::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-size: 20px;
        font-size: 1.25rem; }
      .home-hero-search-submit:active, .home-hero-search-submit:hover, .home-hero-search-submit:focus, .home-hero-search-submit.-focused {
        color: #fff;
        background: #0273ba; }

.image-slider {
  position: relative;
  grid-column: full;
  margin-bottom: 80px;
  padding: 80px 0 110px;
  max-width: 100%; }
  @media screen and (min-width: 1000px) {
    .image-slider {
      padding: 80px; } }
  .image-slider-inner {
    position: relative;
    grid-column: main; }
    @media screen and (min-width: 900px) {
      .image-slider-inner {
        display: flex;
        flex-direction: row-reverse;
        align-items: center; } }
    @media screen and (min-width: 900px) {
      [data-slider-position='right'] .image-slider-inner {
        flex-direction: row; } }
  .image-slider-text {
    margin-bottom: 40px; }
    @media screen and (min-width: 900px) {
      .image-slider-text {
        width: 50%;
        margin: 0;
        padding-left: 45px; } }
    @media screen and (min-width: 1000px) {
      .image-slider-text {
        padding-left: 60px; } }
    @media screen and (min-width: 1200px) {
      .image-slider-text {
        padding-left: 90px; } }
    [data-slider-position='right'] .image-slider-text {
      padding-right: 45px;
      padding-left: 0; }
      @media screen and (min-width: 1000px) {
        [data-slider-position='right'] .image-slider-text {
          padding-right: 60px; } }
      @media screen and (min-width: 1200px) {
        [data-slider-position='right'] .image-slider-text {
          padding-right: 90px; } }
    @media screen and (min-width: 900px) {
      .image-slider-text-inner {
        margin-top: -80px; } }
    @media screen and (min-width: 1200px) {
      .image-slider-text-inner {
        max-width: 400px; } }
    .image-slider-text .eyebrow {
      color: #fff; }
    .image-slider-text .h4 {
      color: #fff; }
    .image-slider-text p {
      color: #fff; }
  .image-slider-container {
    margin: 0 auto; }
    @media screen and (max-width: 899px) {
      .image-slider-container {
        max-width: 485px; } }
    @media screen and (min-width: 900px) {
      .image-slider-container {
        width: 50%; } }
  .image-slider-slides {
    opacity: 0;
    transition: opacity 0.25s ease-in-out; }
    .image-slider-slides.slick-initialized {
      opacity: 1; }
  @media screen and (min-width: 900px) {
    .image-slider-slide-photo {
      display: flex;
      flex-direction: column; } }
  .image-slider-slide-photo-inner {
    position: relative; }
  .image-slider-slide-photo-credit {
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: auto;
    right: 0;
    left: auto;
    padding: 5px 10px;
    background-color: rgba(26, 26, 26, 0.7);
    font-size: 15px;
    font-size: 0.9375rem;
    color: #e5e8ec; }
  .image-slider-caption {
    position: relative;
    z-index: 1;
    padding: 20px;
    background: #fff;
    border-radius: 0 0 8px 8px; }
    @media screen and (min-width: 600px) {
      .image-slider-caption {
        margin: -80px 20px 0;
        border-radius: 8px; } }
  .image-slider-caption-title {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 800; }
    @media screen and (min-width: 900px) {
      .image-slider-caption-title {
        font-size: 20px;
        font-size: 1.25rem; } }
  .image-slider-caption-text {
    margin-top: 10px;
    line-height: 1.35;
    font-size: 16px;
    font-size: 1rem; }
  .image-slider .slick-arrow {
    position: absolute;
    z-index: 100;
    left: calc(50% - 50px);
    top: calc(100% + 20px);
    width: 40px;
    height: 40px; }
    @media screen and (min-width: 600px) {
      .image-slider .slick-arrow {
        top: calc(50% - 60px);
        left: -20px; } }
    .image-slider .slick-arrow.slick-next {
      left: auto;
      right: calc(50% - 50px); }
      @media screen and (min-width: 600px) {
        .image-slider .slick-arrow.slick-next {
          left: auto;
          right: -20px; } }
  .image-slider .slick-dots {
    display: none !important; }
    @media screen and (min-width: 900px) {
      .image-slider .slick-dots {
        display: flex !important;
        justify-content: center;
        align-items: center;
        list-style: none;
        padding: 0;
        margin: 20px 0 10px; }
        .image-slider .slick-dots li {
          margin: 0 5px; }
          .image-slider .slick-dots li.slick-active button {
            background-color: #fff; }
        .image-slider .slick-dots button {
          display: block;
          width: 10px;
          height: 10px;
          padding: 0;
          margin: 0;
          border: 0;
          border-radius: 50%;
          background-color: #059bd6;
          font-size: 0;
          outline: 0;
          transition: 0.15s ease-in-out; }
          .image-slider .slick-dots button:active, .image-slider .slick-dots button:hover, .image-slider .slick-dots button:focus, .image-slider .slick-dots button.-focused {
            background-color: #fff; } }

.institute-link-list {
  position: relative;
  grid-column: full;
  margin-bottom: 80px; }
  .institute-link-list-inner {
    position: relative;
    grid-column: main; }
    @media screen and (min-width: 1100px) {
      .institute-link-list-inner {
        display: flex;
        align-items: flex-start; } }
  .institute-link-list-title {
    grid-column: main; }
    @media screen and (min-width: 1100px) {
      .institute-link-list-title {
        margin-bottom: 40px; } }
  .institute-link-list-text {
    margin-bottom: 20px; }
    @media screen and (min-width: 1100px) {
      .institute-link-list-text {
        width: 50%;
        margin-bottom: 0;
        padding-right: 40px; } }
    @media screen and (min-width: 1500px) {
      .institute-link-list-text {
        max-width: 500px;
        flex: 0 0 500px;
        padding: 0; } }
    @media screen and (min-width: 1100px) {
      .institute-link-list-text-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 20px 0; } }
    .institute-link-list-text-bottom .btn {
      flex: none;
      min-width: none;
      margin-right: 20px; }
  .institute-link-list-social-links {
    flex: 0 1 auto;
    padding: 44px 0 20px; }
    @media screen and (min-width: 600px) {
      .institute-link-list-social-links {
        display: flex;
        align-items: center; } }
    @media screen and (min-width: 768px) {
      .institute-link-list-social-links {
        padding: 20px 0; } }
    .institute-link-list-social-links-label {
      margin-bottom: 10px; }
      @media screen and (min-width: 600px) {
        .institute-link-list-social-links-label {
          margin-right: 10px;
          margin-bottom: 0; } }
      .institute-link-list-social-links-label::before {
        display: none;
        padding: 0; }
    .institute-link-list-social-links ul {
      display: flex;
      list-style: none;
      padding: 0;
      margin: 0; }
    .institute-link-list-social-links li {
      margin-right: 10px; }
    .institute-link-list-social-links a {
      width: 44px;
      height: 44px;
      padding: 2px;
      background-image: linear-gradient(90deg, #059bd6 6%, #253a6e 98%);
      border-radius: 100%;
      font-size: 18px;
      font-size: 1.125rem;
      transition: 0.15s ease-in-out; }
      .institute-link-list-social-links a::before {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: #fff;
        border-radius: 100%;
        color: #253a6e;
        transition: 0.15s ease-in-out; }
      .institute-link-list-social-links a:active, .institute-link-list-social-links a:hover, .institute-link-list-social-links a:focus, .institute-link-list-social-links a.-focused {
        background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
        .institute-link-list-social-links a:active::before, .institute-link-list-social-links a:hover::before, .institute-link-list-social-links a:focus::before, .institute-link-list-social-links a.-focused::before {
          background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
          color: #fff; }
  @media screen and (min-width: 1100px) {
    .institute-link-list-links {
      width: 50%; } }
  @media screen and (min-width: 1500px) {
    .institute-link-list-links {
      flex: 1 1 auto;
      padding-left: 60px; } }
  .institute-link-list-links ul {
    list-style: none;
    padding: 0;
    margin: 0; }
  .institute-link-list-links li {
    display: flex;
    margin-bottom: 15px; }
  @media screen and (min-width: 600px) {
    [data-columns='1'] .institute-link-list-links li,
    [data-columns='2'] .institute-link-list-links li {
      margin: 8px 20px 8px 0; } }
  @media screen and (min-width: 1100px) {
    [data-columns='1'] .institute-link-list-links li,
    [data-columns='2'] .institute-link-list-links li {
      margin: 8px 0 8px 20px; } }
  @media screen and (min-width: 600px) {
    [data-columns='2'] .institute-link-list-links ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr); } }

.institute-news-list {
  grid-column: full;
  margin-bottom: 80px;
  position: relative; }
  .institute-news-list::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 70px;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1500px) {
      .institute-news-list::after {
        display: block;
        left: -150px; } }
    @media screen and (min-width: 1600px) {
      .institute-news-list::after {
        left: -90px; } }
    @media screen and (min-width: 1700px) {
      .institute-news-list::after {
        left: -50px; } }
    @media screen and (min-width: 1800px) {
      .institute-news-list::after {
        left: -30px; } }
  .institute-news-list-inner {
    grid-column: main; }
  .institute-news-list-title {
    margin-bottom: 60px;
    transition: ease-in-out 0.15s; }
  .institute-news-list-item {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e5e8ec;
    cursor: pointer; }
    @media screen and (min-width: 600px) {
      .institute-news-list-item {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between; } }
    @media screen and (min-width: 600px) {
      .institute-news-list-item-content {
        width: calc(60% - 50px); } }
    @media screen and (min-width: 900px) {
      .institute-news-list-item-content {
        width: calc(70% - 100px); } }
    .institute-news-list-item-image {
      margin-bottom: 30px; }
      .institute-news-list-item-image-wrapper {
        display: inline-block;
        width: 100%;
        overflow: hidden; }
      @media screen and (min-width: 600px) {
        .institute-news-list-item-image {
          display: flex;
          align-items: center;
          width: 40%;
          max-width: 300px;
          margin-bottom: 0; } }
      @media screen and (min-width: 900px) {
        .institute-news-list-item-image {
          width: 30%; } }
      .institute-news-list-item-image img {
        width: 100%;
        object-fit: cover;
        transition: transform .5s ease; }
    .institute-news-list-item-eyebrow {
      margin-bottom: 30px; }
      .institute-news-list-item-eyebrow::before {
        display: none; }
    .institute-news-list-item-text {
      margin-bottom: 10px; }
    .institute-news-list-item-date {
      font-size: 16px;
      font-size: 1rem;
      font-style: italic; }
    .institute-news-list-item:active .news-list-item-title, .institute-news-list-item:hover .news-list-item-title, .institute-news-list-item:focus .news-list-item-title, .institute-news-list-item.-focused .news-list-item-title {
      color: #0273ba;
      text-decoration: underline; }
    .institute-news-list-item:active .news-list-item-image img, .institute-news-list-item:hover .news-list-item-image img, .institute-news-list-item:focus .news-list-item-image img, .institute-news-list-item.-focused .news-list-item-image img {
      transform: scale(1.05); }
  .institute-news-list-button {
    grid-column: main;
    text-align: center; }
    .institute-news-list-button-inner {
      grid-column: main; }

.institutes-hero {
  margin-bottom: 80px;
  grid-column: main;
  padding: 40px 0 0; }
  @media screen and (min-width: 768px) {
    .institutes-hero {
      padding: 80px 0 0; } }
  @media screen and (min-width: 768px) {
    .institutes-hero-inner {
      display: flex;
      align-items: center; } }
  @media screen and (min-width: 768px) {
    .institutes-hero-shield {
      margin-right: 20px; } }
  @media screen and (min-width: 1000px) {
    .institutes-hero-shield {
      margin-right: 50px; } }
  .institutes-hero-shield img {
    max-width: 90px;
    margin: 0 auto 20px; }
    @media screen and (min-width: 768px) {
      .institutes-hero-shield img {
        margin: 0;
        max-width: none; } }
  .institutes-hero-content {
    text-align: center; }
    @media screen and (min-width: 768px) {
      .institutes-hero-content {
        text-align: left; } }
    .institutes-hero-content .h1 {
      font-size: Min(Max(2rem, 5.5vw), 4.25rem); }

.intro-panel {
  margin-bottom: 80px;
  grid-column: main;
  width: 100%;
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }
  .intro-panel .h5 {
    position: relative; }
    .intro-panel .h5::before, .intro-panel .h5::after {
      content: '';
      display: block;
      width: 226px;
      height: 50px;
      margin: 0 auto 15px;
      background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
      background-repeat: no-repeat;
      background-position: top center;
      background-size: 226px 186px; }
    .intro-panel .h5::after {
      margin: 15px auto; }
  .intro-panel[data-text='true'] .h5::after {
    display: none; }
  .intro-panel-text {
    margin-bottom: 30px; }
  .intro-panel-secondary-link {
    margin-top: 20px; }
  .commitee-page .intro-panel h2.h5 {
    font-weight: 400;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.6; }
    @media screen and (min-width: 768px) {
      .commitee-page .intro-panel h2.h5 {
        line-height: 1.77; } }

.juicer-embed {
  grid-column: full;
  margin-bottom: 80px;
  background-color: #edeff1;
  padding: 40px 0; }
  @media screen and (min-width: 1000px) {
    .juicer-embed {
      padding: 70px 0; } }
  .juicer-embed-inner {
    grid-column: main; }
  .juicer-embed .juicer-feed {
    font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif !important;
    font-weight: normal !important; }
  .juicer-embed .feed-item {
    border: 0 !important;
    border-width: 0 !important;
    border-radius: 5px; }
    .juicer-embed .feed-item .j-poster {
      padding: 20px 30px !important; }
    .juicer-embed .feed-item .j-text {
      padding: 20px 30px !important; }
  .juicer-embed .j-twitter .j-image {
    margin: 20px -30px 0 -30px !important; }

.detail-layout {
  grid-column: main; }
  @media screen and (min-width: 1000px) {
    .detail-layout .detail-content {
      display: flex;
      justify-content: space-between; } }
  @media screen and (min-width: 1000px) {
    .detail-layout .main-content,
    .detail-layout .hero-content {
      max-width: 850px;
      margin-right: 40px; } }
  @media screen and (min-width: 1200px) {
    .detail-layout .main-content,
    .detail-layout .hero-content {
      margin-right: 130px; } }
  .detail-layout .main-content {
    position: relative; }
  .detail-layout .sidebar-content {
    width: 100%; }
    @media screen and (min-width: 1000px) {
      .detail-layout .sidebar-content {
        max-width: 300px; } }

.leadership-list {
  grid-column: main;
  margin-bottom: 80px; }
  @media screen and (min-width: 1000px) {
    .leadership-list .h4 {
      margin-bottom: 45px; } }
  @media screen and (min-width: 768px) {
    .leadership-list-items {
      column-count: 2;
      column-gap: 60px; } }
  @media screen and (min-width: 1200px) {
    .leadership-list-items {
      column-gap: 100px; } }
  .leadership-list-item {
    margin-bottom: 30px;
    break-inside: avoid; }
  .leadership-list-name {
    font-weight: 800; }
  .leadership-list-credentials {
    white-space: nowrap; }

.link-list {
  position: relative;
  grid-column: full;
  margin-bottom: 80px; }
  .link-list-inner {
    position: relative;
    grid-column: main; }
  .link-list-text {
    position: relative;
    margin-bottom: 20px; }
    @media screen and (max-width: 599px) {
      .link-list-text .h4 {
        font-size: 24px;
        font-size: 1.5rem; } }
    @media screen and (min-width: 600px) {
      .link-list-text .h4 {
        font-size: 34px;
        font-size: 2.125rem; } }
  .link-list-links ul {
    list-style: none;
    padding: 0;
    margin: 0; }
  .link-list-links li {
    display: flex;
    margin-bottom: 15px; }
  @media screen and (min-width: 600px) {
    .link-list[data-text='false'] .link-list-inner {
      display: flex;
      align-items: center; } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='false'] .link-list-text {
      display: flex;
      flex-direction: column;
      justify-content: center;
      width: 50%;
      max-width: 400px;
      min-height: 292px;
      margin-bottom: 0; }
      .link-list[data-text='false'] .link-list-text::after {
        content: '';
        position: absolute;
        z-index: -1;
        right: 20px;
        display: none;
        opacity: .5;
        width: 206px;
        height: 292px;
        background-image: url("https://cdn.asce.org/asg/images/gray-dots-arrow.svg");
        background-size: 206px 292px;
        background-position: center right;
        background-repeat: no-repeat; } }
    @media screen and (min-width: 600px) and (min-width: 600px) {
      .link-list[data-text='false'] .link-list-text::after {
        display: block; } }
    @media screen and (min-width: 600px) and (min-width: 800px) {
      .link-list[data-text='false'] .link-list-text::after {
        opacity: 1; } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='false'] .link-list-links {
      flex: 1 1 auto; } }
  @media screen and (min-width: 768px) {
    .link-list[data-text='false'] .link-list-links {
      padding-left: 40px; } }
  @media screen and (min-width: 1000px) {
    .link-list[data-text='false'] .link-list-links {
      padding-left: 0; } }
  @media screen and (min-width: 1200px) {
    .link-list[data-text='false'] .link-list-links {
      padding-left: 20px; } }
  @media screen and (min-width: 1000px) {
    .link-list[data-text='false'] .link-list-links ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr); } }
  .link-list[data-text='false'] .link-list-links li {
    margin-bottom: 15px; }
    @media screen and (min-width: 1000px) {
      .link-list[data-text='false'] .link-list-links li {
        margin: 8px 0 8px 20px; } }
  @media screen and (min-width: 1000px) {
    .link-list[data-text='false'][data-columns='2'] .link-list-links ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr); } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='false'][data-columns='1'] .link-list-inner {
      display: block; } }
  @media screen and (min-width: 768px) {
    .link-list[data-text='false'][data-columns='1'] .link-list-inner {
      display: flex; } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='false'][data-columns='1'] .link-list-text {
      width: 100%;
      margin-bottom: 20px;
      min-height: 0;
      max-width: none; }
      .link-list[data-text='false'][data-columns='1'] .link-list-text::after {
        display: none; } }
  @media screen and (min-width: 768px) {
    .link-list[data-text='false'][data-columns='1'] .link-list-text {
      margin-bottom: 0;
      min-height: 292px;
      max-width: 400px;
      width: 50%; }
      .link-list[data-text='false'][data-columns='1'] .link-list-text::after {
        display: block; } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='false'][data-columns='1'] ul {
      display: grid;
      grid-template-columns: repeat(1, 1fr); } }
  .link-list.-bg-left, .link-list.-bg-right {
    padding: 40px 15px 50px 0; }
    .link-list.-bg-left[data-text='false'] .link-list-text::after, .link-list.-bg-right[data-text='false'] .link-list-text::after {
      background-image: url("https://cdn.asce.org/asg/images/white-dots-arrow.svg"); }
  @media screen and (min-width: 1000px) {
    .link-list[data-text='true'].-bg-left, .link-list[data-text='true'].-bg-right {
      padding: 50px 15px 60px 0; } }
  @media screen and (min-width: 1200px) {
    .link-list[data-text='true'].-bg-left, .link-list[data-text='true'].-bg-right {
      padding: 70px 15px 80px 0; } }
  .link-list[data-text='true'].-bg-left::after, .link-list[data-text='true'].-bg-right::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: -32px;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gradient-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1500px) {
      .link-list[data-text='true'].-bg-left::after, .link-list[data-text='true'].-bg-right::after {
        display: block;
        left: -120px; } }
    @media screen and (min-width: 1600px) {
      .link-list[data-text='true'].-bg-left::after, .link-list[data-text='true'].-bg-right::after {
        left: -75px; } }
    @media screen and (min-width: 1700px) {
      .link-list[data-text='true'].-bg-left::after, .link-list[data-text='true'].-bg-right::after {
        left: -20px; } }
  @media screen and (min-width: 1100px) {
    .link-list[data-text='true'] .link-list-inner {
      display: flex;
      align-items: center; } }
  @media screen and (min-width: 1100px) {
    .link-list[data-text='true'] .link-list-text {
      width: 40%;
      margin-bottom: 0;
      padding-right: 40px; } }
  @media screen and (min-width: 1500px) {
    .link-list[data-text='true'] .link-list-text {
      max-width: 500px;
      flex: 0 0 500px;
      padding: 0; } }
  .link-list[data-text='true'] .link-list-links {
    padding-top: 20px; }
    @media screen and (min-width: 1100px) {
      .link-list[data-text='true'] .link-list-links {
        padding-top: 0;
        width: 60%; } }
    @media screen and (min-width: 1500px) {
      .link-list[data-text='true'] .link-list-links {
        flex: 1 1 auto;
        padding-left: 40px; } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='true'][data-columns='2'] ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr); } }
  @media screen and (min-width: 600px) {
    .link-list[data-text='true'][data-columns='1'] li, .link-list[data-text='true'][data-columns='2'] li {
      margin: 8px 20px 8px 0; } }
  @media screen and (min-width: 1100px) {
    .link-list[data-text='true'][data-columns='1'] li, .link-list[data-text='true'][data-columns='2'] li {
      margin: 8px 0 8px 20px; } }

.logo-grid {
  grid-column: full;
  margin-bottom: 80px; }
  .logo-grid .logo, .logo-grid .logo.-has-link > a {
    display: flex;
    align-items: center;
    padding: 20px; }
    @media screen and (max-width: 499px) {
      .logo-grid .logo, .logo-grid .logo.-has-link > a {
        min-height: 140px; } }
  .logo-grid > .inner {
    grid-column: main; }
  .logo-grid header {
    text-align: center;
    margin-bottom: 0; }
  .logo-grid .logos {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    margin: 0; }
    @media screen and (min-width: 500px) {
      .logo-grid .logos {
        flex-wrap: wrap;
        flex-direction: row; } }
  .logo-grid .logo {
    border: 1px solid;
    margin-top: calc(10px * 2); }
    @media screen and (min-width: 500px) {
      .logo-grid .logo {
        width: calc((100% / 3) - 10px);
        min-height: calc(((min(1280px, 100vw) / 3) - 10px) * (9 / 16)); } }
    @media screen and (min-width: 768px) {
      .logo-grid .logo {
        width: calc((100% / 3) - 20px);
        margin-top: calc(20px * 2);
        min-height: calc(((min(1280px, 100vw) / 3) - 20px) * (9 / 16)); } }
    .logo-grid .logo.-has-link {
      padding: 0; }
      .logo-grid .logo.-has-link > a {
        height: 100%;
        width: 100%;
        transition: 0.15s ease-in-out;
        position: relative; }
        .logo-grid .logo.-has-link > a::before {
          background: #edeff1;
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          right: auto;
          bottom: auto;
          left: 0;
          position: absolute;
          content: '';
          mix-blend-mode: multiply;
          opacity: 0;
          transition: 0.15s ease-in-out; }
        .logo-grid .logo.-has-link > a:active::before, .logo-grid .logo.-has-link > a:hover::before, .logo-grid .logo.-has-link > a:focus::before, .logo-grid .logo.-has-link > a.-focused::before {
          opacity: 1; }
    .logo-grid .logo img {
      max-width: 200px;
      max-height: 140px;
      width: 100%;
      margin: 0 auto; }
    .logo-grid .logo > img,
    .logo-grid .logo > a {
      margin: 0 auto;
      display: block; }
  .logo-grid.-detail > .inner {
    grid-column: full; }
  .logo-grid.-detail header {
    text-align: left; }
    @media screen and (min-width: 1100px) {
      .logo-grid.-detail header {
        margin-bottom: 10px; } }
  @media screen and (min-width: 500px) {
    .logo-grid.-detail .logo {
      min-height: calc(((min(850px, calc(100vw - (20px * 2))) / 3) - 10px) * (9 / 16)); } }
  @media screen and (min-width: 768px) {
    .logo-grid.-detail .logo {
      width: calc((100% / 3) - 10px);
      margin-top: calc(10px * 2);
      min-height: calc(((min(850px, calc(100vw - (20px * 2))) / 3) - 10px) * (9 / 16)); } }

.magazine-issues {
  grid-column: main;
  margin-bottom: 80px; }
  @media screen and (min-width: 768px) {
    .magazine-issues-results {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -20px; } }
  .magazine-issues-item {
    display: block;
    max-width: 400px;
    margin: 0 auto 40px;
    text-align: center;
    color: #1a1a1a;
    cursor: pointer; }
    @media screen and (min-width: 768px) {
      .magazine-issues-item {
        max-width: none;
        width: calc(50% - 40px);
        margin: 0 20px 40px; } }
    @media screen and (min-width: 1000px) {
      .magazine-issues-item {
        width: calc(100% / 3 - 40px); } }
    @media screen and (min-width: 1200px) {
      .magazine-issues-item {
        width: calc(100% / 4 - 40px); } }
    .magazine-issues-item-image {
      margin-bottom: 20px;
      overflow: hidden; }
      .magazine-issues-item-image img {
        width: 100%;
        object-fit: cover;
        transition: transform .3s ease; }
    .magazine-issues-item-text {
      color: #1a1a1a; }
    .magazine-issues-item-date {
      font-weight: 700;
      margin-bottom: 5px; }
    .magazine-issues-item:active .magazine-issues-item-image img, .magazine-issues-item:hover .magazine-issues-item-image img, .magazine-issues-item:focus .magazine-issues-item-image img, .magazine-issues-item.-focused .magazine-issues-item-image img {
      transform: scale(1.05); }
    .magazine-issues-item:active .magazine-issues-item-text, .magazine-issues-item:hover .magazine-issues-item-text, .magazine-issues-item:focus .magazine-issues-item-text, .magazine-issues-item.-focused .magazine-issues-item-text {
      color: #0273ba; }
  .magazine-issues-results-text, .magazine-issues-loading, .magazine-issues-no-results,
  .magazine-issues .pagination {
    display: none; }

.masonry-grid {
  position: relative;
  grid-column: full;
  margin-bottom: 80px;
  padding: 80px 0;
  background-color: #edeff1;
  background-image: url("https://cdn.asce.org/asg/images/white-dots-square.svg");
  background-size: 226px 186px;
  background-repeat: no-repeat;
  background-position: center bottom 10px; }
  .masonry-grid-inner {
    position: relative;
    grid-column: main; }
  .masonry-grid h2 {
    text-align: center;
    margin-bottom: 50px; }
    @media screen and (min-width: 1000px) {
      .masonry-grid h2 {
        text-align: left; } }
  .masonry-grid-large-text {
    position: relative;
    display: none; }
    @media screen and (min-width: 600px) and (max-width: 599px) {
      .masonry-grid-large-text {
        display: block; } }
    @media screen and (min-width: 1500px) {
      .masonry-grid-large-text {
        display: block; } }
    .masonry-grid-large-text > div {
      position: absolute;
      z-index: 0;
      top: -54px;
      left: calc(50% - 352px);
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      font-size: 200px;
      font-size: 12.5rem;
      line-height: 1;
      font-weight: 800;
      text-transform: uppercase;
      color: #fff; }
      @media screen and (min-width: 600px) {
        .masonry-grid-large-text > div {
          z-index: 1; } }
      @media screen and (min-width: 1000px) {
        .masonry-grid-large-text > div {
          left: -152px; } }
  .masonry-grid-items {
    position: relative; }
    @media screen and (min-width: 1000px) {
      .masonry-grid-items {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-items {
        justify-content: center; } }
  .masonry-grid-item {
    position: relative;
    display: flex;
    flex-direction: column;
    max-width: 400px;
    margin: 0 auto 30px;
    padding: 0;
    background-color: #fff;
    border-radius: 8px;
    cursor: pointer;
    transition: ease-in-out 0.15s;
    animation-delay: 0s; }
    @media screen and (min-width: 400px) {
      .masonry-grid-item {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.08); } }
    @media screen and (min-width: 768px) {
      .masonry-grid-item {
        max-width: 750px; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item {
        max-width: none;
        width: calc(33% - 15px); } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item:nth-child(2n+1) {
        margin-right: 15px;
        animation-delay: 0s; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item:nth-child(2n+2) {
        margin-left: 15px;
        animation-delay: .3s; } }
    @media screen and (min-width: 768px) {
      .masonry-grid-item[data-featured='true'] {
        flex-direction: row; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item[data-featured='true'] {
        width: calc(67% - 15px); } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item[data-featured='true']:nth-child(2n+1) {
        margin-right: 15px; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item[data-featured='true']:nth-child(2n+2) {
        margin-left: 15px; } }
    @media screen and (min-width: 768px) {
      .masonry-grid-item[data-featured='true'] .masonry-grid-item-img {
        width: 40%; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item[data-featured='true'] .masonry-grid-item-img {
        width: 52%; } }
    @media screen and (min-width: 768px) {
      .masonry-grid-item[data-featured='true'] .masonry-grid-item-content {
        width: 60%; } }
    @media screen and (min-width: 1000px) {
      .masonry-grid-item[data-featured='true'] .masonry-grid-item-content {
        width: 48%; } }
    .masonry-grid-item-img {
      position: relative;
      overflow: hidden; }
      .masonry-grid-item-img-inner {
        position: relative;
        padding-top: 75%;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        transition: transform .5s ease;
        transform: translateZ(0); }
        @media screen and (min-width: 1000px) {
          .masonry-grid-item-img-inner {
            padding: 0; } }
        .masonry-grid-item-img-inner::before {
          content: '';
          display: none;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background: rgba(159, 214, 77, 0.6);
          background: -webkit-linear-gradient(135deg, rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6));
          background: linear-gradient(-45deg, rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6)); }
      .masonry-grid-item-img-credit {
        position: absolute;
        z-index: 0;
        top: auto;
        bottom: 0;
        right: 0;
        left: auto;
        padding: 5px 10px;
        background-color: rgba(26, 26, 26, 0.7);
        font-size: 15px;
        font-size: 0.9375rem;
        color: #e5e8ec; }
      .masonry-grid-item-img[data-gradient='true'] .masonry-grid-item-img-inner::before {
        display: block; }
    .masonry-grid-item-content {
      padding: 50px 20px; }
      @media screen and (min-width: 400px) {
        .masonry-grid-item-content {
          padding: 50px 40px; } }
    .masonry-grid-item-title {
      transition: ease-in-out 0.15s; }
      .masonry-grid-item-title.-external::after {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: relative;
        top: -2px;
        color: #253a6e;
        font-size: 11.2px;
        font-size: 0.7rem;
        transition: 0.15s ease-in-out;
        border-left: 1px solid rgba(95, 106, 120, 0.3);
        margin-left: 9px;
        padding: 2px 0 2px 9px; }
      .masonry-grid-item-title.-gated::after {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: relative;
        color: #5f6a78;
        font-size: 16px;
        font-size: 1rem;
        border-left: 1px solid rgba(95, 106, 120, 0.3);
        margin-left: 9px;
        padding-left: 9px;
        transition: 0.15s ease-in-out; }
    .masonry-grid-item:active, .masonry-grid-item:hover, .masonry-grid-item:focus, .masonry-grid-item.-focused {
      background-color: #253a6e;
      color: #fff; }
      .masonry-grid-item:active a, .masonry-grid-item:hover a, .masonry-grid-item:focus a, .masonry-grid-item.-focused a {
        color: #fff; }
        .masonry-grid-item:active a::after, .masonry-grid-item:hover a::after, .masonry-grid-item:focus a::after, .masonry-grid-item.-focused a::after {
          color: #fff; }
      .masonry-grid-item:active .masonry-grid-item-img-inner, .masonry-grid-item:hover .masonry-grid-item-img-inner, .masonry-grid-item:focus .masonry-grid-item-img-inner, .masonry-grid-item.-focused .masonry-grid-item-img-inner {
        transform: scale3d(1.05, 1.05, 1) translateZ(0); }
  .masonry-grid + .ad-space-rectangle {
    margin-top: -80px; }

.mobile-header {
  position: relative;
  padding: 10px 20px 0;
  padding-bottom: 30px; }
  @media screen and (min-width: 768px) {
    .mobile-header {
      padding: 10px 40px 0;
      padding-bottom: 30px; } }
  @media screen and (min-width: 1300px) {
    .mobile-header {
      display: none; } }
  .mobile-header::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: inherit;
    left: 0;
    height: 10px;
    background: #253a6e;
    background: -webkit-linear-gradient(-180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    background: linear-gradient(270deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }
  .mobile-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0; }
  .mobile-header-logo {
    height: 30px; }
  .mobile-header-nav {
    display: flex;
    align-items: center;
    margin-left: 40px; }
  .mobile-header .btn {
    min-width: 0;
    margin: 0 8px;
    padding-top: 6px;
    padding-bottom: 6px; }
  .mobile-header .mobile-menu-trigger {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    margin-left: 8px;
    background-color: transparent;
    border: 0; }
    .mobile-header .mobile-menu-trigger::before {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-size: 20px;
      font-size: 1.25rem;
      color: #253a6e;
      transition: 0.15s ease-in-out; }
    .mobile-header .mobile-menu-trigger:active::before, .mobile-header .mobile-menu-trigger:hover::before, .mobile-header .mobile-menu-trigger:focus::before, .mobile-header .mobile-menu-trigger.-focused::before {
      color: #0273ba; }

.mobile-menu {
  position: fixed;
  top: 0;
  right: -360px;
  width: 320px;
  height: 100vh;
  background: #253a6e;
  background: -webkit-linear-gradient(-90deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
  background: linear-gradient(180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
  box-shadow: 0 13px 24px 0 rgba(30, 30, 30, 0.5);
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  visibility: hidden;
  transition: right 0.3s ease-in-out, opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  z-index: 100;
  -ms-overflow-style: none;
  scrollbar-width: none; }
  @media screen and (min-width: 600px) {
    .mobile-menu {
      right: -450px;
      width: 430px; } }
  @media screen and (min-width: 1300px) {
    .mobile-menu {
      display: none; } }
  .mobile-menu::-webkit-scrollbar {
    display: none; }
  .mobile-menu::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: inherit;
    left: 0;
    height: 10px;
    background: #253a6e;
    background: -webkit-linear-gradient(-180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    background: linear-gradient(270deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }
  html[data-mobile-menu='open'] .mobile-menu {
    right: 0;
    opacity: 1;
    visibility: visible; }
  .mobile-menu-top {
    position: relative;
    z-index: 10; }
  .mobile-menu-inner {
    position: relative;
    margin-top: 75px;
    padding: 0 25px 60px;
    height: 100%; }
    @media screen and (min-width: 600px) {
      .mobile-menu-inner {
        padding: 0 50px 60px; } }
    @media screen and (max-width: 599px) {
      [data-level='2'] .mobile-menu-inner {
        padding-bottom: 0; } }
  .mobile-menu-back {
    display: flex;
    align-items: center;
    position: absolute;
    top: 35px;
    left: 25px;
    background: none;
    color: #fff;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.5;
    padding: 0;
    border: 0;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s ease-in-out; }
    @media screen and (min-width: 600px) {
      .mobile-menu-back {
        left: 40px; } }
    .mobile-menu-back::before {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: relative;
      top: -1px;
      left: 0;
      margin-right: 10px;
      font-size: 10px;
      font-size: 0.625rem;
      transform: rotate(228deg);
      transition: 0.15s ease-in-out; }
    [data-level='2'] .mobile-menu-back {
      opacity: 1;
      visibility: visible; }
    .mobile-menu-back:active, .mobile-menu-back:hover, .mobile-menu-back:focus, .mobile-menu-back.-focused {
      color: #fff; }
      .mobile-menu-back:active::before, .mobile-menu-back:hover::before, .mobile-menu-back:focus::before, .mobile-menu-back.-focused::before {
        left: -3px; }
  .mobile-menu-close {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 30px;
    right: 20px;
    width: 35px;
    height: 35px;
    background-color: transparent;
    border: 0;
    color: #fff;
    transition: 0.15s ease-in-out; }
    .mobile-menu-close::before {
      font-size: 16px;
      font-size: 1rem; }
    @media screen and (min-width: 600px) {
      .mobile-menu-close {
        right: 50px; } }
    .mobile-menu-close:active, .mobile-menu-close:hover, .mobile-menu-close:focus, .mobile-menu-close.-focused {
      outline: 0; }
  .mobile-menu-main {
    margin-bottom: 28px;
    transform: translateX(0);
    transition: 0.3s ease-in-out; }
    [data-level='2'] .mobile-menu-main {
      transform: translateX(-300px); }
      @media screen and (min-width: 600px) {
        [data-level='2'] .mobile-menu-main {
          transform: translateX(-380px); } }
    .mobile-menu-main > li {
      display: flex;
      border-bottom: 1px solid #059bd6; }
    .mobile-menu-main-search {
      position: relative;
      padding-top: 30px; }
      .mobile-menu-main-search input[type='text'] {
        border: 0;
        border-bottom: 1px solid #059bd6;
        background-color: rgba(255, 255, 255, 0.09);
        border-radius: 3px;
        padding: 20px 20px 20px 15px;
        color: #fff;
        font-size: 18px;
        font-size: 1.125rem; }
        .mobile-menu-main-search input[type='text']::placeholder {
          color: #fff;
          font-weight: 800;
          font-size: 18px;
          font-size: 1.125rem; }
      .mobile-menu-main-search button {
        position: absolute;
        top: calc(50% + 15px);
        right: 20px;
        width: 24px;
        height: 24px;
        background-color: transparent;
        border: 0;
        transform: translate(0, -50%); }
        .mobile-menu-main-search button::before {
          content: "";
          display: inline-block;
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          text-transform: none;
          speak: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          width: 24px;
          height: 24px;
          color: #fff; }
    .mobile-menu-main-link {
      flex: 1 1 0%;
      color: #fff;
      font-size: 18px;
      font-size: 1.125rem;
      font-weight: 700;
      line-height: 2.21053;
      padding: 15px 0; }
      .mobile-menu-main-link.-active {
        color: #fff; }
    .mobile-menu-main-next {
      position: relative;
      left: -20px;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      justify-content: center;
      flex: none;
      width: 24px;
      height: 24px; }
      .mobile-menu-main-next::before {
        font-size: 16px;
        font-size: 1rem;
        color: #fff; }
    .mobile-menu-main-panel {
      position: absolute;
      top: 20px;
      left: calc(100% + 25px);
      width: 100%;
      opacity: 0;
      z-index: -1;
      transition: 0.3s ease-in-out; }
      @media screen and (min-width: 600px) {
        .mobile-menu-main-panel {
          left: calc(100% + 40px); } }
      .mobile-menu-main-panel[aria-hidden='false'] {
        opacity: 1;
        z-index: 2; }
      .mobile-menu-main-panel > ul li {
        margin-bottom: 40px; }
      .mobile-menu-main-panel > ul .mobile-menu-column-heading {
        text-transform: uppercase;
        font-weight: 700;
        font-size: 14px;
        font-size: 0.875rem;
        line-height: 1.28571;
        letter-spacing: 1.3px;
        color: #e5e8ec;
        margin-bottom: 20px; }
      .mobile-menu-main-panel > ul .mobile-menu-column-link {
        padding: 15px 0;
        border-bottom: 1px solid #059bd6; }
        .mobile-menu-main-panel > ul .mobile-menu-column-link:last-child {
          margin: 0; }
        .mobile-menu-main-panel > ul .mobile-menu-column-link > a {
          position: relative;
          display: inline;
          color: #fff;
          font-size: 18px;
          font-size: 1.125rem;
          font-weight: 700;
          line-height: 1.5; }
        .mobile-menu-main-panel > ul .mobile-menu-column-link ul {
          margin-top: 22px; }
          .mobile-menu-main-panel > ul .mobile-menu-column-link ul li {
            margin-bottom: 24px; }
            .mobile-menu-main-panel > ul .mobile-menu-column-link ul li:last-child {
              margin: 0; }
          .mobile-menu-main-panel > ul .mobile-menu-column-link ul a {
            display: inline;
            color: #fff;
            font-size: 16px;
            font-size: 1rem;
            line-height: 1.25;
            border-bottom: 3px solid transparent; }
            .mobile-menu-main-panel > ul .mobile-menu-column-link ul a:active, .mobile-menu-main-panel > ul .mobile-menu-column-link ul a:hover, .mobile-menu-main-panel > ul .mobile-menu-column-link ul a:focus, .mobile-menu-main-panel > ul .mobile-menu-column-link ul a.-focused {
              border-color: #0273ba; }
            .mobile-menu-main-panel > ul .mobile-menu-column-link ul a.-active {
              border-color: #0273ba; }
  .mobile-menu-nav {
    padding-bottom: 40px; }
  .mobile-menu-side-nav-button {
    margin-top: 40px;
    text-align: center; }
  .mobile-menu-side-nav-social-links {
    display: flex;
    flex: 0 1 auto;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-top: 40px; }
    .mobile-menu-side-nav-social-links ul {
      display: flex;
      list-style: none;
      padding: 0;
      margin: 0;
      justify-content: center; }
    .mobile-menu-side-nav-social-links li {
      margin-right: 10px; }
    .mobile-menu-side-nav-social-links a {
      width: 44px;
      height: 44px;
      padding: 2px;
      border: 1px solid #059bd6;
      border-radius: 100%;
      font-size: 18px;
      font-size: 1.125rem;
      transition: 0.15s ease-in-out; }
      .mobile-menu-side-nav-social-links a::before {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: transparent;
        border-radius: 100%;
        color: #fff;
        transition: 0.15s ease-in-out; }
      .mobile-menu-side-nav-social-links a:active::before, .mobile-menu-side-nav-social-links a:hover::before, .mobile-menu-side-nav-social-links a:focus::before, .mobile-menu-side-nav-social-links a.-focused::before {
        color: #0273ba;
        background-color: #fff; }
  .mobile-menu-main-link, .mobile-menu-utility-nav-link, .mobile-menu-main-nav-link, .mobile-menu-side-nav-link {
    display: flex;
    align-items: center; }
    .mobile-menu-main-link:active, .mobile-menu-main-link:hover, .mobile-menu-main-link:focus, .mobile-menu-main-link.-focused, .mobile-menu-utility-nav-link:active, .mobile-menu-utility-nav-link:hover, .mobile-menu-utility-nav-link:focus, .mobile-menu-utility-nav-link.-focused, .mobile-menu-main-nav-link:active, .mobile-menu-main-nav-link:hover, .mobile-menu-main-nav-link:focus, .mobile-menu-main-nav-link.-focused, .mobile-menu-side-nav-link:active, .mobile-menu-side-nav-link:hover, .mobile-menu-side-nav-link:focus, .mobile-menu-side-nav-link.-focused {
      color: #fff; }

.modal {
  position: relative;
  background: #fff;
  max-width: 800px;
  border-radius: 10px;
  padding: 30px;
  margin: 20px;
  box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.08);
  z-index: 1; }
  @media screen and (min-width: 800px) {
    .modal {
      padding: 50px;
      margin: 0 auto; } }
  .modal-img {
    display: none; }
    @media screen and (min-width: 768px) {
      .modal-img {
        display: block;
        margin: -100px auto 50px; } }
  .modal-content {
    position: relative;
    padding-top: 40px; }
    .modal-content::before {
      content: '';
      position: absolute;
      top: 0;
      left: 50%;
      width: 88px;
      height: 8px;
      background: #9fd64d;
      background: -webkit-linear-gradient(135deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      background: linear-gradient(-45deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      margin-left: -44px;
      border-radius: 10px; }
  .modal-title {
    text-align: center; }
  .modal-cta {
    text-align: center; }

.news-list {
  grid-column: full;
  position: relative; }
  .news-list::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 70px;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1500px) {
      .news-list::after {
        display: block;
        left: -150px; } }
    @media screen and (min-width: 1600px) {
      .news-list::after {
        left: -90px; } }
    @media screen and (min-width: 1700px) {
      .news-list::after {
        left: -50px; } }
    @media screen and (min-width: 1800px) {
      .news-list::after {
        left: -30px; } }
  .news-list-inner {
    grid-column: main; }
  .news-list-title {
    margin-bottom: 60px;
    transition: ease-in-out 0.15s; }
  .news-list-item {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e5e8ec;
    cursor: pointer; }
    @media screen and (min-width: 600px) {
      .news-list-item {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between; } }
    @media screen and (min-width: 600px) {
      .news-list-item-content {
        width: calc(60% - 50px); } }
    @media screen and (min-width: 900px) {
      .news-list-item-content {
        width: calc(70% - 100px); } }
    .news-list-item-image {
      margin-bottom: 30px; }
      .news-list-item-image-wrapper {
        display: inline-block;
        width: 100%;
        overflow: hidden; }
      @media screen and (min-width: 600px) {
        .news-list-item-image {
          display: flex;
          align-items: center;
          width: 40%;
          max-width: 300px;
          margin-bottom: 0; } }
      @media screen and (min-width: 900px) {
        .news-list-item-image {
          width: 30%; } }
      .news-list-item-image img {
        width: 100%;
        object-fit: cover;
        transition: transform .5s ease; }
    .news-list-item-eyebrow {
      margin-bottom: 30px; }
      .news-list-item-eyebrow::before {
        display: none; }
    .news-list-item-text {
      margin-bottom: 10px; }
    .news-list-item-date {
      font-size: 16px;
      font-size: 1rem;
      font-style: italic; }
    .news-list-item:active .news-list-item-title, .news-list-item:hover .news-list-item-title, .news-list-item:focus .news-list-item-title, .news-list-item.-focused .news-list-item-title {
      color: #0273ba;
      text-decoration: underline; }
    .news-list-item:active .news-list-item-image img, .news-list-item:hover .news-list-item-image img, .news-list-item:focus .news-list-item-image img, .news-list-item.-focused .news-list-item-image img {
      transform: scale(1.05); }

.pagination {
  grid-column: main; }
  .pagination .icon-arrow::before {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .pagination-inner {
    display: flex;
    align-items: center;
    justify-content: center; }
  .pagination-mobile {
    flex: none;
    margin: 0 20px;
    font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
    font-weight: 600; }
    .pagination-mobile-current, .pagination-mobile-total {
      font-weight: 700; }
    @media screen and (min-width: 600px) {
      .pagination-mobile {
        display: none; } }
  .pagination-prev, .pagination-next {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 36px;
    border-radius: 0;
    background-color: #fff;
    color: #5f6a78;
    line-height: 0;
    margin: 0 30px; }
    .pagination-prev:active, .pagination-prev:hover, .pagination-prev:focus, .pagination-prev.-focused, .pagination-next:active, .pagination-next:hover, .pagination-next:focus, .pagination-next.-focused {
      background: #0273ba;
      color: #fff; }
    .pagination-prev[data-disabled='true'], .pagination-next[data-disabled='true'] {
      opacity: .4;
      pointer-events: none; }
  .pagination-prev {
    transform: rotate(180deg);
    border-left: 1px solid #e5e8ec;
    padding: 0 8px; }
  .pagination-next {
    border-left: 1px solid #e5e8ec;
    padding: 0 8px; }
  .pagination-pages {
    display: none; }
    @media screen and (min-width: 600px) {
      .pagination-pages {
        display: flex; } }
    .pagination-pages span,
    .pagination-pages a {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin: 0 3px;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      color: #5f6a78;
      font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
      font-weight: 700;
      border: 2px solid transparent;
      text-align: center;
      z-index: 1; }
      .pagination-pages span.sr-text,
      .pagination-pages a.sr-text {
        position: absolute; }
      .pagination-pages span::before, .pagination-pages span::after,
      .pagination-pages a::before,
      .pagination-pages a::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        border-radius: inherit;
        z-index: -1;
        opacity: 0;
        transition: ease-in-out 0.15s; }
      .pagination-pages span::before,
      .pagination-pages a::before {
        background: rgba(37, 58, 110, 0.93);
        background: -webkit-linear-gradient(90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
        background: linear-gradient(0deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
        margin: -2px; }
      .pagination-pages span::after,
      .pagination-pages a::after {
        background-color: #fff; }
      .pagination-pages span[data-current='true'],
      .pagination-pages a[data-current='true'] {
        pointer-events: none; }
        .pagination-pages span[data-current='true']::before,
        .pagination-pages a[data-current='true']::before {
          background: rgba(37, 58, 110, 0.93);
          background: -webkit-linear-gradient(90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
          background: linear-gradient(0deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
          margin: -2px;
          opacity: 1; }
        .pagination-pages span[data-current='true']::after,
        .pagination-pages a[data-current='true']::after {
          opacity: 1; }
      .pagination-pages span:active::before, .pagination-pages span:hover::before, .pagination-pages span:focus::before, .pagination-pages span.-focused::before,
      .pagination-pages a:active::before,
      .pagination-pages a:hover::before,
      .pagination-pages a:focus::before,
      .pagination-pages a.-focused::before {
        background: rgba(37, 58, 110, 0.93);
        background: -webkit-linear-gradient(90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
        background: linear-gradient(0deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
        margin: -2px;
        opacity: 1; }
      .pagination-pages span:active::after, .pagination-pages span:hover::after, .pagination-pages span:focus::after, .pagination-pages span.-focused::after,
      .pagination-pages a:active::after,
      .pagination-pages a:hover::after,
      .pagination-pages a:focus::after,
      .pagination-pages a.-focused::after {
        opacity: 1; }
      .pagination-pages span:active.pagination-pages-dots::before, .pagination-pages span:active.pagination-pages-dots::after, .pagination-pages span:hover.pagination-pages-dots::before, .pagination-pages span:hover.pagination-pages-dots::after, .pagination-pages span:focus.pagination-pages-dots::before, .pagination-pages span:focus.pagination-pages-dots::after, .pagination-pages span.-focused.pagination-pages-dots::before, .pagination-pages span.-focused.pagination-pages-dots::after,
      .pagination-pages a:active.pagination-pages-dots::before,
      .pagination-pages a:active.pagination-pages-dots::after,
      .pagination-pages a:hover.pagination-pages-dots::before,
      .pagination-pages a:hover.pagination-pages-dots::after,
      .pagination-pages a:focus.pagination-pages-dots::before,
      .pagination-pages a:focus.pagination-pages-dots::after,
      .pagination-pages a.-focused.pagination-pages-dots::before,
      .pagination-pages a.-focused.pagination-pages-dots::after {
        opacity: 0; }

.promo-full-width {
  position: relative;
  grid-column: full;
  background: rgba(37, 58, 110, 0.93);
  background: -webkit-linear-gradient(135deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
  background: linear-gradient(-45deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
  margin-bottom: 80px;
  padding: 120px 20px;
  overflow: hidden; }
  .promo-full-width:last-child {
    margin-bottom: 0;
    margin-top: 0; }
  .promo-full-width-inner {
    position: relative;
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    z-index: 2; }
  .promo-full-width-images {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    z-index: 1; }
    .promo-full-width-images::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: rgba(37, 58, 110, 0.93);
      background: -webkit-linear-gradient(135deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
      background: linear-gradient(-45deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93)); }
    .promo-full-width-images img {
      width: 100%;
      height: 100%;
      min-width: 0;
      object-fit: cover; }
      .promo-full-width-images img:nth-child(2) {
        display: none; }
        @media screen and (min-width: 768px) {
          .promo-full-width-images img:nth-child(2) {
            display: block; } }
      .promo-full-width-images img:nth-child(3) {
        display: none; }
        @media screen and (min-width: 1200px) {
          .promo-full-width-images img:nth-child(3) {
            display: block; } }
  .promo-full-width p {
    margin-bottom: 30px; }
  .promo-full-width .dots {
    display: none;
    position: absolute;
    bottom: -70px;
    right: -10px;
    width: 226px;
    height: 186px;
    z-index: 3; }
    @media screen and (min-width: 768px) {
      .promo-full-width .dots {
        display: block; } }

.promo-membership {
  grid-column: full;
  margin-bottom: 80px;
  padding: 0 20px; }
  @media screen and (min-width: 600px) {
    .promo-membership {
      padding: 0; } }
  .promo-membership-title {
    margin-bottom: 40px; }
  [data-columns='1'] .promo-membership-inner,
  [data-columns='2'] .promo-membership-inner,
  [data-columns='3'] .promo-membership-inner {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto; }
  @media screen and (min-width: 600px) {
    .promo-membership-items {
      display: flex;
      flex-wrap: wrap; } }
  @media screen and (min-width: 768px) {
    [data-columns='1'] .promo-membership-items,
    [data-columns='2'] .promo-membership-items {
      justify-content: center; } }
  @media screen and (min-width: 1000px) {
    [data-columns='3'] .promo-membership-items {
      justify-content: center; } }
  .promo-membership-item {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    padding: 35px 0;
    border-top: 1px solid #e5e8ec; }
    @media screen and (min-width: 600px) {
      .promo-membership-item {
        margin: 0;
        padding: 40px 20px;
        width: calc(100% / 2);
        max-width: none;
        border: 1px solid #e5e8ec; }
        [data-columns='1'] .promo-membership-item {
          width: 100%; }
        [data-columns='2'] .promo-membership-item {
          width: calc(100% / 2); } }
    @media screen and (min-width: 768px) {
      .promo-membership-item {
        padding: 40px; }
        [data-columns='1'] .promo-membership-item {
          width: 100%;
          max-width: 640px; } }
    @media screen and (min-width: 1000px) {
      .promo-membership-item {
        width: calc(100% / 3); } }
    @media screen and (min-width: 1300px) {
      .promo-membership-item {
        width: calc(100% / 4); }
        [data-columns='1'] .promo-membership-item {
          width: 100%; }
        [data-columns='2'] .promo-membership-item {
          width: calc(100% / 2); }
        [data-columns='3'] .promo-membership-item {
          width: calc(100% / 3); } }
    .promo-membership-item-top {
      margin-bottom: 18px; }
    .promo-membership-item-image {
      margin-bottom: 25px;
      background-size: cover;
      background-position: center; }
      .promo-membership-item-image::before {
        content: '';
        display: block;
        padding-bottom: 70%; }
    .promo-membership-item-title {
      margin-bottom: 7px; }
    .promo-membership-item-subtitle {
      font-weight: 700;
      line-height: 1.56; }
      @media screen and (min-width: 1000px) {
        .promo-membership-item-subtitle {
          font-size: 18px;
          font-size: 1.125rem; } }
    .promo-membership-item > hr {
      margin: 18px 0 20px;
      border-bottom-color: #e5e8ec; }
    .promo-membership-item-list {
      padding: 0 !important;
      padding-top: 20px !important;
      border-top: 2px solid #e5e8ec; }
    .promo-membership-item-link {
      margin-top: auto;
      align-self: flex-start; }

.promo-splitter {
  position: relative;
  grid-column: full;
  margin-bottom: 80px; }
  .promo-splitter-inner {
    grid-column: main; }
    @media screen and (min-width: 600px) {
      .promo-splitter-inner {
        max-width: 560px;
        margin: 0 auto; } }
    @media screen and (min-width: 1000px) {
      .promo-splitter-inner {
        display: flex;
        align-items: center;
        max-width: none; } }
    [data-image-position='right'] .promo-splitter-inner {
      flex-direction: row-reverse; }
  .promo-splitter-image {
    position: relative;
    margin: 0 -20px; }
    @media screen and (min-width: 600px) {
      .promo-splitter-image {
        margin: 0 auto; } }
    @media screen and (min-width: 1000px) {
      .promo-splitter-image {
        width: 51%; } }
    .promo-splitter-image .promo-splitter-photo-credit {
      position: absolute;
      z-index: 0;
      top: auto;
      bottom: 0;
      right: auto;
      left: 0;
      padding: 5px 10px;
      background-color: rgba(26, 26, 26, 0.7);
      font-size: 15px;
      font-size: 0.9375rem;
      color: #e5e8ec;
      z-index: 0; }
      [data-image-position='right'] .promo-splitter-image .promo-splitter-photo-credit {
        left: auto;
        right: 0; }
    [data-gradient='true'] .promo-splitter-image::before {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(159, 214, 77, 0.6);
      background: -webkit-linear-gradient(135deg, rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6));
      background: linear-gradient(-45deg, rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6)); }
    .promo-splitter-image::after {
      content: '';
      position: absolute;
      z-index: -1;
      top: 50%;
      right: -38px;
      transform: translateY(-50%);
      display: none;
      opacity: 1;
      width: 226px;
      height: 186px;
      background-image: url("../images/gray-dots.svg");
      background-size: 226px 186px;
      background-position: top left;
      background-repeat: no-repeat; }
      @media screen and (min-width: 1200px) {
        .promo-splitter-image::after {
          display: block; } }
      @media screen and (min-width: 1400px) {
        .promo-splitter-image::after {
          right: -72px; } }
      [data-image-position='right'] .promo-splitter-image::after {
        right: auto;
        left: -38px; }
        @media screen and (min-width: 1400px) {
          [data-image-position='right'] .promo-splitter-image::after {
            left: -72px; } }
  .promo-splitter-content {
    padding: 30px 0 0; }
    @media screen and (min-width: 1000px) {
      .promo-splitter-content {
        width: 49%;
        padding: 0 0 0 60px; } }
    @media screen and (min-width: 1200px) {
      .promo-splitter-content {
        padding-left: 100px; } }
    @media screen and (min-width: 1400px) {
      .promo-splitter-content {
        padding-left: 125px; } }
    @media screen and (min-width: 1000px) {
      [data-image-position='right'] .promo-splitter-content {
        padding: 0 60px 0 0; } }
    @media screen and (min-width: 1200px) {
      [data-image-position='right'] .promo-splitter-content {
        padding-left: 0;
        padding-right: 100px; } }
    @media screen and (min-width: 1400px) {
      [data-image-position='right'] .promo-splitter-content {
        padding-left: 0;
        padding-right: 125px; } }
  .promo-splitter .wysiwyg-content {
    margin-bottom: 30px; }
  .promo-splitter-link-list li {
    margin-bottom: 10px; }
  .promo-splitter.-bg-left, .promo-splitter.-bg-right {
    grid-column: full;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (min-width: 1000px) {
      .promo-splitter.-bg-left, .promo-splitter.-bg-right {
        padding-top: 80px;
        padding-bottom: 80px; } }
    .promo-splitter.-bg-left .promo-splitter-inner, .promo-splitter.-bg-right .promo-splitter-inner {
      display: flex;
      flex-direction: column-reverse; }
      @media screen and (min-width: 600px) {
        .promo-splitter.-bg-left .promo-splitter-inner, .promo-splitter.-bg-right .promo-splitter-inner {
          max-width: 560px;
          margin: 0 auto; } }
      @media screen and (min-width: 1000px) {
        .promo-splitter.-bg-left .promo-splitter-inner, .promo-splitter.-bg-right .promo-splitter-inner {
          max-width: 1280px;
          margin-left: auto;
          margin-right: auto;
          flex-direction: row; } }
    .promo-splitter.-bg-left .promo-splitter-content, .promo-splitter.-bg-right .promo-splitter-content {
      padding-top: 0;
      padding-bottom: 30px; }
    .promo-splitter.-bg-left .promo-splitter-image, .promo-splitter.-bg-right .promo-splitter-image {
      margin: 0; }
      .promo-splitter.-bg-left .promo-splitter-image::after, .promo-splitter.-bg-right .promo-splitter-image::after {
        display: none; }
    .promo-splitter.-bg-left .eyebrow,
    .promo-splitter.-bg-left .h4,
    .promo-splitter.-bg-left p, .promo-splitter.-bg-right .eyebrow,
    .promo-splitter.-bg-right .h4,
    .promo-splitter.-bg-right p {
      color: #fff; }
    .promo-splitter.-bg-left .btn, .promo-splitter.-bg-right .btn {
      margin-bottom: 30px; }
      .promo-splitter.-bg-left .btn:active, .promo-splitter.-bg-left .btn:hover, .promo-splitter.-bg-left .btn:focus, .promo-splitter.-bg-left .btn.-focused, .promo-splitter.-bg-right .btn:active, .promo-splitter.-bg-right .btn:hover, .promo-splitter.-bg-right .btn:focus, .promo-splitter.-bg-right .btn.-focused {
        background-color: #9fd64d; }
    @media screen and (max-width: 999px) {
      .promo-splitter.-bg-left.-blue::before, .promo-splitter.-bg-right.-blue::before {
        background: #253a6e;
        background: -webkit-linear-gradient(left, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
        background: linear-gradient(to right, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); } }
  @media screen and (min-width: 1000px) {
    .promo-splitter.-bg-right .promo-splitter-inner {
      flex-direction: row-reverse; } }
  .promo-splitter .sponsors {
    margin-top: 40px; }

.publications-promo {
  grid-column: full;
  margin-bottom: 80px;
  position: relative;
  padding: 0 20px; }
  .publications-promo-inner {
    position: relative;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (min-width: 400px) {
      .publications-promo-inner {
        display: block; } }
    @media screen and (min-width: 768px) {
      .publications-promo-inner {
        max-width: 1170px;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        padding: 20px; } }
  @media screen and (min-width: 768px) {
    .publications-promo-image {
      width: 80%; } }
  @media screen and (min-width: 800px) {
    .publications-promo-image {
      width: 90%;
      margin: 0 auto;
      height: auto; } }
  @media screen and (min-width: 1000px) {
    .publications-promo-image {
      width: 100%; } }
  .publications-promo-left {
    position: relative;
    margin-bottom: 30px; }
    @media screen and (min-width: 1000px) {
      .publications-promo-left {
        width: 40%;
        padding-right: 50px; }
        .publications-promo-left::after {
          content: '';
          position: absolute;
          z-index: -1;
          top: 50%;
          right: -60px;
          width: 226px;
          height: 186px;
          background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
          background-size: 226px 186px;
          background-position: center right;
          background-repeat: no-repeat;
          transform: translate(0, -50%); } }
  .publications-promo-right {
    display: flex;
    align-items: center; }
    @media screen and (min-width: 768px) {
      .publications-promo-right {
        width: 60%; } }
    @media screen and (min-width: 800px) {
      .publications-promo-right {
        padding-left: 60px; } }
    @media screen and (min-width: 1000px) {
      .publications-promo-right {
        padding-left: 130px; } }
  .publications-promo-button {
    margin-top: 30px; }
  @media screen and (min-width: 768px) {
    .publications-promo.-right .publications-promo-inner {
      flex-direction: row-reverse; } }
  .publications-promo.-right .publications-promo-left::after {
    left: -60px; }
  @media screen and (min-width: 768px) {
    .publications-promo.-right .publications-promo-left {
      padding-left: 50px; } }
  @media screen and (min-width: 1000px) {
    .publications-promo.-right .publications-promo-left {
      padding-right: 0; } }
  @media screen and (min-width: 768px) {
    .publications-promo.-right .publications-promo-right {
      padding-left: 0; } }
  @media screen and (min-width: 800px) {
    .publications-promo.-right .publications-promo-right {
      padding-right: 0;
      padding-left: 40px; } }
  @media screen and (min-width: 1000px) {
    .publications-promo.-right .publications-promo-right {
      padding-right: 130px;
      padding-left: 0; } }

.related-items {
  position: sticky;
  top: 40px;
  margin-bottom: 80px;
  align-self: start; }
  .related-items-list {
    list-style: none;
    padding: 0;
    margin: 0; }
  .related-items-item {
    border-top: 1px solid #e5e8ec; }
  .related-items-link {
    display: flex;
    align-items: center;
    padding: 20px 0; }
  .related-items-link-text {
    flex: 1 1 auto;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.33333; }
  .related-items-link-img {
    flex: 0 0 160px;
    margin-left: 30px; }
    .related-items-link-img img {
      object-fit: cover; }
    @media screen and (min-width: 1000px) {
      .related-items-link-img {
        flex: 0 0 80px; } }
  .detail-page .related-items::after {
    content: '';
    display: none;
    position: absolute;
    top: -30px;
    right: -250px;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat;
    z-index: -1;
    transition: opacity .3s ease-in-out; }
    @media screen and (min-width: 1800px) {
      .detail-page .related-items::after {
        display: block; } }
    @media (min-width: 1850px) {
      .detail-page .related-items::after {
        right: -275px; } }
    @media (min-width: 1900px) {
      .detail-page .related-items::after {
        right: -300px; } }
  .related-items.-fixed-js::after {
    opacity: 0; }

.rich-text {
  grid-column: main;
  margin-bottom: 80px; }
  @media screen and (min-width: 1000px) {
    .rich-text {
      max-width: 850px;
      margin-left: auto;
      margin-right: auto; } }
  .rich-text + .zoomable-image,
  .rich-text + .tags,
  .rich-text + .brightcove-video-playlist-embed {
    margin-top: -40px; }

.rss-link-list {
  grid-column: main;
  margin-bottom: 80px;
  padding: 25px 0 0; }
  .rss-link-list-inner {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto; }
  .rss-link-list .h4 {
    margin-bottom: 25px;
    text-align: center; }
  @media screen and (min-width: 1000px) {
    .rss-link-list-listings {
      column-count: 2;
      column-gap: 60px; } }
  @media screen and (min-width: 1200px) {
    .rss-link-list-listings {
      column-gap: 100px; } }
  .rss-link-list-item {
    position: relative;
    padding: 20px 0 25px;
    line-height: 1.66667;
    border-bottom: 1px solid rgba(95, 106, 120, 0.3);
    transition: 0.15s ease-in-out; }
    @media screen and (min-width: 1000px) {
      .rss-link-list-item {
        break-inside: avoid; } }
    .rss-link-list-item a {
      font-size: 20px;
      font-size: 1.25rem;
      color: #1a1a1a;
      font-weight: 800; }
    .rss-link-list-item p {
      margin-top: 5px; }
    .rss-link-list-item.js-link-event {
      cursor: pointer; }
    .rss-link-list-item::after {
      content: '';
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 0;
      height: 3px;
      border-radius: 100px;
      background: #9fd64d;
      background: -webkit-linear-gradient(135deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      background: linear-gradient(-45deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      transition: 0.15s ease-in-out; }
    .rss-link-list-item:active, .rss-link-list-item:hover, .rss-link-list-item:focus, .rss-link-list-item.-focused {
      border-color: transparent; }
      .rss-link-list-item:active a, .rss-link-list-item:hover a, .rss-link-list-item:focus a, .rss-link-list-item.-focused a {
        color: #0273ba; }
      .rss-link-list-item:active::after, .rss-link-list-item:hover::after, .rss-link-list-item:focus::after, .rss-link-list-item.-focused::after {
        width: 100%; }

.section-search {
  grid-column: main;
  margin-bottom: 80px; }
  .section-search-inner {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto; }
  .section-search-form {
    display: block;
    width: 100%;
    background: rgba(37, 58, 110, 0.93);
    background: -webkit-linear-gradient(180deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    background: linear-gradient(-90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    padding: 30px 20px;
    border-radius: 10px; }
    @media screen and (min-width: 600px) {
      .section-search-form {
        padding: 30px 80px; } }
    @media screen and (min-width: 900px) {
      .section-search-form {
        display: flex;
        align-items: center;
        justify-content: center; } }
    .section-search-form-inner {
      display: flex;
      position: relative;
      flex: 1 1 auto; }
    .section-search-form-left {
      margin: 0 0 20px; }
      @media screen and (min-width: 900px) {
        .section-search-form-left {
          margin: 0 20px 0 0; } }
    .section-search-form-right {
      position: relative;
      flex: 1 1 auto;
      margin: 0 0 20px;
      max-width: 700px; }
      @media screen and (min-width: 900px) {
        .section-search-form-right {
          max-width: 440px;
          margin: 0 20px 0 0; } }
    .section-search-form input[type='text'] {
      margin: 0;
      height: 50px;
      border-radius: 1000px;
      max-width: 700px;
      border: 2px solid transparent; }
      .section-search-form input[type='text']::placeholder {
        text-transform: uppercase;
        font-weight: 700;
        font-size: 14px;
        font-size: 0.875rem;
        color: #1a1a1a;
        letter-spacing: 1.31px; }
      .section-search-form input[type='text']:focus {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.1);
        border-color: #9fd64d; }
        .section-search-form input[type='text']:focus::placeholder {
          opacity: .5; }
    .section-search-form-submit {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 0;
      right: -1px;
      width: 50px;
      height: 50px;
      color: #253a6e;
      background: #9fd64d;
      border: 0;
      border-radius: 1000px;
      transition: 0.15s ease-in-out; }
      .section-search-form-submit::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-size: 20px;
        font-size: 1.25rem; }
      .section-search-form-submit:active, .section-search-form-submit:hover, .section-search-form-submit:focus, .section-search-form-submit.-focused {
        color: #fff;
        background: #0273ba; }
  .section-search-checkbox-wrapper {
    display: flex;
    align-items: center;
    color: #fff; }
    .section-search-checkbox-wrapper input[type='checkbox'] {
      width: 17px;
      height: 17px;
      min-height: 17px;
      min-width: 17px;
      margin-right: 10px;
      border: 1px solid #e5e8ec;
      border-radius: 0;
      background-color: #fff;
      box-shadow: 0;
      outline: 0; }
    .section-search-checkbox-wrapper label {
      margin-right: 10px;
      color: #fff;
      font-size: 16px;
      font-size: 1rem;
      font-weight: 700;
      line-height: 1.5; }
    .section-search-checkbox-wrapper .tooltip {
      margin: 0; }
    .section-search-checkbox-wrapper div[data-tippy-root] {
      color: #1a1a1a; }
  .section-search-text {
    margin-bottom: 10px; }

.site-footer {
  grid-column: full;
  position: relative;
  z-index: 0;
  background: #edeff1;
  padding: 30px 0 40px; }
  @media screen and (min-width: 768px) {
    .site-footer {
      padding: 40px 0; } }
  @media screen and (min-width: 1000px) {
    .site-footer {
      padding: 60px 0; } }
  .site-footer a {
    color: #1a1a1a; }
  .site-footer .btn {
    min-width: 0; }
  .site-footer-inner {
    grid-column: main; }
    @media screen and (min-width: 1000px) {
      .site-footer-inner {
        display: flex; } }
  @media screen and (min-width: 1000px) {
    .site-footer-top {
      width: 55%; } }
  @media screen and (min-width: 1200px) {
    .site-footer-top {
      max-width: 650px; } }
  @media screen and (min-width: 768px) {
    .site-footer-nav {
      display: flex; } }
  @media screen and (min-width: 1000px) {
    .site-footer-nav {
      margin-top: -8px; } }
  .site-footer-nav-left {
    margin: 0; }
    @media screen and (min-width: 768px) {
      .site-footer-nav-left {
        flex: 1 1 auto;
        max-width: 385px;
        padding-right: 50px; } }
    @media screen and (min-width: 1000px) {
      .site-footer-nav-left {
        max-width: 325px;
        padding-right: 30px; } }
    @media screen and (min-width: 768px) {
      .site-footer-nav-left li {
        padding: 8px 0; } }
    @media screen and (min-width: 1000px) {
      .site-footer-nav-left li {
        padding: 0 0 16px; } }
    .site-footer-nav-left a {
      display: block;
      padding: 8px 0;
      font-size: 16px;
      font-size: 1rem;
      font-weight: 700;
      border-bottom: 1px solid rgba(95, 106, 120, 0.2); }
      @media screen and (min-width: 768px) {
        .site-footer-nav-left a {
          display: inline-block;
          padding: 0;
          border: 0;
          background-image: linear-gradient(#059bd6, #059bd6);
          background-position: 0% 100%;
          background-repeat: no-repeat;
          background-size: 0% 3px;
          transition: 0.15s ease-in-out; } }
      .site-footer-nav-left a:active, .site-footer-nav-left a:hover, .site-footer-nav-left a:focus, .site-footer-nav-left a.-focused {
        color: #0273ba;
        border-color: rgba(2, 115, 186, 0.8); }
        @media screen and (min-width: 768px) {
          .site-footer-nav-left a:active, .site-footer-nav-left a:hover, .site-footer-nav-left a:focus, .site-footer-nav-left a.-focused {
            background-size: 100% 3px; } }
  .site-footer-nav-right {
    margin: 20px 0 30px;
    border-bottom: 1px solid rgba(95, 106, 120, 0.2); }
    @media screen and (min-width: 768px) {
      .site-footer-nav-right {
        margin: 0;
        flex: 1 1 auto;
        border: 0; } }
    .site-footer-nav-right li {
      margin: 0;
      padding: 7px 0; }
      @media screen and (min-width: 1000px) {
        .site-footer-nav-right li {
          padding: 0 0 14px; } }
    .site-footer-nav-right a:not(.btn) {
      padding-bottom: 3px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.5;
      background-image: linear-gradient(#059bd6, #059bd6);
      background-position: 0% 100%;
      background-repeat: no-repeat;
      background-size: 0% 3px;
      transition: 0.15s ease-in-out; }
      .site-footer-nav-right a:not(.btn):active, .site-footer-nav-right a:not(.btn):hover, .site-footer-nav-right a:not(.btn):focus, .site-footer-nav-right a:not(.btn).-focused {
        color: #0273ba;
        background-size: 100% 3px; }
  .site-footer-login {
    margin: 10px 0 20px; }
    @media screen and (min-width: 768px) {
      .site-footer-login {
        margin: 5px 0; } }
  @media screen and (min-width: 768px) and (max-width: 899px) {
    .site-footer-bottom {
      margin-top: 30px;
      padding-top: 30px;
      border-top: 1px solid rgba(95, 106, 120, 0.2); } }
  @media screen and (min-width: 1000px) {
    .site-footer-bottom {
      width: 45%;
      flex: 1 1 auto; } }
  .site-footer-logo {
    width: 225px; }
  .site-footer-contact ul {
    margin: 0; }
    @media screen and (min-width: 768px) {
      .site-footer-contact ul {
        display: flex;
        margin-top: 5px; } }
    @media screen and (min-width: 1000px) and (max-width: 1199px) {
      .site-footer-contact ul {
        flex-direction: column; } }
  .site-footer-contact li {
    margin: 12px 0;
    font-size: 16px;
    font-size: 1rem; }
    @media screen and (min-width: 768px) {
      .site-footer-contact li {
        display: flex;
        align-items: center;
        margin: 0; } }
    @media screen and (min-width: 1000px) and (max-width: 1199px) {
      .site-footer-contact li {
        margin: 0 0 5px; } }
    @media screen and (min-width: 768px) {
      .site-footer-contact li:not(:last-child)::after {
        content: '|';
        margin: 0 10px;
        color: rgba(95, 106, 120, 0.2);
        font-size: 20px;
        font-size: 1.25rem; } }
    @media screen and (min-width: 1000px) and (max-width: 1199px) {
      .site-footer-contact li:not(:last-child)::after {
        display: none; } }
  .site-footer-contact-link:active, .site-footer-contact-link:hover, .site-footer-contact-link:focus, .site-footer-contact-link.-focused {
    color: #0273ba;
    text-decoration: underline; }
  .site-footer-social ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 20px 0; }
    @media screen and (min-width: 768px) {
      .site-footer-social ul {
        margin: 25px 0 20px; } }
  .site-footer-social li {
    margin-right: 10px; }
  .site-footer-social a {
    width: 44px;
    height: 44px;
    padding: 2px;
    background-image: linear-gradient(90deg, #059bd6 6%, #253a6e 98%);
    border-radius: 100%;
    font-size: 18px;
    font-size: 1.125rem;
    transition: 0.15s ease-in-out; }
    .site-footer-social a::before {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      height: 100%;
      line-height: 1;
      background-color: #edeff1;
      border-radius: 100%;
      color: #253a6e;
      transition: 0.15s ease-in-out; }
    .site-footer-social a:active, .site-footer-social a:hover, .site-footer-social a:focus, .site-footer-social a.-focused {
      background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
      .site-footer-social a:active::before, .site-footer-social a:hover::before, .site-footer-social a:focus::before, .site-footer-social a.-focused::before {
        background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
        color: #fff; }
  .site-footer-chat {
    margin: 10px 0; }
    .site-footer-chat.-small {
      padding-left: 20px;
      padding-right: 20px; }
    .site-footer-chat span {
      padding-left: 26px;
      background-image: url("https://cdn.asce.org/asg/images/speech-bubble-gradient.svg");
      background-size: 19px 17px;
      background-repeat: no-repeat;
      background-position: left center;
      transition: 0.15s ease-in-out; }
    .site-footer-chat:active span, .site-footer-chat:hover span, .site-footer-chat:focus span, .site-footer-chat.-focused span {
      padding-left: 13px;
      padding-right: 13px;
      background-position: left -25px center; }
  .site-footer-copyright {
    margin: 20px 0 5px;
    padding-top: 25px;
    border-top: 1px solid rgba(95, 106, 120, 0.2); }
    .site-footer-copyright p {
      font-size: 16px;
      font-size: 1rem; }
  .site-footer-links ul {
    display: flex;
    align-items: center; }
  .site-footer-links li {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-size: 1rem; }
    .site-footer-links li:not(:last-child)::after {
      content: '|';
      margin: 0 10px;
      color: rgba(95, 106, 120, 0.2);
      font-size: 20px;
      font-size: 1.25rem; }
  .site-footer-links a:active, .site-footer-links a:hover, .site-footer-links a:focus, .site-footer-links a.-focused {
    color: #0273ba;
    text-decoration: underline; }

.site-header {
  display: none;
  position: relative;
  background: #fff; }
  @media screen and (min-width: 1300px) {
    .site-header {
      display: block; } }
  .site-header::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: inherit;
    left: 0;
    height: 10px;
    background: #253a6e;
    background: -webkit-linear-gradient(-180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    background: linear-gradient(270deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }
  .site-header-logo {
    padding: 50px 20px 0;
    max-width: 300px; }
    @media screen and (min-width: 768px) {
      .site-header-logo {
        padding: 50px 40px 0; } }
    @media screen and (min-width: 1400px) {
      .site-header-logo {
        max-width: 378px; } }
  .site-header-nav {
    display: flex; }
  .site-header-nav-wrapper {
    display: flex;
    flex-direction: column;
    margin-left: auto; }
    .site-header-nav-wrapper > ul {
      display: none;
      margin-left: auto;
      font-size: 18px;
      font-size: 1.125rem;
      font-weight: 800;
      margin-bottom: 0; }
      @media screen and (min-width: 1300px) {
        .site-header-nav-wrapper > ul {
          display: flex; } }
      .site-header-nav-wrapper > ul > li {
        flex: none; }
        .site-header-nav-wrapper > ul > li + li {
          margin-left: 20px; }
        .site-header-nav-wrapper > ul > li.site-header-item > a {
          position: relative;
          padding-bottom: 9px; }
          .site-header-nav-wrapper > ul > li.site-header-item > a::after {
            content: '';
            position: absolute;
            right: 0;
            bottom: 6px;
            left: 0;
            height: 9px;
            background-color: transparent; }
        .site-header-nav-wrapper > ul > li.-dropdown-open > a {
          color: #0273ba; }
        .site-header-nav-wrapper > ul > li.-dropdown-open.site-header-item > a::after {
          content: '';
          position: absolute;
          right: 0;
          bottom: 6px;
          left: 0;
          height: 9px;
          background-color: #d9eaf5; }
        .site-header-nav-wrapper > ul > li.-dropdown-open > ul {
          opacity: 1;
          pointer-events: auto; }
        .site-header-nav-wrapper > ul > li > a {
          height: 100%;
          color: #1a1a1a;
          padding: 15px 0 0; }
          .site-header-nav-wrapper > ul > li > a:active, .site-header-nav-wrapper > ul > li > a:hover, .site-header-nav-wrapper > ul > li > a:focus, .site-header-nav-wrapper > ul > li > a.-focused {
            color: #0273ba; }
          .site-header-nav-wrapper > ul > li > a[data-active='true'] {
            color: #0273ba; }
        .site-header-nav-wrapper > ul > li > ul {
          position: absolute;
          top: 100%;
          right: 0;
          background-color: #f6f7f8;
          padding: 40px 60px 40px 30px;
          opacity: 0;
          pointer-events: none;
          transition: opacity 0.15s ease-in-out;
          z-index: 999; }
          .site-header-nav-wrapper > ul > li > ul li {
            padding: 5px 0; }
            .site-header-nav-wrapper > ul > li > ul li a {
              color: #1a1a1a;
              border: 2px solid transparent; }
              .site-header-nav-wrapper > ul > li > ul li a:active, .site-header-nav-wrapper > ul > li > ul li a:hover, .site-header-nav-wrapper > ul > li > ul li a:focus, .site-header-nav-wrapper > ul > li > ul li a.-focused {
                color: #0273ba; }
              .site-header-nav-wrapper > ul > li > ul li a[data-active='true'] {
                color: #0273ba; }
              .site-header-nav-wrapper > ul > li > ul li a:focus {
                border: 2px dashed #059bd6; }
                .site-header-nav-wrapper > ul > li > ul li a:focus span {
                  background-size: 0% 2px !important; }
    .site-header-nav-wrapper .site-header-main-nav {
      padding-right: 40px; }
      .site-header-nav-wrapper .site-header-main-nav-search-trigger {
        margin-left: -10px; }
        .site-header-nav-wrapper .site-header-main-nav-search-trigger::before {
          content: "";
          display: inline-block;
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          text-transform: none;
          speak: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          position: relative;
          top: 3px;
          width: 30px;
          height: 30px;
          transform: rotate(90deg); }
      .site-header-nav-wrapper .site-header-main-nav-side-nav::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: relative;
        top: 2px;
        width: 19px;
        height: 15px; }
      .site-header-nav-wrapper .site-header-main-nav > li {
        margin-left: 40px; }
      .site-header-nav-wrapper .site-header-main-nav-dropdown {
        display: flex;
        max-width: 640px;
        border-radius: 10px; }
        .site-header-nav-wrapper .site-header-main-nav-dropdown-column-1, .site-header-nav-wrapper .site-header-main-nav-dropdown-column-2 {
          margin-right: 50px; }
        .site-header-nav-wrapper .site-header-main-nav-dropdown.-publication-and-news {
          left: calc(50% + 100px);
          right: auto;
          max-width: 900px;
          transform: translate(-50%, 0); }
        .site-header-nav-wrapper .site-header-main-nav-dropdown.-careers {
          left: calc(50% + 150px);
          right: auto;
          transform: translate(-50%, 0); }
        .site-header-nav-wrapper .site-header-main-nav-dropdown.-communities {
          width: 100%;
          max-width: 762px; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown.-communities .site-header-main-nav-dropdown-block {
            min-width: 200px;
            max-width: 400px; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown.-communities:not(.-logged-in) .site-header-main-nav-dropdown-column-1 .site-header-main-nav-dropdown-items {
            border: 0;
            padding: 0; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown.-communities:not(.-logged-in) .site-header-main-nav-dropdown-column-1 .site-header-main-nav-dropdown-item {
            border-left: 1px solid #059bd6;
            padding-left: 18px;
            margin-bottom: 40px; }
        .site-header-nav-wrapper .site-header-main-nav-dropdown-items {
          border-left: 1px solid #059bd6;
          margin: 0;
          padding-left: 18px; }
        .site-header-nav-wrapper .site-header-main-nav-dropdown-item {
          margin: 0 0 12px;
          padding: 0; }
        .site-header-nav-wrapper .site-header-main-nav-dropdown-block {
          min-width: 200px;
          max-width: 250px;
          margin-bottom: 40px; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown-block:last-child {
            margin-right: 0; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown-block-heading {
            text-transform: uppercase;
            font-weight: 700;
            font-size: 14px;
            font-size: 0.875rem;
            line-height: 1.5;
            letter-spacing: 1.3px;
            color: #555;
            margin-bottom: 20px; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown-block a {
            color: #1a1a1a;
            font-size: 18px;
            font-size: 1.125rem;
            font-weight: 400;
            margin: 0;
            padding: 0;
            line-height: 1.5; }
            .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-bold-link {
              color: #253a6e;
              font-weight: 800; }
              .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-bold-link:active, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-bold-link:hover, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-bold-link:focus, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-bold-link.-focused {
                color: #0273ba; }
            .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-arrow-link {
              position: relative;
              padding-left: 28px;
              color: #253a6e;
              font-size: 18px;
              font-size: 1.125rem;
              font-weight: 700;
              transition: 0.15s ease-in-out; }
            .site-header-nav-wrapper .site-header-main-nav-dropdown-block a span {
              display: inline;
              background-image: linear-gradient(#059bd6, #059bd6);
              background-position: 0% 100%;
              background-repeat: no-repeat;
              background-size: 0% 2px;
              transition: 0.15s ease-in-out;
              padding-bottom: 3px; }
            .site-header-nav-wrapper .site-header-main-nav-dropdown-block a:active, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a:hover, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a:focus, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-focused {
              color: #253a6e; }
              .site-header-nav-wrapper .site-header-main-nav-dropdown-block a:active span, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a:hover span, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a:focus span, .site-header-nav-wrapper .site-header-main-nav-dropdown-block a.-focused span {
                background-size: 100% 2px; }
          .site-header-nav-wrapper .site-header-main-nav-dropdown-block p {
            font-size: 18px;
            font-size: 1.125rem;
            font-weight: 400; }
    .site-header-nav-wrapper .site-header-utility-nav {
      display: none;
      position: relative;
      font-size: 16px;
      font-size: 1rem;
      font-weight: 800;
      opacity: 1;
      z-index: 99; }
      @media screen and (min-width: 1200px) {
        .site-header-nav-wrapper .site-header-utility-nav {
          display: flex; } }
      .site-header-nav-wrapper .site-header-utility-nav li {
        position: relative; }
        .site-header-nav-wrapper .site-header-utility-nav li > a.btn {
          background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%);
          color: #fff;
          outline: 0;
          margin: 0;
          background-color: transparent; }
          .site-header-nav-wrapper .site-header-utility-nav li > a.btn::before {
            background-image: linear-gradient(40deg, #253a6e 6%, #059bd6 98%); }
          .site-header-nav-wrapper .site-header-utility-nav li > a.btn::after {
            color: #fff;
            border-left: 1px solid rgba(229, 232, 236, 0.3); }
        .site-header-nav-wrapper .site-header-utility-nav li > a[data-children='true'] {
          display: flex;
          align-items: center; }
          .site-header-nav-wrapper .site-header-utility-nav li > a[data-children='true']::after {
            content: "";
            display: inline-block;
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            line-height: 1;
            text-transform: none;
            speak: none;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 18px;
            height: 18px;
            margin-left: 5px;
            background-color: #059bd6;
            border-radius: 50%;
            font-size: 12px;
            font-size: 0.75rem;
            color: #fff;
            transition: ease-in-out 0.15s; }
          .site-header-nav-wrapper .site-header-utility-nav li > a[data-children='true']:active::after, .site-header-nav-wrapper .site-header-utility-nav li > a[data-children='true']:hover::after, .site-header-nav-wrapper .site-header-utility-nav li > a[data-children='true']:focus::after, .site-header-nav-wrapper .site-header-utility-nav li > a[data-children='true'].-focused::after {
            background-color: #9fd64d; }
        .site-header-nav-wrapper .site-header-utility-nav li.-join {
          position: relative;
          margin-left: 0;
          height: 52px;
          transition: 0.15s ease-in-out;
          z-index: 10; }
          .site-header-nav-wrapper .site-header-utility-nav li.-join a {
            background-color: #0273ba;
            color: #fff;
            padding: 10px 33px 10px 10px;
            z-index: 2;
            height: 100%; }
          .-logged-in .site-header-nav-wrapper .site-header-utility-nav li.-join {
            display: none; }
          .site-header-nav-wrapper .site-header-utility-nav li.-join:active a, .site-header-nav-wrapper .site-header-utility-nav li.-join:hover a, .site-header-nav-wrapper .site-header-utility-nav li.-join:focus a, .site-header-nav-wrapper .site-header-utility-nav li.-join.-focused a {
            color: #9fd64d; }
        .site-header-nav-wrapper .site-header-utility-nav li.-login {
          position: relative;
          overflow: hidden;
          height: 52px;
          margin-right: -1px;
          transform: translateY(-0.01px);
          transition: 0.15s ease-in-out;
          z-index: 10; }
          .site-header-nav-wrapper .site-header-utility-nav li.-login a.-login {
            background-color: #253a6e;
            color: #fff;
            padding: 10px 37px 10px 33px;
            border-top-left-radius: 28px;
            border-bottom-left-radius: 28px;
            height: 100%; }
          .site-header-nav-wrapper .site-header-utility-nav li.-login::after {
            content: '';
            position: absolute;
            right: -90px;
            top: -20px;
            bottom: -20px;
            width: 100px;
            background-color: #0273ba;
            transform: rotate(20deg); }
          .-logged-in .site-header-nav-wrapper .site-header-utility-nav li.-login {
            overflow: visible;
            margin-right: 0; }
            .-logged-in .site-header-nav-wrapper .site-header-utility-nav li.-login::after {
              display: none; }
            .-logged-in .site-header-nav-wrapper .site-header-utility-nav li.-login .site-header-utility-nav-dropdown {
              left: auto;
              right: 0;
              min-width: 270px;
              max-width: 270px;
              padding-right: 30px;
              transform: none; }
          .site-header-nav-wrapper .site-header-utility-nav li.-login:active a.-login, .site-header-nav-wrapper .site-header-utility-nav li.-login:hover a.-login, .site-header-nav-wrapper .site-header-utility-nav li.-login:focus a.-login, .site-header-nav-wrapper .site-header-utility-nav li.-login.-focused a.-login {
            color: #9fd64d; }
      .site-header-nav-wrapper .site-header-utility-nav-dropdown {
        left: 50%;
        right: auto;
        min-width: 275px;
        max-width: 275px;
        padding-bottom: 20px;
        border-radius: 10px;
        transform: translate(-50%, 0);
        z-index: 9999;
        padding-right: 30px; }
        .site-header-nav-wrapper .site-header-utility-nav-dropdown-items {
          border-left: 1px solid #059bd6;
          margin: 0;
          padding-left: 18px; }
        .site-header-nav-wrapper .site-header-utility-nav-dropdown-item {
          margin: 0 0 12px;
          padding: 0; }
        .site-header-nav-wrapper .site-header-utility-nav-dropdown-block {
          max-width: 200px;
          margin-bottom: 15px; }
          .site-header-nav-wrapper .site-header-utility-nav-dropdown-block:last-child {
            margin-right: 0; }
          .site-header-nav-wrapper .site-header-utility-nav-dropdown-block-heading {
            text-transform: uppercase;
            font-weight: 700;
            font-size: 14px;
            font-size: 0.875rem;
            line-height: 1.28571;
            letter-spacing: 1.3px;
            color: #555;
            margin-bottom: 20px; }
          .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a {
            color: #1a1a1a;
            font-size: 18px;
            font-size: 1.125rem;
            font-weight: 400;
            margin: 0;
            padding: 0;
            line-height: 1.66667; }
            .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-bold-link {
              color: #253a6e;
              font-weight: 800; }
              .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-bold-link:active, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-bold-link:hover, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-bold-link:focus, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-bold-link.-focused {
                color: #0273ba; }
            .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-arrow-link {
              position: relative;
              padding-left: 28px;
              color: #253a6e;
              font-size: 18px;
              font-size: 1.125rem;
              font-weight: 700;
              transition: 0.15s ease-in-out; }
            .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a span {
              display: inline;
              background-image: linear-gradient(#059bd6, #059bd6);
              background-position: 0% 100%;
              background-repeat: no-repeat;
              background-size: 0% 2px;
              transition: 0.15s ease-in-out;
              padding-bottom: 2px; }
            .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a:active, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a:hover, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a:focus, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-focused {
              color: #253a6e; }
              .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a:active span, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a:hover span, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a:focus span, .site-header-nav-wrapper .site-header-utility-nav-dropdown-block a.-focused span {
                background-size: 100% 2px; }
          .site-header-nav-wrapper .site-header-utility-nav-dropdown-block p {
            font-size: 18px;
            font-size: 1.125rem;
            font-weight: 400; }
  .site-header-side-nav {
    position: fixed;
    top: 0;
    right: -450px;
    width: 430px;
    height: 100vh;
    background: #253a6e;
    background: -webkit-linear-gradient(-90deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    background: linear-gradient(180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
    box-shadow: 0 13px 24px 0 rgba(30, 30, 30, 0.5);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    visibility: hidden;
    transition: right 0.3s ease-in-out, opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
    z-index: 100;
    -ms-overflow-style: none;
    scrollbar-width: none; }
    .site-header-side-nav::-webkit-scrollbar {
      display: none; }
    .site-header-side-nav::before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: inherit;
      left: 0;
      height: 10px;
      background: #253a6e;
      background: -webkit-linear-gradient(-180deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6);
      background: linear-gradient(270deg, #253a6e, #1d5389, #146ea6, #0c85be, #059bd6); }
    .site-header-side-nav[data-menu='open'] {
      right: 0;
      opacity: 1;
      visibility: visible; }
    .site-header-side-nav-top {
      position: relative;
      z-index: 10; }
    .site-header-side-nav-inner {
      position: relative;
      margin-top: 55px;
      padding: 0 25px 60px; }
      @media screen and (min-width: 600px) {
        .site-header-side-nav-inner {
          margin-top: 75px;
          padding: 0 50px 60px; } }
    .site-header-side-nav-close {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 40px;
      right: 50px;
      width: 35px;
      height: 35px;
      background-color: transparent;
      border: 0;
      color: #fff;
      transition: 0.15s ease-in-out; }
      .site-header-side-nav-close::before {
        font-size: 16px;
        font-size: 1rem; }
      .site-header-side-nav-close:active, .site-header-side-nav-close:hover, .site-header-side-nav-close:focus, .site-header-side-nav-close.-focused {
        outline: 0; }
    .site-header-side-nav-links {
      margin: 90px 0 40px; }
    .site-header-side-nav-link {
      margin-bottom: 20px;
      border-bottom: 2px solid #059bd6;
      transition: ease-in-out 0.15s; }
      .site-header-side-nav-link a {
        display: block;
        color: #fff;
        padding-bottom: 20px;
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 700; }
      .site-header-side-nav-link:active, .site-header-side-nav-link:hover, .site-header-side-nav-link:focus, .site-header-side-nav-link.-focused {
        border-color: #059bd6;
        box-shadow: 0 2px 0 #059bd6; }
    .site-header-side-nav-button {
      text-align: center; }
    .site-header-side-nav-social-links {
      display: flex;
      flex: 0 1 auto;
      align-items: center;
      justify-content: center;
      text-align: center;
      margin-top: 40px; }
      .site-header-side-nav-social-links ul {
        display: flex;
        list-style: none;
        padding: 0;
        margin: 0;
        justify-content: center; }
      .site-header-side-nav-social-links li {
        margin-right: 10px; }
      .site-header-side-nav-social-links a {
        width: 44px;
        height: 44px;
        padding: 2px;
        border: 1px solid #059bd6;
        border-radius: 100%;
        font-size: 18px;
        font-size: 1.125rem;
        transition: 0.15s ease-in-out; }
        .site-header-side-nav-social-links a::before {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 100%;
          height: 100%;
          line-height: 1;
          background-color: transparent;
          border-radius: 100%;
          color: #fff;
          transition: 0.15s ease-in-out; }
        .site-header-side-nav-social-links a:active::before, .site-header-side-nav-social-links a:hover::before, .site-header-side-nav-social-links a:focus::before, .site-header-side-nav-social-links a.-focused::before {
          color: #0273ba;
          background-color: #fff; }
  .site-header-search {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    background: rgba(37, 58, 110, 0.93);
    background: -webkit-linear-gradient(180deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    background: linear-gradient(-90deg, rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93));
    padding: 50px 20px 30px;
    z-index: 99999;
    transform: translateY(-200px);
    height: 180px;
    opacity: 0;
    transition: opacity .5s ease, transform .5s ease; }
    [data-menu='open'] .site-header-search {
      transform: translateY(0);
      opacity: 1; }
    [data-menu='closed'] .site-header-search {
      transform: translateY(-200px);
      opacity: 0; }
    .site-header-search-container {
      overflow: hidden;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      height: 0;
      z-index: 999999;
      transition: height .5s ease; }
      .site-header-search-container[data-menu='open'] {
        height: 180px; }
      .site-header-search-container[data-menu='closed'] {
        height: 0; }
    .site-header-search-inner {
      display: flex;
      position: relative;
      flex: 1 1 auto;
      max-width: 900px; }
    .site-header-search-wrapper {
      position: relative;
      flex: 1 1 auto;
      max-width: 700px; }
    .site-header-search input[type='text'] {
      margin: 0;
      height: 50px;
      border-radius: 1000px;
      max-width: 700px;
      border: 2px solid transparent; }
      .site-header-search input[type='text']::placeholder {
        text-transform: uppercase;
        font-weight: 700;
        font-size: 14px;
        font-size: 0.875rem;
        color: #1a1a1a;
        letter-spacing: 1.31px; }
      .site-header-search input[type='text']:focus {
        box-shadow: 0 2px 20px rgba(26, 26, 26, 0.1);
        border-color: #9fd64d; }
        .site-header-search input[type='text']:focus::placeholder {
          opacity: .5; }
    .site-header-search label {
      margin-right: 30px;
      color: #fff;
      font-size: 24px;
      font-size: 1.5rem;
      font-weight: 700; }
    .site-header-search-submit {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 0;
      right: -1px;
      width: 50px;
      height: 50px;
      color: #253a6e;
      background: #9fd64d;
      border: 0;
      border-radius: 1000px;
      transition: 0.15s ease-in-out; }
      .site-header-search-submit::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-size: 20px;
        font-size: 1.25rem; }
      .site-header-search-submit:active, .site-header-search-submit:hover, .site-header-search-submit:focus, .site-header-search-submit.-focused {
        color: #fff;
        background: #0273ba; }
    .site-header-search-close {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 20px;
      right: 20px;
      width: 35px;
      height: 35px;
      background-color: transparent;
      border: 0;
      color: #fff;
      transition: 0.15s ease-in-out; }
      .site-header-search-close::before {
        font-size: 16px;
        font-size: 1rem; }
      .site-header-search-close:active, .site-header-search-close:hover, .site-header-search-close:focus, .site-header-search-close.-focused {
        outline: 0; }
    .site-header-search a {
      margin-top: 20px; }
      .site-header-search a.-arrow-link {
        color: #fff; }
        .site-header-search a.-arrow-link::before {
          color: #9fd64d; }

.social-share {
  display: flex;
  align-items: center; }
  @media screen and (min-width: 1000px) {
    .social-share {
      flex-direction: column-reverse;
      justify-content: center;
      width: 38px; } }
  .kss-body .social-share {
    display: block !important;
    position: static !important; }
  .social-share-title {
    margin-right: 10px;
    font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
    font-weight: 700;
    font-size: 14px;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.08125rem; }
    @media screen and (min-width: 1000px) {
      .social-share-title {
        margin: 18px 0 0;
        writing-mode: tb-rl;
        transform: rotate(-180deg); } }
  .social-share-services {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0; }
    @media screen and (min-width: 1000px) {
      .social-share-services {
        flex-direction: column; } }
    .social-share-services li + li {
      margin-left: 10px; }
      @media screen and (min-width: 1000px) {
        .social-share-services li + li {
          margin: 10px 0 0; } }
    .social-share-services li a {
      width: 38px;
      height: 38px;
      padding: 2px;
      background-image: linear-gradient(90deg, #059bd6 6%, #253a6e 98%);
      border-radius: 100%;
      font-size: 18px;
      font-size: 1.125rem;
      transition: 0.15s ease-in-out; }
      .social-share-services li a::before {
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
      .social-share-services li a[data-service='facebook']::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: #fff;
        border-radius: 100%;
        color: #253a6e;
        transition: 0.15s ease-in-out; }
      .social-share-services li a[data-service='facebook']:active, .social-share-services li a[data-service='facebook']:hover, .social-share-services li a[data-service='facebook']:focus, .social-share-services li a[data-service='facebook'].-focused {
        background-image: linear-gradient(#253a6e 0%, #253a6e 100%); }
        .social-share-services li a[data-service='facebook']:active::before, .social-share-services li a[data-service='facebook']:hover::before, .social-share-services li a[data-service='facebook']:focus::before, .social-share-services li a[data-service='facebook'].-focused::before {
          background-color: #253a6e;
          color: #fff; }
      .social-share-services li a[data-service='twitter']::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: #fff;
        border-radius: 100%;
        color: #253a6e;
        transition: 0.15s ease-in-out; }
      .social-share-services li a[data-service='twitter']:active, .social-share-services li a[data-service='twitter']:hover, .social-share-services li a[data-service='twitter']:focus, .social-share-services li a[data-service='twitter'].-focused {
        background-image: linear-gradient(#253a6e 0%, #253a6e 100%); }
        .social-share-services li a[data-service='twitter']:active::before, .social-share-services li a[data-service='twitter']:hover::before, .social-share-services li a[data-service='twitter']:focus::before, .social-share-services li a[data-service='twitter'].-focused::before {
          background-color: #253a6e;
          color: #fff; }
      .social-share-services li a[data-service='linkedin']::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: #fff;
        border-radius: 100%;
        color: #253a6e;
        transition: 0.15s ease-in-out; }
      .social-share-services li a[data-service='linkedin']:active, .social-share-services li a[data-service='linkedin']:hover, .social-share-services li a[data-service='linkedin']:focus, .social-share-services li a[data-service='linkedin'].-focused {
        background-image: linear-gradient(#253a6e 0%, #253a6e 100%); }
        .social-share-services li a[data-service='linkedin']:active::before, .social-share-services li a[data-service='linkedin']:hover::before, .social-share-services li a[data-service='linkedin']:focus::before, .social-share-services li a[data-service='linkedin'].-focused::before {
          background-color: #253a6e;
          color: #fff; }
      .social-share-services li a[data-service='email']::before {
        content: "";
        display: inline-block;
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        text-transform: none;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        line-height: 1;
        background-color: #fff;
        border-radius: 100%;
        color: #253a6e;
        transition: 0.15s ease-in-out; }
      .social-share-services li a[data-service='email']:active, .social-share-services li a[data-service='email']:hover, .social-share-services li a[data-service='email']:focus, .social-share-services li a[data-service='email'].-focused {
        background-image: linear-gradient(#253a6e 0%, #253a6e 100%); }
        .social-share-services li a[data-service='email']:active::before, .social-share-services li a[data-service='email']:hover::before, .social-share-services li a[data-service='email']:focus::before, .social-share-services li a[data-service='email'].-focused::before {
          background-color: #253a6e;
          color: #fff; }
  .detail-page .social-share {
    margin-bottom: 80px;
    justify-content: center; }
    @media screen and (min-width: 1000px) {
      .detail-page .social-share {
        flex-direction: row;
        justify-content: inherit;
        width: inherit; } }
    @media screen and (min-width: 1600px) {
      .detail-page .social-share {
        flex-direction: column-reverse;
        justify-content: center;
        width: 38px; } }
    @media screen and (min-width: 1000px) {
      .detail-page .social-share-services {
        flex-direction: row; } }
    @media screen and (min-width: 1600px) {
      .detail-page .social-share-services {
        flex-direction: column; } }
    .detail-page .social-share-services li + li {
      margin-left: 10px; }
      @media screen and (min-width: 1000px) {
        .detail-page .social-share-services li + li {
          margin: 0 0 0 10px; } }
      @media screen and (min-width: 1600px) {
        .detail-page .social-share-services li + li {
          margin: 10px 0 0; } }
    @media screen and (min-width: 1000px) {
      .detail-page .social-share-title {
        margin: 0 10px 0 0;
        writing-mode: inherit;
        transform: rotate(0); } }
    @media screen and (min-width: 1600px) {
      .detail-page .social-share-title {
        margin: 18px 0 0;
        writing-mode: tb-rl;
        transform: rotate(-180deg); } }
    @media screen and (min-width: 1600px) {
      .detail-page .social-share {
        position: absolute;
        top: 0;
        left: -100px; } }

.source-detail-hero {
  grid-column: main; }
  .source-detail-hero-eyebrow {
    margin-bottom: 30px; }
  .source-detail-hero-title {
    margin-bottom: 30px;
    max-width: 850px; }
  .source-detail-hero .hero-metadata {
    margin-bottom: 40px; }

.source-hero {
  grid-column: full;
  margin-bottom: 80px;
  color: #fff;
  min-height: 558px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  .source-hero-inner {
    position: relative;
    min-height: 558px;
    display: flex;
    flex-direction: column;
    padding: 60px 20px; }
    .source-hero-inner::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: transparent;
      background: -webkit-linear-gradient(-90deg, transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 65%, black 100%);
      background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 65%, black 100%);
      opacity: .85;
      z-index: 2; }
      @media screen and (min-width: 768px) {
        .source-hero-inner::after {
          background: transparent;
          background: -webkit-linear-gradient(-90deg, transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 75%, black 100%);
          background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 75%, black 100%); } }
    @media screen and (min-width: 500px) {
      .source-hero-inner {
        padding: 60px; } }
    @media screen and (min-width: 1000px) {
      .source-hero-inner {
        padding: 60px 80px; } }
  .source-hero-content {
    margin-top: auto;
    max-width: 1000px;
    z-index: 3; }
  .source-hero-title {
    color: #fff; }
  .source-hero-credit {
    z-index: 3; }
  .source-hero a {
    transition: color .3s ease; }
    .source-hero a:active, .source-hero a:hover, .source-hero a:focus, .source-hero a.-focused {
      text-decoration: underline;
      color: #9fd64d; }

.source-sub-nav {
  grid-column: full;
  margin-bottom: 80px;
  position: relative;
  background: #253a6e;
  z-index: 10; }
  .source-sub-nav-inner {
    grid-column: main;
    padding: 30px 0; }
  .source-sub-nav-logo-wrapper {
    display: flex;
    max-width: 400px;
    padding-right: 70px; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-logo-wrapper {
        justify-content: center;
        max-width: 470px;
        padding: 14px 0;
        margin: 0 auto 4px; } }
    @media screen and (min-width: 1000px) {
      .source-sub-nav-logo-wrapper {
        max-width: 570px; } }
  .source-sub-nav-source-logo {
    width: 167px;
    flex: 0 1 auto; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-source-logo {
        width: auto; } }
  .source-sub-nav-secondary-logo {
    display: flex;
    align-items: center;
    padding-top: 4px;
    padding-left: 10px;
    margin-left: 10px;
    border-left: 1px solid #7d8aa8; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-secondary-logo {
        padding-left: 30px;
        margin-left: 30px; } }
  .source-sub-nav-subscribe-button-mobile, .source-sub-nav-subscribe-button-desktop {
    min-width: none;
    background-color: transparent;
    border: solid 2px #fff;
    color: #fff; }
    .source-sub-nav-subscribe-button-mobile::before, .source-sub-nav-subscribe-button-desktop::before {
      display: none; }
    .source-sub-nav-subscribe-button-mobile:active, .source-sub-nav-subscribe-button-mobile:hover, .source-sub-nav-subscribe-button-mobile:focus, .source-sub-nav-subscribe-button-mobile.-focused, .source-sub-nav-subscribe-button-desktop:active, .source-sub-nav-subscribe-button-desktop:hover, .source-sub-nav-subscribe-button-desktop:focus, .source-sub-nav-subscribe-button-desktop.-focused {
      background-color: #fff; }
  .source-sub-nav-subscribe-button-mobile {
    width: 100%;
    margin-top: 30px; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-subscribe-button-mobile {
        display: none; } }
  .source-sub-nav-subscribe-button-desktop {
    display: none; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-subscribe-button-desktop {
        display: block;
        position: absolute;
        top: 50%;
        right: 20px;
        padding: 6px 20px;
        font-weight: 400;
        font-size: 15px;
        font-size: 0.9375rem;
        margin-top: -20px; } }
    @media screen and (min-width: 1000px) {
      .source-sub-nav-subscribe-button-desktop {
        right: 40px; } }
  .source-sub-nav-tagline {
    display: none; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-tagline {
        display: block;
        font-weight: 900;
        font-size: 14px;
        font-size: 0.875rem;
        color: #e5e8ec;
        text-transform: uppercase;
        text-align: center;
        margin-bottom: 20px; } }
  .source-sub-nav-mobile-trigger-wrapper {
    position: absolute;
    top: 26px;
    right: 20px;
    width: 46px;
    height: 46px;
    padding: 2px;
    background-image: linear-gradient(156deg, #059bd6 0%, #253a6e 100%);
    border-radius: 50%; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-mobile-trigger-wrapper {
        display: none; } }
  .source-sub-nav-mobile-trigger {
    background: #0273ba;
    text-align: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 50%;
    border: 2px solid #253a6e; }
    .source-sub-nav-mobile-trigger .line {
      width: 5px;
      height: 5px;
      background-color: #fff;
      display: block;
      border-radius: 10px;
      margin: 4px auto;
      transition: 0.15s ease-in-out; }
    .source-sub-nav-mobile-trigger.-is-active .line {
      width: 20px;
      height: 4px;
      transform: rotate(45deg); }
    .source-sub-nav-mobile-trigger.-is-active .line-1 {
      opacity: 0; }
    .source-sub-nav-mobile-trigger.-is-active .line-3 {
      transform: translateY(-8px) rotate(-45deg); }
  .source-sub-nav-items {
    display: flex;
    flex-direction: column;
    visibility: hidden;
    opacity: 0;
    height: 0;
    transform: translateY(-100%);
    transition: opacity 0.15s ease-in-out;
    margin: 0; }
    .source-sub-nav-items.-open {
      visibility: visible;
      opacity: 1;
      height: auto;
      padding: 20px 0;
      transform: translateY(0); }
    @media screen and (min-width: 800px) {
      .source-sub-nav-items {
        flex-direction: row;
        justify-content: center;
        visibility: visible;
        opacity: 1;
        height: auto;
        transform: translateY(0); }
        .source-sub-nav-items.-open {
          padding: 0; } }
  .source-sub-nav-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    color: #fff;
    border-bottom: 1px solid #0273ba; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-item {
        justify-content: flex-start;
        flex-wrap: nowrap;
        border: 0;
        margin: 0 15px; } }
    @media screen and (min-width: 1100px) {
      .source-sub-nav-item {
        margin: 0 20px; } }
    .source-sub-nav-item a {
      position: relative;
      display: block;
      font-weight: 900;
      color: #fff;
      padding: 12px 0;
      z-index: 1; }
      @media screen and (min-width: 800px) {
        .source-sub-nav-item a {
          font-size: 16px;
          font-size: 1rem;
          padding: 0;
          border: 0; } }
  .source-sub-nav-trigger {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 40px;
    flex: 0 0 auto;
    padding: 0;
    color: #fff;
    background-color: transparent;
    border: 0;
    z-index: 2; }
    [data-expanded='true'] .source-sub-nav-trigger::before {
      transform: rotate(180deg); }
    .source-sub-nav-trigger::before {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      pointer-events: none;
      transition: 0.15s ease-in-out; }
      @media screen and (min-width: 800px) {
        .source-sub-nav-trigger::before {
          font-size: 10px;
          font-size: 0.625rem; } }
    @media screen and (min-width: 800px) {
      .source-sub-nav-trigger {
        position: static;
        justify-content: center;
        width: 18px;
        height: 18px;
        background-color: #059bd6;
        border-radius: 50%;
        margin-left: 10px; }
        .source-sub-nav-trigger:active, .source-sub-nav-trigger:hover, .source-sub-nav-trigger:focus, .source-sub-nav-trigger.-focused {
          background-color: #9fd64d; }
        [data-expanded='true'] .source-sub-nav-trigger {
          background-color: #9fd64d; } }
  .source-sub-nav-children {
    display: none;
    width: 100%;
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 0; }
    .source-sub-nav-children ul {
      padding: 0;
      margin: 0; }
    .source-sub-nav-children li {
      border-top: 1px solid #0273ba; }
    .source-sub-nav-children a {
      font-weight: 500; }
    @media screen and (min-width: 800px) {
      .source-sub-nav-children {
        position: absolute;
        top: calc(100% + 18px);
        left: 50%;
        width: 220px;
        background: #f6f7f8;
        padding: 14px 12px 14px 40px;
        box-shadow: 0 8px 18px 0 rgba(0, 0, 0, 0.18);
        border-radius: 10px;
        margin-left: -110px; }
        .source-sub-nav-children::before {
          content: '';
          position: absolute;
          top: 22px;
          left: 20px;
          width: 1px;
          bottom: 22px;
          background: #059bd6; }
        .source-sub-nav-children li {
          border: 0; }
        .source-sub-nav-children a {
          color: #1a1a1a;
          margin-bottom: 5px; }
          .source-sub-nav-children a:active, .source-sub-nav-children a:hover, .source-sub-nav-children a:focus, .source-sub-nav-children a.-focused {
            color: #0273ba; } }
  .source-sub-nav + .detail-layout {
    margin-top: -30px; }
    @media screen and (min-width: 800px) {
      .source-sub-nav + .detail-layout {
        margin-top: 0; } }
  .source-sub-nav + .source-hero {
    margin-top: -80px; }

.sponsors {
  grid-column: main;
  margin: 0 auto;
  text-align: center; }
  @media screen and (min-width: 600px) {
    .sponsors {
      display: flex;
      align-items: center; } }
  .sponsors-label {
    margin: 0 0 20px; }
    @media screen and (min-width: 600px) {
      .sponsors-label {
        margin: 0 15px 0 0; } }
  .sponsors-list {
    margin: 0; }
    @media screen and (min-width: 600px) {
      .sponsors-list {
        display: flex;
        align-items: center; } }
    .sponsors-list li {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 15px; }
      @media screen and (min-width: 600px) {
        .sponsors-list li {
          margin: 0; } }
      @media screen and (min-width: 600px) {
        .sponsors-list li:not(:last-child)::after {
          content: '';
          margin: 0 15px;
          display: block;
          width: 1px;
          height: 28px;
          background-color: rgba(95, 106, 120, 0.3); } }
  .sponsors-link {
    display: block; }
  .sponsors-logo {
    max-height: 100px; }

.standard-hero {
  grid-column: full;
  margin-bottom: 80px;
  padding: 80px 0 0; }
  .standard-hero-inner {
    padding: 0 20px; }
  .standard-hero .h1 {
    text-align: center; }
    @media screen and (max-width: 767px) {
      .standard-hero .h1 {
        font-size: 32px;
        font-size: 2rem; } }
  .standard-hero-img {
    position: relative;
    min-height: 558px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: 30px; }
  .standard-hero + .intro-panel {
    margin-top: -30px; }

.stats-three-up {
  grid-column: main;
  margin-bottom: 80px;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .stats-three-up {
      padding: 0 0 50px; } }
  .stats-three-up-inner {
    position: relative;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto; }
  .stats-three-up-title {
    display: inline-block;
    background-color: #fff;
    padding: 0 20px;
    max-width: 600px;
    line-height: 1.5; }
  @media screen and (min-width: 768px) {
    .stats-three-up-items {
      display: flex;
      justify-content: space-between; }
      [data-columns='2'] .stats-three-up-items {
        justify-content: center; } }
  .stats-three-up-item {
    max-width: 300px;
    margin: 0 auto 20px;
    background-color: #fff; }
    @media screen and (min-width: 768px) {
      .stats-three-up-item {
        width: calc(100% / 3 - 15px);
        margin: 0;
        padding: 20px 0 30px; } }
    @media screen and (min-width: 1000px) {
      .stats-three-up-item {
        width: calc(100% / 3 - 20px); } }
    @media screen and (min-width: 768px) {
      [data-columns='2'] .stats-three-up-item {
        margin: 0 50px; } }
    .stats-three-up-item-title {
      display: inline-block;
      color: #0273ba;
      font-weight: 800;
      font-size: 60px;
      font-size: 3.75rem;
      line-height: 1.4;
      margin: 0 0 20px; }
      @supports (background-clip: text) and (-webkit-text-fill-color: transparent) {
        .stats-three-up-item-title {
          background-image: linear-gradient(to left, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
          background-clip: text;
          -webkit-text-fill-color: transparent; } }
      @media screen and (min-width: 1000px) {
        .stats-three-up-item-title {
          font-size: 80px;
          font-size: 5rem; } }
    .stats-three-up-item-title-wrapper {
      position: relative;
      margin-bottom: 20px;
      display: inline-block; }
    .stats-three-up-item-text {
      font-size: 16px;
      font-size: 1rem;
      font-weight: 800;
      margin-bottom: 20px;
      line-height: 1.7; }
      @media screen and (min-width: 1000px) {
        .stats-three-up-item-text {
          font-size: 20px;
          font-size: 1.25rem; } }
    .stats-three-up-item-link .stats-three-up-item-title {
      position: relative;
      z-index: 2; }
      .stats-three-up-item-link .stats-three-up-item-title::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: -10px;
        right: -10px;
        height: 6px;
        background: #9fd64d;
        background: -webkit-linear-gradient(135deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
        background: linear-gradient(-45deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
        border-radius: 3px;
        transition: .2s ease;
        z-index: -1; }
    .stats-three-up-item-link:active .stats-three-up-item-title, .stats-three-up-item-link:hover .stats-three-up-item-title, .stats-three-up-item-link:focus .stats-three-up-item-title, .stats-three-up-item-link.-focused .stats-three-up-item-title {
      -webkit-text-fill-color: #fff; }
      .stats-three-up-item-link:active .stats-three-up-item-title::after, .stats-three-up-item-link:hover .stats-three-up-item-title::after, .stats-three-up-item-link:focus .stats-three-up-item-title::after, .stats-three-up-item-link.-focused .stats-three-up-item-title::after {
        height: 100%; }
    .stats-three-up-item-link:active .stats-three-up-item-text, .stats-three-up-item-link:hover .stats-three-up-item-text, .stats-three-up-item-link:focus .stats-three-up-item-text, .stats-three-up-item-link.-focused .stats-three-up-item-text {
      color: #253a6e; }
  .stats-three-up-border {
    display: none;
    border: 1px solid #5f6a78;
    opacity: .3;
    z-index: -1;
    border-radius: 40px; }
    @media screen and (min-width: 768px) {
      .stats-three-up-border {
        display: block;
        position: absolute;
        top: 25px;
        right: 120px;
        bottom: -50px;
        left: 120px; } }
    @media screen and (min-width: 1000px) {
      .stats-three-up-border {
        position: absolute;
        top: 35px;
        right: 120px;
        bottom: -50px;
        left: 120px; } }
  @media screen and (min-width: 768px) {
    .stats-three-up.-no-title {
      padding: 50px 0; } }
  @media screen and (min-width: 768px) {
    .stats-three-up.-no-title .stats-three-up-border {
      display: block;
      position: absolute;
      top: -50px;
      right: 120px;
      bottom: -50px;
      left: 120px; } }
  @media screen and (min-width: 1000px) {
    .stats-three-up.-no-title .stats-three-up-border {
      position: absolute;
      top: -50px;
      right: 120px;
      bottom: -50px;
      left: 120px; } }
  @media screen and (min-width: 768px) {
    .stats-three-up[data-columns='2'] .stats-three-up-border {
      display: block;
      position: absolute;
      top: 25px;
      right: 30px;
      bottom: -50px;
      left: 30px; } }
  @media screen and (min-width: 1000px) {
    .stats-three-up[data-columns='2'] .stats-three-up-border {
      position: absolute;
      top: 35px;
      right: 60px;
      bottom: -50px;
      left: 60px; } }

.table {
  grid-column: main;
  margin-bottom: 80px;
  text-align: center; }
  .table thead {
    border-bottom: 1px solid rgba(237, 239, 241, 0.3);
    border-top: 1px solid rgba(237, 239, 241, 0.3);
    background-color: #253a6e;
    width: 100%; }
  .table th {
    text-align: left;
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 700;
    color: #f6f7f8;
    letter-spacing: 1.8px;
    text-transform: uppercase; }
  .table tr:nth-child(2n) {
    background: rgba(229, 232, 236, 0.5); }
  .table-header {
    margin-bottom: 30px;
    text-align: left; }
  .table-wrapper {
    position: relative;
    width: 100%;
    margin: 25px auto;
    border-collapse: collapse; }
    .table-wrapper::before {
      content: '';
      position: absolute;
      top: -4px;
      left: 0;
      height: 4px;
      width: 100%;
      background: #9fd64d;
      background: -webkit-linear-gradient(135deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      background: linear-gradient(-45deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2); }
    .table-wrapper::after {
      content: '';
      position: absolute;
      bottom: -2px;
      left: 0;
      height: 2px;
      width: 100%;
      background: #9fd64d;
      background: -webkit-linear-gradient(135deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2);
      background: linear-gradient(-45deg, #9fd64d, #75c170, #49ab95, #2297b6, #0086d2); }
    @media screen and (max-width: 399px) {
      .table-wrapper[data-columns='2'] thead {
        clip: rect(1px, 1px, 1px, 1px);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        position: absolute;
        white-space: nowrap;
        height: 1px;
        width: 1px;
        overflow: hidden; } }
    @media screen and (min-width: 320px) {
      .table-wrapper[data-columns='2'] th {
        padding: 16px 15px 16px 20px; } }
    .table-wrapper[data-columns='2'] td {
      text-align: right;
      padding: 15px 15px 15px 25px; }
      @media screen and (max-width: 399px) {
        .table-wrapper[data-columns='2'] td {
          display: block;
          position: relative;
          padding-left: 105px; }
          .table-wrapper[data-columns='2'] td::before {
            content: attr(data-title);
            display: block;
            position: absolute;
            top: 20px;
            left: 10px;
            width: 100px;
            font-size: 12px;
            font-size: 0.75rem;
            font-weight: 700;
            color: #253a6e;
            text-transform: uppercase;
            text-align: left;
            letter-spacing: 1.5px;
            word-wrap: none; } }
      @media screen and (min-width: 400px) {
        .table-wrapper[data-columns='2'] td {
          text-align: left; }
          .table-wrapper[data-columns='2'] td:nth-child(1) {
            width: 40%; } }
    @media screen and (max-width: 499px) {
      .table-wrapper[data-columns='3'] thead {
        clip: rect(1px, 1px, 1px, 1px);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        position: absolute;
        white-space: nowrap;
        height: 1px;
        width: 1px;
        overflow: hidden; } }
    @media screen and (min-width: 400px) {
      .table-wrapper[data-columns='3'] th {
        padding: 16px 15px 16px 20px; } }
    .table-wrapper[data-columns='3'] td {
      text-align: right;
      padding: 15px 15px 15px 25px; }
      @media screen and (max-width: 499px) {
        .table-wrapper[data-columns='3'] td {
          display: block;
          position: relative;
          padding-left: 105px; }
          .table-wrapper[data-columns='3'] td::before {
            content: attr(data-title);
            display: block;
            position: absolute;
            top: 20px;
            left: 10px;
            width: 100px;
            font-size: 12px;
            font-size: 0.75rem;
            font-weight: 700;
            color: #253a6e;
            text-transform: uppercase;
            text-align: left;
            letter-spacing: 1.5px;
            word-wrap: none; } }
      @media screen and (min-width: 500px) {
        .table-wrapper[data-columns='3'] td {
          text-align: left; }
          .table-wrapper[data-columns='3'] td:nth-child(1) {
            width: 40%; } }
    @media screen and (max-width: 599px) {
      .table-wrapper[data-columns='4'] thead, .table-wrapper[data-columns='5'] thead {
        clip: rect(1px, 1px, 1px, 1px);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        position: absolute;
        white-space: nowrap;
        height: 1px;
        width: 1px;
        overflow: hidden; } }
    @media screen and (min-width: 500px) {
      .table-wrapper[data-columns='4'] th, .table-wrapper[data-columns='5'] th {
        padding: 16px 15px 16px 20px; } }
    .table-wrapper[data-columns='4'] td, .table-wrapper[data-columns='5'] td {
      text-align: right;
      padding: 15px 15px 15px 25px; }
      @media screen and (max-width: 599px) {
        .table-wrapper[data-columns='4'] td, .table-wrapper[data-columns='5'] td {
          display: block;
          position: relative;
          padding-left: 105px; }
          .table-wrapper[data-columns='4'] td::before, .table-wrapper[data-columns='5'] td::before {
            content: attr(data-title);
            display: block;
            position: absolute;
            top: 20px;
            left: 10px;
            width: 100px;
            font-size: 12px;
            font-size: 0.75rem;
            font-weight: 700;
            color: #253a6e;
            text-transform: uppercase;
            text-align: left;
            letter-spacing: 1.5px;
            word-wrap: none; } }
      @media screen and (min-width: 600px) {
        .table-wrapper[data-columns='4'] td, .table-wrapper[data-columns='5'] td {
          text-align: left;
          border-bottom: 1px solid rgba(95, 106, 120, 0.3); }
          .table-wrapper[data-columns='4'] td:nth-child(1), .table-wrapper[data-columns='5'] td:nth-child(1) {
            width: 40%; } }
  .table .wysiwyg-content a {
    border-bottom: 0;
    font-weight: 700; }
    .table .wysiwyg-content a:active, .table .wysiwyg-content a:hover, .table .wysiwyg-content a:focus, .table .wysiwyg-content a.-focused {
      box-shadow: none; }

.tags {
  margin-bottom: 80px; }
  .tags-content ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap; }
  .tags-content li {
    background-color: #d9eaf5;
    border-radius: 4px;
    padding: 5px 20px;
    margin: 0 10px 20px 0;
    text-transform: uppercase;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 1.2px;
    transition: 0.15s ease-in-out;
    word-wrap: none; }
    .tags-content li a {
      color: #1a1a1a; }
    .tags-content li:active, .tags-content li:hover, .tags-content li:focus, .tags-content li.-focused {
      background-color: #c5dff0; }

.testimonial-slider {
  grid-column: full;
  margin-bottom: 80px; }
  .testimonial-slider-inner {
    padding: 80px 0 45px;
    text-align: center;
    background-color: #edeff1; }
    @media screen and (min-width: 1100px) {
      .testimonial-slider-inner {
        background-image: url("https://cdn.asce.org/asg/images/gradient-dots.svg");
        background-size: 226px 186px;
        background-repeat: no-repeat;
        background-position: top 35px right -20px; } }
    @media screen and (min-width: 1400px) {
      .testimonial-slider-inner {
        background-position: top 70px right -20px; } }
  .testimonial-slider-text {
    padding: 0 20px;
    max-width: 625px;
    margin: 0 auto; }
    @media screen and (min-width: 768px) {
      .testimonial-slider-text {
        padding: 0 40px; } }
  .testimonial-slider-container {
    position: relative;
    padding: 0 20px; }
    @media screen and (min-width: 768px) {
      .testimonial-slider-container {
        padding: 0 40px; } }
    [data-intro] .testimonial-slider-container::before {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 50%;
      background-color: #edeff1; }
    .testimonial-slider-container.-is-slider {
      padding: 0; }
      .testimonial-slider-container.-is-slider + .testimonial-slider-cta {
        padding-top: 20px; }
  .testimonial-slider[data-intro='true'] .testimonial-slider-container.-is-slider {
    margin-top: -20px; }
  .testimonial-slider .slick-track {
    display: flex !important;
    padding-bottom: 60px; }
    @media screen and (min-width: 768px) {
      .testimonial-slider .slick-track {
        padding-bottom: 0; } }
  .testimonial-slider .slick-slide {
    width: 320px;
    margin: 0;
    padding: 20px 10px;
    height: inherit; }
    @media screen and (min-width: 400px) {
      .testimonial-slider .slick-slide {
        width: 380px; } }
    @media screen and (min-width: 500px) {
      .testimonial-slider .slick-slide {
        width: 475px; } }
    @media screen and (min-width: 600px) {
      .testimonial-slider .slick-slide {
        padding: 20px 28px; } }
    @media screen and (min-width: 768px) {
      .testimonial-slider .slick-slide {
        width: 700px; } }
    @media screen and (min-width: 1000px) {
      .testimonial-slider .slick-slide {
        width: 900px; } }
    @media screen and (min-width: 1300px) {
      .testimonial-slider .slick-slide {
        width: 1280px; } }
    .testimonial-slider .slick-slide > div {
      display: flex;
      min-height: 100%; }
    .testimonial-slider .slick-slide img {
      opacity: .35;
      filter: grayscale(100%);
      transition: 0.15s ease-in-out; }
    .testimonial-slider .slick-slide .testimonial-slide {
      display: flex;
      flex-direction: column;
      justify-content: center; }
      @media screen and (min-width: 768px) {
        .testimonial-slider .slick-slide .testimonial-slide[data-img='true'] .testimonial-slide-inner {
          display: block;
          text-align: center; } }
      @media screen and (min-width: 1100px) {
        .testimonial-slider .slick-slide .testimonial-slide[data-img='true'] .testimonial-slide-inner {
          display: flex;
          max-width: none;
          margin: 0;
          text-align: left; } }
      @media screen and (min-width: 768px) {
        .testimonial-slider .slick-slide .testimonial-slide[data-img='true'] .testimonial-slide-inner .testimonial-slide-img {
          margin: 0 auto 30px;
          left: 0; } }
      @media screen and (min-width: 1100px) {
        .testimonial-slider .slick-slide .testimonial-slide[data-img='true'] .testimonial-slide-inner .testimonial-slide-img {
          margin: 0;
          left: -20px; } }
    .testimonial-slider .slick-slide.slick-current img {
      opacity: 1;
      filter: grayscale(0);
      transition: 0.15s ease-in-out; }
  .testimonial-slider .slick-arrow {
    position: absolute;
    z-index: 100;
    left: calc(50% - 60px);
    top: calc(100% - 50px); }
    @media screen and (min-width: 768px) {
      .testimonial-slider .slick-arrow {
        top: calc(50% - 22px); } }
    @media screen and (min-width: 768px) {
      .testimonial-slider .slick-arrow {
        left: calc(50% - 345px); } }
    @media screen and (min-width: 1000px) {
      .testimonial-slider .slick-arrow {
        left: calc(50% - 490px); } }
    @media screen and (min-width: 1100px) {
      .testimonial-slider .slick-arrow {
        left: calc(50% - 500px); } }
    @media screen and (min-width: 1300px) {
      .testimonial-slider .slick-arrow {
        left: calc(50% - 635px); } }
    @media screen and (min-width: 1400px) {
      .testimonial-slider .slick-arrow {
        left: calc(50% - 690px); } }
    .testimonial-slider .slick-arrow.slick-next {
      left: auto;
      right: calc(50% - 60px); }
      @media screen and (min-width: 768px) {
        .testimonial-slider .slick-arrow.slick-next {
          right: calc(50% - 345px); } }
      @media screen and (min-width: 1000px) {
        .testimonial-slider .slick-arrow.slick-next {
          right: calc(50% - 490px); } }
      @media screen and (min-width: 1100px) {
        .testimonial-slider .slick-arrow.slick-next {
          right: calc(50% - 500px); } }
      @media screen and (min-width: 1300px) {
        .testimonial-slider .slick-arrow.slick-next {
          right: calc(50% - 635px); } }
      @media screen and (min-width: 1400px) {
        .testimonial-slider .slick-arrow.slick-next {
          right: calc(50% - 690px); } }
  .testimonial-slider .slick-dots {
    display: none; }
    @media screen and (min-width: 768px) {
      .testimonial-slider .slick-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        list-style: none;
        padding: 0;
        margin: 0 0 10px; }
        .testimonial-slider .slick-dots li {
          margin: 0 5px; }
          .testimonial-slider .slick-dots li.slick-active button {
            background-color: #059bd6; }
        .testimonial-slider .slick-dots button {
          display: block;
          width: 10px;
          height: 10px;
          padding: 0;
          margin: 0;
          border: 0;
          border-radius: 50%;
          background-color: rgba(175, 180, 187, 0.5);
          font-size: 0;
          outline: 0;
          transition: 0.15s ease-in-out; }
          .testimonial-slider .slick-dots button:active, .testimonial-slider .slick-dots button:hover, .testimonial-slider .slick-dots button:focus, .testimonial-slider .slick-dots button.-focused {
            background-color: #059bd6; } }
  .testimonial-slider .testimonial-slide {
    display: flex !important;
    position: relative;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding: 40px 20px;
    background-color: #fff;
    text-align: center;
    border-radius: 8px;
    box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.08);
    min-height: 100%; }
    @media screen and (min-width: 768px) {
      .testimonial-slider .testimonial-slide {
        padding: 70px 40px 50px; } }
    .testimonial-slider .testimonial-slide-inner {
      max-width: 900px;
      margin: 0 auto; }
    .testimonial-slider .testimonial-slide-img {
      position: relative;
      margin: 0 auto 30px;
      background: #fff; }
      @media screen and (max-width: 767px) {
        .testimonial-slider .testimonial-slide-img {
          max-width: 375px; } }
      @media screen and (min-width: 768px) {
        .testimonial-slider .testimonial-slide-img {
          margin-bottom: 0; } }
    @media screen and (min-width: 768px) {
      .testimonial-slider .testimonial-slide[data-img='true'] {
        padding-left: 0; } }
    @media screen and (min-width: 768px) {
      .testimonial-slider .testimonial-slide[data-img='true'] .testimonial-slide-inner {
        display: flex;
        max-width: none;
        margin: 0;
        text-align: left; } }
    @media screen and (min-width: 768px) {
      .testimonial-slider .testimonial-slide[data-img='true'] .testimonial-slide-inner .testimonial-slide-img {
        flex: 0 0 300px;
        align-self: flex-start;
        width: 300px;
        left: -20px; } }
    @media screen and (min-width: 768px) {
      .testimonial-slider .testimonial-slide[data-img='true'] .testimonial-slide-inner blockquote {
        flex: 1 1 auto;
        padding-left: 30px; } }
  .testimonial-slider blockquote {
    margin: 0;
    padding: 0;
    border: 0; }
    .testimonial-slider blockquote::before {
      display: none; }
    .testimonial-slider blockquote p {
      font-weight: 800;
      line-height: 1.5; }
      @media screen and (min-width: 768px) {
        .testimonial-slider blockquote p {
          font-size: 20px;
          font-size: 1.25rem; } }
      @media screen and (min-width: 1000px) {
        .testimonial-slider blockquote p {
          font-size: 24px;
          font-size: 1.5rem; } }
    .testimonial-slider blockquote cite {
      font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
      font-size: 18px;
      font-size: 1.125rem;
      font-style: normal;
      color: #1a1a1a; }
    .testimonial-slider blockquote .attribution-title {
      font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
      font-size: 15px;
      font-size: 0.9375rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.09375rem;
      color: #1a1a1a; }
    .testimonial-slider blockquote .testimonial-link a {
      color: #0273ba; }
      .testimonial-slider blockquote .testimonial-link a:active, .testimonial-slider blockquote .testimonial-link a:hover, .testimonial-slider blockquote .testimonial-link a:focus, .testimonial-slider blockquote .testimonial-link a.-focused {
        color: #059bd6; }
  .testimonial-slider-cta {
    display: flex;
    justify-content: center;
    padding: 40px 20px; }
    @media screen and (min-width: 768px) {
      .testimonial-slider-cta {
        padding: 40px; } }

.text-columns {
  margin-bottom: 80px;
  grid-column: main; }
  @media screen and (min-width: 1000px) {
    .text-columns-inner {
      display: flex; } }
  .text-columns-social {
    margin-bottom: 20px;
    padding: 10px 0 30px;
    border-bottom: 2px solid #edeff1; }
    @media screen and (min-width: 1000px) {
      .text-columns-social {
        display: flex;
        align-items: center;
        margin: 0;
        padding: 0 35px 0 0;
        border-bottom: 0;
        border-right: 1px solid #059bd6; } }
  @media screen and (min-width: 1000px) {
    .text-columns .social-share-title {
      display: none; } }
  .text-columns-column {
    padding-bottom: 20px; }
    @media screen and (min-width: 1000px) {
      .text-columns-column {
        width: 33.333%;
        padding: 15px 30px; } }
    .text-columns-column:not(:last-child) {
      margin-bottom: 20px;
      border-bottom: 2px solid #edeff1; }
      @media screen and (min-width: 1000px) {
        .text-columns-column:not(:last-child) {
          margin: 0;
          border-bottom: 0;
          border-right: 1px solid #059bd6; } }

.text-column-title {
  margin-bottom: 10px;
  font-family: "Mulish", "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 800;
  font-size: 20px;
  font-size: 1.25rem; }
  @media screen and (min-width: 1000px) and (max-width: 1099px) {
    .text-column-title {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media screen and (min-width: 1200px) {
    .text-column-title {
      margin-bottom: 15px; } }

@media screen and (min-width: 1000px) and (max-width: 1099px) {
  .text-column-text p {
    font-size: 16px;
    font-size: 1rem; } }

@media screen and (min-width: 768px) {
  .full-width-slider + .text-columns {
    margin-top: -60px; } }

@media screen and (min-width: 1000px) {
  .full-width-slider + .text-columns {
    margin-top: -40px; } }

.promo-full-width + .text-columns {
  margin-top: -60px; }
  @media screen and (min-width: 1000px) {
    .promo-full-width + .text-columns {
      margin-top: -40px; } }

.topics-accordion {
  margin-bottom: 80px;
  grid-column: main; }
  .topics-accordion-title {
    margin-bottom: 50px; }
  .topics-accordion-items {
    list-style: none;
    padding: 0;
    margin: 0;
    border-top: 1px solid #253a6e; }
  .topics-accordion-item {
    border-bottom: 1px solid #ccc; }
    @media screen and (min-width: 800px) {
      .topics-accordion-item-container {
        display: flex;
        justify-content: space-between; } }
    .topics-accordion-item h3 {
      margin: 0; }
    .topics-accordion-item-section {
      width: 100%; }
      @media screen and (min-width: 768px) {
        .topics-accordion-item-section {
          width: 50%; } }
      .topics-accordion-item-section.-main {
        position: relative;
        margin-top: 30px;
        margin-bottom: 50px; }
    .topics-accordion-item-button {
      margin-bottom: 40px; }
    .topics-accordion-item-link {
      display: flex;
      align-items: flex-start;
      padding-top: 0; }
  .topics-accordion table {
    border-collapse: collapse;
    width: 100%; }
    @media screen and (min-width: 900px) {
      .topics-accordion table {
        width: calc(100% - 80px); } }
    .topics-accordion table tbody {
      width: 100%; }
    @media screen and (min-width: 768px) {
      .topics-accordion table tr {
        display: grid;
        grid-template-columns: repeat(2, 1fr); } }
    .topics-accordion table tr:last-child {
      border-bottom: 0; }
    .topics-accordion table td {
      padding: 20px 0; }
      .topics-accordion table td.title {
        color: #0273ba;
        font-size: 18px;
        font-size: 1.125rem;
        font-weight: 800;
        line-height: 1.66667;
        width: 100%; }
        @media screen and (min-width: 900px) {
          .topics-accordion table td.title {
            width: auto; } }
      .topics-accordion table td.date {
        padding-top: 0;
        width: calc(50% - 20px); }
        @media screen and (min-width: 900px) {
          .topics-accordion table td.date {
            width: auto;
            text-align: right;
            padding-top: 20px; } }
      .topics-accordion table td.link {
        display: flex;
        width: 100%;
        padding-top: 0; }
        @media screen and (min-width: 900px) {
          .topics-accordion table td.link {
            display: inline-flex;
            width: auto; } }
  .topics-accordion-trigger {
    position: relative;
    display: block;
    width: 100%;
    -webkit-appearance: none;
    background: none;
    text-align: left;
    padding: 25px 40px 25px 0;
    border: 0;
    transition: ease-in-out 0.15s; }
    .topics-accordion-trigger[aria-expanded='false']::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      right: -15px;
      top: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      justify-content: center;
      align-items: center;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      font-size: 14px;
      font-size: 0.875rem;
      color: #fff;
      background-color: #059bd6; }
      @media screen and (min-width: 768px) {
        .topics-accordion-trigger[aria-expanded='false']::after {
          right: 0; } }
    .topics-accordion-trigger[aria-expanded='true']::after {
      content: "";
      display: inline-block;
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      text-transform: none;
      speak: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      right: -15px;
      top: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      justify-content: center;
      align-items: center;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      font-size: 14px;
      font-size: 0.875rem;
      color: #fff;
      background-color: #059bd6; }
      @media screen and (min-width: 768px) {
        .topics-accordion-trigger[aria-expanded='true']::after {
          right: 0; } }
    .topics-accordion-trigger[aria-expanded='true']:active, .topics-accordion-trigger[aria-expanded='true']:hover, .topics-accordion-trigger[aria-expanded='true']:focus, .topics-accordion-trigger[aria-expanded='true'].-focused {
      background-color: transparent; }
    .topics-accordion-trigger:active, .topics-accordion-trigger:hover, .topics-accordion-trigger:focus, .topics-accordion-trigger.-focused {
      color: #0273ba; }
      @media screen and (min-width: 768px) {
        .topics-accordion-trigger:active, .topics-accordion-trigger:hover, .topics-accordion-trigger:focus, .topics-accordion-trigger.-focused {
          background-color: rgba(5, 155, 214, 0.1);
          padding-left: 10px; } }
  .topics-accordion-content {
    display: none; }

.topics-columns {
  position: relative;
  grid-column: full;
  margin-bottom: 80px;
  padding: 0 20px; }
  @media screen and (min-width: 768px) {
    .topics-columns {
      padding: 0 40px; } }
  @media screen and (min-width: 1100px) {
    .topics-columns {
      display: flex;
      padding-top: 60px; } }
  @media screen and (min-width: 1400px) {
    .topics-columns {
      padding-top: 90px; } }
  .topics-columns::before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
    background-size: 226px 186px;
    background-position: top left;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1100px) {
      .topics-columns::before {
        display: block; } }
  .topics-columns-featured {
    margin-bottom: 55px; }
    @media screen and (min-width: 1100px) {
      .topics-columns-featured {
        flex: 1 1 40%;
        width: 40%; } }
    @media screen and (min-width: 1400px) {
      .topics-columns-featured {
        flex: 1 1 50%;
        width: 50%; } }
    .topics-columns-featured .topics-columns-item-img-container {
      position: relative;
      margin: 0 -20px 30px; }
      @media screen and (min-width: 768px) {
        .topics-columns-featured .topics-columns-item-img-container {
          margin: 0; } }
    .topics-columns-featured .topics-columns-item-img {
      transform: scale3d(1.05, 1.05, 1) translateZ(0); }
      .topics-columns-featured .topics-columns-item-img.-featured {
        display: block;
        width: 100%;
        padding-bottom: 70%;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover; }
        @media screen and (min-width: 768px) {
          .topics-columns-featured .topics-columns-item-img.-featured {
            padding-bottom: 50%; } }
        @media screen and (min-width: 1100px) {
          .topics-columns-featured .topics-columns-item-img.-featured {
            padding-bottom: 70%; } }
    @media screen and (min-width: 768px) {
      .topics-columns-featured .topics-columns-item-sponsored {
        margin-top: -25px;
        margin-right: -20px; } }
    @media screen and (min-width: 900px) {
      .topics-columns-featured .topics-columns-item-sponsored {
        margin-right: 0; } }
    .topics-columns-featured .topics-columns-item-text {
      position: relative; }
      @media screen and (min-width: 768px) {
        .topics-columns-featured .topics-columns-item-text {
          width: 90%;
          padding: 45px 60px 0 0;
          margin-top: -45px;
          background-color: #fff;
          border-top-right-radius: 8px; } }
  @media screen and (min-width: 768px) and (min-width: 900px) {
    .topics-columns-featured .topics-columns-item-text {
      width: 83%;
      padding-right: 90px; } }
  @media screen and (min-width: 768px) and (min-width: 1100px) {
    .topics-columns-featured .topics-columns-item-text {
      padding-right: 40px; } }
    @media screen and (min-width: 1100px) and (max-width: 1199px) {
      .topics-columns-featured .h4 {
        font-size: 28px;
        font-size: 1.75rem; } }
  @media screen and (min-width: 768px) {
    .topics-columns-references {
      display: flex; } }
  @media screen and (min-width: 1100px) {
    .topics-columns-references {
      flex-direction: row-reverse;
      flex: 1 1 60%;
      width: 60%; } }
  @media screen and (min-width: 1400px) {
    .topics-columns-references {
      flex: 1 1 50%;
      width: 50%; } }
  .topics-columns-references-2 {
    margin-bottom: 55px; }
    @media screen and (min-width: 768px) {
      .topics-columns-references-2 {
        width: 50%;
        margin: 0 40px 0 0;
        padding: 0 40px 0 0;
        border-right: 1px solid #e5e8ec; } }
    @media screen and (min-width: 1100px) {
      .topics-columns-references-2 {
        width: auto;
        margin: 0;
        padding: 0;
        border: 0; } }
    .topics-columns-references-2 .topics-columns-item {
      margin-bottom: 30px; }
    .topics-columns-references-2 .topics-columns-item-img-container {
      margin: 0 -20px 30px; }
      @media screen and (min-width: 600px) and (max-width: 599px) {
        .topics-columns-references-2 .topics-columns-item-img-container {
          max-width: 400px;
          margin: 0 0 30px; } }
      @media screen and (min-width: 768px) {
        .topics-columns-references-2 .topics-columns-item-img-container {
          margin: 0 0 30px; } }
    @media screen and (min-width: 768px) {
      .topics-columns-references-2 .eyebrow {
        margin-bottom: 10px;
        font-size: 14px;
        font-size: 0.875rem;
        font-weight: 700; }
        .topics-columns-references-2 .eyebrow::before {
          display: none; } }
    @media screen and (min-width: 768px) and (max-width: 1099px) {
      .topics-columns-references-2 .h5 {
        margin-bottom: 10px;
        font-size: 20px;
        font-size: 1.25rem; } }
    @media screen and (min-width: 768px) and (max-width: 1099px) {
      .topics-columns-references-2 p {
        font-size: 16px;
        font-size: 1rem; } }
  .topics-columns-references-3 {
    margin: 0 -20px;
    padding: 30px 20px;
    border-top: 1px solid rgba(95, 106, 120, 0.3);
    border-bottom: 1px solid rgba(95, 106, 120, 0.3); }
    @media screen and (min-width: 768px) {
      .topics-columns-references-3 {
        width: 50%;
        margin: 0;
        padding: 0;
        border: 0; } }
    @media screen and (min-width: 1100px) {
      .topics-columns-references-3 {
        flex: 0 0 280px;
        width: 280px;
        margin: 0 40px;
        padding: 0 40px;
        border-left: 1px solid #e5e8ec;
        border-right: 1px solid #e5e8ec; } }
    .topics-columns-references-3 .topics-columns-item {
      display: flex; }
      @media screen and (min-width: 1100px) {
        .topics-columns-references-3 .topics-columns-item {
          display: block; } }
      .topics-columns-references-3 .topics-columns-item:not(:last-child) {
        margin-bottom: 30px; }
        @media screen and (min-width: 1100px) {
          .topics-columns-references-3 .topics-columns-item:not(:last-child) {
            margin-bottom: 40px; } }
      .topics-columns-references-3 .topics-columns-item .h5 {
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 1.27778; }
        .topics-columns-references-3 .topics-columns-item .h5 .topics-columns-item-link {
          border-bottom: 1px solid transparent; }
    .topics-columns-references-3 .topics-columns-item-img-container {
      flex: 0 0 auto;
      width: 150px; }
      @media screen and (min-width: 1100px) {
        .topics-columns-references-3 .topics-columns-item-img-container {
          flex: none;
          width: auto;
          margin-bottom: 20px; } }
    .topics-columns-references-3 .topics-columns-item-text {
      flex: 1 1 auto;
      padding-left: 20px; }
      @media screen and (min-width: 1100px) {
        .topics-columns-references-3 .topics-columns-item-text {
          flex: none;
          width: auto;
          padding: 0; } }
    .topics-columns-references-3 .eyebrow {
      margin-bottom: 10px;
      font-size: 14px;
      font-size: 0.875rem;
      font-weight: 700; }
      .topics-columns-references-3 .eyebrow::before {
        display: none; }
  .topics-columns-item .h4 .topics-columns-item-link,
  .topics-columns-item .h5 .topics-columns-item-link {
    display: inline;
    color: #1a1a1a;
    border-bottom: 2px solid transparent; }
    .topics-columns-item .h4 .topics-columns-item-link:active, .topics-columns-item .h4 .topics-columns-item-link:hover, .topics-columns-item .h4 .topics-columns-item-link:focus, .topics-columns-item .h4 .topics-columns-item-link.-focused,
    .topics-columns-item .h5 .topics-columns-item-link:active,
    .topics-columns-item .h5 .topics-columns-item-link:hover,
    .topics-columns-item .h5 .topics-columns-item-link:focus,
    .topics-columns-item .h5 .topics-columns-item-link.-focused {
      color: #0273ba;
      border-color: rgba(2, 115, 186, 0.5); }
  .topics-columns-item .h4.-gated::before,
  .topics-columns-item .h5.-gated::before {
    content: "";
    display: inline-block;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    margin-right: 4px;
    font-size: 13px;
    font-size: 0.8125rem;
    color: #5f6a78; }
  .topics-columns-item-img-container {
    overflow: hidden; }
  .topics-columns-item-img {
    display: block;
    transition: transform .5s ease;
    transform: translateZ(0); }
  .topics-columns-item-sponsored {
    margin-bottom: 20px;
    padding: 10px 0;
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.075rem;
    text-transform: uppercase;
    line-height: 1.38462;
    color: #5f6a78;
    border-top: 1px solid #e5e8ec;
    border-bottom: 1px solid #e5e8ec; }
  .topics-columns-item.-hovered .h4 .topics-columns-item-link,
  .topics-columns-item.-hovered .h5 .topics-columns-item-link {
    color: #0273ba;
    border-color: rgba(2, 115, 186, 0.5); }
  .topics-columns-item.-hovered .topics-columns-item-img {
    transform: scale3d(1.1, 1.1, 1) translateZ(0); }

.topics-grid {
  grid-column: full;
  margin-bottom: 80px;
  position: relative;
  padding: 0 20px; }
  @media screen and (min-width: 600px) {
    .topics-grid {
      padding: 0; } }
  .topics-grid-title {
    max-width: 850px;
    margin: 0 auto 50px; }
  .topics-grid-items {
    position: relative; }
    .topics-grid-items::before {
      content: '';
      position: absolute;
      z-index: -1;
      top: -75px;
      left: -100px;
      display: none;
      opacity: 1;
      width: 226px;
      height: 186px;
      background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
      background-size: 226px 186px;
      background-position: center right;
      background-repeat: no-repeat; }
      @media screen and (min-width: 600px) {
        .topics-grid-items::before {
          display: block; } }
      @media screen and (min-width: 1600px) {
        .topics-grid-items::before {
          left: -50px; } }
      @media screen and (min-width: 1700px) {
        .topics-grid-items::before {
          left: 0; } }
    @media screen and (min-width: 600px) {
      .topics-grid-items {
        display: flex;
        flex-wrap: wrap;
        border-top: 1px solid #e5e8ec; } }
  .topics-grid-item {
    padding: 35px 0;
    border-bottom: 1px solid #e5e8ec;
    max-width: 400px;
    margin: 0 auto;
    transform: ease-in-out 0.15s;
    cursor: pointer;
    animation-delay: 0s; }
    @media screen and (min-width: 600px) {
      .topics-grid-item {
        width: 50%;
        max-width: none;
        padding: 40px 20px;
        border-right: 1px solid #e5e8ec;
        margin: 0; }
        .topics-grid-item:nth-child(2n) {
          border-right: 0; }
        .topics-grid-item:nth-child(2n+1) {
          animation-delay: 0s; }
        .topics-grid-item:nth-child(2n+2) {
          animation-delay: .3s; } }
    @media screen and (min-width: 768px) {
      .topics-grid-item {
        padding: 40px; } }
    @media screen and (min-width: 1000px) {
      .topics-grid-item {
        width: calc(100% / 3); }
        .topics-grid-item:nth-child(2n) {
          border-right: 1px solid #e5e8ec; }
        .topics-grid-item:nth-child(3n) {
          border-right: 0; }
        .topics-grid-item:nth-child(3n+1) {
          animation-delay: 0s; }
        .topics-grid-item:nth-child(3n+2) {
          animation-delay: .3s; }
        .topics-grid-item:nth-child(3n+3) {
          animation-delay: .6s; } }
    @media screen and (min-width: 1300px) {
      .topics-grid-item {
        width: calc(100% / 4); }
        .topics-grid-item:nth-child(3n) {
          border-right: 1px solid #e5e8ec; }
        .topics-grid-item:nth-child(4n) {
          border-right: 0; }
        .topics-grid-item:nth-child(4n+1) {
          animation-delay: 0s; }
        .topics-grid-item:nth-child(4n+2) {
          animation-delay: .2s; }
        .topics-grid-item:nth-child(4n+3) {
          animation-delay: .4s; }
        .topics-grid-item:nth-child(4n+4) {
          animation-delay: .6s; } }
    .topics-grid-item-image-wrapper {
      margin-bottom: 25px;
      min-height: 250px;
      max-height: 250px;
      max-width: 100%;
      overflow: hidden; }
    .topics-grid-item-image {
      min-height: 250px;
      max-height: 250px;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      transition: transform .5s ease; }
    .topics-grid-item-title {
      display: inline;
      background-image: linear-gradient(rgba(2, 115, 186, 0.45), rgba(2, 115, 186, 0.45));
      background-position: 0% 100%;
      background-repeat: no-repeat;
      background-size: 0% 2px;
      padding-bottom: 3px;
      transition: ease-in-out 0.15s; }
    .topics-grid-item::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      border: 2px dashed #0273ba;
      opacity: 0;
      pointer-events: none;
      transition: 0.15s ease-in-out;
      z-index: 10; }
    .topics-grid-item:active .topics-grid-item-title, .topics-grid-item:hover .topics-grid-item-title, .topics-grid-item:focus .topics-grid-item-title, .topics-grid-item.-focused .topics-grid-item-title {
      color: #0273ba;
      background-size: 100% 3px; }
    .topics-grid-item:active .topics-grid-item-image, .topics-grid-item:hover .topics-grid-item-image, .topics-grid-item:focus .topics-grid-item-image, .topics-grid-item.-focused .topics-grid-item-image {
      transform: scale(1.1); }
    .topics-grid-item:focus::after, .topics-grid-item:active::after, .topics-grid-item.-focused::after {
      opacity: 1; }

.topics-news-list {
  grid-column: full;
  margin-bottom: 80px;
  position: relative; }
  .topics-news-list::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 70px;
    left: 0;
    display: none;
    opacity: 1;
    width: 226px;
    height: 186px;
    background-image: url("https://cdn.asce.org/asg/images/gray-dots.svg");
    background-size: 226px 186px;
    background-position: center right;
    background-repeat: no-repeat; }
    @media screen and (min-width: 1500px) {
      .topics-news-list::after {
        display: block;
        left: -150px; } }
    @media screen and (min-width: 1600px) {
      .topics-news-list::after {
        left: -90px; } }
    @media screen and (min-width: 1700px) {
      .topics-news-list::after {
        left: -50px; } }
    @media screen and (min-width: 1800px) {
      .topics-news-list::after {
        left: -30px; } }
  .topics-news-list-inner {
    grid-column: main; }
  .topics-news-list-title {
    margin-bottom: 60px;
    transition: ease-in-out 0.15s; }
  .topics-news-list-item {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e5e8ec;
    cursor: pointer; }
    @media screen and (min-width: 600px) {
      .topics-news-list-item {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between; } }
    @media screen and (min-width: 600px) {
      .topics-news-list-item-content {
        width: calc(60% - 50px); } }
    @media screen and (min-width: 900px) {
      .topics-news-list-item-content {
        width: calc(70% - 100px); } }
    .topics-news-list-item-image {
      margin-bottom: 30px; }
      .topics-news-list-item-image-wrapper {
        display: inline-block;
        width: 100%;
        overflow: hidden; }
      @media screen and (min-width: 600px) {
        .topics-news-list-item-image {
          display: flex;
          align-items: center;
          width: 40%;
          max-width: 300px;
          margin-bottom: 0; } }
      @media screen and (min-width: 900px) {
        .topics-news-list-item-image {
          width: 30%; } }
      .topics-news-list-item-image img {
        width: 100%;
        object-fit: cover;
        transition: transform .5s ease; }
    .topics-news-list-item-eyebrow {
      margin-bottom: 30px; }
      .topics-news-list-item-eyebrow::before {
        display: none; }
    .topics-news-list-item-text {
      margin-bottom: 10px; }
    .topics-news-list-item-metadata {
      font-size: 16px;
      font-size: 1rem; }
      .topics-news-list-item-metadata span:first-child {
        padding-left: 0;
        border-left: 0; }
      .topics-news-list-item-metadata span.-gray {
        color: #5f6a78; }
      .topics-news-list-item-metadata span.topics-news-list-item-metadata-shield {
        border-left: 0; }
      .topics-news-list-item-metadata-date {
        color: #1a1a1a;
        font-style: italic;
        padding-right: 10px; }
        .topics-news-list-item-metadata-date.-date-icon {
          font-style: normal; }
          .topics-news-list-item-metadata-date.-date-icon::before {
            content: "";
            display: inline-block;
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            line-height: 1;
            text-transform: none;
            speak: none;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            position: relative;
            top: 3px;
            font-size: 20px;
            font-size: 1.25rem;
            margin-right: 10px; }
      .topics-news-list-item-metadata-credits, .topics-news-list-item-metadata-event-type, .topics-news-list-item-metadata-location {
        border-left: 1px solid rgba(95, 106, 120, 0.3);
        padding: 0 10px; }
      .topics-news-list-item-metadata-shield {
        position: relative;
        display: inline-flex;
        align-items: center;
        top: 2px;
        background-color: #edeff1;
        color: #253a6e;
        font-weight: 800;
        padding: 5px 10px;
        border-radius: 3px;
        text-transform: uppercase; }
        .topics-news-list-item-metadata-shield::before {
          content: "";
          display: inline-block;
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          text-transform: none;
          speak: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          font-size: 20px;
          font-size: 1.25rem;
          margin-right: 8px; }
      .topics-news-list-item-metadata-credit {
        position: relative;
        display: inline-flex;
        align-items: center;
        top: 2px;
        background-color: #d9eaf5;
        color: #253a6e;
        font-weight: 800;
        padding: 5px 10px;
        border-radius: 3px;
        text-transform: uppercase;
        margin-right: 3px; }
        .topics-news-list-item-metadata-credit:last-child {
          margin-right: 0; }
        .topics-news-list-item-metadata-credit::before {
          content: "";
          display: inline-block;
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          text-transform: none;
          speak: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          font-size: 20px;
          font-size: 1.25rem;
          margin-right: 8px; }
      .topics-news-list-item-metadata .-credits-text {
        margin-right: 10px;
        text-transform: uppercase;
        letter-spacing: 1.3px;
        font-size: 14px;
        font-size: 0.875rem;
        font-weight: 700;
        color: #253a6e; }
    .topics-news-list-item:active .topics-news-list-item-title, .topics-news-list-item:hover .topics-news-list-item-title, .topics-news-list-item:focus .topics-news-list-item-title, .topics-news-list-item.-focused .topics-news-list-item-title {
      color: #0273ba;
      text-decoration: underline; }
    .topics-news-list-item:active .topics-news-list-item-image img, .topics-news-list-item:hover .topics-news-list-item-image img, .topics-news-list-item:focus .topics-news-list-item-image img, .topics-news-list-item.-focused .topics-news-list-item-image img {
      transform: scale(1.05); }
  .topics-news-list-button {
    grid-column: main;
    text-align: center; }
    .topics-news-list-button-inner {
      grid-column: main; }

.trending-news-topics {
  margin-bottom: 80px;
  grid-column: full;
  overflow-x: hidden; }
  .trending-news-topics-inner {
    grid-column: main;
    padding-top: 50px; }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-inner {
        padding-top: 80px;
        padding-bottom: 40px; } }
  .trending-news-topics-title {
    text-align: center;
    margin-bottom: 40px; }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-title {
        text-align: left; } }
  @media screen and (min-width: 768px) {
    .trending-news-topics-container {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; } }
  .trending-news-topics-item {
    display: flex;
    position: relative;
    border-bottom: 1px solid rgba(95, 106, 120, 0.2);
    padding-bottom: 30px;
    margin-bottom: 20px;
    text-align: left; }
    .trending-news-topics-item:active, .trending-news-topics-item:hover, .trending-news-topics-item:focus, .trending-news-topics-item.-focused {
      cursor: pointer; }
    .trending-news-topics-item:last-child {
      border-bottom: 0; }
    @media screen and (min-width: 768px) {
      .trending-news-topics-item {
        width: calc(50% - 20px); } }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-item {
        display: block;
        width: 20%;
        border-bottom: 0;
        padding-left: 25px;
        padding-right: 25px;
        border-left: 1px solid rgba(95, 106, 120, 0.2); }
        .trending-news-topics-item:first-child {
          flex: 0 1 auto;
          width: calc(20% - 25px);
          border: 0;
          padding-left: 0; } }
    .trending-news-topics-item:active .trending-news-topics-summary, .trending-news-topics-item:hover .trending-news-topics-summary, .trending-news-topics-item:focus .trending-news-topics-summary, .trending-news-topics-item.-focused .trending-news-topics-summary {
      color: #0273ba;
      border-color: rgba(2, 115, 186, 0.8); }
      @media screen and (min-width: 768px) {
        .trending-news-topics-item:active .trending-news-topics-summary, .trending-news-topics-item:hover .trending-news-topics-summary, .trending-news-topics-item:focus .trending-news-topics-summary, .trending-news-topics-item.-focused .trending-news-topics-summary {
          background-size: 100% 3px; } }
  .trending-news-topics-number-1, .trending-news-topics-number-2, .trending-news-topics-number-3, .trending-news-topics-number-4, .trending-news-topics-number-5 {
    display: none; }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-number-1, .trending-news-topics-number-2, .trending-news-topics-number-3, .trending-news-topics-number-4, .trending-news-topics-number-5 {
        display: block; } }
  .trending-news-topics-number-2 {
    opacity: .8; }
  .trending-news-topics-number-3 {
    opacity: .65; }
  .trending-news-topics-number-4 {
    opacity: .5; }
  .trending-news-topics-number-5 {
    opacity: .35; }
  .trending-news-topics-image {
    margin-right: 20px;
    width: 30%; }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-image {
        width: auto;
        margin-right: 0;
        margin-bottom: 20px; } }
  .trending-news-topics-content {
    flex: 1 1 auto;
    width: 70%; }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-content {
        width: auto; } }
  .trending-news-topics-eyebrow {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.28571;
    letter-spacing: 1.3px;
    margin-bottom: 5px; }
    @media screen and (min-width: 1000px) {
      .trending-news-topics-eyebrow {
        margin-bottom: 20px; } }
  .trending-news-topics-summary {
    display: inline;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 800;
    line-height: 1.55556;
    text-decoration: none;
    color: #1a1a1a;
    width: 100%; }
    @media screen and (min-width: 768px) {
      .trending-news-topics-summary {
        padding: 0;
        border: 0;
        background-image: linear-gradient(#059bd6, #059bd6);
        background-position: 0% 100%;
        background-repeat: no-repeat;
        background-size: 0% 3px;
        transition: 0.15s ease-in-out; } }
  @media screen and (min-width: 1500px) {
    .trending-news-topics::after {
      content: '';
      position: absolute;
      top: 40px;
      right: 0;
      width: 180px;
      height: 196px;
      background-image: url("https://cdn.asce.org/asg/images/gradient-dots.svg");
      background-size: 180px 196px;
      background-position: center right;
      background-repeat: no-repeat;
      z-index: 2;
      transform: rotate(-90deg); } }
  @media screen and (min-width: 1800px) {
    .trending-news-topics::after {
      right: 90px; } }

.component-switcher {
  grid-column: full;
  position: relative;
  overflow-x: hidden; }
  .component-switcher-selector {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    transform: translateX(-100%);
    transition: ease-in-out 0.15s;
    opacity: .5; }
    .component-switcher-selector:active, .component-switcher-selector:hover, .component-switcher-selector:focus, .component-switcher-selector.-focused {
      transform: translateX(0);
      opacity: 1; }
    .component-switcher-selector > a {
      display: inline-flex;
      align-items: center;
      position: relative;
      height: 40px;
      background-color: #db4545;
      color: #fff;
      font-size: 14px;
      font-size: 0.875rem;
      font-weight: 700;
      text-decoration: none;
      white-space: nowrap;
      border: 0;
      padding: 0 10px;
      transition: none; }
      .component-switcher-selector > a.-active {
        background-color: firebrick;
        cursor: default; }
        .component-switcher-selector > a.-active::before {
          content: '';
          position: absolute;
          right: -15px;
          width: 15px;
          height: 100%;
          background: firebrick; }
        .component-switcher-selector > a.-active::after {
          content: '';
          display: inline-block;
          position: absolute;
          top: 50%;
          right: -10px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 4px 0 4px 6px;
          border-color: transparent transparent transparent #fff;
          transform: translateY(-50%); }
      .component-switcher-selector > a:not(.-active):active, .component-switcher-selector > a:not(.-active):hover, .component-switcher-selector > a:not(.-active):focus, .component-switcher-selector > a:not(.-active).-focused {
        background-color: #d73030;
        transition: background-color 0.15s ease-in-out; }
  .component-switcher-components > * {
    position: absolute;
    height: 0;
    visibility: hidden;
    opacity: 0;
    z-index: -1; }
  .component-switcher-components [data-cs-visibility='show'] {
    position: static;
    visibility: visible;
    height: auto;
    opacity: 1;
    z-index: 1; }

:root {
  --primary-white: #fff;
  --primary-black: #1a1a1a;
  --primary-gray-shade2: #555;
  --primary-gray-shade1: #5f6a78;
  --primary-gray: #edeff1;
  --primary-gray-tint1: #f6f7f8;
  --primary-gray-tint2: #f1f3f5;
  --primary-gray-tint3: #e5e8ec;
  --primary-blue-shade1: #253a6e;
  --primary-blue-shade2: #012a52;
  --primary-blue-shade3: #037fb0;
  --primary-blue: #0273ba;
  --primary-blue-tint1: #059bd6;
  --primary-blue-tint2: #d9eaf5;
  --primary-green-shade1: #44873c;
  --primary-green: #9fd64d;
  --primary-teal: #00818f;
  --primary-teal-tint1: #0099a9;
  --primary-teal-tint2: #b0e3e4;
  --primary-pink: #d6006e;
  --primary-pink-tint1: #e98698;
  --primary-orange: #d14200;
  --primary-orange-tint1: #ff5200;
  --primary-orange-tint2: #ef9070;
  --primary-red: #f00;
  --secondary-red: #cc0000;
  --secondary-green: #83c32e;
  --blue-gradient: #253a6e, #1d5389, #146ea6, #0c85be, #059bd6;
  --green-gradient: #9fd64d, #75c170, #49ab95, #2297b6, #0086d2;
  --dark-green-gradient: #9fd64d, #44873c, #2c736e, #186299, #059bd6;
  --light-green-gradient: rgba(159, 214, 77, 0.6), rgba(117, 193, 112, 0.6), rgba(73, 171, 149, 0.6), rgba(34, 151, 182, 0.6), rgba(0, 134, 210, 0.6);
  --bg-blue-gradient: rgba(37, 58, 110, 0.93), rgba(29, 83, 137, 0.93), rgba(20, 110, 166, 0.93), rgba(12, 133, 190, 0.93), rgba(5, 155, 214, 0.93);
  --black-gradient: transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 75%, black 100%;
  --black-gradient-mobile: transparent, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.6) 65%, black 100%; }
