/* COLORS */
/* FONTS */
/* MAIN BODY */
body {
  background-color: white;
  font-family: "AvenirNextLTW01-Regular";
  overflow-x: hidden; }

.max-1600 {
  max-width: 1600px; }

.background-gray {
  background: #eaeaea; }

.bold {
  font-family: "Avenir Next LT W01 Bold"; }

strong {
  font-family: "Avenir Next LT W01 Bold"; }

/* HOME */
.container-fluid.home-background {
  padding-left: 0;
  margin-right: auto;
  margin-left: auto; }

#carousel-home div {
  margin-top: -95px;
  padding-top: 30px;
  max-height: 900px;
  overflow: hidden;
  display: block; }

@media (min-width: 1600px) {
  #carousel-home div.carousel-item {
    max-height: 1050px; } }

@media (max-width: 1200px) {
  #carousel-home div.carousel-item {
    max-height: 900; } }

@media (max-width: 992px) {
  #carousel-home div.carousel-item {
    min-height: 600px; } }

#carousel-home div.carousel-item img,
#carousel-home div.carousel-item.active img {
  min-height: 600px;
  min-width: 100%;
  object-fit: cover;
  max-height: 1080px;
  -webkit-transition: all 11s;
  -moz-transition: all 11s;
  -o-transition: all 11s;
  transition: all 11s; }
  @media (max-width: 1200px) {
    #carousel-home div.carousel-item img,
    #carousel-home div.carousel-item.active img {
      max-height: 900px; } }
  @media (max-width: 992px) {
    #carousel-home div.carousel-item img,
    #carousel-home div.carousel-item.active img {
      min-height: 600px; } }
  @media (max-width: 576px) {
    #carousel-home div.carousel-item img,
    #carousel-home div.carousel-item.active img {
      max-height: 700px; } }

#carousel-home .carousel-inner > .item > a > img .img-left, .carousel-inner > .item > img .img-left {
  margin: 0 auto; }

#carousel-home .carousel-item.active.inactiveUntilOnLoad img,
#carousel-home .carousel-item img {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transform-origin: bottom left;
  -moz-transform-origin: bottom left;
  -ms-transform-origin: bottom left;
  -o-transform-origin: bottom left;
  transform-origin: bottom left; }

#carousel-home div.carousel-item.active img {
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -o-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transform-origin: bottom left;
  -moz-transform-origin: bottom left;
  -ms-transform-origin: bottom left;
  -o-transform-origin: bottom left;
  transform-origin: bottom left; }

div#home-caption {
  z-index: 100;
  bottom: 0;
  margin-top: -330px;
  background-color: rgba(3, 6, 29, 0.3);
  padding: 2em;
  height: 330px;
  color: white;
  text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2); }
  @media (max-width: 992px) {
    div#home-caption {
      margin-top: -330px;
      height: 330px; } }
  div#home-caption h1 {
    font-size: 2.4em;
    font-family: "Avenir Next LT W01 Demi";
    font-weight: 100;
    padding-bottom: .3em;
    line-height: 1.1em;
    animation-duration: 3s; }
    @media (max-width: 1600px) {
      div#home-caption h1 {
        font-size: 2.1em; } }
    @media (max-width: 1200px) {
      div#home-caption h1 {
        font-size: 2.1em; } }
    @media (max-width: 768px) {
      div#home-caption h1 {
        font-size: 1.9em;
        padding-bottom: .2em; } }
    @media (max-width: 576px) {
      div#home-caption h1 {
        font-size: 1.8em;
        padding-bottom: .2em; } }
  div#home-caption p {
    font-family: "AvenirNextLTW01-Medium";
    font-size: 1em;
    animation-duration: 3s;
    animation-delay: 1s;
    line-height: 1.5em; }
    @media (max-width: 576px) {
      div#home-caption p {
        font-size: .9em; } }
    @media (min-width: 423px) {
      div#home-caption p {
        font-size: 1em; } }

.black-screen {
  background-color: rgba(3, 6, 29, 0.3); }

.home-panel {
  color: white;
  text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
  margin-top: 2em; }
  .home-panel .card-title {
    margin-bottom: .5rem; }
  .home-panel h5 {
    text-transform: uppercase;
    font-family: "Avenir Next LT W01 Demi";
    margin-bottom: 0em;
    line-height: 1em;
    font-size: 1.8em; }
    @media (max-width: 1200px) {
      .home-panel h5 {
        font-size: 1.2em; } }
    @media (max-width: 992px) {
      .home-panel h5 {
        font-size: 1.6em; } }
    @media (max-width: 768px) {
      .home-panel h5 {
        font-size: 1.6em; } }
    @media (max-width: 576px) {
      .home-panel h5 {
        font-size: 1.7em; } }
  .home-panel p {
    font-family: "AvenirNextLTW01-Medium";
    font-size: .9em;
    line-height: 1.4em; }
  .home-panel .wrapper {
    position: relative;
    overflow: hidden; }
  .home-panel .wrapper:after {
    content: '';
    display: block;
    padding-top: 100%; }
  .home-panel .wrapper img {
    width: auto;
    height: 100%;
    max-width: none;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%); }

