@charset "UTF-8";
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Opera < 12.1 */
@-o-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: local("Open Sans Light"), local("OpenSans-Light"), url("//cdn.grobmeier.de/fonts/open-sans-v15-latin/open-sans-v15-latin-300.woff2") format("woff2"), url("//cdn.grobmeier.de/fonts/open-sans-v15-latin/open-sans-v15-latin-300.woff") format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  src: local("Open Sans Regular"), local("OpenSans-Regular"), url("//cdn.grobmeier.de/fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff2") format("woff2"), url("//cdn.grobmeier.de/fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff") format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  src: local("Open Sans Bold"), local("OpenSans-Bold"), url("//cdn.grobmeier.de/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff2") format("woff2"), url("//cdn.grobmeier.de/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff") format("woff");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Regular"), local("Montserrat-Regular"), url("//cdn.grobmeier.de/fonts/montserrat-v12-latin/montserrat-v12-latin-regular.woff2") format("woff2"), url("//cdn.grobmeier.de/fonts/montserrat-v12-latin/montserrat-v12-latin-regular.woff") format("woff");
}
body {
  background-color: white;
  color: #1d1d1b;
  font-family: "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 300;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
  margin: 0;
}

h1, h2, h3, h4,
.c-grid__headline {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  color: #0073af;
}

html {
  box-sizing: border-box;
}

*:not(ul), *:not(ul):before, *:not(ul):after {
  box-sizing: inherit;
}

