/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/
@charset "utf-8";
/***  import forms styles  ***/
@import "forms.css";
/***  import cookie-banner styles  ***/
@import "ccb-panel.css";
/*
    CSS Document
                   */
@import url("http://fast.fonts.net/t/1.css?apiType=css&projectid=497d9a18-b31b-4d56-a708-4912ca07ed81");
@font-face {
  font-family: "Avenir W01_n3";
  src: url("../fonts/Avenir/710789a0-1557-48a1-8cec-03d52d663d74.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Avenir W01";
  src: url("../fonts/Avenir/710789a0-1557-48a1-8cec-03d52d663d74.eot?#iefix");
  src: url("../fonts/Avenir/710789a0-1557-48a1-8cec-03d52d663d74.eot?#iefix") format("eot"), url("../fonts/Avenir/065a6b14-b2cc-446e-9428-271c570df0d9.woff2") format("woff2"),
    url("../fonts/Avenir/65d75eb0-2601-4da5-a9a4-9ee67a470a59.woff") format("woff"), url("../fonts/Avenir/c70e90bc-3c94-41dc-bf14-caa727c76301.ttf") format("truetype");
  font-weight: 350;
  font-style: normal;
}
@font-face {
  font-family: "Avenir W01_o3";
  src: url("../fonts/Avenir/d8c50fcc-bc32-4f31-8c24-b170c64e2254.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Avenir W01";
  src: url("../fonts/Avenir/d8c50fcc-bc32-4f31-8c24-b170c64e2254.eot?#iefix");
  src: url("../fonts/Avenir/d8c50fcc-bc32-4f31-8c24-b170c64e2254.eot?#iefix") format("eot"), url("../fonts/Avenir/476612d9-282d-4f76-95cd-b4dd31e7ed21.woff2") format("woff2"),
    url("../fonts/Avenir/f1ebae2b-5296-4244-8771-5f40e60a564a.woff") format("woff"), url("../fonts/Avenir/04d1bf6c-070d-4b7e-9498-6051c9f0c349.ttf") format("truetype");
  font-weight: 350;
  font-style: oblique;
}
@font-face {
  font-family: "Avenir W01_n7";
  src: url("../fonts/Avenir/6af9989e-235b-4c75-8c08-a83bdaef3f66.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Avenir W01";
  src: url("../fonts/Avenir/6af9989e-235b-4c75-8c08-a83bdaef3f66.eot?#iefix");
  src: url("../fonts/Avenir/6af9989e-235b-4c75-8c08-a83bdaef3f66.eot?#iefix") format("eot"), url("../fonts/Avenir/d513e15e-8f35-4129-ad05-481815e52625.woff2") format("woff2"),
    url("../fonts/Avenir/61bd362e-7162-46bd-b67e-28f366c4afbe.woff") format("woff"), url("../fonts/Avenir/ccd17c6b-e7ed-4b73-b0d2-76712a4ef46b.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Avenir W01_n7";
  src: url("../fonts/Avenir/f55e4498-ad48-4577-93a0-c614de5cbbb8.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Avenir W01";
  src: url("../fonts/Avenir/f55e4498-ad48-4577-93a0-c614de5cbbb8.eot?#iefix");
  src: url("../fonts/Avenir/f55e4498-ad48-4577-93a0-c614de5cbbb8.eot?#iefix") format("eot"), url("../fonts/Avenir/c78eb7af-a1c8-4892-974b-52379646fef4.woff2") format("woff2"),
    url("../fonts/Avenir/75b36c58-2a02-4057-a537-09af0832ae46.woff") format("woff"), url("../fonts/Avenir/b5c44a82-eeb8-41de-9c3f-a8db50b24b8a.ttf") format("truetype");
  font-weight: 750;
  font-style: normal;
}
@font-face {
  font-family: "formicons";
  src: url("../fonts/formicons/formicons.eot?afc1ol");
  src: url("../fonts/formicons/formicons.eot?afc1ol#iefix") format("embedded-opentype"), url("../fonts/formicons/formicons.ttf?afc1ol") format("truetype"),
    url("../fonts/formicons/formicons.woff?afc1ol") format("woff"), url("../fonts/formicons/formicons.svg?afc1ol#formicons") format("svg");
}
html,
body {
  background-color: #fff;
  color: #231f20;
  font-family: "Avenir W01";
  font-weight: 350;
  font-size: 16px;
  line-height: 1.333;
  overflow-x: hidden;
  overscroll-behavior-x: contain;
}
/*
    general
              */
a,
a:visited {
  text-decoration: none;
  -webkit-transition: color 0.15s linear, background 0.15s linear, border 0.15s linear, opacity 0.15s linear;
  -o-transition: color 0.15s linear, background 0.15s linear, border 0.15s linear, opacity 0.15s linear;
  transition: color 0.15s linear, background 0.15s linear, border 0.15s linear, opacity 0.15s linear;
}
section p a,
section p a:visited,
.input a,
.input a:visited {
  color: #231f20;
  border-bottom: 1px solid;
}
a.button,
button {
  background-color: #ccc8d7;
  color: #fff;
  line-height: 2.8em;
  font-weight: 750;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  display: inline-block;
  padding: 0 1.2em;
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  cursor: pointer;
  font-size: 110%;
  border-radius: 0.25em;
}
a.button:hover,
button:hover {
  opacity: 0.6;
  -webkit-transition: opacity 0.1s linear;
  -o-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}
p + p,
p + h2,
p + h3,
p + h4,
p + ul,
p + ol,
ul + p,
ul + h2,
ol + p,
ol + h2,
li + li,
p + table {
  margin-top: 0.614em;
}
h2,
h3,
h4 {
  color: #2e3192;
  font-weight: 750;
}
h2 {
  font-size: 290%;
  line-height: 1.1;
  padding-bottom: 0.614em;
  text-indent: -0.55em;
}
h3 {
  font-size: 100%;
}
h4 {
  font-weight: 650;
}
ul {
  margin-left: 1.5em;
}
tr {
  background-color: #9ddcf9;
}
tr:nth-of-type(even) {
  background-color: #fff;
}
th,
td {
  padding: 0.5em 0.25em;
  text-align: center;
  vertical-align: middle;
}
th {
  background-color: #1b75bc;
  color: #fff;
  font-size: 80%;
  font-weight: 700;
  white-space: nowrap;
}
tr:nth-of-type(n + 1) > td:first-of-type {
  font-weight: 750;
}
.link {
  cursor: pointer;
}
.link:hover {
  opacity: 0.4;
  -webkit-transition: opacity 0.1s linear;
  -o-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}
.pdf {
  width: 5%;
}
.lastenboek {
  margin: 1em auto 5vh;
  float: right;
}
figcaption span {
  background: -o-linear-gradient(left, rgba(38, 34, 98, 1) 0%, rgba(46, 49, 146, 1) 100%);
  background: -webkit-gradient(linear, left top, right top, from(rgba(38, 34, 98, 1)), to(rgba(46, 49, 146, 1)));
  background: linear-gradient(90deg, rgba(38, 34, 98, 1) 0%, rgba(46, 49, 146, 1) 100%);
  color: #fff;
  font-size: 85%;
  font-weight: 700;
  text-transform: uppercase;
  padding: 0.4em 0.8em 0.35em;
  position: absolute;
  right: 0;
}
figcaption span i {
  color: #6dcff6;
}
.bouwsteen,
section h2::after {
  background: url("../images/bouwsteen.svg") no-repeat center center / contain;
  width: 5em;
  height: 5em;
  position: absolute;
  z-index: 1;
}
.highlight {
  color: #2e3192;
  font-size: 138%;
  line-height: 0.95;
  font-weight: 750;
}
.centered {
  text-align: center;
}
/*
    layout
            */
.container {
  width: 100%;
  max-width: 1440px;
  padding: calc(4vh + 0.9em) 3vw 0;
  margin: 0 auto;
  position: relative;
}
header > *,
header nav,
#projects,
.address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
header {
  background: -o-linear-gradient(left, rgb(27, 117, 188) 0%, rgb(0, 174, 239) 100%);
  background: -webkit-gradient(linear, left top, right top, from(rgb(27, 117, 188)), to(rgb(0, 174, 239)));
  background: linear-gradient(90deg, rgb(27, 117, 188) 0%, rgb(0, 174, 239) 100%);
}
header > div {
  background-color: #fff;
  margin-bottom: 2.5vh;
}
header > div > * {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
#grondig {
  background: url("../images/grondig_logo.svg") no-repeat left center / 80%;
  width: 28%;
  margin-right: 2%;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
}
#navicon {
  background: url("../images/navicon.svg") no-repeat center center / contain;
  position: fixed;
  top: 7vw;
  right: 5vw;
  width: 8vw;
  max-width: 2.25em;
  height: 8vw;
  z-index: 15;
  display: none;
}
header nav > a,
header nav > a:visited {
  background: -o-linear-gradient(bottom, rgb(157, 220, 249) 0%, rgb(255, 255, 255) 100%) no-repeat center 100px;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(157, 220, 249)), to(rgb(255, 255, 255))) no-repeat center 100px;
  background: linear-gradient(0deg, rgb(157, 220, 249) 0%, rgb(255, 255, 255) 100%) no-repeat center 100px;
  color: #2e3192;
  font-size: 115%;
  font-weight: 700;
  text-align: center;
  display: inline-block;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 1.5em;
  white-space: nowrap;
}
header nav > a:hover,
header nav > a.selected {
  background-position: center 0px;
  -webkit-transition: background 0.1s linear;
  -o-transition: background 0.1s linear;
  transition: background 0.1s linear;
}
header nav > a + a {
  border-left: 0.11em solid #00aeef;
}
#language {
  text-align: center;
  padding-left: 5%;
  /*display: flex; -> invoegen indien #language ON */
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  display: none;
}
#language a,
#language a:visited {
  background-color: #262262;
  color: #fff;
  font-size: 110%;
  padding: 0.3em 0.3em 0.2em;
  position: relative;
}
#language a:hover {
  background-color: #00aeef;
}
#language a::before {
  content: "";
  left: 0;
  top: 0;
  border-top: 7px solid #fff;
  border-right: 8px solid transparent;
  position: absolute;
}
#language a + a {
  margin-left: 0.25em;
}
header figure {
  background: no-repeat center center / cover;
  height: calc(20em + 13vh);
  padding: 8.5%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}