/* BUTTONS */
.white-button {
  border: 1px solid #FFFFFF;
  font-family: "AvenirNextLTW01-Regular";
  font-size: 14px;
  color: white;
  letter-spacing: 1.5px;
  line-height: 24px;
  padding: .5em 3em .5em .5em;
  text-transform: uppercase; }
  .white-button::after {
    content: "";
    display: inline-block;
    background: url("/assets/arrow-right-white.svg") no-repeat 3px 3px;
    overflow: display;
    width: 1.5em;
    height: 1.6em;
    position: absolute; }
  .white-button:hover {
    transition: background-color 0.3s ease;
    background-color: rgba(250, 250, 250, 0.4);
    color: white; }

.teal-button {
  border: 1px solid #346b78;
  font-family: "Avenir Next LT W01 Demi";
  font-size: 14px;
  color: #346b78;
  letter-spacing: 1.5px;
  line-height: 24px;
  padding: .5em 3em .5em .5em;
  text-transform: uppercase; }
  .teal-button::after {
    content: "";
    display: inline-block;
    background: url("/assets/arrow-right-teal.svg") no-repeat 3px 6px;
    width: 1.5em;
    height: 1.8em;
    position: absolute; }
  .teal-button:hover {
    transition: background-color 0.3s ease;
    background-color: rgba(143, 173, 180, 0.3);
    color: #346b78;
    text-decoration: none; }

.teal-download-button {
  border: 1px solid #346b78;
  font-family: "Avenir Next LT W01 Demi";
  font-size: 14px;
  color: #346b78;
  letter-spacing: 1.5px;
  line-height: 24px;
  padding: .5em 3em .5em .5em;
  text-transform: uppercase; }
  .teal-download-button::after {
    content: "";
    display: inline-block;
    background: url("/assets/download-teal.svg") no-repeat 5px 5px;
    background-size: 14px 14px;
    width: 20px;
    height: 20px;
    position: absolute; }
  .teal-download-button:hover {
    transition: background-color 0.3s ease;
    background-color: rgba(143, 173, 180, 0.3);
    color: #346b78;
    text-decoration: none; }

.teal-more-button {
  border: 1px solid #346b78;
  font-family: "Avenir Next LT W01 Demi";
  font-size: 14px;
  color: #346b78;
  letter-spacing: 1.5px;
  line-height: 24px;
  padding: .5em 3em .5em .5em;
  text-transform: uppercase; }
  .teal-more-button::after {
    content: "";
    display: inline-block;
    background: url("/assets/arrow-down-teal.svg") no-repeat 5px 1px;
    width: 28px;
    height: 22px;
    background-size: 24px;
    position: absolute; }
  .teal-more-button:hover {
    transition: background-color 0.3s ease;
    background-color: rgba(143, 173, 180, 0.3);
    color: #346b78;
    text-decoration: none; }

/* HOME BANNER */
#projectCarousel {
  margin-top: 30px; }
  #projectCarousel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    width: 100vw;
    background: #eaeaea; }
  #projectCarousel .carousel-item {
    height: 400px;
    min-height: 400px;
    overflow-x: hidden; }
    @media (max-width: 768px) {
      #projectCarousel .carousel-item {
        height: 300px;
        min-height: 300px; } }
    @media (max-width: 576px) {
      #projectCarousel .carousel-item {
        max-height: 400px;
        min-height: 400px; } }
  #projectCarousel div.carousel-item img {
    min-width: 50%;
    max-height: 400px;
    min-height: 300px; }
    @media (max-width: 768px) {
      #projectCarousel div.carousel-item img {
        max-height: 300px;
        min-height: 300px; } }
    @media (max-width: 576px) {
      #projectCarousel div.carousel-item img {
        max-height: 400px;
        min-height: 400px;
        min-width: 100%;
        position: absolute;
        right: -100px; } }
  #projectCarousel .carousel-caption {
    position: absolute;
    left: auto;
    right: auto;
    width: 51.3%;
    height: 100%;
    background-color: #eaeaea;
    bottom: 0;
    right: 0;
    text-align: left;
    padding: 40px; }
    @media (max-width: 576px) {
      #projectCarousel .carousel-caption {
        background-color: rgba(3, 6, 29, 0.3);
        width: 100%;
        height: 50%;
        padding: 20px; } }
    #projectCarousel .carousel-caption h5 {
      color: #346b78;
      font-size: 2.4em;
      font-family: "Avenir Next LT W01 Demi";
      max-width: 800px; }
      @media (max-width: 768px) {
        #projectCarousel .carousel-caption h5 {
          font-size: 1.8em; } }
      @media (max-width: 576px) {
        #projectCarousel .carousel-caption h5 {
          font-size: 1.4em;
          color: white;
          padding-top: 0em; } }
    #projectCarousel .carousel-caption p {
      color: #4A4A4A;
      font-family: "AvenirNextLTW01-Medium";
      font-size: 1.2em;
      max-width: 500px; }
      @media (max-width: 768px) {
        #projectCarousel .carousel-caption p {
          font-size: 1em; } }
      @media (max-width: 576px) {
        #projectCarousel .carousel-caption p {
          font-size: .9em;
          color: white;
          line-height: 1.3em; } }
    #projectCarousel .carousel-caption .banner-caption {
      font-family: "AvenirNextLTW01-Italic";
      font-size: .8em; }
      @media (max-width: 576px) {
        #projectCarousel .carousel-caption .banner-caption {
          margin-top: -1em; } }
    @media (max-width: 576px) {
      #projectCarousel .carousel-caption .teal-button {
        border: 1px solid white;
        color: white; }
        #projectCarousel .carousel-caption .teal-button::after {
          background: url("/assets/arrow-right-white.svg") no-repeat 3px 3px; }
        #projectCarousel .carousel-caption .teal-button:hover {
          color: white; } }

