.modal {
  display: block;
  height: 100%;
  pointer-events: none;
  position: fixed;
  top: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s 0.3s;
  transition: visibility 0s 0.3s;
  width: 100%;
  z-index: 5; }
  .modal--active {
    pointer-events: auto;
    visibility: visible; }
  .modal__dialog {
    position: relative;
    z-index: 1; }
    .modal__dialog::before, .modal__dialog:not([class*='bg-brand--']) {
      background: transparent; }
    .modal__dialog::before {
      content: '';
      height: 100%;
      position: absolute;
      opacity: 0;
      top: 0;
      width: 100%;
      z-index: -1; }
  .modal__header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    min-height: 60px;
    padding: 25px 25px;
    position: relative;
    z-index: 2; }
    .modal__header:not(.modal__header--divider-in) {
      border-bottom: 1px solid transparent; }
    .modal__header--divider-in, .modal__header--divider-out {
      -webkit-transition: border 0.2s 0s;
      transition: border 0.2s 0s; }
    .modal__header .modal__title {
      font-family: Montserrat-SemiBold, arial, sans-serif;
      font-size: 26px;
      text-transform: none;
      line-height: 30px;
      text-transform: capitalize;
      -webkit-transition: 0.1s ease;
      transition: 0.1s ease;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
      -ms-flex: 1;
      flex: 1; }
  .modal__close {
    margin-left: 30px; }
  .modal .bg-brand--light-grey .modal__close svg {
    color: #ff661a; }
  .modal .bg-brand--dark-grey .modal__close svg,
  .modal .bg-brand--gradient-blue .modal__close svg {
    color: rgba(255, 255, 255, 0.5); }
  .modal__main {
    height: calc(100vh - 60px);
    position: relative;
    -webkit-overflow-scrolling: touch; }
    .modal__main p:last-child {
      margin-bottom: 0; }
  .modal__footer {
    background: initial;
    padding: 20px 25px;
    width: 100%; }
  .modal .form__header {
    margin-bottom: 20px; }
  .modal .form-group + .form-group {
    margin-top: 15px; }
  .modal .form-group + .button {
    margin-top: 25px; }

@media (max-width: 940px) {
  .modal__dialog {
    height: 100%; }
  .modal:not(.modal--popup):not(.modal--navigation) .modal__header {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    -webkit-transition: 0s;
    transition: 0s; }
    .modal:not(.modal--popup):not(.modal--navigation) .modal__header--divider-in {
      min-height: 50px;
      padding: 10px 25px 10px; }
      .modal:not(.modal--popup):not(.modal--navigation) .modal__header--divider-in .modal__title {
        font-family: Montserrat-SemiBold, arial, sans-serif;
        font-size: 20px;
        text-transform: none;
        line-height: 30px;
        text-transform: capitalize;
        -webkit-transition: 0.2s ease;
        transition: 0.2s ease; }
      .modal:not(.modal--popup):not(.modal--navigation) .modal__header--divider-in .modal__close {
        height: 30px;
        margin-top: -4px; }
        .modal:not(.modal--popup):not(.modal--navigation) .modal__header--divider-in .modal__close .icon {
          width: 15px; }
  .modal.modal--active:not(.modal--popup):not(.modal--navigation) .modal__header {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: -webkit-transform 0.7s;
    transition: -webkit-transform 0.7s;
    transition: transform 0.7s;
    transition: transform 0.7s, -webkit-transform 0.7s; }
  .modal.modal--active:not(.modal--popup) .modal__footer {
    background: #f8f8f8; }
  .modal__close {
    height: 40px;
    margin-right: -10px;
    cursor: none;
    margin-top: -6px;
    position: relative;
    width: 40px; }
    .modal__close .icon {
      top: 10px; }
  .modal__main, .modal__footer {
    opacity: 0; }
  .modal__main {
    overflow-y: scroll;
    padding: 0 25px 230px; }
  .modal__footer {
    bottom: 0;
    position: absolute;
    -webkit-transform: translateY(100%);
    transform: translateY(100%); }
  .modal .modal__dialog::before {
    -webkit-transition: 0.3s;
    transition: 0.3s; }
  .modal .modal__main {
    -webkit-transform: translateY(100px);
    transform: translateY(100px); }
    .modal .modal__main::after {
      -webkit-transition: 0.3s 0.1s;
      transition: 0.3s 0.1s; }
  .modal .modal__footer {
    opacity: 0;
    -webkit-transition: opacity 0.2s 0.1s, -webkit-transform 0.3s;
    transition: opacity 0.2s 0.1s, -webkit-transform 0.3s;
    transition: transform 0.3s, opacity 0.2s 0.1s;
    transition: transform 0.3s, opacity 0.2s 0.1s, -webkit-transform 0.3s; }
  .modal--active {
    visibility: visible; }
    .modal--active .modal__dialog::before {
      opacity: 1;
      background: #f8f8f8;
      -webkit-transition: 0.5s;
      transition: 0.5s; }
    .modal--active .modal__main {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0);
      -webkit-transition-duration: 0.9s;
      transition-duration: 0.9s; }
      .modal--active .modal__main::after {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        -webkit-transition-delay: 0.5s;
        transition-delay: 0.5s; }
    .modal--active .modal__footer {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0);
      -webkit-transition: opacity 0.2s 0.7s, -webkit-transform 0.2s 0.7s;
      transition: opacity 0.2s 0.7s, -webkit-transform 0.2s 0.7s;
      transition: transform 0.2s 0.7s, opacity 0.2s 0.7s;
      transition: transform 0.2s 0.7s, opacity 0.2s 0.7s, -webkit-transform 0.2s 0.7s; } }