header figcaption h1 {
  color: #fff;
  font-size: 360%;
  line-height: 1;
  font-weight: 750;
  text-shadow: 0 0.05em 0.2em rgba(0, 0, 0, 0.5);
}
header figcaption span {
  font-size: 150%;
  bottom: 0;
}
figcaption span i {
  color: #6dcff6;
}
header figure .bouwsteen {
  bottom: -2.5em;
}
section {
  padding: 5vh 8.5%;
  position: relative;
}
section:first-of-type {
  background: -o-linear-gradient(bottom, rgba(171, 225, 250, 1) 95%, rgba(139, 184, 205, 1) 100%);
  background: -webkit-gradient(linear, left bottom, left top, color-stop(95%, rgba(171, 225, 250, 1)), to(rgba(139, 184, 205, 1)));
  background: linear-gradient(0deg, rgba(171, 225, 250, 1) 95%, rgba(139, 184, 205, 1) 100%);
}
section:nth-of-type(odd) {
  background-color: #b9e5fb;
}
article .logo {
  width: auto;
  height: 5.5em;
  margin: 0 0 1.25vh -1.5em;
}
article p:first-of-type {
  text-indent: -1.5em;
}
.bouwsteen.left {
  left: 2%;
  bottom: -2.5em;
}
.bouwsteen.right {
  left: auto;
  width: 4em;
  height: 4em;
  right: 2%;
  bottom: 25%;
}
section h2::after {
  content: "";
  height: 1.725em;
  position: absolute;
  right: 0;
  margin-top: -0.25em;
  width: 1.725em;
}
#projects a,
#projects a:visited {
  color: inherit;
  width: 47%;
}
#projects a:hover {
  opacity: 0.7;
}
#projects figure {
  border: 0.11em solid #00aeef;
  border-bottom: none;
  position: relative;
}
#projects figcaption {
  font-size: 140%;
  padding: 4% 5% 6%;
}
#projects figcaption span {
  top: 0;
}
#info {
  -webkit-columns: auto 2;
  -moz-columns: auto 2;
  columns: auto 2;
}
#info > span {
  width: 100%;
  padding: 1em 4.5em;
  display: inline-block;
  position: relative;
}
#info > span::before,
#contactinfo div:first-child::before {
  background: no-repeat center center / contain;
  content: "";
  width: 4em;
  height: 4em;
  position: absolute;
  left: 0;
  top: 0.25em;
}
#info > span.units::before {
  background-image: url("../images/icon_units.svg");
}
#info > span.handelspand::before {
  background-image: url("../images/icon_handelspand.svg");
}
#info > span.parkeerplaats::before {
  background-image: url("../images/icon_parkeerplaats.svg");
}
#info > span.berging::before {
  background-image: url("../images/icon_berging.svg");
}
#info > span.terras::before {
  background-image: url("../images/icon_terras.svg");
}
#info > span.locatie::before {
  background-image: url("../images/icon_locatie.svg");
}
#info > span.budget::before {
  background-image: url("../images/icon_budget.svg");
}
.duo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}
#contactinfo div {
  margin-top: 4vh;
}
#contactinfo div:first-child::before {
  background-image: url("../images/icon_contact.svg");
  top: -0.8em;
}
#contactinfo img {
  width: 30%;
  max-height: 10em;
  margin-left: 5em;
}
#contactinfo img + p {
  width: 70%;
  padding-left: 3em;
}
article + article {
  margin-top: 2.5vh;
}
article.duo > * {
  width: 47%;
}
article.duo:nth-last-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
article.duo p {
  padding: 5% 0;
}
article.duo p:first-of-type::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 1.5em solid transparent;
  border-bottom: 1.5em solid transparent;
  border-right: 2em solid #2e3192;
  position: absolute;
  left: calc(47% - 2em);
  margin-top: -0.75em;
}
article.duo:nth-last-child(2n + 1) p:first-of-type::before {
  border-right: none;
  border-left: 2em solid #1b75bc;
  left: 53%;
}
.map {
  margin: 2.5vh 0;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
footer {
  background-color: #00aeef;
}
footer > div {
  text-align: center;
  padding: 3vh 8.5%;
}
footer .contact {
  background-color: #262262;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
footer .contact > div {
  text-align: left;
  width: 50%;
}
footer .contact > div:last-of-type {
  text-align: right;
}
footer .contact > div div + div {
  padding-top: 0.8em;
}
footer .contact .input a,
footer .contact .input a:visited,
footer .contact .input a:hover,
footer .contact .input a:active {
  color: #fff;
}
footer .address {
  font-size: 89%;
}
footer,
.address a,
.address a:visited {
  color: #fff;
}
.address a:hover {
  border-bottom: 1px solid;
}
/*
    lightbox
                 */
#lightbox {
  background-color: #ffe8df;
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: 100vw;
  z-index: 20;
}
#lightbox.open {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#lightbox > div {
  width: 10vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
#lightbox > * > * {
  height: 15vh;
  width: 100%;
  display: block;
  position: relative;
}
.scroll_btn,
#lightbox figure div {
  height: 70vh !important;
}
.scroll_btn::before,
.close_btn::before,
.download_btn::before {
  color: #ff5638;
  font-family: "phytofar";
  font-size: 140%;
  line-height: 0;
  content: "\e911";
  position: absolute;
  top: 50%;
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: margin 0.25s linear, -webkit-transform 0.25s linear;
  transition: margin 0.25s linear, -webkit-transform 0.25s linear;
  -o-transition: margin 0.25s linear, transform 0.25s linear;
  transition: margin 0.25s linear, transform 0.25s linear;
  transition: margin 0.25s linear, transform 0.25s linear, -webkit-transform 0.25s linear;
}
.scroll_btn.left::before {
  -webkit-transform: rotate(180deg) translateX(50%);
  -ms-transform: rotate(180deg) translateX(50%);
  transform: rotate(180deg) translateX(50%);
}
.scroll_btn.right::before {
  content: "\e911";
}
.scroll_btn.left:hover::before {
  margin-left: 45%;
}
.scroll_btn.right:hover::before {
  margin-left: 55%;
}
#lightbox figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
#lightbox figure span,
#lightbox figcaption {
  height: 15vh;
}
#lightbox figure div {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#lightbox figure img {
  max-height: 70vh;
  max-width: 80vw;
  width: auto;
  -webkit-box-shadow: 1em 1em 1em rgba(255, 86, 56, 0.15);
  box-shadow: 1em 1em 1em rgba(255, 86, 56, 0.15);
}
#lightbox figcaption {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.close_btn::before {
  font-size: 100%;
  content: "\e90c";
}
.download_btn::before {
  font-size: 120%;
  content: "\e90b";
}
/* contactinfo */
.column {
  padding-top: 1.228em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.column .input-group {
  min-width: 49%;
}
.column .input-group + .input-group {
  padding-left: 2%;
}
article .input-group .input {
  padding-bottom: 0.8em;
}
.input label {
  font-weight: 700;
  font-size: 110%;
}
/*
    responsive
                */
@media only screen and (max-width: 1440px) {
}
@media only screen and (max-width: 1280px) {
  body {
    font-size: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  body {
    font-size: 90%;
  }
}
@media only screen and (max-width: 800px) {
  a.button,
  button {
    font-size: 100%;
  }
  h1 br {
    display: none;
  }
  h2 {
    font-size: 180%;
  }
  table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    position: relative;
    left: -8.5vw;
    min-width: 100vw;
    padding: 0 8.5vw;
  }
  .highlight {
    font-size: 130%;
  }
  .bouwsteen {
    width: 3em;
  }
  .bouwsteen.right {
    width: 2.5em;
    right: 0;
  }
  article .bouwsteen.right {
    display: none;
  }
  section h2::after {
    right: 2%;
    width: 1.622em;
  }
  .container {
    padding: 6vw 0 0;
  }
  #grondig {
    background-position: center 35%;
    background-size: 72%;
    margin: 0 auto;
    height: 14vw;
    width: 70vw;
  }
  #navicon {
    display: block;
  }
  header #navicon + nav {
    background-color: #fff;
    position: fixed;
    width: 90vw;
    height: 100vh;
    left: calc(100vw + 1em);
    top: 0;
    /*padding-bottom: 10vh; -> invoegen indien #language ON */
    z-index: 10;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-shadow: -1em 0 1em -0.5em rgba(60, 64, 60, 0.2);
    box-shadow: -1em 0 1em -0.5em rgba(60, 64, 60, 0.2);
    -webkit-transition: left 0.15s ease-in;
    -o-transition: left 0.15s ease-in;
    transition: left 0.15s ease-in;
  }
  header #navicon.open + nav {
    left: 10vw;
    -webkit-transition: left 0.25s ease-out;
    -o-transition: left 0.25s ease-out;
    transition: left 0.25s ease-out;
  }
  header nav > a {
    background: -o-linear-gradient(bottom, rgb(157, 220, 249) 0%, rgb(255, 255, 255) 100%) no-repeat center 25vh;
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(157, 220, 249)), to(rgb(255, 255, 255))) no-repeat center 25vh;
    background: linear-gradient(0deg, rgb(157, 220, 249) 0%, rgb(255, 255, 255) 100%) no-repeat center 25vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  header nav > a + a {
    border-left: none;
    border-top: 0.11em solid #00aeef;
  }
  #language {
    font-size: 110%;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    padding: 0;
  }
  #language a,
  #language a:visited {
    line-height: 10vh;
    width: 100%;
    height: 10vh;
    padding: 0;
    margin: 0 !important;
  }
  #language a.selected {
    display: none;
  }
  header figure {
    height: 33vh;
  }
  header figcaption h1 {
    font-size: 4.5vmax;
  }
  header figcaption span {
    font-size: 95%;
  }
  #projects,
  .address {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  #projects a,
  #projects a:visited {
    width: 100%;
  }
  #projects figcaption {
    font-size: 120%;
  }
  #projects figcaption span {
    font-size: 69%;
  }
  #info {
    -webkit-columns: auto 1;
    -moz-columns: auto 1;
    columns: auto 1;
  }
  #info > span {
    padding: 1em 0 1em 3.5em;
  }
  #info > span::before,
  #contactinfo div:first-child::before {
    width: 3em;
    height: 3em;
  }
  article .logo {
    width: auto;
    max-width: 89vw;
    height: 8vmax;
  }
  .duo {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  article.duo > * {
    width: 100%;
  }
  article.duo + .duo {
    margin-top: 2em;
  }
  article.duo p {
    margin-top: 1em;
  }
  article.duo p:first-of-type::before,
  article.duo:nth-last-child(2n + 1) p:first-of-type::before {
    border-left: 1.5em solid transparent;
    border-right: 1.5em solid transparent;
    border-bottom: 2em solid #2e3192;
    left: calc(50% - 0.75em);
    margin-top: -4.475em;
  }
  #contactinfo img {
    width: 50vw;
    max-height: 7em;
    margin-left: 0;
  }
  #contactinfo img + p {
    width: 100%;
    padding: 0.5em 0;
    text-align: center;
  }
  .column .input-group + .input-group {
    padding-left: 0;
  }
  .input-group {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .input {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
  .input + .input {
    margin-left: 0;
  }
  footer .contact {
    flex-direction: column;
  }
  footer .contact > div {
    text-align: center !important;
    width: 100%;
  }
  footer .contact .button {
    margin: 2em 0 1.4em;
  }
  footer .address {
    line-height: 2.5;
  }
}
@media screen and (min-width: 740px) and (orientation: portrait) {
  #contactinfo .duo {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
}
@media screen and (orientation: landscape) {
}
.hide {
  display: none;
}