.carousel-control-next {
  z-index: 1000; }

.carousel-control-prev {
  z-index: 1000; }

.carousel-control-prev .carousel-control-prev-icon {
  background: url("/assets/arrow-left-white.svg") no-repeat 2em 3em;
  background-size: 40px;
  padding: 4em;
  width: 4em;
  height: 4em;
  z-index: 1000; }
  @media (max-width: 576px) {
    .carousel-control-prev .carousel-control-prev-icon {
      display: none; } }

.carousel-control-next .carousel-control-next-icon {
  background: url("/assets/arrow-right-white.svg") no-repeat 2em 3em;
  background-size: 40px;
  padding: 4em;
  width: 4em;
  height: 4em;
  z-index: 1000; }
  @media (max-width: 576px) {
    .carousel-control-next .carousel-control-next-icon {
      display: none; } }

.carousel-control-prev .carousel-control-teal-prev-icon {
  background: url("/assets/arrow-left-teal.svg") no-repeat 2em 3em;
  background-size: 40px;
  padding: 4em;
  width: 4em;
  height: 4em;
  z-index: 1000; }
  @media (max-width: 576px) {
    .carousel-control-prev .carousel-control-teal-prev-icon {
      display: none; } }

.carousel-control-next .carousel-control-teal-next-icon {
  background: url("/assets/arrow-right-teal.svg") no-repeat 2em 3em;
  background-size: 40px;
  margin-left: 5em;
  padding: 4em;
  width: 4em;
  height: 4em;
  z-index: 1000; }
  @media (max-width: 576px) {
    .carousel-control-next .carousel-control-teal-next-icon {
      display: none; } }

/* SUBPAGE */
body.subpage .navbar {
  padding-bottom: 4em; }

body.subpage div.subpage-container {
  padding-left: 30px;
  padding-top: 30px; }

body.subpage div.subpage-container H1 {
  font-size: 2.4em;
  color: #346b78;
  font-family: "Avenir Next LT W01 Demi";
  padding-bottom: .3em;
  animation-delay: .3s; }
  @media (max-width: 576px) {
    body.subpage div.subpage-container H1 {
      font-size: 2.2em; } }

body.subpage div.subpage-container H2 {
  font-size: 1.6em;
  color: #4A4A4A;
  font-family: "AvenirNextLTW01-Regular";
  padding-bottom: .5em;
  animation-delay: .6s; }
  @media (max-width: 576px) {
    body.subpage div.subpage-container H2 {
      font-size: 1.5em; } }

body.subpage div.subpage-container H3 {
  font-size: .9em;
  color: #346b78;
  font-family: "Avenir Next LT W01 Bold";
  text-transform: uppercase;
  padding-bottom: 1em;
  letter-spacing: .1em; }
  @media (max-width: 576px) {
    body.subpage div.subpage-container H3 {
      font-size: .9em; } }

body.subpage div.subpage-container p {
  font-size: 1em;
  color: #4A4A4A;
  font-family: "AvenirNextLTW01-Regular";
  padding-bottom: .3em; }

body.subpage div.subpage-container p.intro {
  animation-delay: .9s; }

body.subpage div.subpage-container i {
  font-family: "AvenirNextLTW01-Italic"; }

body.subpage div.subpage-container a {
  color: #346b78;
  font-family: "Avenir Next LT W01 Demi"; }

body.subpage div.subpage-container li {
  padding-bottom: .5em;
  padding-left: em; }
  @media (max-width: 576px) {
    body.subpage div.subpage-container li {
      font-size: .9em; } }

