/* intro */

body,html{
  width: 100%;
  overflow-x: none!important;
}

header{
  background-image: url(../img/bg2.jpg);
  background-size:cover;
  background-repeat:no-repeat;
  height:900px;
  background-position: top 10% center;
  position: relative;

}

header::after{
  position: absolute;
  left: 0;
  content: '';
  height:300px;
  width:100%;
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(0,212,255,0) 100%);

}

.banner{
  text-align: center;
  background-color:white;
  height:150px;
}

span.cross-icon {
    position: absolute;
    right: 10px;
    top: 10px;
    font-size: 16px;
}

.logo {
  position: absolute;
  top: 0px;
  z-index: 2;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.notice{
  display: flex;
  flex-direction: column;
  /* background:#222; */
  background:#c61935;
  font-weight:300;
  color:white;
  padding:20px;
  font-size:14px;
  display: none;

}


.notice *{
  font-weight:300;
}

.notice a{
  background-color:white;
  padding:5px 10px;
  font-size:12px;
  border-radius: 3px;
}

.topbar-h3{
  font-size: 21px;
  color:white
}
.topbar-p{
  font-size: 13px;
  text-align: left!important;
  justify-content: start;
  margin:10px 0px 15px 0;
}


.vacature{
  /* background-image: url(../img/bg2-team.jpg); */
  display: flex;
    justify-content: center;
    background-position: center center;
    /* min-height: 40vw; */
}

.vacaturecontent{
  margin:0 20px;
  max-width:1000px;
  display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    margin-bottom: 100px;
    border:1px solid #c61935;
    padding:30px;
    border-radius: 20px;
    gap:10px;
    
}

.vacaturecontent p{
  font-weight: 100;
  display: block;
min-height: 0px;



}

.vacaturecontent b {
  font-weight: 800;
  margin-bottom:10px;
}

.vacaturecontent a{
  margin-top:10px;
  border:1px solid #c61935;
  padding:10px 20px;
  border-radius: 5px;
  background: #c61935;
  color:white;
  font-weight: 100;
}



img.logo {
  width: 100%;
  max-width:500px;
}


/* content */

.container{
  width:1200px;
  margin:0 auto;
}

.cards-wrapper {
  margin-top:-10em;
}

.row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}

p {
  display: flex;
  justify-content: center;
  align-items: top;
  align-content: center;
margin:0px;
min-height: 52px;
  font-size:18px;
  font-family: 'Montserrat', sans-serif;
  font-weight:bolder;
  margin-top:10px;
  font-weight: 700;
}

/* cards */

.column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
  transition: transform 200ms ease-in-out;

}

.columnanimation{
  cursor: pointer;
}

.card {
  border-radius:6px;
  margin:50px;
  height:230px;
  position:relative;
  transition: transform 200ms ease-in-out;

  box-shadow: 0 0 0 .9em rgb(255, 255, 255);
}

.left{background-color:#C61935;}
.right{background-color:#003399;}


.cardabsolutewrapper{
  overflow: hidden;
  position:absolute;
  left: 50%;
  transform: translate(-50%, -0%);
}

.cardcontentwrapper{
  padding:20px 0;
  display:flex;
  flex-direction: column;
  align-items:center;
  justify-content: space-between;
  transform: translate(0, -0%);
  transition: transform 200ms ease-in-out;
}




.cardlogo img{height:90px; width: auto;}

.textbuttoncontainer {
  display: flex;
}


.cardtext{
  font-size:26px;
  color:white;
  margin-top:60px;
}

.textbuttoncontainer div img {
  height: 32px;
  width: auto;
  margin-left: 13px;
}

.textbuttoncontainer div{
display:flex;
align-content: center;
align-items: center;
}



.cardtext a{color:white!important; text-decoration: none;}
.cardtext a:visited{color:white!important;}

.cardimage{
  margin-bottom:-15%;
  position:absolute;
  bottom:0;
  left: 50%;
  transform: translate(-50%, -10%);
  width:105%;
  transition: width 200ms ease-in-out;
}

.cardimage img{
  width:100%;
}

div#imageright {
  margin-bottom:-18%;
  text-align: center;
}

div#imageright img{
  width:92%;
  margin:0px auto;

}

.maininfo{margin:100px auto;}
/* start animations */

.hover-animation {
  transform: scale(1.08);
}
.hover-animation .cardimage {
  width: 120%;
}

.hover-animation .cardcontentwrapper {
  transform: translate(0, -120px);
}


.infobox span img{width:100%; height:auto; margin-top:6px;  }
.infobox span{margin-right: 8px;}
.infobox span i{font-size:16px;}

.infobox{

  text-align: center;
}


h3{color:#C61935;
margin:0px;
font-size:23px;
text-transform: uppercase;
font-weight:900;
}

.h3margin{margin-top:30px;}

.reclamefooter{
color:black;
position:absolute;
bottom:0;
left:50%;
z-index: 999;
transform: translate(-50%, 0);
background-color:white;
padding:10px 10px;
border-radius:6px 6px 0 0;
}
.reclamefooter h4{
  margin:0;
  padding: 0;
font-size:12px;
}

.reclamefooter a{
  color:#3d3d3d;
  text-transform: uppercase;
  text-decoration: none;
}


iframe{height:clamp(400px, 20vw, 600px);}
.columnanimation > div  > div >  div > .cardtext  {opacity:0; transition: all 0.1s ease-in-out;}
.columnanimation:hover > div  > div >  div > .cardtext  {opacity:1;}
a{text-decoration: none; color:black;}

.ql-editor {
  font-family: 'Montserrat', sans-serif!important;
  font-weight: 900!important;
  text-transform: uppercase!important;
}


