@charset "UTF-8";
[class*=ico-]::before {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
  text-rendering: optimizeLegibility;
  font-family: "icon";
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  speak: none;
}

@font-face {
  font-family: "icon";
  font-weight: normal;
  font-display: swap;
  font-style: normal;
  src: url("fonts/icon.eot?v1") format("eot"), url("fonts/icon.svg?v1#icon") format("svg"), url("fonts/icon.woff?v1") format("woff"), url("fonts/icon.ttf?v1") format("truetype");
}
@font-face {
  font-family: "Open Sans";
  font-weight: 300;
  font-display: swap;
  font-style: normal;
  src: url("fonts/OpenSans-Light.woff?v1") format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-weight: 400;
  font-display: swap;
  font-style: normal;
  src: url("fonts/OpenSans-Regular.eot?v1") format("eot"), url("fonts/OpenSans-Regular.svg?v1#Open_Sans") format("svg"), url("fonts/OpenSans-Regular.woff?v1") format("woff"), url("fonts/OpenSans-Regular.ttf?v1") format("truetype");
}
@font-face {
  font-family: "Open Sans";
  font-weight: 600;
  font-display: swap;
  font-style: normal;
  src: url("fonts/OpenSans-Semibold.eot?v1") format("eot"), url("fonts/OpenSans-Semibold.svg?v1#Open_Sans") format("svg"), url("fonts/OpenSans-Semibold.woff?v1") format("woff"), url("fonts/OpenSans-Semibold.ttf?v1") format("truetype");
}
body {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-display: fallback;
}

h1,
h2,
h3,
h4,
h5, .button, .button--small {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-display: fallback;
}

.profile p, .footer__container nav a, small,
.small {
  font-size: 0.9375em;
  line-height: 1.2;
}

.button, .button--small {
  text-transform: uppercase;
}

.copy {
  font-size: 1.2em;
}
.copy p {
  margin-bottom: 1.5;
  hanging-punctuation: first;
}

body {
  line-height: 1.5;
}
@media (max-width: 1280px) {
  body {
    font-size: 0.875em;
  }
}
@media (max-width: 768px) {
  body {
    font-size: 0.8em;
  }
}

a {
  text-decoration: none;
  color: #3881bb;
}
a:focus, a:active {
  text-decoration: none;
  color: #4e9bd8;
}
@media (min-width: 769px) {
  a:hover {
    text-decoration: none;
    color: #4e9bd8;
  }
}
a:focus {
  outline: 0;
}