body.subpage div.subpage-container img.headshot {
  width: 175px;
  border-radius: 50%;
  padding-bottom: 1em; }

body.subpage div.subpage-container .history {
  padding-top: 1.5em; }

/* SUBPAGE MAIN IMAGE STILL*/
div.subpage-main-image {
  max-height: 450px; }
  @media (max-width: 576px) {
    div.subpage-main-image {
      padding-bottom: 2em; } }
  @media (max-width: 768px) {
    div.subpage-main-image .main-image-item {
      padding-bottom: 2em; } }
  @media (max-width: 576px) {
    div.subpage-main-image .main-image-item {
      padding-bottom: 0em; } }
  div.subpage-main-image img {
    object-fit: cover;
    width: 100%;
    max-height: 450px;
    min-height: 450px; }
    @media (max-width: 576px) {
      div.subpage-main-image img {
        max-height: 400px;
        min-height: 400px; } }

div.subpage-main-image div.image-caption {
  position: relative;
  width: 100%;
  height: 100px;
  background-color: rgba(3, 6, 29, 0.3);
  text-align: left;
  padding: 15px;
  z-index: 1000;
  margin-top: -90px; }
  div.subpage-main-image div.image-caption h3 {
    color: white;
    font-size: .9em;
    font-family: "Avenir Next LT W01 Demi";
    text-transform: uppercase;
    padding-bottom: 0em;
    letter-spacing: .1em;
    line-height: 0.7em;
    padding-top: .5em; }
    @media (max-width: 0) {
      div.subpage-main-image div.image-caption h3 {
        font-size: .8em;
        padding-top: .4em; } }
    @media (max-width: 576px) {
      div.subpage-main-image div.image-caption h3 {
        font-size: .8em;
        padding-top: 0em; } }
  div.subpage-main-image div.image-caption p {
    color: white;
    font-family: "AvenirNextLTW01-Regular";
    font-size: 1.5em;
    line-height: 1em; }
    @media (max-width: 0) {
      div.subpage-main-image div.image-caption p {
        font-size: 1.1em;
        line-height: 1.2em;
        padding-top: .4em; } }

/* SUBPAGE MAIN IMAGE CAROUSEL*/
#subpage-slideshow {
  height: 450px; }
  @media (max-width: 576px) {
    #subpage-slideshow {
      padding-bottom: 2em; } }
  #subpage-slideshow .carousel-item img {
    object-fit: cover;
    width: 100%;
    max-height: 400px;
    min-height: 400px; }
    @media (max-width: 576px) {
      #subpage-slideshow .carousel-item img {
        max-height: 400px;
        min-height: 400px; } }

#subpage-slideshow .carousel-caption {
  position: absolute;
  left: auto;
  right: auto;
  width: 100%;
  height: 100px;
  background-color: rgba(3, 6, 29, 0.4);
  bottom: 0;
  right: 0;
  text-align: left;
  padding: 15px; }
  @media (max-width: 576px) {
    #subpage-slideshow .carousel-caption {
      font-size: 1.1em; } }
  #subpage-slideshow .carousel-caption h3 {
    color: white;
    font-size: .9em;
    font-family: "Avenir Next LT W01 Demi";
    text-transform: uppercase;
    padding-bottom: 0em;
    letter-spacing: .1em;
    line-height: 0.7em;
    padding-top: .5em; }
    @media (max-width: 576px) {
      #subpage-slideshow .carousel-caption h3 {
        font-size: .8em;
        padding-top: 0em; } }
  #subpage-slideshow .carousel-caption p {
    color: white;
    font-family: "AvenirNextLTW01-Regular";
    font-size: 1.5em;
    line-height: 1em; }
    @media (max-width: 992px) {
      #subpage-slideshow .carousel-caption p {
        font-size: 1.4em; } }
    @media (max-width: 576px) {
      #subpage-slideshow .carousel-caption p {
        font-size: 1.2em; } }

/* TESTIMONIAL CAROUSEL */
.testimonial {
  width: 100%; }

#testimonialCarousel {
  margin-top: 30px;
  width: 100%; }
  #testimonialCarousel .carousel-item img {
    min-height: 400px;
    min-width: 100%;
    object-fit: cover; }
    @media (max-width: 576px) {
      #testimonialCarousel .carousel-item img {
        min-height: 450px; } }
  #testimonialCarousel .carousel-caption {
    position: absolute;
    display: table;
    left: auto;
    right: auto;
    width: 100%;
    height: 100%;
    min-height: 450px;
    background-color: rgba(3, 6, 29, 0.4);
    bottom: 0;
    right: 0;
    text-align: center;
    padding: 15px; }
    #testimonialCarousel .carousel-caption p {
      text-align: center;
      color: white;
      text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
      font-family: "AvenirNextLTW01-Regular";
      font-size: 1.6em;
      line-height: 1.4em;
      max-width: 50%;
      display: table-cell;
      line-height: 1.3em;
      vertical-align: middle;
      padding-left: 20%;
      padding-right: 20%; }
      @media (max-width: 992px) {
        #testimonialCarousel .carousel-caption p {
          font-size: 1.3em; } }
      @media (max-width: 768px) {
        #testimonialCarousel .carousel-caption p {
          font-size: 1.3em; } }
      @media (max-width: 576px) {
        #testimonialCarousel .carousel-caption p {
          font-size: 1.2em; } }