.vacaturebutton {
  transition: all 0.5s ease;
  opacity: 0;
  margin-top: 20px;
  transition-delay: 0.3s; 
 
}

.vacaturebutton.visible {
  opacity: 1;
  margin-top: 0px;

}

.vacaturebutton a{
  border-radius:5px;
}


@media only screen and (max-width: 1300px) {

  header{

    background-position: bottom  center;
    height:700px;
  }

  .banner-after{
    height:500px;


  }



}


@media only screen and (max-width: 1220px) {
  .container {
    width: 90%;

}

.card{
  height:17vw;
  margin:30px;
}
.cardlogo img {
  height: 7.7vw;
  width: auto;
}
.cardimage{bottom:-20px;}
.cardabsolutewrapper{width:90%}
.cardtext{font-size:25px;}

div#cardlogo {
  height: 80px;
  width: auto;
}


}


@media only screen and (max-width: 768px) {
  
  .notice{
    display: flex;
  }
}

@media only screen and (max-width: 934px) {




  .vacaturebutton{display: none;}



  header{

    background-position:bottom  center;
    height:500px;
  }

 .row{
   flex-direction:column;
 }

 .card{height:35vw;
  transform-origin: 0 0;
}




.cardimage{bottom:-3vw;}
div#imageright {
  margin-bottom: -21%;
  text-align: center;
}


.cardlogo img {
  width: auto;
  height: 15vw;
}

 .container {
  width: 95%;
}
.textbuttoncontainer{display: none;}

.cardtext {
  font-size: 5vw;
  color: white;
  margin-top: 19vw;

}
.maininfo {
  margin: 20vw auto 20vw auto;
}

.nomargin{margin-bottom:0;}



.hover-animation .cardcontentwrapper {
  transform: translate(0, -23vw);
}

.cardabsolutewrapper{
width: 100%;
}

.right{margin-top:12vw;}

.cards-wrapper {
  margin-top: -70px;
}

p {

  height: auto;
}



.hover-animation {
  transform: translate(-0px, -0px) scale(1.0);
}
.hover-animation .cardimage {
  width: 100%;
}

.hover-animation .cardcontentwrapper {
  transform: translate(0, -0%);

}




.card {

  box-shadow: 0 0 0 10px rgb(255, 255, 255);
}

h3{margin:0; font-size:4.5vw;}
p{font-size:4vw; margin-bottom:30px; min-height:0px;}
.h3margin{margin-top:0}
.infobox span i {
  font-size: 4vw;
}


}
@media only screen and (min-width: 2114px) {

  header{

    background-position:center 30%;



  }
}


@media only screen and (max-width: 725px) {

  header{

    background-position:bottom center;
    height: 500px;
 


  }

  .logo{
    margin-top:0px;
  }

  .notice {
   
   
    max-width: 100vw;
    text-align: left;
    font-size: 11px;
    
}

.notice a{text-align: center;}

  
.banner{height:80px;}


  .banner-after{
    height:40vw;


  }


  img.logo {
    width: 75%;

}

div#imageright {

  text-align: center;
}


.right{margin-top:10vw;}


.hover-animation {
  transform: translate(-0px, -0px) scale(1.08);
}
.hover-animation .cardimage {
  width: 110%;
}

.hover-animation .cardcontentwrapper {
  transform: translate(0, -0%);
  transform-origin: 50% 50%;
}


}


@media only screen and (max-width: 580px) {
  .right{margin-top:13vw;}


  .infobox span img {
    width: 4vw;
    height: auto;
    margin-top: 4px;
}





}







@media only screen and (max-width: 420px) {
header{height:90vw;}
header::after{
  position: absolute;
  left: 0;
  content: '';
  height:50vw;
  width:100%;
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(0,212,255,0) 100%);

}

}











/*! HTML5 Boilerplate v8.0.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.1.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
* What follows is the result of much research on cross-browser styling.
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
* Kroc Camen, and the H5BP dev community and team.
*/

/* ==========================================================================
Base styles: opinionated defaults
========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800 ;
  position: relative;
}





/*
* Remove text-shadow in selection highlight:
* https://twitter.com/miketaylr/status/12228805301
*
* Vendor-prefixed and regular ::selection selectors cannot be combined:
* https://stackoverflow.com/a/16982510/7133471
*
* Customize the background color to match your design.
*/

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
* A better looking default horizontal rule
*/

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
* Remove the gap between audio, canvas, iframes,
* images, videos and the bottom of their containers:
* https://github.com/h5bp/html5-boilerplate/issues/440
*/

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
* Remove default fieldset styles.
*/

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
* Allow only vertical resizing of textareas.
*/

textarea {
  resize: vertical;
}

/* ==========================================================================
Author's custom styles
========================================================================== */

/* ==========================================================================
Helper classes
========================================================================== */

/*
* Hide visually and from screen readers
*/

.hidden,
[hidden] {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
}

.clearfix::after {
  clear: both;
}

/* ==========================================================================
EXAMPLE Media Queries for Responsive Design.
These examples override the primary ('mobile first') styles.
Modify as content requires.
========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
(-webkit-min-device-pixel-ratio: 1.25),
(min-resolution: 1.25dppx),
(min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
Print styles.
Inlined to avoid the additional HTTP request:
https://www.phpied.com/delay-loading-your-print-css/
========================================================================== */

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]::after {
    content: " (" attr(href) ")";
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  /*
  * Don't show links that are fragment identifiers,
  * or use the `javascript:` pseudo protocol
  */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  /*
  * Printing Tables:
  * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
  */
  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
    font-size:32px;
  }
}