@media (min-width: 941px) {
  .modal {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: transparent;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
    padding: 50px 0;
    -webkit-transition: background-color 0.3s, opacity 0.3s, visibility 0.3s;
    transition: background-color 0.3s, opacity 0.3s, visibility 0.3s;
    z-index: 3; }
    .modal--active {
      background: rgba(0, 0, 0, 0.7);
      opacity: 1; }
    .modal__dialog {
      border-radius: 8px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      height: auto;
      margin-top: -20px;
      max-height: 100%;
      opacity: 0;
      overflow: hidden;
      -webkit-transform: translateY(10%);
      transform: translateY(10%);
      -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
      transition: opacity 0.3s, -webkit-transform 0.3s;
      transition: transform 0.3s, opacity 0.3s;
      transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
      width: 450px; }
      .modal__dialog:not([class*='bg-brand--']) {
        background: #f8f8f8; }
    .modal--active .modal__dialog {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0); }
    .modal__close {
      height: 30px; }
    .modal__header, .modal.form__header {
      padding-top: 30px; }
    .modal__header, .modal__main {
      padding-left: 30px;
      padding-right: 30px; }
    .modal__footer {
      padding: 30px 30px;
      position: static; }
    .modal__main {
      height: 100%;
      overflow-y: auto; }
      .modal__main--overflow {
        border-bottom: 0; }
      .modal__main--overflow::after {
        content: '';
        display: block;
        padding-bottom: 30px; } }

html.modal-open body {
  height: 100%;
  overflow: hidden;
  position: fixed;
  width: 100%; }

.modal__overlay {
  background: #2e2e2e;
  bottom: 0;
  left: 0;
  max-height: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  -webkit-transition: opacity 0.2s, max-height 0s 0.2s;
  transition: opacity 0.2s, max-height 0s 0.2s;
  top: 0;
  z-index: 2; }
  .modal__overlay--active {
    max-height: 100%;
    opacity: 0.7;
    -webkit-transition: opacity 0.2s, max-height 0s 0s;
    transition: opacity 0.2s, max-height 0s 0s; }
    .modal__overlay--active.modal__overlay--light {
      opacity: 0.3; }

.person__profile + .person__profile {
  margin-top: 50px; }

.person__profile .contact-details {
  margin-top: 20px; }

.person__profile .social__list {
  margin-top: 30px; }

.person__profile .social__link .icon--hover {
  color: #97999b; }
  .person__profile .social__link .icon--hover:hover {
    color: #ff661a; }

.person__initials {
  margin-bottom: 16px;
  width: 150px; }
  .person__initials--container {
    position: relative; }
    .person__initials--container::after {
      background: #f8f8f8;
      border: 2px solid #1f82db;
      border-radius: 50%;
      content: '';
      display: block;
      padding-bottom: 100%; }
  .person__initials span {
    font-family: Montserrat-ExtraBold, arial, sans-serif;
    font-size: 32px;
    text-transform: uppercase;
    line-height: 40px;
    color: #1f82db;
    display: block;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

.person__name {
  font-family: Montserrat-SemiBold, arial, sans-serif;
  font-size: 26px;
  text-transform: none;
  line-height: 30px;
  color: currentColor;
  text-transform: capitalize; }

.person__description + .social__list {
  margin-top: 20px; }

.person__info p:not(.person__title), .person__description {
  margin-bottom: 0;
  margin-top: 20px; }

.person__title {
  font-family: Montserrat, arial, sans-serif;
  font-size: 18px;
  text-transform: none;
  line-height: 30px;
  margin-bottom: 0;
  margin-top: 10px; }

.person--s {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .person--s .person__description {
    font-family: Montserrat, arial, sans-serif;
    font-size: 16px;
    text-transform: none;
    line-height: 25px;
    margin-left: 20px;
    margin-top: 0; }

@media (min-width: 941px) {
  .person__profile + .person__profile {
    margin-top: 80px; }
  .my-environment-container .person__initials {
    margin-bottom: 0; } }

.bg-brand--light-grey .person__initials--container::after {
  background: #fff; }

.button-group {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-top: -10px;
  overflow: hidden; }
  .button-group .button {
    margin-top: 10px; }
  .button-group--full-width {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }

@media (max-width: 940px) {
  .button-group {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -5px;
    margin-right: -5px; }
    .button-group .button {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
      flex: 1 1 auto;
      margin-left: 5px;
      margin-right: 5px; } }

@media (min-width: 941px) {
  .button-group:not(.button-group--reverse-on-l) .button:first-child {
    margin-right: 5px; }
  .button-group:not(.button-group--reverse-on-l) .button:last-child {
    margin-left: 5px; }
  .button-group--reverse-on-l .button:first-child {
    margin-left: 5px;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2; }
  .button-group--reverse-on-l .button:last-child {
    margin-right: 5px; }
  .button-group--options {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .button-group--options .button {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
      flex-grow: 1; }
    .button-group--options:not(.button-group--reverse-on-l) .button {
      margin-right: 10px; }
    .button-group--options:not(.button-group--reverse-on-l) .button:last-child {
      margin-left: 0; }
    .button-group--options:not(.button--full-width),
    .button-group--options a.button:not(.button--full-width) {
      max-width: 400px; } }

/*# sourceMappingURL=overlays.css.map */