#testimonialCarousel .carousel-item img {
  width: 100%; }

/* PROJECTS PAGE */
div.project-portfolio {
  padding-top: 2em; }

.card.project-card {
  background-color: #eaeaea;
  border: 0px;
  border-radius: 0%; }
  .card.project-card table {
    margin-bottom: 2em; }
    @media (max-width: 576px) {
      .card.project-card table {
        font-size: .9em; } }
  .card.project-card a {
    color: #346b78;
    font-family: "Avenir Next LT W01 Demi"; }
  .card.project-card td {
    vertical-align: top;
    padding-bottom: 1em; }
  .card.project-card td.project-data {
    width: 20%;
    font-family: "Avenir Next LT W01 Bold";
    white-space: nowrap;
    padding-right: 1em; }
  .card.project-card img {
    object-fit: cover;
    min-height: 400px;
    width: 100%;
    border-radius: 0%; }
    @media (max-width: 576px) {
      .card.project-card img {
        min-height: 300px; } }
  .card.project-card .card-img-overlay {
    left: auto;
    right: auto;
    width: 100%;
    height: 90px;
    background-color: rgba(3, 6, 29, 0.3);
    bottom: 0;
    right: 0;
    text-align: left;
    padding: 15px;
    margin-top: 310px; }
    @media (max-width: 576px) {
      .card.project-card .card-img-overlay {
        height: 60px;
        margin-top: 240px; } }
  .card.project-card .card-img-overlay h2 {
    color: white;
    font-size: 1.7em;
    font-family: "AvenirNextLTW01-Medium";
    padding-bottom: .5em;
    padding-top: .5em;
    line-height: 1em;
    text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3); }
    @media (max-width: 992px) {
      .card.project-card .card-img-overlay h2 {
        font-size: 1.5em; } }
    @media (max-width: 576px) {
      .card.project-card .card-img-overlay h2 {
        font-size: 1.2em;
        padding-top: .2em; } }

ul.project-list {
  padding-left: 1em;
  padding-bottom: 2em; }
  @media (max-width: 576px) {
    ul.project-list {
      font-size: .9em; } }

/* PARTNERS */
img.partners-image {
  width: 320px;
  border-radius: 50%;
  margin-bottom: 2em; }
  @media (max-width: 992px) {
    img.partners-image {
      width: 220px; } }
  @media (max-width: 768px) {
    img.partners-image {
      margin-left: 50%; } }
  @media (max-width: 576px) {
    img.partners-image {
      display: block;
      margin-left: auto;
      margin-right: auto; } }

ul.clients-partners {
  padding-left: 1em; }
  @media (max-width: 576px) {
    ul.clients-partners {
      font-size: .9em; } }

@media (max-width: 576px) {
  div.partner-list {
    margin-top: -1em !important;
    padding-left: 1em; } }