html, button, input, select, textarea {
  font-family: "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

a:not(.o-btn) {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
  color: inherit;
  text-decoration: none;
}

a.is_blue {
  color: #0073af;
  text-decoration: underline !important;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 400;
}

a:hover {
  text-decoration: none;
}

strong {
  font-weight: 700;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

p {
  padding-bottom: 20px;
  line-height: 1.5em;
}

button {
  background-color: transparent;
  border: 0;
  outline: none;
}

/*
  *
    *
      * CSS Helpers
    *
  *
*/
.u-text-center {
  text-align: center;
}

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

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

.u-opaque {
  background: black;
  opacity: 0.5;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Layout utilities - Flexbox/Grid system to replace PureCSS */
/* Container classes */
.l-flex, .flexed {
  display: flex;
}
.l-flex--wrap, .flexed {
  flex-wrap: wrap;
}
.l-flex--center, .flexed {
  justify-content: center;
}
.l-flex--between {
  justify-content: space-between;
}
.l-flex--end {
  justify-content: flex-end;
}
.l-flex--align-center {
  align-items: center;
}
.l-flex--column {
  flex-direction: column;
}

.l-grid {
  display: grid;
}
.l-grid--center {
  place-items: center;
}

/* Width utilities - Mobile first approach */
.u-w-full {
  width: 100%;
}

.u-w-1-2 {
  width: 50%;
}

.u-w-1-3 {
  width: 33.333%;
}

.u-w-2-3 {
  width: 66.667%;
}

.u-w-1-4 {
  width: 25%;
}

.u-w-3-4 {
  width: 75%;
}

/* Responsive width utilities - Large screens (≥1024px) */
@media (max-width: 1023px) {
  .u-w-lg-full {
    width: 100%;
  }
  .u-w-lg-1-2 {
    width: 50%;
  }
  .u-w-lg-1-3 {
    width: 33.333%;
  }
  .u-w-lg-2-3 {
    width: 66.667%;
  }
  .u-w-lg-1-4 {
    width: 25%;
  }
  .u-w-lg-3-4 {
    width: 75%;
  }
}
/* Responsive width utilities - Medium screens (≤767px) */
@media (max-width: 767px) {
  .u-w-md-full {
    width: 100%;
  }
  .u-w-md-1-2 {
    width: 50%;
  }
  .u-w-md-1-3 {
    width: 33.333%;
  }
  .u-w-md-2-3 {
    width: 66.667%;
  }
}
/* Six-pack layout utilities - 3 columns x 2 rows */
.l-sixpack {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
}
@media (max-width: 1023px) {
  .l-sixpack {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .l-sixpack {
    grid-template-columns: 1fr;
  }
}

/* Two column layout for contact/publications */
.l-twocol {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
}
@media (max-width: 767px) {
  .l-twocol {
    grid-template-columns: 1fr;
  }
}

/* Three column layout for publications */
.l-threecol {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
}
@media (max-width: 1023px) {
  .l-threecol {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .l-threecol {
    grid-template-columns: 1fr;
  }
}

/* Two column component with responsive behavior */
.two-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
}
@media (max-width: 1023px) {
  .two-column {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.two-column {
  /* Modifier: Left column takes 2/3, right takes 1/3 */
}
.two-column.left-heavy {
  grid-template-columns: 2fr 1fr;
}
@media (max-width: 1023px) {
  .two-column.left-heavy {
    grid-template-columns: 1fr;
  }
}
.two-column {
  /* Modifier: Left column takes 1/3, right takes 2/3 */
}
.two-column.right-heavy {
  grid-template-columns: 1fr 2fr;
}
@media (max-width: 1023px) {
  .two-column.right-heavy {
    grid-template-columns: 1fr;
  }
}
.two-column h4 {
  font-size: 32px;
  line-height: 1.2;
  margin-bottom: 1rem;
}
@media (max-width: 1023px) {
  .two-column h4 {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .two-column h4 {
    font-size: 24px;
  }
}
.two-column {
  /* Smaller text for publication details - only on publications pages */
}
.two-column .c-linklist p:last-of-type {
  font-size: 14px;
  color: inherit;
  opacity: 0.8;
}

/* Three columns component for publication lists */
.three-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 1023px) {
  .three-columns {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}
@media (max-width: 767px) {
  .three-columns {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
}
.three-columns li {
  padding: 0;
  margin: 0;
}

/* Override c-linklist to work with three-columns */
.c-linklist ul.three-columns {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media (max-width: 1023px) {
  .c-linklist ul.three-columns {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}
@media (max-width: 767px) {
  .c-linklist ul.three-columns {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
}

/* Fix arrow spacing for three-columns while keeping c-link formatting */
.c-linklist ul.three-columns > li.c-link {
  padding-left: 25px; /* Add space for arrow */
}
.c-linklist ul.three-columns > li.c-link:before {
  content: " ";
  position: absolute;
  display: block;
  background-image: url("/img/relaunch/chevron-right.svg");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: center;
  width: 17px;
  height: 17px;
  left: 5px;
  top: 3px;
}

/* Ensure different background colors work with two-column */
.o-section__body.o-section--blue .two-column {
  color: white;
}
.o-section__body.o-section--blue .two-column .c-linklist p:last-of-type {
  opacity: 0.9; /* Better contrast on blue background */
}

.o-section__body.o-section--even .two-column {
  color: #1d1d1b;
}

.o-section__body.o-section--odd .two-column {
  color: #1d1d1b;
}

.left {
  justify-self: start;
  margin: 0 auto;
}

.right {
  justify-self: start;
  margin: 0 auto;
}

.darkgray {
  background-color: darkslategray !important;
}

/* Special case: center images in left column */
.left img {
  display: block;
  margin: 0 auto;
}

/* Center social media icons in portrait sections */
.c-presentation__social {
  text-align: center;
}

/* Visibility utilities */
@media (max-width: 567px) {
  .u-hidden-s {
    display: none;
  }
  .pure-hidden-s {
    display: none;
  } /* Legacy compatibility */
}
@media (max-width: 767px) {
  .u-hidden-m {
    display: none;
  }
  .pure-hidden-m {
    display: none;
  } /* Legacy compatibility */
}
/*
  *
    *
      * Content
    *
  *
*/
.c-introduction-container {
  position: relative;
  padding: 40px 80px;
  color: #505f69;
  background-color: white;
  text-align: center;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 400;
  font-size: 28px;
}
.c-introduction-container * {
  max-width: 1200px;
  box-sizing: border-box;
  margin: auto;
}
.c-introduction-container h2 {
  text-transform: uppercase;
  color: #0073af;
  font-size: 32px;
  font-weight: 700;
  padding: 40px 20px;
}
.c-introduction-container p {
  padding: 0;
}
.c-introduction-container span {
  color: #0073af;
}

@media (max-width: 1023px) {
  .c-introduction-container {
    padding: 40px 20px;
    font-size: 22px;
  }
}
@media (max-width: 767px) {
  .c-introduction-container {
    padding: 40px 20px;
    font-size: 18px;
  }
}
.o-content {
  position: relative;
  max-width: 1200px;
  height: 100%;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  overflow: auto;
  box-sizing: border-box;
}

.o-section {
  position: relative;
}

.o-section__body {
  background-color: white;
  position: relative;
  padding: 80px;
}

@media (max-width: 1023px) {
  .o-section__body {
    padding: 20px;
  }
}
.o-section__header {
  display: block;
  position: relative;
  text-align: center;
  padding: 40px;
  background-color: white;
  font-size: 32px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  color: #0073af;
  font-weight: 700;
  text-transform: uppercase;
}

h1.o-section__header, h2.o-section__header, h3.o-section__header, h4.o-section__header, .c-services h2.o-section__header {
  margin: 0;
  font-size: 32px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  color: #0073af;
}

.o-section__header .o-btn {
  margin-left: auto;
  margin-right: auto;
}

/* Legacy flexed class - now uses new utility system */
.o-section--blue {
  background-color: #0073af;
  color: white;
}
.o-section--blue h1, .o-section--blue h2, .o-section--blue h3, .o-section--blue h4 {
  color: white;
}
.o-section--blue svg {
  width: 60px;
  height: 60px;
}
.o-section--blue path {
  fill: white;
}
.o-section--blue p {
  font-weight: 400;
  font-size: 22px;
}
.o-section--blue p a {
  font-weight: bold;
}
.o-section--blue p a:hover {
  color: #abcfd4;
}

.o-section--even,
.o-section--odd,
.o-section--white {
  color: #1d1d1b;
}
.o-section--even h4,
.o-section--odd h4,
.o-section--white h4 {
  color: #0073af;
}
.o-section--even svg,
.o-section--odd svg,
.o-section--white svg {
  width: 60px;
  height: 60px;
}
.o-section--even path,
.o-section--odd path,
.o-section--white path {
  fill: #0073af;
}
.o-section--even p,
.o-section--odd p,
.o-section--white p {
  font-weight: 400;
  font-size: 22px;
}

.o-section__author {
  font-weight: 700;
  text-transform: uppercase;
}
.o-section__author a {
  text-decoration: underline;
}
.o-section__author a:hover {
  color: #abcfd4;
}

/* Background utilities */
.u-bg-light,
.o-bg--even,
.o-section--even {
  background-color: #e1f5ff;
}

.u-bg-lighter,
.o-bg--odd,
.o-section--odd {
  background-color: #c8e6fa;
}

.u-bg-primary,
.o-bg--blue {
  background-color: #0073af;
}

@media (max-width: 767px) {
  .o-section__body {
    padding: 40px;
  }
  .o-section__body .o-content {
    padding: 0;
  }
}
/*
  *
    *
      * Buttons +  Inputs
    *
  *
*/
.o-btn {
  cursor: pointer;
  transform: translateY(0px);
  font-size: 16px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  padding: 10px 40px;
  margin: 20px 0;
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
  border: 2px solid transparent;
  transition-property: all;
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0, 1, 0.3s, 1);
}
.o-btn:active {
  transform: translateY(1px);
  outline: none;
}
.o-btn {
  /* Button variants */
}
.o-btn--primary {
  background-color: #0073af;
  border-color: #0073af;
  color: white;
}
.o-btn--primary:hover {
  background-color: #32a0e6;
  border-color: #32a0e6;
}
.o-btn--secondary, .o-btn--blue {
  background-color: transparent;
  border-color: #0073af;
  color: #0073af;
}
.o-btn--secondary:hover, .o-btn--blue:hover {
  background-color: #0073af;
  color: white;
}
.o-btn--accent, .o-btn--orange {
  background-color: #eb6900;
  border-color: #eb6900;
  color: white;
}
.o-btn--accent:hover, .o-btn--orange:hover {
  background-color: rgb(235.51, 105.2278723404, 0);
  border-color: rgb(235.51, 105.2278723404, 0);
}
.o-btn--white {
  background-color: transparent;
  border-color: white;
  color: white;
}
.o-btn--white:hover {
  background-color: white;
  color: #0073af;
}
.o-btn {
  /* Legacy class mappings for compatibility */
}
/* Input styling for compatibility */
.o-input--blue {
  color: #0073af;
  border: 2px solid #0073af;
}

.o-input {
  padding: 10px 40px;
  margin: 20px 0;
  display: inline-block;
}

/*
  *
    *
      * Main Menu
    *
  *
*/
.o-header {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  box-shadow: 0px 1px 3px rgba(100, 100, 100, 0.2);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background: white;
  padding: 0 80px;
  box-sizing: border-box;
  height: 80px;
}
.o-header .o-btn {
  font-weight: 700;
  font-size: 22px;
  padding: 5px;
  margin-top: 35px;
  margin-right: 5px;
  text-transform: none;
}

@media (max-width: 1023px) {
  .o-header {
    padding: 5px 20px;
    min-height: 70px;
    max-height: 5.2vh;
  }
  .o-header .o-btn {
    font-size: 16px;
    margin-top: 40px;
  }
}
.c-logo svg {
  width: 180px;
  margin: 16px 0 8px 0;
}

.o-language {
  width: 100%;
  text-align: right;
  margin-top: 12px;
}

.o-language > a {
  color: #0073af;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 12.8px;
  font-weight: bold;
}

.o-language > a:hover,
.o-language > a.o-languange--active {
  color: #82b4b2;
}

@media (max-width: 767px) {
  .o-language {
    display: none;
  }
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Opera < 12.1 */
@-o-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.o-navigation {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  float: right;
}

.o-navigation > li {
  position: relative;
  float: left;
  display: block;
  margin: 0 0 0 10px;
}

.o-navigation > li > a {
  display: block;
  padding: 6px 0;
  color: #0073af;
  font-weight: 700;
  font-size: 22px;
}

.o-navigation > li > a:focus, .o-navigation > li > a:active {
  color: #82b4b2;
}

.o-navigation > li > a:hover {
  color: #32a0e6;
  text-decoration: none;
}

.o-navigation > li > a:last-child {
  padding-right: 0;
}

.o-navigation {
  /** Sub Menu */
}

.o-navigation > li > ul {
  display: none;
  background: white;
  padding: 10px 20px 10px 20px;
  position: absolute;
  top: 45px;
  left: -20px;
  min-width: 200px;
}

.o-navigation > li > ul > li {
  padding: 10px 0;
}

.o-navigation > li > ul > li:hover > ul {
  display: inherit;
  background: rgba(255, 255, 255, 0.95);
}

.o-navigation > li > ul > li > a {
  font-size: 16px;
  color: #0073af;
}

.o-navigation > li > ul > li > a:hover {
  color: #32a0e6;
  text-decoration: none;
}

.o-navigation > li > ul.o-navigation__dropdown_open {
  display: block;
}

@media (max-width: 767px) {
  .o-navigation {
    display: none;
  }
}
@media (max-width: 1023px) {
  .o-navigation > li > a {
    padding: 6px 0;
    font-size: 16px;
  }
  .o-navigation > li > ul {
    top: 36px;
  }
}
@media (max-width: 1023px) {
  .c-logo svg {
    width: 160px;
    margin: 8px 0 4px 0;
  }
  .o-language {
    margin-top: 4px;
  }
}
.o-offcanvas-nav {
  overflow: auto;
  position: fixed;
  background: white;
  z-index: 1001;
  width: 100%;
  max-width: 63vh;
  height: 100%;
  top: 70px;
  left: -64vh;
}
.o-offcanvas-nav > ul {
  padding: 20px;
  list-style: none;
  color: #0073af;
}
.o-offcanvas-nav ul > li,
.o-offcanvas-nav ul ul li {
  list-style: none;
  color: #0073af;
  position: relative;
  padding: 10px 0;
}
.o-offcanvas-nav ul ul {
  padding: 10px;
}
.o-offcanvas-nav ul ul li {
  padding: 0;
}
.o-offcanvas-nav ul ul li a {
  font-size: 12.8px;
}
.o-offcanvas-nav a {
  font-weight: bold;
}

.o-nav-toggle {
  margin-top: 21px;
  float: right;
  display: none;
  z-index: 999;
  padding: 0.5em 0 0;
  cursor: pointer;
  -webkit-transition: padding-top 0.6s cubic-bezier(0.1, 0.01, 0.3, 1);
  transition: padding-top 0.6s cubic-bezier(0.1, 0.01, 0.3, 1);
}
.o-nav-toggle:hover {
  transition: top, 0.5s, ease-in-out;
}
.o-nav-toggle:hover .o-veggieburger:before {
  top: -9px;
}
.o-nav-toggle:hover .o-veggieburger:after {
  top: 9px;
}

@media (max-width: 767px) {
  .o-nav-toggle {
    display: block;
  }
}
@media (max-width: 567px) {
  .o-nav-toggle {
    display: block;
  }
}
.o-veggieburger {
  width: 24px;
  height: 2px;
  background: #0073af;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.o-veggieburger:before {
  top: -8px;
}
.o-veggieburger:after {
  top: 8px;
}
.o-veggieburger:after, .o-veggieburger:before {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  background: #0073af;
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.js-nav-open .o-veggieburger {
  background: none !important;
}
.js-nav-open .o-veggieburger:after {
  top: 0 !important;
  background: #0073af !important;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.js-nav-open .o-veggieburger:before {
  top: 0 !important;
  background: #0073af !important;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: 0;
  background-color: #000000;
}

/*
  *
    *
      * slider
    *
  *
*/
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Opera < 12.1 */
@-o-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.atmosphere-text {
  margin-top: 6vh;
  background-color: gray;
}

.c-atmosphere-container, .blog-atmosphere-container {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  position: relative;
  overflow: hidden;
  margin-top: 5vh;
  box-sizing: border-box;
  padding: 0;
  height: 70vh;
  background: black no-repeat fixed 50% 50%;
}

.blog-atmosphere-container {
  height: 50vh;
  display: flex;
  align-items: end;
}

.blog-atmosphere-container .c-atmosphere-items {
  width: 100%;
}

.blog-atmosphere-content {
  align-items: center;
  display: flex;
}

.blog-atmosphere-body {
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 2em;
  margin: 0;
  text-align: center;
}

.c-atmosphere-post {
  height: inherit;
}

@media (max-width: 1023px) {
  .c-atmosphere-container {
    margin-top: 70px;
    height: 94.8vh;
  }
}
.c-atmosphere-content {
  background-attachment: fixed !important;
  width: 100%;
  height: 100%;
  padding: 0 45px;
  background-image: url("/img/splash/gs_website_slider_01.jpg");
  display: flex;
  flex-direction: column;
}

.c-atmosphere-content .c-atmosphere-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.c-atmosphere-content .c-atmosphere-slogan {
  font-size: 22px;
  color: #32a0e6;
  font-weight: 700;
  text-transform: uppercase;
  white-space: normal;
  padding: 0 20px;
}

.c-atmosphere-content .c-atmosphere-body {
  color: white;
  font-weight: 700;
  white-space: normal;
  margin: 0;
  width: 100%;
  font-size: 46px;
  padding: 0 20px;
}

.c-atmosphere-content .c-atmosphere-items {
  position: absolute;
  top: 45%;
  transform: translateY(-50%);
  padding: 0 40px 0 15px;
  display: none;
}

.c-atmosphere-post .c-atmosphere-content .c-atmosphere-items {
  top: 50%;
}

@media (max-width: 1023px) {
  .c-atmosphere-content {
    background-attachment: local !important;
  }
  .c-atmosphere-content .c-atmosphere-slogan {
    padding: 40px 20px;
  }
  .c-atmosphere-content .c-atmosphere-body {
    font-size: 28px;
  }
  .c-atmosphere-content .c-atmosphere-items {
    padding: 0 60px 0 20px;
  }
}
@media (max-width: 767px) {
  .c-atmosphere-content .c-atmosphere-items {
    padding: 0 40px 0 20px;
  }
}
@media (max-width: 567px) {
  .c-atmosphere-content .c-atmosphere-items {
    padding: 0;
    max-width: 75%;
  }
  .c-atmosphere-content .c-atmosphere-slogan {
    padding: 0 0 20px 0;
  }
  .c-atmosphere-content .c-atmosphere-body {
    padding: 0;
    font-size: 22px;
  }
  .c-atmosphere-content .c-slide__button {
    margin-left: 0;
  }
}
.c-slider__signet {
  text-align: center;
  cursor: pointer;
  padding: 30px;
}

.c-slider__signet svg {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
  width: 70px;
  height: 70px;
}

.c-slider__signet path {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
}

.c-slider__signet:hover #signet__outer {
  fill: white;
}

.c-slider__signet:hover #signet__inner {
  fill: #32a0e6;
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Opera < 12.1 */
@-o-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.c-blue-action-container {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  text-align: center;
  background-color: #0073af;
  color: white;
  position: relative;
}

.c-blue-action-content {
  padding: 30px 0 30px 0;
  font-weight: 400;
  font-size: 22px;
}

.c-blue-action-content svg path {
  fill: white;
}

.c-blue-action-content svg {
  width: 60px;
  height: 60px;
}

.c-blue-action-content .c-slider-button {
  z-index: 1000;
  position: absolute;
  top: 45%;
}

.c-blue-action-content .c-action p, .c-blue-action-content .c-action h2 {
  color: white;
  padding-bottom: initial;
}

.c-blue-action-content .c-action h2 {
  text-transform: uppercase;
}

.c-blue-action-content .c-action {
  position: relative;
  max-width: 1200px;
  height: 100%;
  width: 100%;
  margin: 0 auto;
  padding: 0 80px;
  overflow: auto;
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .c-blue-action-content .o-action {
    font-size: 20px;
  }
}
.presentations-container {
  width: 100%;
  display: flex;
  flex-direction: row;
}

.presentation-container {
  flex: 0.35;
  letter-spacing: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.presentation-container > p {
  text-align: center;
}

.presentation-link {
  color: #0073af !important;
  text-decoration: underline !important;
}

.presentation-header-container {
  width: 100%;
  letter-spacing: 0px;
}

@media (max-width: 770px) {
  .presentations-container {
    flex-direction: column;
  }
}
.c-slide__caption {
  position: fixed;
  padding: 0 80px;
  right: 0;
  left: 0;
  -webkit-animation: fadein 2s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadein 2s; /* Firefox < 16 */
  -ms-animation: fadein 2s; /* Internet Explorer */
  -o-animation: fadein 2s; /* Opera < 12.1 */
  animation: fadein 2s;
}

@media (max-width: 1023px) {
  .c-slide__caption {
    padding: 0 20px;
  }
}
.c-slider-container {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  padding: 160px 20px;
  min-height: 600px;
  background: 50% 50%/cover no-repeat fixed;
}
.c-slider-container:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.c-slide {
  position: absolute;
  left: 0;
  top: 0;
  text-align: left;
  width: 100%;
  overflow: hidden;
  z-index: 1;
}
.c-slide > img {
  width: 100%;
}

.c-slide__slogan {
  font-size: 22px;
  color: #32a0e6;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
  white-space: normal;
  padding-bottom: 20px;
}

.c-slide__body {
  color: white;
  font-weight: 700;
  white-space: normal;
  margin: 0;
  width: 100%;
  font-size: 46px;
  padding: 0;
}

.c-slide__button {
  background: transparent;
  margin-bottom: 0;
}

.c-slide__slogan,
.c-slide__body {
  max-width: 1200px;
  margin: 0 auto;
}

.c-slide__button {
  margin-left: 20px;
}

@media (max-width: 1279px) {
  .c-slide > img {
    width: auto;
    height: 100%;
  }
}
@media (max-width: 1023px) {
  .c-slide__body {
    font-size: 32px;
  }
}
@media (max-width: 767px) {
  .c-slide__caption {
    padding: 0 20px;
  }
  .c-slide__slogan,
  .c-slide__body {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 567px) {
  .c-slide__caption {
    padding: 40px 20px !important;
  }
  .c-slide__body {
    font-size: 22px;
  }
}
/*
  *
    *
      * Book Section
    *
  *
*/
.c-presentation p {
  font-size: 16px;
  padding-right: 20px;
  font-weight: 400;
}

p.c-presentation__description {
  font-size: 20px;
  line-height: 1.5em;
  padding-bottom: 0;
}

.c-presentation h4 {
  font-size: 32px;
  margin: 20px 0 40px 0;
}

.c-presentation--small p.c-presentation__description {
  font-size: 16px;
  max-width: 350px;
  margin: 0 auto;
}
.c-presentation--small h4 {
  font-size: 22px;
  margin: 10px 0;
}
.c-presentation--small .c-presentation__image--person {
  max-width: 250px !important;
}

.c-presentation__author,
.c-presentation__alternative {
  display: block;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  color: #abcfd4;
  text-transform: uppercase;
}

.c-presentation__image,
.c-presentation--center {
  text-align: center;
}

.c-presentation__image--person {
  max-width: 70% !important;
  padding: 0 !important;
  display: block;
  margin: 0 auto 20px auto;
}

.c-presentation__social {
  margin-top: 40px;
}

.c-presentation__image--round {
  border-radius: 100%;
  border: 5px solid white;
}

.c-presentation--references .o-content {
  display: flex;
  overflow: hidden;
}
.c-presentation--references div[class^=u-w-], .c-presentation--references div[class*=" u-w-"] {
  flex: 1;
}

.c-presentation__image {
  margin-bottom: 20px;
}

.c-presentation__image > img {
  max-width: 100%;
  padding: 0 20px;
  height: auto;
}

.c-presentation__image--references > img {
  width: 100%;
  height: auto;
  overflow: hidden;
}

.c-presentation__image--references {
  position: relative;
}

.c-tabs.c-presentation__image-tabs {
  margin: auto;
}

.c-presentation__image-tabs.c-tabs > li > a {
  width: 12px;
  height: 12px;
  padding: 0;
  border-radius: 50%;
  background-color: #505f69;
}

.c-presentation__image-tabs.c-tabs > li > a:hover {
  background-color: #32a0e6;
}

.c-presentation__image-tabs.c-tabs > li > a.is-selected {
  background-color: #0073af;
}

.c-team .c-presentation__description {
  padding: auto 20px;
}
.c-team .c-presentation--center {
  margin-bottom: 40px;
}

@media (max-width: 1023px) {
  .c-presentation {
    text-align: center;
  }
  .c-presentation p {
    padding-right: 0;
  }
  .c-presentation--references .o-content {
    display: block;
  }
  .c-presentation--references .c-tabs.c-presentation__image-tabs {
    position: relative;
    margin: 20px auto;
    left: auto;
  }
}
@media (max-width: 567px) {
  .c-presentation__image--references > img {
    width: 100%;
    height: auto;
    overflow: hidden;
  }
}
/*
  *
    *
      * image/icons/text grid
    *
  *
*/
.c-grid {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  min-height: 300px;
  padding: 40px;
}
.c-grid a {
  text-decoration: none;
}

.c-grid.c-grid--dbl {
  height: 700px;
}

.c-grid.c-grid--dbl > img {
  display: block;
  max-height: 50%;
  max-width: 100%;
  margin: 20px auto;
}

.c-grid--image,
.c-grid--postimage {
  padding: 0;
  overflow: hidden;
}

.c-grid.c-grid--blue .c-grid__headline,
.c-grid.c-grid--blue .c-grid__body,
.c-grid.c-grid--blue .c-grid__date,
.c-grid.o-bg--blue .c-grid__headline,
.c-grid.o-bg--blue .c-grid__body,
.c-grid.o-bg--blue .c-grid__date {
  color: white;
}
.c-grid.c-grid--blue path,
.c-grid.o-bg--blue path {
  fill: white;
}
.c-grid.c-grid--blue .c-grid__subhead,
.c-grid.o-bg--blue .c-grid__subhead {
  color: #abcfd4;
}

.c-grid.c-grid--highlight {
  text-align: center;
}
.c-grid.c-grid--highlight .c-grid__headline,
.c-grid.c-grid--highlight .c-grid__body,
.c-grid.c-grid--highlight .c-grid__date {
  color: white;
}
.c-grid.c-grid--highlight .c-grid__subhead {
  color: #0073af;
}
.c-grid.c-grid--highlight .o-btn {
  margin-top: 250px;
}

.c-grid path,
.c-grid__headline {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
}

.c-grid svg {
  width: 50px;
  height: 50px;
}

.c-grid.c-grid--dbl svg {
  width: 100px;
  height: 100px;
  margin: 20px 0;
}

.c-grid path {
  fill: #0073af;
}

.c-grid__body {
  padding: 0 40px;
}

.c-grid--icon .c-grid__body {
  padding: 0 10px;
}

.c-grid > a:hover path {
  fill: #32a0e6;
}
.c-grid > a:hover .c-grid__headline {
  color: #32a0e6;
}

.c-grid__image {
  height: 100%;
  width: 100%;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  display: block;
  position: relative;
}

.c-grid--postimage {
  padding: 0 !important;
}

.c-grid--postimage-wrapper {
  width: 100%;
  height: 100%;
  -webkit-transition: -moz-transform 2s ease-out;
  -moz-transition: -webkit-transform 2s ease-out;
  -o-transition: -o-transform 2s ease-out;
  transition: transform 2s ease-out;
}

.c-grid--postimage-wrapper:hover {
  transform: scale(1.1);
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}

.c-grid,
.c-grid--image {
  text-align: center;
}

.c-grid--image .c-grid__headline {
  padding-top: 80px;
}

.c-grid__headline {
  display: block;
  padding: 20px 0;
  font-size: 22px;
  font-weight: 700;
  color: #0073af;
  text-transform: uppercase;
}

.c-grid--icon .c-grid__headline {
  padding: 10px 0 0 0;
}

.c-grid__subhead {
  text-transform: uppercase;
  font-weight: 700;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.c-grid--blog {
  text-align: left;
}

.c-date {
  font-weight: 700;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.c-hashs-label,
.c-hash {
  font-weight: 700;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  text-transform: uppercase;
}

.c-hashs-label {
  margin-right: 10px;
}

.c-hash {
  color: #abcfd4 !important;
  margin-right: 10px;
}

.c-grid__overlay {
  transition-property: all;
  transition-duration: 1s;
  transition-timing-function: cubic-bezier(0, 1, 1s, 1);
  position: absolute;
  box-sizing: border-box;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.95);
  opacity: 0;
}

.c-grid__overlay {
  padding: 20px;
}

#mce-EMAIL {
  color: #000;
}

.sidebar .sidebar-info,
.sidebar .updates {
  margin: 5% 2em 0;
}

.c-grid--image:hover .c-grid__overlay {
  opacity: 1;
}

.c-sidebar form input, .c-sidebar form button,
.c-grid form input,
.c-grid form button,
.o-section form input,
.o-section form button {
  display: block;
  margin: 20px auto;
  width: 250px;
  box-sizing: border-box;
}

.c-grid--unregular .c-grid {
  height: 300px;
}
.c-grid--unregular .c-grid--dbl {
  height: 600px;
}

@media (max-width: 1023px) {
  .c-grid {
    height: auto;
    min-height: 200px;
    padding: 20px;
  }
  .c-grid-references {
    min-height: 600px;
  }
  .c-grid__image {
    min-height: 100%;
    width: auto;
  }
  .c-grid.c-grid--dbl {
    height: 600px;
  }
  .c-grid.c-grid--dbl img {
    max-height: 250px;
  }
  .c-grid.u-w-md-1-2.o-bg--odd,
  .c-grid.u-w-md-1-2.o-bg--even {
    background-color: #c8e6fa;
  }
  .c-grid.u-w-md-1-2:nth-of-type(1),
  .c-grid.u-w-md-1-2:nth-of-type(4),
  .c-grid.u-w-md-1-2:nth-of-type(5) {
    background-color: #e1f5ff;
  }
}
@media (max-width: 767px) {
  .c-grid {
    height: auto;
    padding: 20px;
  }
  .c-grid.c-grid--blog {
    text-align: center;
    height: auto;
  }
  .c-grid--image {
    min-height: 250px;
  }
  .c-grid--image .c-grid__headline {
    padding-top: 20px;
  }
  .c-grid.c-grid--dbl {
    height: 600px;
  }
  .c-grid__overlay {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.7);
  }
  .c-grid__overlay .c-grid__headline {
    color: white !important;
  }
  .c-grid.u-w-md-1-2.o-bg--even {
    background-color: #e1f5ff;
  }
  .c-grid.u-w-md-1-2.o-bg--odd {
    background-color: #c8e6fa;
  }
}
@media (max-width: 567px) {
  .c-grid--image {
    min-height: 200px;
  }
  .c-grid--unregular .c-grid {
    height: auto;
  }
  .c-grid--unregular .c-grid--dbl {
    height: auto;
  }
}
/*
  *
    *
      * Call to action after section
    *
  *
*/
.o-cta {
  display: block;
  text-align: center;
  padding: 40px 0;
  font-weight: 700;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.o-cta--small {
  padding: 0 20px;
}

.o-cta svg {
  width: 50px;
  height: 50px;
}

.o-cta p {
  font-size: 22px;
  font-weight: 700;
  padding-bottom: 0px;
}

.o-cta__headline {
  text-transform: uppercase;
  font-size: 32px;
}

.o-cta--blue {
  background-color: #0073af;
  color: white;
}
.o-cta--blue path {
  fill: white;
}

/*
  *
    *
      * Media next to text
    *
  *
*/
.c-media-left {
  padding: 0 10px;
}

.c-media-right {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-word;
  word-break: break-all;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
  padding-right: 10px;
}

.c-media-left,
.c-media-right {
  display: table-cell;
  vertical-align: top;
}

/*
  *
    *
      * Linklist
    *
  *
*/
.c-linklist {
  padding: 20px;
}

.c-linklist ul, .c-linklist ol {
  display: inline-block;
}

.c-link {
  padding: 10px 40px 10px 20px;
  box-sizing: border-box;
}

.c-bullet {
  padding-left: 20px;
  font-size: 20px;
}

.c-link a:hover {
  color: #32a0e6;
  text-decoration: none;
}

.c-link span {
  display: block;
}

.c-link a {
  color: #0073af;
  text-decoration: underline;
}

.c-linklist ul > li.c-link,
.c-bulletlist ul > li.c-bullet {
  position: relative;
}

.c-linklist ul > li.c-link:before,
.c-bulletlist ul > li.c-bullet:before {
  content: " ";
  position: absolute;
  display: block;
  float: left;
  background-image: url("/img/relaunch/chevron-right.svg");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  height: 17px;
  width: 17px;
}

.c-linklist ul > li.c-link:before {
  left: 0px;
  top: 13px;
}

.c-bulletlist ul > li.c-bullet:before {
  left: 0px;
  top: 6px;
}

@media (max-width: 767px) {
  .c-linklist ul, .c-linklist ol {
    padding-left: 0em;
  }
}
/*
  *
    *
      * linklist tabs
    *
  *
*/
.c-tabs {
  margin: 0;
  padding: 40px 0 20px 0;
}

.c-tabs > li {
  display: inline;
}

.c-tabs > li > a {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
  display: inline-block;
  padding: 0.5em 0.5em;
  text-decoration: none;
  color: #82b4b2;
  text-transform: uppercase;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  font-size: 12.8px;
}

.c-tabs > li > a:hover {
  color: #32a0e6;
}

.c-tabs > li > a.is-selected {
  color: #0073af;
}

.c-archive .c-link a {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  word-break: break-all;
  word-wrap: break-word;
  width: 100%;
  font-size: 22px;
  font-weight: 400;
  text-decoration: none;
}

/*
  *
    *
      * social icons
    *
  *
*/
.c-social {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 5px;
  margin: 5px;
  border-radius: 5px;
}
.c-social svg {
  width: 25px;
  height: 25px;
}
.c-social {
  /* Size variants */
}
.c-social--small {
  width: 30px;
  height: 30px;
}
.c-social--small svg {
  width: 20px;
  height: 20px;
}
.c-social {
  /* Style variants */
}
.c-social--white {
  background-color: white;
}
.c-social--white path {
  fill: #0073af;
}
.c-social--white:hover {
  background-color: #abcfd4;
}
.c-social--outlined {
  border: 2px solid #0073af;
  background-color: transparent;
}
.c-social--outlined path {
  fill: #0073af;
}
.c-social--outlined:hover {
  background-color: #0073af;
}
.c-social--outlined:hover path {
  fill: white;
}
.c-social--blue {
  background-color: #0073af;
}
.c-social--blue path {
  fill: white;
}
.c-social--blue:hover {
  background-color: #32a0e6;
}

/*
  *
    *
      * Sidebar
    *
  *
*/
.c-sidebar {
  text-align: center;
  float: right;
}

.c-sidebar__headline {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  color: #0073af;
  font-size: 22px;
  font-weight: 700;
  transform: uppercase;
  margin-bottom: 20px;
}

.c-sidebar a:not(.c-social) {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  color: #0073af;
  text-decoration: underline;
  font-weight: 700;
}

.c-sidebar__social {
  margin: 0 auto;
  max-width: 250px;
  display: flex;
  justify-content: space-between;
}

/*
  *
    *
      * Blog Post
    *
  *
*/
.c-blog__teaser,
.c-blog p:first-child {
  color: #505f69;
  font-size: 22px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 400;
}

.c-blog h2,
.c-blog h3,
.c-blog h4 {
  color: #0073af;
}

.c-blog p {
  font-size: 20px;
}

.c-blog h2 {
  font-size: 32px;
  padding: 5px 0;
  margin-bottom: 10px;
}

.c-blog h3 {
  font-size: 26px;
  padding: 5px 0;
  margin-bottom: 10px;
}

.c-blog h4 {
  font-size: 20px;
  margin-bottom: 10px;
}

.c-blog a {
  color: #32a0e6;
}

.c-blog a:hover {
  color: #0073af;
  text-decoration: underline;
}

.c-date,
.c-blog__author {
  display: block;
}

.c-blog__copy {
  font-size: 20px;
}

.c-blog__copy a:hover {
  color: #32a0e6;
  text-decoration: none;
}

.c-blog__copy a {
  color: #0073af;
  text-decoration: underline;
}

.c-blog .c-bullet {
  margin-bottom: 20px;
}

.c-blog blockquote {
  margin: 0;
}

.c-blog blockquote p {
  position: relative;
  margin: 40px 0;
  padding: 40px 20px 40px 80px;
  font-size: 22px !important;
  color: #0073af !important;
  font-weight: 400 !important;
  border-top: 2px solid #0073af !important;
  border-bottom: 2px solid #0073af !important;
}

.c-blog blockquote p:before {
  position: absolute;
  left: 5px;
  top: 40px;
  content: " ";
  background-image: url("img/relaunch/quote-right.svg");
  background-size: 50px 50px;
  background-repeat: no-repeat;
  height: 50px;
  width: 50px;
  padding: 0 10px;
}

.c-blog blockquote span {
  font-size: 16px;
  margin-top: 10px;
  text-transform: uppercase;
  display: block;
  margin-top: 10px;
  font-weight: 700;
}

.c-blog blockquote span a {
  text-decoration: underline;
  color: #0073af;
}

.c-blog blockquote span a:hover {
  text-decoration: none;
  color: #32a0e6;
}

.c-blog__cite,
.c-blog__cite-author {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  color: #0073af;
}

.c-blog__cite-author {
  display: block;
  padding-top: 20px;
  font-size: 16px;
  font-weight: 700;
}

.c-blog__cite-author a {
  text-decoration: underline;
  color: #0073af;
}

.c-blog__cite-author a:hover {
  text-decoration: none;
  color: #32a0e6;
}

.c-blog pre.highlight {
  background: #e1f5ff;
  padding: 20px;
  margin: 20px 0;
  margin-bottom: 40px;
  font-family: "Lucida Console", Monaco, monospace;
}

.c-blog img {
  max-width: 100%;
  display: block;
}

.c-blog img + em,
.c-blog img + em + em {
  display: inline-block;
  font-size: 16px;
  color: #505f69;
  font-style: normal;
}

.c-blog img + em {
  width: 58%;
}

.c-blog img + em + em {
  width: 40%;
  text-align: right;
}

.c-blog__image-caption {
  color: #505f69;
  font-size: 12.8px;
}

.c-blog ul {
  list-style: disc;
  padding-left: 2.5em;
  font-size: 20px;
  margin: auto;
}

@media (max-width: 767px) {
  .c-blog img + em,
  .c-blog img + em + em {
    width: 100%;
    display: block;
  }
  .c-blog img + em + em {
    text-align: left;
  }
}
.c-services {
  position: relative;
  background: #1d1d1b;
  background: url("/img/splash/gs_website_slider_01.jpg") no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  text-align: center;
}
.c-services h2.o-section__header {
  margin-bottom: 40px;
}
.c-services .c-services-item {
  text-align: center;
  font-size: 22px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  color: white;
  padding: 20px 0;
  word-wrap: break-word;
  white-space: normal;
}
.c-services .c-services-item a:hover {
  color: #abcfd4;
}
.c-services .c-services-item {
  text-transform: uppercase;
}
.c-services .c-services-item svg {
  display: block;
  width: 50px;
  height: 50px;
  margin: 0 auto 10px;
}
.c-services .c-services-item svg path {
  fill: white;
}

/*
  *
    *
      * Carousel styles
    *
  *
*/
.c-carousel {
  position: relative;
  max-width: 100%;
  height: 100%;
  overflow: hidden;
}

.c-carousel-inner {
  overflow: hidden;
  max-width: 100%;
  position: relative;
  height: 100%;
}

.c-carousel-content {
  transition-property: all;
  transition-duration: 0.7s;
  transition-timing-function: cubic-bezier(0, 1, 0.7s, 1);
  margin: 0;
  padding: 0;
  font-size: 0;
  overflow-x: hidden;
  white-space: nowrap;
}

.c-carousel-item {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-block;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  color: white;
}

.c-carousel-button {
  z-index: 10;
  position: absolute;
  top: 50%;
  margin-top: -80px;
  border: none;
  visibility: hidden;
}

.c-carousel-button:active {
  transform: translateY(1px);
  outline: none;
}

.c-carousel-prev {
  left: 10px;
}

.c-carousel-next {
  right: 10px;
}

.c-carousel-button {
  visibility: visible;
}

.offscreen {
  position: absolute;
  left: -9999px;
}

.c-carousel__img {
  display: none;
}

.c-carousel--services,
.c-carousel--customer {
  background: #1d1d1b;
  background: url("img/splash/gs__slider_small_01.jpg") no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.c-carousel--services .c-carousel-item__inner {
  text-align: center;
  font-size: 22px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  color: white;
  padding: 20px 10px;
  word-wrap: break-word;
  white-space: normal;
  margin: 0 20px;
  text-transform: uppercase;
}
.c-carousel--services .c-carousel-item__inner svg {
  display: block;
  margin: 0 auto;
  width: 50px;
  height: 50px;
  margin-bottom: 10px;
}

.c-carousel-item {
  padding: 160px 0 80px 0;
}

.c-carousel-item__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.c-carousel--services .c-carousel-button path,
.c-carousel--services .c-carousel-item__inner path {
  fill: white;
}

.c-carousel--review .c-carousel-button svg {
  display: block;
  margin: 0 auto;
  width: 30px;
  height: 30px;
  margin-bottom: 10px;
}
.c-carousel--review p,
.c-carousel--review .o-section__author {
  display: block;
  white-space: normal;
}
.c-carousel--review p {
  font-size: 22px;
}
.c-carousel--review .o-section__author {
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
}
.c-carousel--review .o-section__author a {
  text-decoration: underline;
}
.c-carousel--review .o-section__author a:hover {
  color: #abcfd4;
}

@media (max-width: 767px) {
  .c-carousel {
    position: relative;
  }
  .c-carousel-button svg {
    width: 20px;
    height: 20px;
  }
  .c-carousel-button.c-carousel-prev {
    left: 0px;
  }
  .c-carousel-button.c-carousel-next {
    right: 0px;
  }
}
@media (max-width: 567px) {
  .c-carousel--review .o-content {
    padding: 0;
  }
  .c-carousel--review .o-content p,
  .c-carousel--review .o-content .o-section__author {
    font-size: 16px;
  }
}
/*
  *
    *
      * Footer
    *
  *
*/
.o-footer {
  position: relative;
}

.o-footer__contact-box path {
  fill: #0073af;
}

.o-footer__contact-box svg {
  width: 50px;
  height: 50px;
}

.o-footer__contact-body,
.o-footer__signet {
  padding: 40px 40px;
}

.o-footer__contact-body {
  background-color: #e1f5ff;
}

.o-footer__contact-box {
  margin-bottom: 40px;
}

.o-footer__contact-box .c-media-right {
  padding-top: 5px;
}

.o-footer__contact-box--last .c-media-left {
  padding-right: 20px;
}

.o-footer__signet {
  color: white;
  margin: 0 auto;
  position: relative;
  cursor: pointer;
}

.o-footer__signet svg {
  width: 90px;
  height: 90px;
}

.o-footer__signet path {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0.5s, 1);
}

.o-footer__signet svg:hover #signet-footer__outer {
  fill: #abcfd4;
}

.o-footer__nav > ul > li {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
}

.o-footer__nav ul li,
.o-footer__subnav ul li {
  display: inline-block;
  padding: 4px 0 5px 0;
}

.o-footer__subnav ul li {
  padding: 4px 0 10px 10px;
}

.o-footer__label {
  width: 65px;
  display: inline-block;
}

.o-footer__nav {
  color: white;
}

.o-footer__nav > ul {
  text-align: center;
  display: block;
  padding-bottom: 20px;
}

.o-footer__nav ul ul {
  padding-top: 10px;
  width: 100%;
  text-align: center;
  top: 40px;
  left: 0;
}

.o-footer__nav ul ul li {
  font-size: 12.8px;
  font-weight: 700;
  width: auto;
  display: block;
  text-transform: none;
}

.o-footer__nav li {
  position: relative;
  padding: 10px;
  font-weight: 400;
  width: 15%;
}

.o-footer__nav li {
  vertical-align: top;
}

.o-footer__subnav {
  color: white;
  padding: 20px 0;
  border-top: 2px solid white;
  padding-bottom: 15px;
}

.o-footer__subnav span,
.o-footer__subnav ul {
  font-size: 12.8px;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
}

.o-footer--launch {
  color: white;
}
.o-footer--launch .o-footer__contact-box path {
  fill: white;
}
.o-footer--launch .o-footer__contact-body {
  background-color: #0073af;
  padding: 80px 40px 20px;
}

@media (max-width: 1023px) {
  .o-footer__contact-header,
  .o-footer__contact-body,
  .o-footer__signet {
    padding: 20px 10px;
  }
  .o-footer__contact-box {
    text-align: center;
  }
  .o-footer__contact-box .c-media-left,
  .o-footer__contact-box .c-media-right {
    display: block;
    padding: 0 10px;
    text-align: center;
  }
  .o-footer__contact-box svg {
    margin-bottom: 10px;
  }
  .o-footer__label {
    display: block;
    width: auto;
    margin: 0 0 10px 0;
  }
  .o-footer__label:not(:first-child) {
    margin-top: 10px;
  }
  .o-footer__nav ul li {
    text-align: center;
    display: block;
    width: auto;
  }
  .o-footer__nav ul ul {
    display: none;
  }
  .o-footer__subnav {
    margin-top: 20px;
  }
  .o-footer__subnav > div {
    display: block;
    text-align: center;
    margin-bottom: 20px;
  }
}
/*
  *
    *
      * Newsletter
    *
  *
*/
.c-newsletter__header,
.c-newsletter__body {
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
}

.c-newsletter__header {
  text-transform: uppercase;
  color: #0073af;
  font-size: 32px;
}

.c-newsletter__body {
  font-size: 26px;
  color: #505f69;
}

.latest-post {
  display: flex;
  font-size: 2em;
  align-items: center;
  justify-content: center;
  background-color: #0073af;
  color: white;
  padding: 1em;
}
.latest-post .latest-post-news {
  font-size: 0.5em;
}
.latest-post .latest-post-date {
  font-size: 0.5em;
  margin-right: 1.5em;
  padding: 0.5em;
}

@media (max-width: 567px) {
  .latest-post {
    flex-direction: column;
    font-size: 22px;
    padding: 0.5em;
  }
}
/* Announcement tiles component for complex blog layout */
.announcement-tiles {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: repeat(4, 1fr);
  gap: 0;
  grid-template-areas: "post1 post2 announcement-top" "post3 post4 announcement-bottom" "post5 post6 newsletter-top" "post7 post8 newsletter-bottom";
}
.announcement-tiles .announcement-tiles__post1 {
  grid-area: post1;
}
.announcement-tiles .announcement-tiles__post2 {
  grid-area: post2;
}
.announcement-tiles .announcement-tiles__post3 {
  grid-area: post3;
}
.announcement-tiles .announcement-tiles__post4 {
  grid-area: post4;
}
.announcement-tiles .announcement-tiles__post5 {
  grid-area: post5;
}
.announcement-tiles .announcement-tiles__post6 {
  grid-area: post6;
}
.announcement-tiles .announcement-tiles__post7 {
  grid-area: post7;
}
.announcement-tiles .announcement-tiles__post8 {
  grid-area: post8;
}
.announcement-tiles {
  /* Make all tiles same size and remove borders/margins */
}
.announcement-tiles .announcement-tiles__post1,
.announcement-tiles .announcement-tiles__post2,
.announcement-tiles .announcement-tiles__post3,
.announcement-tiles .announcement-tiles__post4,
.announcement-tiles .announcement-tiles__post5,
.announcement-tiles .announcement-tiles__post6,
.announcement-tiles .announcement-tiles__post7,
.announcement-tiles .announcement-tiles__post8 {
  margin: 0;
  padding: 0;
  border: none;
  height: 100%;
  overflow: hidden;
}
.announcement-tiles .announcement-tiles__post1 .c-grid,
.announcement-tiles .announcement-tiles__post2 .c-grid,
.announcement-tiles .announcement-tiles__post3 .c-grid,
.announcement-tiles .announcement-tiles__post4 .c-grid,
.announcement-tiles .announcement-tiles__post5 .c-grid,
.announcement-tiles .announcement-tiles__post6 .c-grid,
.announcement-tiles .announcement-tiles__post7 .c-grid,
.announcement-tiles .announcement-tiles__post8 .c-grid {
  margin: 0;
  border-radius: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.announcement-tiles .announcement-tiles__post1 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post2 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post3 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post4 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post5 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post6 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post7 .c-grid--postimage-wrapper,
.announcement-tiles .announcement-tiles__post8 .c-grid--postimage-wrapper {
  margin: 0;
  padding: 0;
  height: 100%;
  overflow: hidden;
}
.announcement-tiles .announcement-tiles__post1 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post2 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post3 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post4 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post5 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post6 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post7 .c-grid--postimage-wrapper .c-grid__postimage,
.announcement-tiles .announcement-tiles__post8 .c-grid--postimage-wrapper .c-grid__postimage {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}
.announcement-tiles .announcement-tiles__post1 a,
.announcement-tiles .announcement-tiles__post2 a,
.announcement-tiles .announcement-tiles__post3 a,
.announcement-tiles .announcement-tiles__post4 a,
.announcement-tiles .announcement-tiles__post5 a,
.announcement-tiles .announcement-tiles__post6 a,
.announcement-tiles .announcement-tiles__post7 a,
.announcement-tiles .announcement-tiles__post8 a {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.announcement-tiles .announcement-tiles__post1,
.announcement-tiles .announcement-tiles__post2,
.announcement-tiles .announcement-tiles__post3,
.announcement-tiles .announcement-tiles__post4,
.announcement-tiles .announcement-tiles__post5,
.announcement-tiles .announcement-tiles__post6,
.announcement-tiles .announcement-tiles__post7,
.announcement-tiles .announcement-tiles__post8 {
  /* Fix tag wrapping - keep tags on same line */
}
.announcement-tiles .announcement-tiles__post1 .c-hash,
.announcement-tiles .announcement-tiles__post2 .c-hash,
.announcement-tiles .announcement-tiles__post3 .c-hash,
.announcement-tiles .announcement-tiles__post4 .c-hash,
.announcement-tiles .announcement-tiles__post5 .c-hash,
.announcement-tiles .announcement-tiles__post6 .c-hash,
.announcement-tiles .announcement-tiles__post7 .c-hash,
.announcement-tiles .announcement-tiles__post8 .c-hash {
  display: inline-block;
  margin-right: 0.5rem;
}
.announcement-tiles {
  /* Separate styling for announcement and newsletter boxes */
}
.announcement-tiles .announcement-tiles__announcement,
.announcement-tiles .announcement-tiles__newsletter {
  border: none;
  height: 100%;
}
.announcement-tiles .announcement-tiles__announcement .c-grid,
.announcement-tiles .announcement-tiles__newsletter .c-grid {
  margin: 0;
  border-radius: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5rem;
}
.announcement-tiles .announcement-tiles__announcement {
  grid-area: announcement-top/announcement-top/newsletter-top/newsletter-top;
}
.announcement-tiles .announcement-tiles__newsletter {
  grid-area: newsletter-top/newsletter-top/newsletter-bottom/newsletter-bottom;
}
@media (max-width: 1023px) {
  .announcement-tiles {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(6, 1fr);
    gap: 0;
    grid-template-areas: "post1 post2" "post3 post4" "post5 post6" "post7 post8" "announcement-top announcement-top" "newsletter-top newsletter-top";
  }
  .announcement-tiles .announcement-tiles__announcement,
  .announcement-tiles .announcement-tiles__newsletter {
    grid-area: auto;
  }
}
@media (max-width: 567px) {
  .announcement-tiles {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(10, 1fr);
    gap: 0;
    grid-template-areas: "post1" "post2" "post4" "post3" "post5" "post6" "post8" "post7" "announcement-top" "newsletter-top";
  }
  .announcement-tiles .announcement-tiles__announcement,
  .announcement-tiles .announcement-tiles__newsletter {
    grid-area: auto;
  }
}

/* Blog post layout specific styling */
#blog-post .two-column.left-heavy {
  align-items: flex-start; /* Align to top instead of center */
}
#blog-post .two-column.left-heavy .right {
  display: flex;
  justify-content: center; /* Center the newsletter box horizontally */
  margin: 0 auto;
}
#blog-post .two-column.left-heavy .right .c-sidebar {
  width: 100%;
  max-width: 300px; /* Limit width for better centering */
}

/* Footer contact box layout */
.o-footer__contact-body .two-column {
  align-items: flex-start; /* Align contact boxes to top */
}
.o-footer__contact-body .two-column .left, .o-footer__contact-body .two-column .right {
  display: flex;
  justify-content: center; /* Center contact boxes in their halves */
}

.o-footer__social {
  margin-top: 2rem; /* Add space above social icons */
  width: 100%;
  display: flex;
  justify-content: center; /* Ensure social icons are centered */
  gap: 1rem; /* Add spacing between social icons */
}

.c-news-list {
  text-align: center;
}

.c-news-list__item {
  padding: 0 0 20px 0;
}

.c-news-list__date {
  display: block;
  font-size: 16px;
  line-height: 1.4;
  padding-bottom: 4px;
}

.c-news-list__link {
  display: inline-block;
  font-family: "Montserrat", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 20px;
  line-height: 1.3;
}

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