/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  vertical-align: baseline;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  border: 0; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

html {
  font-family: 'Montserrat', sans-serif; }

body {
  flex-direction: column;
  min-height: 100vh;
  line-height: 1.6;
  display: flex; }

header {
  background-color: rgba(55, 55, 55, 0.05);
  padding: 50px; }

main {
  flex-direction: column;
  position: relative;
  flex: 1; }

h1 {
  margin-bottom: 40px;
  text-align: center;
  display: block;
  width: 100%; }
  @media screen and (min-width: 600px) {
    h1 {
      margin-bottom: 0; } }

.companies {
  position: relative;
  display: flex;
  height: 100%;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
  flex-direction: column; }
  @media screen and (min-width: 900px) {
    .companies {
      flex-direction: row; } }
  .companies > section {
    background-color: white;
    position: relative;
    overflow: hidden;
    min-height: 60vh;
    width: 100%; }
    .companies > section.ceh {
      display: block; }
      .companies > section.ceh .company {
        padding: 40px;
        width: 100%; }
        @media screen and (min-width: 600px) {
          .companies > section.ceh .company {
            width: 60%; } }
        .companies > section.ceh .company a {
          margin-top: 20px; }
      .companies > section.ceh .background-image {
        background-image: url("/img/ceh-project.jpg");
        background-position: 40% 60%;
        background-size: cover;
        height: 40vh;
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
        clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%); }
        @media screen and (min-width: 600px) {
          .companies > section.ceh .background-image {
            -webkit-clip-path: polygon(50% 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(50% 0, 100% 0, 100% 100%, 0% 100%);
            position: absolute;
            height: 100%;
            width: 40%;
            right: 0;
            top: 0; } }
      .companies > section.ceh img {
        width: 200px; }
      .companies > section.ceh a {
        border: 1px solid #264674;
        color: #264674; }
        .companies > section.ceh a:hover {
          background-color: rgba(38, 70, 116, 0.1); }
    .companies > section.foster {
      background-image: url("/img/foster-project.jpg");
      background-position: 50% 70%;
      display: block; }
      .companies > section.foster .background-image {
        position: absolute;
        background-image: linear-gradient(rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 50%);
        height: 100%;
        width: 100%;
        left: 0;
        top: 0; }
        .companies > section.foster .background-image:before {
          position: absolute;
          display: block;
          width: 100%;
          height: 100%;
          content: ''; }
      .companies > section.foster .company {
        background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
        padding: 100px 20% 25px 25px;
        position: relative;
        width: 100%;
        color: #fff;
        margin: 0;
        bottom: 0;
        left: 0; }
        @media screen and (min-width: 600px) {
          .companies > section.foster .company {
            position: absolute; } }
      .companies > section.foster img {
        width: 350px; }
      .companies > section.foster a {
        border: 1px solid #fff;
        margin-top: 20px;
        color: #fff; }
        .companies > section.foster a:hover {
          background-color: rgba(255, 255, 255, 0.2); }
    .companies > section img {
      margin-bottom: 30px;
      position: relative;
      z-index: 2; }
    .companies > section a {
      background-color: rgba(255, 255, 255, 0.1);
      text-decoration: none;
      display: inline-block;
      border-radius: 0px;
      padding: 15px 30px;
      position: relative;
      z-index: 2; }
    .companies > section .slogan {
      margin-bottom: 10px;
      font-weight: bold;
      color: #264674; }

.partner-description {
  column-count: 1;
  display: block; }
  @media screen and (min-width: 600px) {
    .partner-description {
      column-count: 2;
      padding: 20px; } }
  @media screen and (min-width: 900px) {
    .partner-description {
      column-count: 3;
      padding: 50px; } }