/* READS */
div.top-twelve-reads {
  border-top: 1px solid #4A4A4A;
  border-left: 0px;
  border-right: 0px;
  border-bottom: 0px;
  border-radius: 0px; }
  div.top-twelve-reads div.card-body {
    padding-left: 0px;
    padding-right: 0px; }
  div.top-twelve-reads h2 {
    color: #346b78 !important; }
  div.top-twelve-reads a.teal-button {
    border: 1px solid #346b78;
    font-family: "Avenir Next LT W01 Demi";
    font-size: 14px;
    color: #346b78;
    background-color: white;
    letter-spacing: 1.5px;
    line-height: 24px;
    padding: .5em 3em .5em .5em;
    text-transform: uppercase; }
    div.top-twelve-reads a.teal-button::after {
      content: "";
      display: inline-block;
      background: url("/assets/arrow-right-teal.svg") no-repeat 3px 3px;
      width: 1.5em;
      height: 1.8em;
      position: absolute; }
    div.top-twelve-reads a.teal-button:hover {
      transition: background-color 0.3s ease;
      background-color: rgba(143, 173, 180, 0.3);
      color: #346b78;
      text-decoration: none; }

div.top-twelve-reads.featured {
  border: 0px;
  margin-bottom: 1em;
  background-color: #eaeaea;
  margin-left: -1em;
  border-right: 15px solid white; }
  @media (max-width: 576px) {
    div.top-twelve-reads.featured {
      margin-left: 1em;
      margin-right: 1em; } }
  @media (max-width: 992px) {
    div.top-twelve-reads.featured {
      max-height: 400px; } }

div.top-twelve-reads.featured h3 {
  padding-bottom: 0em !important; }

div.featured-image {
  margin-bottom: 1em;
  background-color: #eaeaea;
  margin-left: 1em; }
  @media (max-width: 576px) {
    div.featured-image {
      margin-bottom: 0em;
      background-color: white;
      margin-left: 1em;
      padding-right: 0em; } }
  @media (max-width: 992px) {
    div.featured-image {
      max-height: 400px; } }

div.featured-image img {
  object-fit: cover;
  margin-left: -1em; }
  @media (max-width: 576px) {
    div.featured-image img {
      width: 100%;
      margin-bottom: 0em;
      background-color: white; } }

/* GLOSSARY */
div.glossary {
  border-top: 1px solid #4A4A4A;
  border-left: 0px;
  border-right: 0px;
  border-bottom: 0px;
  border-radius: 0px; }
  div.glossary div.card-body {
    padding-left: 0px;
    padding-right: 0px; }
  div.glossary h2 {
    color: #346b78 !important; }
  div.glossary div.glossary-icon {
    float: right;
    padding-left: 2em;
    padding-bottom: 2em; }

/* MISC CARDS */
div.misc-cards {
  border-top: 1px solid #4A4A4A;
  border-left: 0px;
  border-right: 0px;
  border-bottom: 0px;
  border-radius: 0px; }
  div.misc-cards div.card-body {
    padding-left: 0px;
    padding-right: 0px; }
  div.misc-cards h2 {
    color: #346b78 !important; }
  div.misc-cards a.teal-button {
    border: 1px solid #346b78;
    font-family: "Avenir Next LT W01 Demi";
    font-size: 14px;
    color: #346b78;
    background-color: white;
    letter-spacing: 1.5px;
    line-height: 24px;
    padding: .5em 3em .5em .5em;
    text-transform: uppercase; }
    div.misc-cards a.teal-button::after {
      content: "";
      display: inline-block;
      background: url("/assets/arrow-right-teal.svg") no-repeat 3px 3px;
      width: 1.5em;
      height: 1.8em;
      position: absolute; }
    div.misc-cards a.teal-button:hover {
      transition: background-color 0.3s ease;
      background-color: rgba(143, 173, 180, 0.3);
      color: #346b78;
      text-decoration: none; }

/* PHOTO CREDITS PAGE */
.card.photo-credits {
  border-radius: 0;
  border: 0px;
  padding-bottom: .5em; }
  .card.photo-credits img {
    border-radius: 0;
    max-height: 190px; }
  .card.photo-credits div.card-body {
    padding: .5em; }

/* FOOTER */
footer {
  background-color: #346b78;
  margin-top: 25px;
  padding: 1em 30px 1em 30px;
  color: white; }
  @media (max-width: 576px) {
    footer {
      padding-left: 15px; } }
  footer p.copyright {
    font-size: .8em;
    margin-top: 1em;
    color: white; }
  footer ul {
    text-transform: uppercase;
    font-size: .9em;
    line-height: .5em;
    margin-left: 30px;
    margin-top: 2em; }
    @media (max-width: 576px) {
      footer ul {
        margin-left: 0px;
        margin-top: 1em; } }
  footer li {
    padding-bottom: .2em; }
  footer a {
    color: white !important;
    font-family: "AvenirNextLTW01-Regular" !important; }
  footer a:hover {
    text-decoration: underline !important; }

footer .footer-watermark {
  background: url("/assets/logo-background.png") no-repeat right;
  background-size: 300px; }
  @media (max-width: 576px) {
    footer .footer-watermark {
      background: url("/assets/logo-background.png") no-repeat bottom left;
      background-size: 250px; } }

.footer-logo {
  width: 175px;
  padding-top: 3.6em;
  margin-left: -1em; }
  @media (max-width: 576px) {
    .footer-logo {
      padding-top: 1em;
      width: 150px; } }

footer .nav-link {
  color: white; }

/* BUTTON */
div.button {
  border: 1px solid #FFFFFF;
  /* button/learn more: */
  font-family: "Avenir Next LT W01 Bold";
  font-size: 14px;
  color: #FFFFFF;
  letter-spacing: 1.5px;
  line-height: 24px; }

div.button svg {
  /* Arrow Down White: */
  transform: rotate(-90deg); }

/* NAV BAR */
body.home .navbar a.nav-link {
  color: white;
  opacity: 0.88; }
  body.home .navbar a.nav-link:hover {
    opacity: 1.0; }

body.home button .icon-bar {
  background-color: white; }

body.home .navbar a:before {
  background-color: white; }

body.subpage .navbar .nav-link {
  color: black;
  opacity: 0.5; }
  body.subpage .navbar .nav-link:hover {
    opacity: 1.0; }

body.subpage button .icon-bar {
  background-color: black; }

body.subpage .navbar a:before {
  background-color: black; }

.navbar-collapse .nav-link {
  color: white; }

.wrapper {
  transition: all 0.5s cubic-bezier(0.685, 0.0473, 0.346, 1); }

.navbar {
  padding-top: 80px;
  height: 75px;
  transition: all .5s .1s;
  font-family: "Avenir Next LT W01 Demi";
  font-size: 1em;
  letter-spacing: .05em;
  text-transform: uppercase; }
  @media (max-width: 768px) {
    .navbar {
      padding-top: 50px; } }

.navbar a {
  position: relative;
  text-decoration: none; }

.navbar .logo a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 0px;
  bottom: -3px;
  left: 0;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.1s ease-in-out 0s;
  transition: all 0.1s ease-in-out 0s; }

body.home .navbar-brand {
  margin-left: 15px; }

.navbar li a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: -3px;
  left: 0;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.1s ease-in-out 0s;
  transition: all 0.1s ease-in-out 0s; }

.navbar a:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1); }