h1,
h2,
h3,
h4,
h5 {
  margin: 1.5em 0 0.5em;
  line-height: 1.2;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child {
  margin-top: 0;
}

h1 {
  font-size: 3rem;
}
@media (max-width: 768px) {
  h1 {
    font-size: 2.25rem;
  }
}

h2 {
  font-size: 2.25rem;
}
@media (max-width: 768px) {
  h2 {
    font-size: 1.8rem;
  }
}

h3 {
  font-size: 1.8rem;
}
@media (max-width: 768px) {
  h3 {
    font-size: 1.5rem;
  }
}

h4 {
  font-size: 1.5rem;
}
@media (max-width: 768px) {
  h4 {
    font-size: 1.2rem;
  }
}

h5 {
  font-size: 1rem;
}

.listless {
  list-style: none;
}
.listless li {
  margin: 0.5em 0;
  padding: 0;
}

.numbered {
  margin-left: 1em;
}
.numbered li {
  margin: 1em 0 0 0;
}

.section__container .section {
  margin-left: auto;
  margin-right: auto;
  width: 80%;
  text-align: left;
}
@media (max-width: 1280px) {
  .section__container .section {
    width: 90%;
  }
}
@media (max-width: 768px) {
  .section__container .section {
    padding-right: 1em;
    padding-left: 1em;
    width: calc(100% - 2em);
    max-width: none;
  }
}

.box, .profile__details {
  border-radius: 0.25em;
  box-shadow: 0 4px 4px 0 rgba(38, 38, 38, 0.08);
  padding: 2.25em;
}

.link, .header__menu a {
  position: relative;
}
@media (min-width: 1025px) {
  .link::after, .header__menu a::after {
    position: absolute;
    left: 0;
    bottom: -2px;
    transition: width 0.2s ease-out;
    background: #3881bb;
    width: 0;
    height: 2px;
    content: "";
  }
  .link:hover::after, .header__menu a:hover::after {
    transition: width 0.2s ease-in;
    width: 100%;
  }
}

.overlay--dark, .dark {
  color: #ffffff;
}
.overlay--dark .link, .dark .link,
.overlay--dark a:not([class]),
.dark a:not([class]) {
  color: #d5e1ea;
}
.overlay--dark .link:hover, .dark .link:hover,
.overlay--dark a:not([class]):hover,
.dark a:not([class]):hover {
  color: #f7f9fb;
}

.grey, .white, .profile__details {
  color: #262626;
}
.grey .link, .white .link, .profile__details .link,
.grey a:not([class]),
.white a:not([class]),
.profile__details a:not([class]) {
  color: #3881bb;
}
.grey .link:hover, .white .link:hover, .profile__details .link:hover,
.grey a:not([class]):hover,
.white a:not([class]):hover,
.profile__details a:not([class]):hover {
  color: #4e9bd8;
}
.grey h1, .white h1, .profile__details h1,
.grey h2,
.white h2,
.profile__details h2,
.grey h3,
.white h3,
.profile__details h3,
.grey h4,
.white h4,
.profile__details h4 {
  color: #003e6b;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

ul[class],
ol[class] {
  padding: 0;
}

body {
  text-rendering: optimizeSpeed;
  scroll-behavior: smooth;
}

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

input,
button,
textarea,
select {
  font: inherit;
}

[class^=grid-] {
  display: grid;
  grid-gap: 3em;
}
[class^=grid-].medium {
  grid-gap: 1.5em 2em;
}
[class^=grid-].compact {
  grid-gap: 0.5em 1em;
}
[class^=grid-].no-gap {
  grid-gap: 0;
}

.grid-1 {
  grid-template-columns: 1fr;
}

.grid-2 {
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 768px) {
  .grid-2 {
    display: block;
  }
  .grid-2 > * {
    margin-bottom: 2em;
  }
}

.grid-3 {
  grid-template-columns: 1fr 1fr 1fr;
}

.grid-4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.grid-5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.grid-6 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media (max-width: 1280px) {
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6 {
    grid-gap: 2em;
  }
}
@media (max-width: 1024px) {
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6 {
    display: block;
  }
  .grid-3 > *,
  .grid-4 > *,
  .grid-5 > *,
  .grid-6 > * {
    display: block;
    margin-bottom: 2em;
  }
}

.col-2 {
  grid-column: auto/span 2;
}

.col-3 {
  grid-column: auto/span 3;
}

.col-4 {
  grid-column: auto/span 4;
}

.col-5 {
  grid-column: auto/span 5;
}

.col-6 {
  grid-column: auto/span 6;
}

.row-2 {
  grid-row: auto/span 2;
}

.row-3 {
  grid-row: auto/span 3;
}

.row-4 {
  grid-row: auto/span 4;
}

.align-left {
  text-align: left;
}

.align-right {
  text-align: right;
}

.align-center {
  text-align: center;
}

.align-justify {
  text-align: justify;
}

html {
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  color: #262626;
}

.section__container {
  text-align: center;
}
.content .section__container {
  overflow: auto;
}
.content .section__container .section {
  padding-top: 5vh;
  padding-bottom: 5vh;
}

.page {
  display: grid;
  grid-template-areas: "header" "main" "footer";
  grid-template-rows: auto 1fr 4em;
  grid-gap: 0;
  min-height: 100vh;
}
@media (max-width: 1024px) {
  .page {
    grid-template-rows: auto 1fr auto;
  }
}

.header__container {
  grid-area: header;
}

.content__container {
  grid-area: main;
}

.footer__container {
  grid-area: footer;
}

@media (min-width: 1025px) {
  .copy-container {
    margin-left: 10%;
    max-width: 75ch;
  }
}

.padded {
  padding: 2.25em;
}

.padded-h {
  padding-left: 2.25em;
  padding-right: 2.25em;
}

.padded-v {
  padding-top: 2.25em;
  padding-bottom: 2.25em;
}

.float {
  position: relative;
  z-index: 300;
}
@media (min-width: 1025px) {
  .float.top-s {
    top: 3em;
  }
  .float.top-m {
    top: 5em;
  }
  .float.top-l {
    top: 8em;
  }
  .float.top-xl {
    top: 15em;
  }
  .float.right {
    right: -5em;
  }
  .float.left {
    left: -5em;
  }
}

.collapse {
  display: none;
}
.collapse.show {
  display: block;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
}

.tbl {
  display: table;
}

.tbl-cell-1, .tbl-cell-2 {
  display: inline-flex;
  flex-direction: column;
  justify-content: end;
}

@media screen and (min-width: 900px) {
  .tbl-cell-1 {
    min-width: 17em;
  }
  .tbl-cell-2 {
    width: 7em;
  }
}
.tbl-cell-2 {
  padding-left: 1em;
  text-align: right;
}

.data-table td {
  padding: 0.5em;
  border: solid 0.5px #999;
  width: 30%;
}

@media (min-width: 769px) {
  .no-top-padding {
    padding-top: 0em;
  }
}
@media screen and (max-width: 899px) {
  .tbl-cell-1 {
    width: 60%;
  }
  .tbl-cell-2 {
    width: 40%;
  }
}
.button--small, .button {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 0.2em;
  -webkit-appearance: none;
  width: auto;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  text-decoration: none !important;
  font-weight: 600;
}
.button--small:focus, .button:focus {
  outline: 0;
}

.button {
  position: relative;
  border-radius: 0.25em;
  padding: 1em 1.35em 1em;
  font-size: 1rem;
  border: 0;
  box-shadow: 0 0 0 1px #3881bb inset;
  background: transparent;
  color: #3881bb;
}
.button:hover, .button:enabled:hover, .button:active, .button:focus {
  transition: all 0.1s ease-in;
  box-shadow: 0 0 0 1px #3881bb inset;
  background: #3881bb;
  color: #ffffff;
}

.button--small {
  position: relative;
  border-radius: 0.25em;
  padding: 0.5em;
  font-size: 1em;
  border: 0;
  box-shadow: 0 0 0 1px #3881bb inset;
  background: transparent;
  color: #3881bb;
  vertical-align: middle;
}
.button--small:hover, .button--small:enabled:hover, .button--small:active, .button--small:focus {
  transition: all 0.1s ease-in;
  box-shadow: 0 0 0 1px #3881bb inset;
  background: #3881bb;
  color: #ffffff;
}

.cta__wrapper {
  margin-top: 2em;
  margin-bottom: 2em;
  text-align: center;
}
.cta__wrapper:last-child {
  margin-bottom: 0;
}

.header {
  border-bottom: solid 1px #e6e6e6;
  background: #ffffff;
  padding: 0;
  text-align: center;
}
@media (min-width: 769px) {
  .header {
    position: sticky;
    top: 0;
    z-index: 400;
  }
}

.header__brand {
  display: grid;
  grid-template-areas: "logo menu";
  grid-template-columns: 20em 1fr;
  grid-gap: 0;
  align-items: center;
}
@media (min-width: 1441px) {
  .header__brand {
    grid-template-columns: 28em 1fr;
  }
}

.header__logo {
  grid-area: logo;
  font-weight: bold;
  vertical-align: middle;
}
@media (max-width: 1024px) {
  .header__logo {
    margin: 1em 0;
  }
}
.header__logo img {
  display: block;
  max-width: 100%;
  height: 2em;
}
@media (max-width: 1024px) {
  .header__logo img {
    height: 1.4em;
  }
}
@media (min-width: 1441px) {
  .header__logo img {
    height: 2.25em;
  }
}

.header__menu {
  grid-column: logo-start/menu-end;
}
@media (min-width: 1025px) {
  .header__menu {
    grid-area: menu;
    text-align: right;
  }
  .header__menu.collapse {
    display: block;
  }
}

@media (min-width: 1025px) {
  .header__menu {
    margin-top: 0.4em;
  }
}
.header__menu a {
  text-decoration: none;
  color: #5b7089;
  display: inline-block;
  box-shadow: none;
  transition: color 0.2s ease-out;
  margin-left: 2em;
  padding: 1.5em 0.1em;
}
.header__menu a:focus, .header__menu a:active {
  text-decoration: none;
  color: #3881bb;
}
@media (min-width: 769px) {
  .header__menu a:hover {
    text-decoration: none;
    color: #3881bb;
  }
}
.header__menu a:focus {
  outline: 0;
}
@media (max-width: 1024px) {
  .header__menu a {
    display: block;
    margin: 0;
    border-top: solid 1px #e6e6e6;
    padding: 1em;
  }
}
@media (min-width: 1441px) {
  .header__menu a {
    padding: 2.3em 0.1em;
  }
}
.header__menu a[aria-current=page] {
  color: #3881bb;
}
.header__menu a[aria-current=page]::after {
  width: 100%;
}
@media (max-width: 1024px) {
  .header__menu a[aria-current=page] {
    background: #3881bb;
    color: #ffffff;
  }
}

.menu-trigger {
  text-align: right;
}
@media (min-width: 1025px) {
  .menu-trigger {
    display: none;
  }
}
.menu-trigger a {
  position: relative;
  display: inline-block;
  margin-top: 0.2em;
  border-top: 2px solid #5b7089;
  width: 1.9375em;
  height: 1.5em;
}
.menu-trigger a[aria-expanded=true] {
  border-top: 0;
}
.menu-trigger a[aria-expanded=true]::before {
  transform: rotate(45deg) translate(3px, 4px);
}
.menu-trigger a[aria-expanded=true]::after {
  transform: rotate(-45deg) translate(2px, -3px);
}
.menu-trigger a::after, .menu-trigger a::before {
  position: relative;
  display: block;
  border-top: 2px solid #5b7089;
  width: 1.9375em;
  content: "";
}
.menu-trigger a::before {
  top: 0.5em;
}
.menu-trigger a::after {
  top: 1em;
}

.footer__container {
  border-top: solid 1px #e6e6e6;
  background: #ffffff;
  color: #5b7089;
}
.footer__container .section {
  padding: 1em 0;
}
.footer__container nav {
  text-align: right;
}
.footer__container nav a {
  text-decoration: underline;
  color: #5b7089;
  display: inline-block;
  margin: 0 0 0 1em;
}
.footer__container nav a:focus, .footer__container nav a:active {
  text-decoration: underline;
  color: #3881bb;
}
@media (min-width: 769px) {
  .footer__container nav a:hover {
    text-decoration: underline;
    color: #3881bb;
  }
}
.footer__container nav a:focus {
  outline: 0;
}

@media (min-width: 769px) {
  .footer__links {
    text-align: right;
  }
}

.dark {
  background: #003e6b;
}

.grey {
  background: #f2f5f7;
}

.white {
  background: #ffffff;
}

.link {
  text-decoration: none;
  color: #3881bb;
  cursor: pointer;
}
.link:focus, .link:active {
  text-decoration: none;
  color: #4e9bd8;
}
@media (min-width: 769px) {
  .link:hover {
    text-decoration: none;
    color: #4e9bd8;
  }
}
.link:focus {
  outline: 0;
}

@media (min-width: 1025px) {
  .profile {
    display: grid;
    grid-template-columns: 17em 1fr;
  }
}
.profile figure {
  margin: 0;
  padding: 0;
  text-align: center;
}
.profile figure img {
  display: inline-block;
}
@media (max-width: 1024px) {
  .profile figure img {
    max-height: 50vh;
  }
}
.profile h4 {
  margin: 0 0 0.5em;
}
.profile h5 {
  margin: 0 0 1.5em;
}
.profile__details {
  position: relative;
  z-index: 300;
  margin: -1em 0 0;
  background: #ffffff;
  text-align: left;
}
@media (min-width: 1025px) {
  .profile__details {
    margin: 5em 0 0 -1.5em;
  }
}

.feature {
  display: block;
  margin-top: 1em;
  padding-left: 2.25em;
  padding-right: 2.25em;
  text-align: center;
  color: inherit;
}
@media (min-width: 1025px) {
  .feature {
    border-right: solid 1px rgba(157, 159, 160, 0.5);
  }
}
.feature:last-child {
  border-right: 0;
}

.line {
  margin: 0;
  border-bottom: solid 1px #e6e6e6;
  padding: 1em 0;
}
.line:last-child {
  border-bottom: 0;
}
.line > * {
  margin-right: 0.5em;
  vertical-align: middle;
}

@media (max-width: 768px) {
  .optional {
    display: none;
  }
}

/* custom edits */
@media screen and (min-width: 600px) {
  p.said {
    min-height: 6em;
  }
  p.intro {
    min-height: 6.5em;
  }
}
/* ----------------------------------
   Cards
---------------------------------- */
/* Base card styling */
.card {
  padding: 1.5em;
  text-align: left;
}

.card--blue {
  background: #d6e8f6;
}

.card--green {
  background: #d1efe1;
}

.card--purple {
  background: #d9d8f6;
}

/* Icons */
.card__icon {
  width: 2.5em;
  display: block;
}

.card__icon--bottom {
  margin-top: 2em;
}

/* Titles */
.card__title {
  margin: 0.5em 0;
}

/* “Said” paragraph */
.said {
  margin-bottom: 2em;
}

/* Replace em‑dashes with round bullets */
.did-list {
  list-style: disc;
  padding-left: 1.2em !important; /* indent for bullets */
  margin: 1em 0 0 0; /* same top margin you used */
}

.did-list li {
  margin-bottom: 1em;
  color: #0e2c51;
  line-height: 1.5;
}

/* Hide on mobile (max-width 599px) */
@media screen and (max-width: 599px) {
  .hide-mobile {
    display: none !important;
  }
}
/* Hide on desktop (min-width 600px) */
@media screen and (min-width: 600px) {
  .hide-desktop {
    display: none !important;
  }
}
.ico-mobile::before {
  content: "\e000";
}

.ico-laptop::before {
  content: "\e001";
}

.ico-desktop::before {
  content: "\e002";
}

.ico-tablet::before {
  content: "\e003";
}

.ico-phone::before {
  content: "\e004";
}

.ico-document::before {
  content: "\e005";
}

.ico-documents::before {
  content: "\e006";
}

.ico-search::before {
  content: "\e007";
}

.ico-clipboard::before {
  content: "\e008";
}

.ico-newspaper::before {
  content: "\e009";
}

.ico-notebook::before {
  content: "\e00a";
}

.ico-book-open::before {
  content: "\e00b";
}

.ico-browser::before {
  content: "\e00c";
}

.ico-calendar::before {
  content: "\e00d";
}

.ico-presentation::before {
  content: "\e00e";
}

.ico-picture::before {
  content: "\e00f";
}

.ico-pictures::before {
  content: "\e010";
}

.ico-video::before {
  content: "\e011";
}

.ico-camera::before {
  content: "\e012";
}

.ico-printer::before {
  content: "\e013";
}

.ico-toolbox::before {
  content: "\e014";
}

.ico-briefcase::before {
  content: "\e015";
}

.ico-wallet::before {
  content: "\e016";
}

.ico-gift::before {
  content: "\e017";
}

.ico-bargraph::before {
  content: "\e018";
}

.ico-grid::before {
  content: "\e019";
}

.ico-expand::before {
  content: "\e01a";
}

.ico-focus::before {
  content: "\e01b";
}

.ico-edit::before {
  content: "\e01c";
}

.ico-adjustments::before {
  content: "\e01d";
}

.ico-ribbon::before {
  content: "\e01e";
}

.ico-hourglass::before {
  content: "\e01f";
}

.ico-lock::before {
  content: "\e020";
}

.ico-megaphone::before {
  content: "\e021";
}

.ico-shield::before {
  content: "\e022";
}

.ico-trophy::before {
  content: "\e023";
}

.ico-flag::before {
  content: "\e024";
}

.ico-map::before {
  content: "\e025";
}

.ico-puzzle::before {
  content: "\e026";
}

.ico-basket::before {
  content: "\e027";
}

.ico-envelope::before {
  content: "\e028";
}

.ico-streetsign::before {
  content: "\e029";
}

.ico-telescope::before {
  content: "\e02a";
}

.ico-gears::before {
  content: "\e02b";
}

.ico-key::before {
  content: "\e02c";
}

.ico-paperclip::before {
  content: "\e02d";
}

.ico-attachment::before {
  content: "\e02e";
}

.ico-pricetags::before {
  content: "\e02f";
}

.ico-lightbulb::before {
  content: "\e030";
}

.ico-layers::before {
  content: "\e031";
}

.ico-pencil::before {
  content: "\e032";
}

.ico-tools::before {
  content: "\e033";
}

.ico-tools-2::before {
  content: "\e034";
}

.ico-scissors::before {
  content: "\e035";
}

.ico-paintbrush::before {
  content: "\e036";
}

.ico-magnifying-glass::before {
  content: "\e037";
}

.ico-circle-compass::before {
  content: "\e038";
}

.ico-linegraph::before {
  content: "\e039";
}

.ico-mic::before {
  content: "\e03a";
}

.ico-strategy::before {
  content: "\e03b";
}

.ico-beaker::before {
  content: "\e03c";
}

.ico-caution::before {
  content: "\e03d";
}

.ico-recycle::before {
  content: "\e03e";
}

.ico-anchor::before {
  content: "\e03f";
}

.ico-profile-male::before {
  content: "\e040";
}

.ico-profile-female::before {
  content: "\e041";
}

.ico-bike::before {
  content: "\e042";
}

.ico-wine::before {
  content: "\e043";
}

.ico-hotairballoon::before {
  content: "\e044";
}

.ico-globe::before {
  content: "\e045";
}

.ico-genius::before {
  content: "\e046";
}

.ico-map-pin::before {
  content: "\e047";
}

.ico-dial::before {
  content: "\e048";
}

.ico-chat::before {
  content: "\e049";
}

.ico-heart::before {
  content: "\e04a";
}

.ico-cloud::before {
  content: "\e04b";
}

.ico-upload::before {
  content: "\e04c";
}

.ico-download::before {
  content: "\e04d";
}

.ico-target::before {
  content: "\e04e";
}

.ico-hazardous::before {
  content: "\e04f";
}

.ico-piechart::before {
  content: "\e050";
}

.ico-speedometer::before {
  content: "\e051";
}

.ico-global::before {
  content: "\e052";
}

.ico-compass::before {
  content: "\e053";
}

.ico-lifesaver::before {
  content: "\e054";
}

.ico-clock::before {
  content: "\e055";
}

.ico-aperture::before {
  content: "\e056";
}

.ico-quote::before {
  content: "\e057";
}

.ico-scope::before {
  content: "\e058";
}

.ico-alarmclock::before {
  content: "\e059";
}

.ico-refresh::before {
  content: "\e05a";
}

.ico-happy::before {
  content: "\e05b";
}

.ico-sad::before {
  content: "\e05c";
}

.ico-facebook::before {
  content: "\e05d";
}

.ico-twitter::before {
  content: "\e05e";
}

.ico-googleplus::before {
  content: "\e05f";
}

.ico-rss::before {
  content: "\e060";
}

.ico-tumblr::before {
  content: "\e061";
}

.ico-linkedin::before {
  content: "\e062";
}

.ico-dribbble::before {
  content: "\e063";
}

.sz-s {
  font-size: 1.2em;
}
img.sz-s {
  max-width: 100%;
  height: 1em;
}

.sz-m {
  font-size: 2em;
}
img.sz-m {
  max-height: 1.2em;
}

.sz-l {
  font-size: 3em;
}
img.sz-l {
  max-height: 1.4em;
}

.sz-xl {
  font-size: 5em;
}
img.sz-xl {
  max-height: 1.8em;
}

.sz-xxl {
  font-size: 10em;
}
img.sz-xxl {
  max-height: 2em;
}

img.sz-a4 {
  max-height: 80vh;
}

.border-top {
  border-top: solid 1px rgba(157, 159, 160, 0.5);
}

.border-right {
  border-right: solid 1px rgba(157, 159, 160, 0.5);
}

.border-bottom {
  border-bottom: solid 1px rgba(157, 159, 160, 0.5);
}

.border-left {
  border-left: solid 1px rgba(157, 159, 160, 0.5);
}

.c-blue {
  color: #3881bb;
}

hr {
  margin: 1em 0;
  border: 0;
  border-top: solid 2px #9d9fa0;
  opacity: 0.2;
}

.map {
  position: relative;
  z-index: 1;
  height: 600px;
}
@media (max-width: 1024px) {
  .map {
    height: 60vh;
  }
}

.intro {
  padding: 1em 0;
}
.intro h1,
.intro h2,
.intro h3,
.intro h4 {
  margin-bottom: 0;
}
.intro h1 + *,
.intro h2 + *,
.intro h3 + *,
.intro h4 + * {
  margin-top: 0;
}
.intro .copy {
  margin: 1em 0;
}

.photobg {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
@media (max-width: 768px) {
  .photobg {
    background-image: none !important;
  }
}

.overlay,
.overlay--dark {
  position: relative;
}
.overlay::after,
.overlay--dark::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}
.overlay .section,
.overlay--dark .section {
  position: relative;
  z-index: 2;
}

.overlay::after {
  background: linear-gradient(90deg, white 20%, rgba(255, 255, 255, 0.01) 100%);
}
.overlay .banner h1,
.overlay .banner h2,
.overlay .banner h3,
.overlay .banner h4,
.overlay .banner h5,
.overlay .banner p {
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.5);
}

.overlay--dark::after {
  background: linear-gradient(90deg, rgba(38, 38, 38, 0.7) 0%, rgba(38, 38, 38, 0) 100%);
}
.overlay--dark .banner h1,
.overlay--dark .banner h2,
.overlay--dark .banner h3,
.overlay--dark .banner h4,
.overlay--dark .banner h5,
.overlay--dark .banner p {
  text-shadow: 0 0 3px rgba(38, 38, 38, 0.5);
}

.bg-position--left-top {
  background-position: -20% -28em;
  background-size: 50em 50em;
}

.bg-position--left-bottom {
  background-position: left -40% bottom -22em;
  background-size: 53em 53em;
}

.bg-position--right-top {
  background-position: right -15% top -20em;
  background-size: 47em 47em;
}

.bg-position--right-bottom {
  background-position: right -10% bottom -22em;
  background-size: 47em 47em;
}

.bg-position--center-top {
  background-position: left 70% top -20em;
  background-size: 46em 46em;
}

.bg-position--center-bottom {
  background-position: left 65% bottom -24em;
  background-size: 44em 44em;
}

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