@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url("/fonts/pt-sans-v11-latin-regular.eot");
  src: local("PT Sans"), local("PTSans-Regular");
  src: url("/fonts/pt-sans-v11-latin-regular.eot?#iefix") format("embedded-opentype");
  src: url("/fonts/pt-sans-v11-latin-regular.woff2") format("woff2");
  src: url("/fonts/pt-sans-v11-latin-regular.woff") format("woff");
  src: url("/fonts/pt-sans-v11-latin-regular.ttf") format("truetype");
  src: url("/fonts/pt-sans-v11-latin-regular.svg#PTSans") format("svg"); }

body, html, figure, figure * {
  padding: 0;
  margin: 0; }

body {
  font-family: "PT Sans", "Myriad Pro", "Roboto", sans-serif;
  font-size: 13pt;
  line-height: 1.5em;
  color: #333333;
  font-smooth: auto;
  -webkit-font-smoothing: antialiased;
  background-color: #f4f6f7;
  text-align: left; }

a {
  color: #418187;
  text-decoration: none; }

a:hover {
  text-decoration: underline; }

#line {
  border-top: 3px solid #418187;
  height: 20px; }
  @media all and (max-width: 940px) {
    #line {
      display: none; } }
  @media print {
    #line {
      display: none; } }
#container {
  max-width: 940px;
  margin: 0 auto;
  padding-bottom: 70px;
  background-color: #fff;
  border: 1px solid #d8d8d8;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -moz-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1); }
  #container #logo {
    padding: 20px; }
    #container #logo img {
      width: 100%; }
  #container nav, #container article {
    padding: 20px;
    max-width: 800px;
    margin: 0 auto; }
  #container nav {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    align-content: stretch;
    padding-bottom: 8px;
    margin-bottom: 25px; }
    @media all and (max-width: 400px) {
      #container nav {
        flex-direction: column; } }
    #container nav a {
      flex-grow: 1;
      font-size: 17px;
      margin: 0 2px;
      padding: 8px 4px;
      line-height: 14px;
      text-decoration: none;
      text-align: center;
      -moz-border-radius: 5px;
      -webkit-border-radius: 5px;
      border-radius: 5px; }
    #container nav a:hover {
      background-color: #eeeeee;
      color: #005580; }
    #container nav a.active {
      color: white;
      background: #418187; }
  #container #banner {
    border-top: 1px solid rgba(0, 0, 0, 0.0745098); }
    #container #banner img {
      width: 100%; }
  #container article hr {
    height: 1px;
    border: none;
    background-color: #ddd; }
  #container .eu-sponsorship {
    border: 2px solid #5C758B;
    border-bottom-width: 10px;
    padding: 20px;
    margin-top: 30px; }
    #container .eu-sponsorship .proflex-partners {
      margin-top: 24px;
      margin-bottom: 24px;
      text-align: center; }
      #container .eu-sponsorship .proflex-partners .partners-label {
        color: #888;
        font-size: 0.85em;
        margin-bottom: 16px; }
      #container .eu-sponsorship .proflex-partners .partners-logos {
        display: flex;
        justify-content: space-around;
        align-items: center;
        flex-wrap: wrap;
        gap: 24px; }
        #container .eu-sponsorship .proflex-partners .partners-logos img {
          height: 60px;
          width: auto;
          max-width: 180px;
          object-fit: contain;
          display: block; }
    #container .eu-sponsorship .proflex-funding {
      border-top: 1px solid #ddd;
      margin-top: 24px;
      padding-top: 20px;
      text-align: center; }
      #container .eu-sponsorship .proflex-funding img {
        max-width: 100%;
        height: auto;
        display: inline-block; }
  #container .blog-item {
    position: relative;
    width: 100%;
    /* for IE 6 */ }
    #container .blog-item img {
      width: 100%; }
    #container .blog-item h2 {
      position: absolute;
      top: 60%;
      left: 0;
      width: 100%; }
      @media (max-width: 768px) {
        #container .blog-item h2 {
          top: 20%; } }
      #container .blog-item h2 span {
        color: white;
        font: bold 24px/45px Helvetica, Sans-Serif;
        letter-spacing: -1px;
        background: black;
        /* fallback color */
        background: rgba(57, 125, 140, 0.8);
        padding: 10px;
        padding-right: 10px; }
        @media (max-width: 768px) {
          #container .blog-item h2 span {
            font-size: 15px; } }
footer {
  display: flex;
  justify-content: space-between;
  max-width: 940px;
  margin: 15px auto 50px auto;
  border-top: 1px solid #fff;
  padding-top: 15px; }
  @media all and (max-width: 940px) {
    footer {
      padding-left: 10px;
      padding-right: 10px; } }
.rounded {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px; }

.photoswipe-gallery {
  display: flex;
  justify-content: space-around;
  wrap: wrap; }

.masonry {
  margin: 0;
  column-gap: 1px;
  column-rule: 1px solid #e9e9e9;
  border-top: 1px solid #e9e9e9; }
  @media all and (max-width: 499px) {
    .masonry {
      column-count: 1; } }
  @media all and (max-width: 669px) and (min-width: 500px) {
    .masonry {
      column-count: 2; } }
  @media all and (min-width: 670px) {
    .masonry {
      column-count: 3; } }
  .masonry .item {
    display: inline-block;
    padding: 20px;
    margin: 0 0 1px 0;
    border-bottom: 1px solid #e9e9e9; }
  .masonry .companylogo {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 150px; }
  .masonry img {
    width: 100%; }