navbar.black ul {
  background: #000; }

.navbar-offcanvas {
  z-index: 1030; }
  .navbar-offcanvas .container-fluid {
    position: relative;
    padding: 0;
    transform: translate3d(0px, 0, 0);
    transition: all 0.5s cubic-bezier(0.685, 0.0473, 0.346, 1); }
  .navbar-offcanvas .navbar-top {
    display: none; }
    @media (min-width: 992px) {
      .navbar-offcanvas .navbar-top {
        display: flex;
        margin-left: auto; } }
    .navbar-offcanvas .navbar-top .nav-item {
      margin-right: 22px;
      text-align: center; }
      @media (max-width: 991px) {
        .navbar-offcanvas .navbar-top .nav-item .nav-link {
          color: #000; } }
  .navbar-offcanvas .navbar-toggler {
    padding: 0;
    border: 0;
    outline: none; }
    .navbar-offcanvas .navbar-toggler:hover, .navbar-offcanvas .navbar-toggler:focus {
      cursor: pointer; }
    @media (min-width: 768px) {
      .navbar-offcanvas .navbar-toggler {
        display: block; } }
    .navbar-offcanvas .navbar-toggler .icon-bar {
      display: block;
      position: relative;
      width: 24px;
      height: 2px;
      border-radius: 1px; }
      .navbar-offcanvas .navbar-toggler .icon-bar + .icon-bar {
        margin-top: 4px; }
      .navbar-offcanvas .navbar-toggler .icon-bar.bar1 {
        top: 0;
        outline: 1px solid transparent;
        animation: topbar-back 500ms 0s;
        animation-fill-mode: forwards; }
      .navbar-offcanvas .navbar-toggler .icon-bar.bar2 {
        outline: 1px solid transparent;
        opacity: 1; }
      .navbar-offcanvas .navbar-toggler .icon-bar.bar3 {
        bottom: 0;
        outline: 1px solid transparent;
        animation: bottombar-back 500ms 0s;
        animation-fill-mode: forwards; }
    .navbar-offcanvas .navbar-toggler.toggled .icon-bar.bar1 {
      top: 6px;
      animation: topbar-x 500ms 0s;
      animation-fill-mode: forwards; }
    .navbar-offcanvas .navbar-toggler.toggled .icon-bar.bar2 {
      opacity: 0; }
    .navbar-offcanvas .navbar-toggler.toggled .icon-bar.bar3 {
      bottom: 6px;
      animation: bottombar-x 500ms 0s;
      animation-fill-mode: forwards; }
  .navbar-offcanvas .navbar-collapse.collapse,
  .navbar-offcanvas .navbar-collapse.collapse.in,
  .navbar-offcanvas .navbar-collapse.collapsing {
    display: none !important; }

.nav-open .navbar-collapse {
  transform: translate3d(0px, 0, 0); }

.nav-open .navbar > .container-fluid {
  transform: translate3d(-380px, 0, 0); }
  @media (max-width: 991px) {
    .nav-open .navbar > .container-fluid {
      transform: translate3d(-253.33333px, 0, 0); } }

.nav-open .wrapper {
  transform: translate3d(-150px, 0, 0); }

body > .navbar-collapse {
  display: block !important;
  position: fixed;
  top: 0;
  right: -10px;
  width: 380px;
  height: 100%;
  padding: 40px 1rem;
  background-color: rgba(0, 0, 0, 0.8);
  border-left: 1px solid #e3e3e3;
  text-align: center;
  visibility: visible;
  overflow-y: visible;
  transform: translate3d(380px, 0, 0);
  transition: all 0.5s cubic-bezier(0.685, 0.0473, 0.346, 1);
  z-index: 1032; }
  body > .navbar-collapse:after {
    content: "";
    position: absolute;
    top: 52px;
    left: -20px;
    border-left: 10px solid #fff;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid transparent;
    transform: rotate(180deg);
    transition: all 0.5s cubic-bezier(0.685, 0.0473, 0.346, 1);
    z-index: 1032; }
  @media (max-width: 991px) {
    body > .navbar-collapse {
      width: 253.33333px; } }
  body > .navbar-collapse .nav-image {
    margin-bottom: 10px; }
    body > .navbar-collapse .nav-image img {
      display: block;
      margin: 0 auto;
      margin-bottom: 10px;
      border: 0px;
      width: 160px;
      height: 69px; }
  body > .navbar-collapse img.linkedin-logo {
    width: 50px;
    padding-top: 20px; }
  body > .navbar-collapse .navbar-top {
    margin: 0 !important;
    flex-direction: column; }
    @media (min-width: 992px) {
      body > .navbar-collapse .navbar-top {
        display: none; } }
    body > .navbar-collapse .navbar-top li {
      text-align: center; }
      body > .navbar-collapse .navbar-top li a {
        display: block;
        padding: .7rem 1rem;
        font-size: 1.2em;
        font-family: "AvenirNextLTW01-Regular" !important;
        font-weight: 500;
        color: white;
        text-transform: uppercase;
        opacity: .7; }
        body > .navbar-collapse .navbar-top li a:hover, body > .navbar-collapse .navbar-top li a:focus {
          text-decoration: none;
          opacity: 1; }
        @media (orientation: landscape) {
          body > .navbar-collapse .navbar-top li a {
            padding: .5rem 1rem;
            font-size: .9em; } }
  body > .navbar-collapse .nav-link,
  body > .navbar-collapse .dropdown-toggle {
    font-weight: 700;
    color: #222;
    transition: color .2s ease-out; }
    body > .navbar-collapse .nav-link:hover, body > .navbar-collapse .nav-link:focus,
    body > .navbar-collapse .dropdown-toggle:hover,
    body > .navbar-collapse .dropdown-toggle:focus {
      text-decoration: none; }
    body > .navbar-collapse .nav-link.disabled,
    body > .navbar-collapse .dropdown-toggle.disabled {
      color: rgba(0, 0, 0, 0.35); }
      body > .navbar-collapse .nav-link.disabled:hover, body > .navbar-collapse .nav-link.disabled:focus,
      body > .navbar-collapse .dropdown-toggle.disabled:hover,
      body > .navbar-collapse .dropdown-toggle.disabled:focus {
        cursor: not-allowed; }

@media (min-width: 992px) {
  body > .navbar-top {
    display: none; } }

body > #overlay {
  content: "";
  position: fixed;
  top: 0;
  left: auto;
  right: calc(253.33333px - 10px);
  width: 100%;
  height: 100%;
  opacity: 0;
  overflow-x: hidden;
  z-index: 1029; }
  @media (min-width: 992px) {
    body > #overlay {
      right: calc(380px - 10px); } }

@keyframes topbar-x {
  0% {
    top: 0px;
    transform: rotate(0deg); }
  45% {
    top: 6px;
    transform: rotate(145deg); }
  75% {
    transform: rotate(130deg); }
  100% {
    transform: rotate(135deg); } }

@keyframes topbar-back {
  0% {
    top: 6px;
    transform: rotate(135deg); }
  45% {
    transform: rotate(-10deg); }
  75% {
    transform: rotate(5deg); }
  100% {
    top: 0px;
    transform: rotate(0); } }

@keyframes bottombar-x {
  0% {
    bottom: 0px;
    transform: rotate(0deg); }
  45% {
    bottom: 6px;
    transform: rotate(-145deg); }
  75% {
    transform: rotate(-130deg); }
  100% {
    transform: rotate(-135deg); } }

@keyframes bottombar-back {
  0% {
    bottom: 6px;
    transform: rotate(-135deg); }
  45% {
    transform: rotate(10deg); }
  75% {
    transform: rotate(-5deg); }
  100% {
    bottom: 0px;
    transform: rotate(0); } }

#return-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: green;
  background: rgba(0, 0, 0, 0.7);
  width: 50px;
  height: 50px;
  display: block;
  text-decoration: none;
  -webkit-border-radius: 35px;
  -moz-border-radius: 35px;
  border-radius: 35px;
  display: none;
  -webkit-transition: all 0.3s linear;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease; }

#return-to-top img {
  margin: 0;
  position: relative;
  left: 7.5px;
  top: 7px;
  width: 35px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease; }

#return-to-top:hover {
  background: rgba(0, 0, 0, 0.9); }
