@import url('https://fonts.googleapis.com/css2?family=Bai+Jamjuree:wght@300;400;700&display=swap');

html, body, div, button, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote, pre, form, fieldset, table, th, td, a, figure, input, textarea { margin: 0px; padding: 0px; outline: none; }

input,textarea,button { font-family: 'Bai Jamjuree', sans-serif !important; }
input:disabled,textarea:disabled { cursor: not-allowed; }

html { overflow-x: hidden; transition: all .5s; }
body { font-family: 'Bai Jamjuree', sans-serif; font-size: 18px; font-weight: 300; line-height: 1.7; /*opacity: 0; transition: opacity .2s ease-in-out;*/ }
body.rebooting:before { content: ""; left: 0; right: 0; bottom: 0; top: 0; background: rgba(0,0,0,1) url('/src/img/loading.svg') no-repeat center; position: fixed; z-index: 100; }
html.loaded body { opacity: 1; }
b { font-weight: 700; }
p.bold { font-weight: 700; }
img { max-width: 100%; }
.hidden { display: none; }

.mobile { display: none; }

.not-visible { opacity: 0; transform: translateY(10px); }
.now-visible { opacity: 1; transition: all .4s ease-in-out; transform: translateY(0); }

.wrap { max-width: 1500px; margin: 0 auto; }
.wrap.small { max-width: 1700px; margin: 0 auto; }
.relative { position: relative; }
.button { transition: all .2s; display: inline-block; line-height: 30px; padding: 20px 34px; background-color: #5b4393; margin-top: 50px; color: #fff; border-radius: 3px; text-decoration: none; font-weight: 400; font-size: 20px; }
.button:after { content: ""; display: inline-block; width: 24px; height: 20px; margin-left: 20px; margin-top: 7px; vertical-align: top; background: url('/src/img/icons/light/fff/long-arrow-right.svg') no-repeat center; background-size: 24px; }
.button:hover { background: #7a60b7; color: #fff; }
.button.external:after { background: url('/src/img/icons/regular/fff/external-link.svg') no-repeat center; margin-top: 5px; }

form button { cursor: pointer; background-color: #5b4393 !important; transition: all .2s; }
form button:hover { background: #7a60b7 !important;; color: #fff;  }

a.link { font-size: 30px; font-weight: 700; color: #5B4394; text-decoration: none; display: inline-block; text-align: center; }
a.link:after { content: ""; transition: all .2s; margin-left: 20px; margin-top: 12px; vertical-align: top; display: inline-block; width: 30px; height: 30px; background: url('/src/img/icons/light/5b4393/long-arrow-right.svg') no-repeat center }
a.link:hover { color: #000; }
a.link:hover:after { margin-left: 30px; }

a.inactive { opacity: .5; cursor: not-allowed; }

.right { float: right; }
.left { float: left; }

.to-right,
.to-left { transition: all .7s; }

.to-right.not-active { transform: translateX(-20px); }
.to-right.active { transform: translateX(0); }

.to-left.not-active { transform: translateX(20px); }
.to-left.active { transform: translateX(0); }

.modal_wrapper { position: fixed; z-index: 1; left: 0; right: 0; top: 0; bottom: 0; background: rgba(0,0,0,.5); }
.modal { width: 800px; margin: 200px auto; background: #fff; border-radius: 3px; padding: 30px; position: relative; }
.modal a.close { position: absolute; right: 0; top: 0; width: 40px; height: 40px; background: #f00 url('/src/img/icons/regular/fff/times.svg') no-repeat center; background-size: 15px; border-radius: 0 3px 0 0; }
.modal a.close:hover { background-color: #ff3333 }

.modal form { display: flex; padding: 30px 0; flex-wrap: wrap; justify-content: space-between; }
.modal input { vertical-align: top; padding: 15px 30px; font-size: 17px; border: 1px solid #eee; border-radius: 3px; width: calc(50% - 10px); box-sizing: border-box; }
.modal textarea { vertical-align: top; padding: 15px 30px; font-size: 17px; border: 1px solid #eee; border-radius: 3px; margin-top: 20px; height: 150px; width: 100%; box-sizing: border-box; }
.modal button { vertical-align: top; border: 0; cursor: pointer; padding: 15px 30px; background-color: #5a4393; color: #fff; font-size: 17px; border-radius: 3px; margin-top: 20px; box-sizing: border-box; }

form.error input:not(.optional) { box-shadow: inset rgba(255,0,0,1) 0 0 4px !important; }
form.done button { background: #2bc652 url('/src/img/icons/regular/fff/check.svg') no-repeat center !important; color: transparent !important; background-size: 30px !important; }
form.done button:after { display: none !important; }

ul.usp { list-style: none; display: flex; margin-top: 150px; }
ul.usp li { margin-right: 30px; padding-left: 35px; font-weight: 700; background: url('/src/img/icons/solid/e74d1c/check-circle.svg') no-repeat left center; background-size: 25px; }

div.inline-subscribe input { vertical-align: top; padding: 15px 30px; font-size: 17px; border: 1px solid #eee; border-radius: 3px; width: 55%; box-sizing: border-box; }
div.inline-subscribe button { vertical-align: top; border: 0; cursor: pointer; padding: 15px 30px; background-color: #5a4393; color: #fff; font-size: 17px; border-radius: 3px; width: 40%; margin-left: 3%; box-sizing: border-box; }
div.inline-subscribe button:after { content: ""; width: 20px; height: 20px; display: inline-block; margin-top: 2px; margin-left: 8px; vertical-align: top; background: url('/src/img/icons/regular/fff/long-arrow-right.svg') no-repeat right center; }

div.columns,
div.flex { display: flex; justify-content: space-between; }
div.column { width: 100%; }
div.column h2 { font-size: 40px; }
div.column p { margin: 30px 0; }
div.text ul { margin: 30px 20px; line-height: 1.3; }
div.text ul li { margin: 20px 0; }
div.column img { border-radius: 5px; }
div.col_25 { width: 30%; }
body#home div.col_25 { border-left: 1px solid rgba(255,255,255,.15); }
div.col_75 { width: 70%; }

div.console { font-family: 'Roboto Mono', monospace; color: rgba(255,255,255,.8); overflow-y: scroll; }
div.console div.user { display: inline-block; color: rgba(255,255,255,.5); }
div.console div.command { display: inline-block; }
div.console input { display: inline-block; width: 10px; cursor: default; border: 0; font-size: 1px; text-indent: 100%; height: 16px; animation: blink 2s infinite; border: 1px solid #0f0; background: #000; vertical-align: top; padding: 3px 1px; color: #00ff00; }
div.console input:focus { background: #0f0; }

nav ul { display: flex; }
nav ul li { list-style: none; }

section.header { background: #111 url('/src/img/header-2.jpg') no-repeat top center; background-size: cover; color: #fff; position: relative; overflow: hidden; }
section.header:before { content: ""; left: -50px; right: -50px; height: 200px; background: #fff; position: absolute; bottom: -130px; transform: rotate(-3deg); box-shadow: rgba(91,67,147,1) 0 -100px 200px; z-index: 0; }
body#home section.header div.bottom div.columns div.col_25,
body#home section.header div.bottom div.columns div.col_75 { padding-bottom: 80px; }
body#home section.header:before { display: none; }
section.header a { color: #fff; }
body#home section.header div.top { border-bottom: 1px solid rgba(255,255,255,.1); }
section.header div.top div.columns div { padding: 0; }
section.header div.top a.logo { width: 300px; height: 70px; margin-top: 20px; display: inline-block; vertical-align: top; vertical-align: top; background: url('/src/img/logo-white.svg') no-repeat center; background-size: 260px; }
section.header div.top nav.menu { float: right; display: inline-block; margin-right: 50px; }
section.header div.top nav.menu a { display: block; padding: 40px 20px; font-weight: 700; text-decoration: none; position: relative; }
section.header div.top nav.menu a span { position: absolute; font-weight: 700; margin: -8px 0 0 -2px; font-size: 14px; background: #F9373D; width: 24px; text-align: center; height: 24px; border-radius: 15px; }
section.header div.top nav.menu a:after { content: ""; opacity: 0; transition: all .2s; position: absolute; left: 0; right: 0; bottom: -1px; border-left: 2px solid #000; border-right: 2px solid #000; height: 1px; background-color: #fff; }
body#home section.header div.top nav.menu a:hover:after,
body#home section.header div.top nav.menu a.active:after { opacity: 1; }
section.header div.top nav.menu a:hover { color: rgba(255,255,255,.6); }
section.header div.top nav.menu a:hover span { color: #fff; }

section.header div.top nav.menu.sub { float: right; margin-left: 30px; margin-right: 0; }
section.header div.top nav.menu.sub a { font-weight: 300; }
section.header div.top nav.menu.sub li:nth-child(2) a { margin-right: 20px; }
section.header div.top nav.menu.sub a.contact { transition: .2s; color: #5b4393; background: #fff; padding: 16px 24px; font-weight: 700; border-radius: 3px; margin-top: 24px; }
section.header div.top nav.menu.sub a.contact:after { opacity: 1; display: inline-block; position: relative; border: 0; width: 24px; height: 14px; margin-top: 8px; vertical-align: top; margin-left: 8px; background: url('/src/img/icons/light/5b4393/long-arrow-right.svg') no-repeat center; background-size: 18px; }
section.header div.top nav.menu.sub a.contact:hover,
section.header div.top nav.menu.sub a.contact.active { background: #5a4393; color: #fff; border: 0; }
section.header div.top nav.menu.sub a.contact:hover:after,
section.header div.top nav.menu.sub a.contact.active:after { background: url('/src/img/icons/light/fff/long-arrow-right.svg') no-repeat center; background-size: 18px; }

section.header div.title { padding: 50px 0 170px 0; text-align: center; position: relative; z-index: 2; }
section.header div.title h1 { font-size: 60px; margin-bottom: 40px; }
section.header div.title h1 span { color: #7c69a9; }
section.header div.title p { max-width: 1000px; margin: 0 auto; color: rgba(255,255,255,.7) }
section.header div.title ul.usp { justify-content: center; margin-top: 80px; }

section.header div.console { padding: 50px; font-size: 13px; line-height: 2; background: #000; position: absolute; bottom: 0; right: 0; width: 34vw; left: 0; top: 0; overflow-y: scroll; }
section.header div.col_75 h2 { margin-top: 160px; font-size: 70px; max-width: 940px; line-height: 1.2; }
section.header div.col_75 p { font-size: 23px; max-width: 800px; margin-top: 40px; margin-bottom: 40px; }
section.header div.col_75 input { border: 0; padding: 16px; width: 300px; font-size: 17px; border-radius: 4px; margin-right: 10px; vertical-align: top; }
section.header div.col_75 button { transition: .21s; cursor: pointer; padding: 16px 32px; font-size: 17px; font-weight: 700; color: #fff; background-color: #5b4393; border: 0; border-radius: 4px; }
section.header div.col_75 button:hover { background-color: #7a63b8; }

section.mission { padding: 60px 0; }
section.mission div.column h3 { padding-bottom: 40px; color: #5b4393; font-size: 22px; font-weight: 700; }
section.mission div.column { padding-right: 120px; }
section.mission div.column:last-child { padding-right: 0; }
section.mission div.column p { font-size: 18px; line-height: 2; }

section.statistics { padding: 80px 0; border-top: 1px solid #e5e5e5; }
section.statistics div.wrap { max-width: 1260px;  }
section.statistics div.certification { position: absolute; top: 0; right: 100px; bottom: 0; left: 0; background: #fff url('/src/img/certifications_new.jpg') no-repeat center; background-size: contain; }
section.statistics ul { display: flex; background: #5b4393; color: #fff; border-radius: 3px; box-shadow: rgba(91,67,147,.5) 0 0 30px; }
section.statistics ul li { list-style: none; width: calc(100%/3); padding: 30px; text-align: center; font-size: 20px;border-left: 1px solid rgba(255,255,255,.15);  }
section.statistics ul li:first-child { border: 0; }
section.statistics ul li b { display: block; font-weight: 700; font-size: 50px; line-height: 1; }

section.job-offers { position: relative; } 
section.job-offers span.bg-text { opacity: .8; position: absolute; bottom: -30px; left: 60px; color: #fff; font-weight: 700; font-size: 9vw; text-shadow: rgba(0,0,0,.1) 0 0 50px; }
section.job-offers span.bg-text:before { content: ""; left: 0; top: 0; right: 0; bottom: 0; background: linear-gradient(to bottom, #f1f1f1, transparent); position: absolute; }
section.job-offers div.bg { position: absolute; left: 0; bottom: 0; top: 0; width: 1380px; z-index: -1; }
section.job-offers div.bg-left { position: absolute; left: 0; bottom: 0; top: 0; width: calc(50% + 550px); background: #f1f1f1; z-index: -1; }
section.job-offers div.wrap { padding: 60px 0 120px 0; font-size: 0; }
section.job-offers div.job-offers-pre { vertical-align: top; display: inline-block; width: 100%; box-shadow: border-box; font-size: 22px; padding: 100px 50px 100px 0; box-sizing: border-box; }
section.job-offers div.job-offers-post { display:  width: 100%; font-size: 22px; padding: 0 50px 100px 0; box-sizing: border-box; }
section.job-offers div.job-offers { vertical-align: top; display: block; width: 75%; margin-left: -30px; box-shadow: border-box; font-size: 0; }
section.job-offers div.job-offers a { position: relative; transition: all .2s; box-shadow: rgba(0,0,0,.1) 0 0 100px; line-height: 2; color: #000; text-decoration: none; display: inline-block; font-size: 18px; vertical-align: top; background: #fff; border-radius: 3px; width: calc(100% / 2 - 60px); margin: 30px; padding: 110px 60px; box-sizing: border-box; }
section.job-offers div.job-offers a b { font-weight: 700; color: #5b4393; font-size: 30px; margin-bottom: 40px; display: block; }
section.job-offers div.job-offers a:hover { transform: scale(1.05); background: #5b4393; color: #fff; }
section.job-offers div.job-offers a:hover b { color: #fff; }

section.job-offers div.job-offers a#product-specialist { background: #fff url('/src/img/junior.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#junior { background: #fff url('/src/img/junior.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#medior { background: #fff url('/src/img/medior.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#senior { background: #fff url('/src/img/senior.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#product-specialist:hover { background: #5b4393 url('/src/img/junior-hover.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#junior:hover { background: #5b4393 url('/src/img/junior-hover.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#medior:hover { background: #5b4393 url('/src/img/medior-hover.png') no-repeat top right 30px; background-size: 60px; }
section.job-offers div.job-offers a#senior:hover { background: #5b4393 url('/src/img/senior-hover.png') no-repeat top right 30px; background-size: 60px; }

section.traineeships { text-align: center; padding: 120px 0; }
section.traineeships h2 { color: #5b4393; font-weight: 700; font-size: 50px; margin-bottom: 20px; }
section.traineeships p { font-size: 22px; max-width: 60%; margin: 0 auto; font-weight: 400; } 
section.traineeships ul { display: flex; list-style: none; text-align: left; margin: 50px 0; font-size: 18px; }
section.traineeships ul li:first-child { margin-right: 100px; }
section.traineeships ul li b { display: block; font-weight: 700; margin-bottom: 20px; font-size: 22px; }
section.traineeships ul li a { color: #000; text-decoration: none; padding: 120px; display: block; box-shadow: rgba(0,0,0,.05) 20px 50px 50px; }
section.traineeships ul li a:after { content: ""; margin-top: 40px; display: block; width: 24px; height: 20px; background: url('/src/img/icons/light/000/long-arrow-right.svg') no-repeat center; background-size: 24px; }
section.traineeships ul li a { transition: all .2s; background: url('/src/img/voor-bedrijven.jpg') no-repeat center; background-size: 100%; color: #fff; }
section.traineeships ul li a#students { background: url('/src/img/voor-studenten.jpg') no-repeat center; background-size: 100%; color: #fff; }
section.traineeships ul li a:after { background: url('/src/img/icons/light/fff/long-arrow-right.svg') no-repeat bottom center; background-size: 24px; transition: all .2s; }
section.traineeships ul li a:hover:after { background: url('/src/img/icons/light/fff/long-arrow-right.svg') no-repeat bottom center; margin-left: 20px; background-size: 24px; }
section.traineeships ul li a:hover { background-size: 110%; }
section.traineeships ul li a#students:hover { background-size: 110%; }

section.projects { margin-bottom: 120px; }
section.projects div.wrap { position: relative;background: #5a4393; color: #fff; padding: 120px 120px 120px 240px; box-sizing: border-box; }
section.projects div.hidden { display: none !important; }
section.projects img { float: left; width: calc(100% + 240px); max-width: none; margin: 0 auto; margin-left: -320px; box-shadow: rgba(0,0,0,.15) 0 0 100px }
section.projects h2 { font-size: 40px; margin-bottom: 60px; }
section.projects h3 { font-size: 40px; margin-bottom: 30px; }
section.projects a.button.white { position: absolute; top: 70px; right: 120px; border: 0; }
section.projects a.button.white:hover { color: #fff; background: rgba(255,255,255,.25); border-radius: 3px; border: 0;  }
section.projects p:first-child { font-weight: 700; }
section.projects p { margin: 30px 0; }
section.projects ul#projects { display: flex; list-style: none; gap: 1px; justify-content: space-around; margin-right: 120px; margin-top: 120px; }
section.projects ul#projects a { transition: all .2s; color: rgba(255,255,255,.2); font-weight: 700; text-decoration: none; font-size: 48px; }
section.projects ul#projects a.active,
section.projects ul#projects a:hover { color: #fff; }

section.events { padding: 100px 0; }
section.events img { max-width: 100%; }
section.events div.column:first-child { padding-right: 100px; }
section.events h2 { color: #5b4393; font-weight: 700; font-size: 50px; margin-bottom: 20px; padding-left: 100px; }
section.events ul.events { list-style: none; }
section.events ul.events a { transition: all .3s; display: block; padding: 40px 30px; text-decoration: none; border-radius: 3px;  color: rgba(0,0,0,.7); }
section.events ul.events a:hover { box-shadow: rgba(0,0,0,.1) 0 0 30px; }
section.events ul.events a span.title { display: block; font-weight: 700; margin-bottom: 10px; }
section.events ul.events a:hover span.title { color: #5a4393; background: url('/src/img/icons/light/5a4393/long-arrow-right.svg') no-repeat center right 20px; background-size: 20px; }
section.events ul.events a span.date { font-size: 16px; display: inline-block; padding-left: 25px; margin-right: 20px; background: url('/src/img/icons/light/000/calendar-alt.svg') no-repeat left center; background-size: 16px; }
section.events ul.events a span.location { font-size: 16px; display: inline-block; padding-left: 20px; background: url('/src/img/icons/light/000/map-pin.svg') no-repeat left center; background-size: auto 16px; }

section.footer { background: #111 url('/src/img/header.jpg') no-repeat top center; background-size: cover; color: #fff; }
section.footer a { transition: color .2s; color: #fff; }
section.footer a:hover { color: rgba(255,255,255,.7)  }

section.footer div#contact_info { padding: 0 0 50px 0; background: linear-gradient(to top, rgba(0,0,0,.8), transparent); }

section.footer div.bottom { background: #5a4393; }
section.footer div.bottom div.columns div { padding: 0; }
section.footer div.bottom a.logo { width: 300px; height: 70px; margin-top: 20px; display: inline-block; vertical-align: top; vertical-align: top; background: url('/src/img/logo-white.svg') no-repeat left center; background-size: 260px; }
section.footer div.bottom nav.menu { float: right; display: inline-block; margin-right: 50px; }
section.footer div.bottom nav.menu a { transition: .2s; display: block; padding: 42px 20px; box-sizing: border-box; font-weight: 700; text-decoration: none; position: relative; border-bottom: 1px solid transparent; }
section.footer div.bottom nav.menu a:hover { color: rgba(255,255,255,.7); }
section.footer div.bottom nav.menu a span { color: #fff; position: absolute; font-weight: 700; margin: -8px 0 0 -2px; font-size: 14px; background: #F9373D; width: 24px; text-align: center; height: 24px; border-radius: 15px; }

section.footer div.bottom nav.menu.sub { margin-left: 30px; margin-right: 0; }
section.footer div.bottom nav.menu.sub a { font-weight: 300; }
section.footer div.bottom nav.menu.sub a.contact { color: #5b4393; background: #fff; padding: 16px 24px; font-weight: 700; border-radius: 3px; margin-top: 24px; }
section.footer div.bottom nav.menu.sub a.contact:after { content: ""; display: inline-block; width: 24px; height: 20px; margin-left: 20px; margin-top: 9px; vertical-align: top; background: url('/src/img/icons/light/5b4393/long-arrow-right.svg') no-repeat center; background-size: 24px; }


section.footer div.col_100 { padding-bottom: 200px; text-align: center; width: 100%; }
section.footer div.col_100 h2 { margin-top: 240px; font-size: 60px; max-width: 940px; margin: 200px auto 10px auto; line-height: 1.2; }
section.footer div.col_100 p { font-size: 23px; max-width: 800px; margin: 60px auto; }
section.footer div.col_100 input { border: 0; padding: 16px; width: 300px; font-size: 17px; border-radius: 4px; margin-right: 10px; vertical-align: top; }
section.footer div.col_100 button { padding: 16px 32px; font-size: 17px; font-weight: 700; color: #fff; background-color: #5b4393; border: 0; border-radius: 4px; }

section.footer div.last-line { background: #fff; padding: 40px 0; color: #000; font-size: 14px; }
section.footer div.last-line a { color: #000; margin-left: 20px; }
section.footer div.last-line a:hover { color: rgba(0,0,0,.6); }
section.footer div.last-line div.column:last-child { text-align: right; }

section.subscribe { background: #fef6f3; max-width: 1500px; margin: 120px auto; padding: 50px; border-radius: 5px; box-sizing: border-box; }
section.subscribe h3 { color: #e74d1c; font-size: 32px; }
section.subscribe p { color: rgba(0,0,0,.7); margin: 0; }
section.subscribe div.column:last-child { text-align: right; }
section.subscribe input { border: 0; padding: 14px 30px; width: 400px; margin-right: 20px; margin-top: 20px; font-size: 22px; border-radius: 3px; box-sizing: border-box; }
section.subscribe button { border: 0; padding: 14px 30px; font-size: 22px; border-radius: 3px; cursor: pointer; background: #e74d1c; color: #fff; box-sizing: border-box; }

section.content { max-width: 900px; margin: 100px auto; }
section.content p { margin: 20px 0; }
section.content h2 { font-size: 40px; }
section.content ul { margin: 30px 20px; }
section.content ul li { margin: 10px 0; }

/* VACATURES */

#vacatures section.job-offers { text-align: center; max-width: 1200px; margin: 0 auto 120px auto; }
#vacatures section.job-offers h2 { font-size: 40px; text-align: center; margin: 80px 0; }
#vacatures section.job-offers div.job-offers { width: 100%; display: flex; margin: 100px 0; text-align: left; }
#vacatures section.job-offers div.job-offers a { margin: 0 30px; }
#vacatures section.job-offers div.job-offers a:first-child { margin-left: 0; }
#vacatures section.job-offers div.job-offers a:last-child { margin-right: 0; }
#vacatures section.job-offers div.wrap { margin: 0 auto; padding: 0; }

#vacatures section.working-at-zapphire { margin-bottom: 120px; } 
#vacatures section.working-at-zapphire div.column { width: 45%; }
#vacatures section.working-at-zapphire h3 { font-size: 40px; }
#vacatures section.working-at-zapphire p { margin: 40px 0; }
#vacatures section.working-at-zapphire ul.usp { display: block; margin: 30px 0; }
#vacatures section.working-at-zapphire ul.usp li { display: block; margin: 20px 0; font-weight: 400; background-position: left 5px; }

section.vacature-details { padding: 100px 0; margin: 0 auto; }
section.vacature-details div.wrap { max-width: 1200px; }
section.vacature-details div.column { width: 45%; }

section.vacature-details div.info { margin: 100px 0 40px 0; border-top: 1px solid rgba(0,0,0,.05); border-bottom: 1px solid rgba(0,0,0,.05); padding: 40px 0; }
section.vacature-details div.info div.flex div { padding-left: 60px; line-height: 1.4; }
section.vacature-details div.info div.location { background: url('/src/img/icons/light/7c69a9/map-marker-alt.svg') no-repeat left center; background-size: auto 44px;  }
section.vacature-details div.info div.hours { background: url('/src/img/icons/light/7c69a9/stopwatch.svg') no-repeat left center; background-size: auto 44px;  }
section.vacature-details div.info div.salary { background: url('/src/img/icons/light/7c69a9/euro-sign.svg') no-repeat left center; background-size: auto 44px; padding-left: 50px; }
section.vacature-details div.info div.education { background: url('/src/img/icons/light/7c69a9/graduation-cap.svg') no-repeat left center; background-size: auto 44px; padding-left: 70px; }

section.vacature-details div.share { background: #f7f5f9; padding: 40px 60px; border-radius: 5px; box-sizing: border-box; margin: 100px auto 50px auto; }
section.vacature-details div.share h2 { font-size: 30px; color: #7c69a9; }
section.vacature-details div.share p { margin: 0; }
section.vacature-details div.share ul { display: flex; justify-content: right; list-style: none; margin-top: 20px; }
section.vacature-details div.share ul li a { display: block; margin-left: 10px; padding: 6px 10px; border-radius: 3px; color: #000; text-decoration: none; padding-left: 35px; }
section.vacature-details div.share ul li a.email { background: url('/src/img/icons/light/5a4393/envelope.svg') no-repeat 10px center; background-size: 20px; }
section.vacature-details div.share ul li a.facebook { background: url('/src/img/icons/brands/5a4393/facebook-f.svg') no-repeat 10px center; background-size: 13px; padding-left: 32px; }
section.vacature-details div.share ul li a.linkedin { background: url('/src/img/icons/brands/5a4393/linkedin-in.svg') no-repeat 10px center; background-size: 20px; }
section.vacature-details div.share ul li a:hover { background-color: rgba(255,255,255,.7); }

section.vacature-details div.vacature-text { padding: 80px 0; }
section.vacature-details div.vacature-text div.column:first-child { width: 40%; }
section.vacature-details div.vacature-text div.column:last-child { width: 50%; }
section.vacature-details div.vacature-text div.card { margin-top: 20px; background: linear-gradient(45deg, #5a4393,#483575); color: #fff; border-radius: 5px; padding: 60px; }
section.vacature-details div.vacature-text div.card img { width: 200px; display: block; margin: -160px auto 20px auto; border-radius: 100px; }
section.vacature-details div.vacature-text div.card h3 { font-size: 40px; line-height: 1.3; }
section.vacature-details div.vacature-text div.card h4 { font-size: 18px; text-transform: uppercase; }
section.vacature-details div.vacature-text div.card ul { list-style: none; }
section.vacature-details div.vacature-text div.card ul a { color: #fff; padding-left: 15px; text-decoration: none; }

section.vacature-details div.growth-pad { margin: 0 auto; border-top: 1px solid rgba(0,0,0,.05); padding: 50px 0; }
section.vacature-details div.growth-pad ul { width: 540px; display: block; margin: 0 auto; font-size: 0; background: #f9f7fc; border-radius: 30px; margin-bottom: 50px; }
section.vacature-details div.growth-pad ul li { width: 270px; display: inline-block; font-size: 20px; }
section.vacature-details div.growth-pad ul li a { border-radius: 30px; padding: 10px 20px; display: block; text-align: center; color: #5a4393; text-decoration: none; }
section.vacature-details div.growth-pad ul li a.active { background: #5a4393; color: #fff; }
section.vacature-details div.growth-pad div.column:first-child { width: 50%; }
section.vacature-details div.growth-pad div.column:last-child { width: 40%; }

section.vacature-details div.growth-pad ol { list-style: none; }
section.vacature-details div.growth-pad ol li { margin: 16px 0; }
section.vacature-details div.growth-pad ol span { display: inline-block; margin-right: 10px; width: 30px; height: 30px; border-radius: 15px; background-color: #e74d1c; text-align: center; line-height: 30px; color: #fff; font-weight: 700; }

/* PROJECTEN */

#projecten section.project-overview { margin: 120px auto; text-align: center; }
#projecten section.project-overview div.columns { margin-bottom: 120px; }
#projecten section.project-overview div.column { width: 45%; text-align: left; }
#projecten section.project-overview div.column img { box-shadow: rgba(0,0,0,.15) 0 0 100px; }
#projecten section.project-overview div.next-project { padding: 120px 0; background: url('/src/img/bg-next-project.png') no-repeat center; background-size: contain; } 
#projecten section.project-overview div.next-project div.box { max-width: 600px; margin: 0 auto; background: #5b4393; padding: 60px; color: #fff; text-align: center; border-radius: 5px; }
#projecten section.project-overview div.next-project div.box h2 { font-size: 40px; margin-bottom: 40px; }
#projecten section.project-overview div.next-project div.box a.button { background-color: #fff; color: #5b4393; border-radius: 3px; border: 0; }
#projecten section.project-overview div.next-project div.box a.button:hover { color: #000; }
#projecten section.project-overview div.next-project div.box a.button:after { background-image: url('/src/img/icons/light/5b4393/long-arrow-right.svg'); }
#projecten section.project-overview div.project:last-child div.columns { margin: 0; }

#projecten section.subscribe { background: #f7f5fa;}
#projecten section.subscribe h3 { color: #5b4393; }
#projecten section.subscribe button { background: #5b4393; }

/* TRAINEESHIPS */
#traineeships section.traineeships-overview { margin: 100px 0; }
#traineeships section.traineeships-overview div.columns { margin: 120px 0; }
#traineeships section.traineeships-overview div.column { width: 45%; }

#traineeships section.traineeships-overview div.your-traineeship { max-width: 900px; margin: 100px auto; }
#traineeships section.traineeships-overview div.your-traineeship h2 { font-size: 40px; text-align: center; margin-bottom: 60px; }

#traineeships section.traineeships-overview div.your-traineeship div.steps { background: #f9f9f9; padding: 20px 50px; }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul { display: flex; justify-content: space-between; list-style: none; }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul span { display: inline-block; }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul a { color: #000; }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul span.step { width: 40px; height: 40px; border-radius: 20px; background: #fff; line-height: 40px; text-align: center; font-weight: 700; }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul span.title { padding-left: 15px; padding-right: 20px; background:  }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul a.active { color: #5b4393; font-weight: 700; }
#traineeships section.traineeships-overview div.your-traineeship div.steps ul a.active span.step { background: #5b4393; color: #fff; }

#traineeships section.traineeships-overview div.your-traineeship div.content { padding: 70px 50px; }
#traineeships section.traineeships-overview div.your-traineeship div.content h3 { color: #5b4393; font-size: 24px; }

#traineeships section.subscribe { background: #f7f5fa;}
#traineeships section.subscribe h3 { color: #5b4393; }
#traineeships section.subscribe button { background: #5b4393; }

/* EVENTS */

#events section.event-list div.block { margin-top: 100px; }
#events section.event-list div.block div.wrap { max-width: 900px; }
#events section.event-list h2 { text-align: center; border-bottom: 1px solid rgba(0,0,0,.05); color: rgba(0,0,0,.3); font-size: 30px; padding-bottom: 20px; }

#events section.event-list ul.events { list-style: none; }
#events section.event-list ul.events a { transition: all .3s; display: flex; padding: 20px 30px; margin: 20px 0; text-decoration: none; border-radius: 3px;  color: rgba(0,0,0,.7); }
#events section.event-list ul.events a:hover { box-shadow: rgba(0,0,0,.1) 0 0 30px; }
#events section.event-list ul.events a span.date-big { transition: none; padding: 15px 30px; color: #5b4393; border-radius: 3px; text-align: center; margin-right: 30px; font-size: 30px; font-weight: 700; line-height: 1; box-shadow: rgba(0,0,0,.1) 0 0 30px; }
#events section.event-list ul.events a span.meta { width: 100%; }
#events section.event-list ul.events a span.title { display: block; font-weight: 700; margin-bottom: 10px;  margin-top: 7px; }
#events section.event-list ul.events a:hover span.title { color: #5a4393; background: url('/src/img/icons/light/5a4393/long-arrow-right.svg') no-repeat center right 20px; padding-right: 100px; background-size: 20px; }
#events section.event-list ul.events a:hover span.date-big { box-shadow: none; }
#events section.event-list ul.events a span.date { font-size: 16px; display: inline-block; padding-left: 25px; margin-right: 20px; background: url('/src/img/icons/light/000/calendar-alt.svg') no-repeat left center; background-size: 16px; }
#events section.event-list ul.events a span.location { font-size: 16px; display: inline-block; padding-left: 20px; background: url('/src/img/icons/light/000/map-pin.svg') no-repeat left center; background-size: auto 16px; }

/* PROJECTEN */

#partners section.partners { margin: 120px auto; max-width: 1500px; text-align: center; }
#partners section.partners h3 { max-width: 1200px; margin: 20px auto; font-size: 30px;  }
#partners section.partners div.columns { margin: 120px 0; }
#partners section.partners div.column.img { background-size: 130%; background-position: center; }
#partners section.partners div.column { width: 45%; text-align: left; }
#partners section.partners div.column b { display: block; font-size: 26px; }
#partners section.partners div.column i { display: block; font-size: 20px; color: rgba(0,0,0,.5); margin-bottom: 30px; }

/* KLANTEN */

section.klanten { margin: 120px auto; max-width: 1500px; }
section.klanten ul.logos { text-align: center; list-style: none; display: flex; flex-wrap: wrap; justify-content: center; margin: 60px 0; margin: 0 -15px; }
section.klanten ul.logos li { background: #fff; display: inline-block; margin: 15px; padding: 55px 40px; border: 2px solid rgba(0,0,0,.05); }
section.klanten ul.logos li img { transition: all .2s; width: 236px !important; height: auto !important; opacity: .3; filter: grayscale(100); }
section.klanten ul.logos li:hover img { opacity: 1; filter: grayscale(0); }

/* OVER ZAPPHIRE */

#over-zapphire section.mission-vision { padding: 120px 0 60px 0; max-width: 1380px; margin: 0 auto; box-sizing: border-box; border-bottom: 1px solid rgba(0,0,0,.1); }
#over-zapphire section.mission-vision div.column { padding-right: 120px; }
#over-zapphire section.mission-vision div.column:last-child { padding-right: 0; }

#over-zapphire section.about div.block { text-align: center; padding: 60px; border-radius: 5px; margin-bottom: 60px; }
#over-zapphire section.about div.block h2 { margin-bottom: 30px; font-size: 40px; } 
#over-zapphire section.about div.block img { max-width: 500px; margin-top: 50px; }

#over-zapphire section.about div.column { width: 45%; }
#over-zapphire section.about div.columns:last-child { margin-top: 10%; }

#over-zapphire section.join-us { text-align: center; }
#over-zapphire section.join-us div.join-us { padding: 120px 0; background: url('/src/img/bg-next-project.png') no-repeat center; background-size: contain; } 
#over-zapphire section.join-us div.join-us div.box { max-width: 600px; margin: 0 auto; background: #5b4393; padding: 60px; color: #fff; text-align: center; border-radius: 5px; }
#over-zapphire section.join-us div.join-us div.box h2 { font-size: 40px; margin-bottom: 40px; }
#over-zapphire section.join-us div.join-us div.box a.button { background-color: #fff; color: #5b4393; border-radius: 3px; border: 0; }
#over-zapphire section.join-us div.join-us div.box a.button:hover { background-color: rgba(255,255,255,.9); }
#over-zapphire section.join-us div.join-us div.box a.button:after { background-image: url('/src/img/icons/light/5b4393/long-arrow-right.svg'); }

#over-zapphire section.join-us a.link { margin-bottom: 120px; }

#over-zapphire section.subscribe { background: #f7f5fa;}
#over-zapphire section.subscribe h3 { color: #5b4393; }
#over-zapphire section.subscribe button { background: #5b4393; }

/* CONTACT */

#contact section.contact  { padding-bottom: 100px; }
#contact section.contact h2 { font-size: 40px; margin: 50px auto 100px auto; text-align: center; }
#contact section.contact ul { list-style: none; margin-bottom: 30px; }
#contact section.contact div.column { border-left: 1px solid rgba(0,0,0,.05); padding-left: 30px; }
#contact section.contact div.column:first-child { border-left: 0; padding-left: 0; }
#contact section.contact div.column:first-child h3 { color: #5b4393; }
#contact section.contact div.column a { transition: color .2s; color: #000; }
#contact section.contact div.column a:hover { color: rgba(0,0,0,.6); }

#contact section.contactform { text-align: center; margin: 0 50px; background: url('/src/img/bg-contact.png') no-repeat center 500px; background-size: contain; padding: 100px 0; border-top: 1px solid rgba(0,0,0,.05); padding-bottom: 200px; }
#contact section.contactform a { color: #5b4393; text-decoration: none; }
#contact section.contactform a.button { color: #fff; background-color: #e74d1c; }
#contact section.contactform a.button:hover { background-color: #ed7d58; }
#contact section.contactform a span.switch { width: 30px; height: 21px; display: inline-block; vertical-align: top; margin: 5px 10px 0 0; background: url('/src/img/icons/light/5b4393/toggle-on.svg') no-repeat left center; background-size: 30px;  }
#contact section.contactform a.active span.switch { background: url('/src/img/icons/light/5b4393/toggle-off.svg') no-repeat left center; background-size: 30px; }

#contact section.contactform div.topbar { height: 16px; line-height: 16px; background: #222; width: 840px; margin: 100px auto 0 auto; padding: 25px 30px; border-radius: 5px 5px 0 0; text-align: left; }
#contact section.contactform div.topbar div.circle { display: inline-block; width: 16px; height: 16px; background: rgba(255,255,255,.2); border-radius: 8px; margin-right: 4px; }
#contact section.contactform div.topbar.white { background: #eee; }
#contact section.contactform div.topbar.white div.circle { background-color: #ccc; } 
#contact section.contactform div.topbar div.circle.red { background-color: #fa393e; }
#contact section.contactform div.console { padding: 50px; font-size: 13px; line-height: 2; background: #000; text-align: left; width: 800px; margin: 0 auto; height: 400px; border-radius: 0 0 5px 5px; }
#contact section.contactform div.form { padding: 50px; line-height: 2; background: #fff; text-align: left; width: 800px; margin: 0 auto; height: 400px; border-radius: 0 0 5px 5px; }
#contact section.contactform div.form form { display: flex; flex-wrap: wrap; justify-content: space-between;  }
#contact section.contactform div.form input { width: calc(50% - 10px); font-size: 17px; box-sizing: border-box; padding: 20px 30px; border: 2px solid #eee; border-radius: 3px; }
#contact section.contactform div.form textarea { width: 100%; margin: 20px 0; font-size: 17px; box-sizing: border-box; padding: 20px 30px; height: 230px; border: 2px solid #eee; border-radius: 3px;  }
#contact section.contactform div.form button { cursor: pointer; margin: 10px auto; border: 0; }
#contact section.contactform div.form input:focus,
#contact section.contactform div.form textarea:focus { border-color: #5b4393; }

@media all and (max-width: 900px) {

	html,body { overflow-x: hidden; font-size: 16px; }
	
	section.header::before { transform: none; }
	
	div.column { display: block !important; width: 100% !important; }
	div.column h2 { font-size: 28px; line-height: 1.2; }
	
	section.subscribe input { box-sizing: border-box !important; width: 100%; }
	section.subscribe button { width: 100%; margin-top: 10px; float: none; }
	
	div.inline-subscribe { font-size: 0; }
	div.inline-subscribe input.half { width: calc(50% - 5px); margin-bottom: 10px; }
	div.inline-subscribe input.halfend { margin-left: 10px; }
	div.inline-subscribe input { width: 100%; margin: 0; box-sizing: border-box; text-align: center; }
	div.inline-subscribe button { width: 100%; margin: 10px 0 30px 0; box-sizing: border-box; }
	
	section.klanten ul.logos li { padding: 30px; margin: 1px; border-width: 1px; }
	section.klanten ul.logos li img { transition: all .2s; width: 30vw !important; height: auto !important; opacity: .3; filter: grayscale(100); }
	
	section, div.columns { margin: 0 !important; }

	.mobile { display: block; }
	.non-mobile { display: none !important; }

	a.button { font-size: 16px; width: 100%; box-sizing: border-box;  }
	a.button::after { background-position: center right; margin: 5px 0 0 20px; }
	span.bg-text, div.bg-left { display: none !important; }

	a.hamburger { position: fixed; left: 0; right: 0; padding: 20px 10px; z-index: 100; width: calc(100% - 20px); background: #5a4393; height: 24px; cursor: pointer; bottom: 0; }
	a.hamburger span { transition: .2s all; display: block; width: 100%; width: 30px; left: 50%; margin-left: -15px; margin-top: 10px; height: 4px; background: #fff; position: absolute; }
	a.hamburger span:first-child { margin-top: 0; }
	a.hamburger span:last-child { margin-top: 20px; }
	a.hamburger.open { border-top: 1px solid rgba(255,255,255,.2); }

	a.hamburger.open span:nth-child(2) { display: none; }
	a.hamburger.open span:first-child { transform: rotate(45deg); margin-top: 10px; }
	a.hamburger.open span:last-child { transform: rotate(-45deg); margin-top: 10px; }

	nav.menu { padding-top: 100px; position: fixed; left: 0; bottom: 64px; right: 0; top: 0; background: #5b4393; z-index: 6; }
	nav.menu.hidden { display: none; }
	nav.menu ul { display: block; }
	nav.menu a { color: #fff; display: block; text-decoration: none; font-size: 36px; font-weight: 700; text-align: center; padding: 20px 0;  }
	nav.menu a span { display: none;  }

	ul.usp { display: block; font-size: 16px; margin-top: 50px; }
	ul.usp li { margin: 20px 0; }

	section { padding: 30px 0; }

	div.console { display: none; }
	div.columns { display: block !important; }]
	div.col_25 { width: 100%; }
	div.col_75 { width: 100%; }
	div.column { display: block !important; width: 100%; box-sizing: border-box; }
	div.wrap { width: 100% !important; margin: 0; padding: 0 20px; box-sizing: border-box; }

	section.header div.title h1 { font-size: 36px; line-height: 1.2; }
	section.header div.title p { font-size: 16px; line-height: 1.5; }

	section.header div.top nav.menu { display: none; }

	section.header a.jobs { position: absolute; right: 30px; top: 30px; text-decoration: none; font-weight: 700; font-size: 16px; z-index: 3; }
	section.header a.jobs span { position: absolute; font-weight: 700; margin: -8px 0 0 -2px; color: #fff; padding: 2px 2px 0 0; font-size: 12px; background: #F9373D; width: 22px; text-align: center; height: 22px; border-radius: 15px; }

	section.header { height: auto; padding-bottom: 30px; }
	section.header div.top { text-align: left; border: 0;  }
	section.header div.top a.logo { margin: 0; background-size: contain; width: 50%; margin-bottom: 10px; background-position: left top; }
	section.header div.col_75 h2 { font-size: 30px; clear: both; margin-top: 60px; }
	section.header div.col_75 p { font-size: 16px; }
	section.header div.col_75 input,
	section.header div.col_75 button { text-align: center; width: 100%; box-sizing: border-box; }
	section.header div.col_75 input#upload { border: 2px dashed rgba(255,255,255,.5); padding: 50px 0 0 0; background: rgba(0,0,0,.6) url('/src/img/icons/light/fff/cloud-upload.svg') no-repeat center 8px; background-size: 40px; height: 10px; box-sizing: border-box; display: inline-block; overflow: hidden; }
	section.header div.col_75 input { margin-bottom: 20px; }
	section.header div.col_75 h3 { font-size: 20px; text-align: center; padding-bottom: 10px; }

	section.mission div.column { padding: 0; margin-bottom: 30px; display: none !important;  }
	section.mission div.column:first-child { display: block !important; }
	section.mission div.column h3 { padding-bottom: 20px; }
	section.mission div.column p { font-size: 16px; margin-top: 0; }

	section.statistics { border: 0; padding: 0; }
	section.statistics ul { display: block; box-shadow: none; }
	section.statistics ul li { width: auto; border: 0; border-top: 1px solid rgba(255,255,255,.1); line-height: 30px; }
	section.statistics ul li b { display: inline-block; font-size: 30px; margin-right: 10px; vertical-align: top; }

	section.job-offers div.bg { background: #fff; }
	section.job-offers div.wrap { padding: 20px; margin: 0 auto; }
	section.job-offers div.job-offers-pre { width: 100%; display: block; padding: 60px 30px; font-size: 18px; }
	section.job-offers div.job-offers { display: none; }
	section.job-offers div.job-offers a { width: 100%; padding: 20px; margin: 10px 0; }

	#vacatures section.job-offers { margin: 20px !important; }
	#vacatures section.job-offers div.job-offers { display: block; margin: 0; }
	#vacatures section.job-offers div.job-offers a { margin: 10px 0; box-sizing: border-box; }
	#vacatures section.job-offers div.job-offers a p { font-size: 14px; }
	
	section.vacature-details { padding: 0; }
	
	section.vacature-details div.share ul { display: block; }
	section.vacature-details div.share ul li { margin: 5px 0; }
	section.vacature-details div.share ul li a { background-color: rgba(255,255,255,1) !important; margin: 0; }
	
	section.vacature-details div.vacature-text { margin: 20px !important; width: calc(100% - 40px) !important; }
	section.vacature-details div.vacature-text div.column:first-child { margin-bottom: 50px !important; }
	
	#vacatures section.working-at-zapphire div.column { width: 100%; }
	#vacatures section.working-at-zapphire div.column h3 { font-size: 36px; line-height: 1.2; margin-top: 30px; }
	#vacatures section.working-at-zapphire div.column p { font-size: 16px; }
	
	section.vacature-details div.growth-pad ul { display: flex; width: 100%; }
	section.vacature-details div.growth-pad ul li a { font-size: 14px; }
	
	section.traineeships { padding: 0; display: none; }
	section.traineeships h2 { font-size: 30px; line-height: 1; }
	section.traineeships p { font-size: 16px; max-width: none; }
	section.traineeships ul { flex-wrap: wrap; font-size: 0; line-height: 1.5; } 
	section.traineeships ul li { margin: 0 !important; width: 100%; box-sizing: border-box; }
	section.traineeships ul li a { padding: 30px; margin: 0; }
	section.traineeships ul li a::after { margin-top: 0; }

	section.projects { display: none; }

	section.events { padding: 0; display: none; }
	section.events h2 { padding-left: 0; font-size: 30px; }
	section.events div.column:first-child { padding: 0; }
	section.events ul li a { padding: 20px !important; font-size: 16px; border-top: 1px solid #eee; border-radius: 0 !important; margin-bottom: 20px; }
	section.events ul li:first-child a { border: none; }

	section.footer { padding: 0 0 60px 0; border-top: 1px solid #eee; background: none; } 
	section.footer div#contact_info { display: none !important; }
	section.footer div.col_100 { display: none !important; }
	section.footer div.col_75 { display: none !important; }
	section.footer div.col_25 { display: none !important; }
	section.footer div.last-line { text-align: center; background: transparent; font-size: 12px; padding: 30px 0; }  
	section.footer div.last-line div.column:last-child { text-align: center; margin-top: 10px; }
	section.footer div.last-line a { display: block; margin-top: 10px; }

	section.subscribe div.column h3 { font-size: 24px; line-height: 1.2; }
	section.subscribe div.column h3 { font-size: 24px; line-height: 1.2; }
}