/**
 * GENERAL
 */

@font-face {
  font-family: 'Vesterbro';
  src:  url('Vesterbro-Poster.woff2') format('woff2'),
        url('Vesterbro-Poster.ttf') format('truetype');
}

body {
  font-family: "Roboto", sans-serif;
}

h1, h2, h3 {
  font-family: "Vesterbro", serif;
}

a {
  color: #0056b3;
  text-decoration: underline;
}

pre {
  font-family: "Roboto", sans-serif;
}

label.error {
  color: #98002E;
  font-size: 12px;
}

@media(max-width: 991px) {
  .hidden-md {
    display: none;
  }
}

@media(max-width: 767px) {
  .hidden-sm {
    display: none;
  }
}

.huge-text {
  font-weight: bold;
  color: #252525;
  font-size: 40px;
}

.h-checkboxes {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.h-checkboxes label {
  margin-bottom: 0;
}

.h-checkboxes label.error {
  position: absolute;
  left: 100%;
}

label.radio input {
  display: none;
}

label.radio {
  display: inline-block;
  padding: 5px 20px;
  cursor: pointer;
}

label.radio>span {
  position: relative;
  line-height: 22px;
}

label.radio>span:before,
label.radio>span:after {
  content: '';
}

label.radio>span:before {
  border: 1px solid #C2CDD7;
  width: 24px;
  height: 24px;
  margin-right: 10px;
  display: inline-block;
  vertical-align: top;
}

label.radio>span:after {
  background: #C2CDD7;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 2px;
  left: 4px;
  transition: 300ms;
  opacity: 0;
}

label.radio input:checked+span:after {
  opacity: 1;
}

label.radio>span>span {
  position: absolute;
  font-size: 14px;
  left: 35%;
  top: -25px;
  transform: translateX(-50%);
}

li.checkmark, li.cross {
  list-style-type: none;
}

li.checkmark:before {
  content:"\2713\0020";
  color: green;
  font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial;
}

li.cross:before {
  content:"\2A2F\0020";
  color: red;
  font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial;
}

/**
 * HEADER
 */
header {
  min-height: 145px;
}

/**
 * MENU
 */
 select.select-menu {
 	display: none
 }

 select.select-menu {
   margin-bottom: 30px;
 }

ul.menu {
	margin: 0;
	padding: 0;
	list-style: none;
	display: inline;
	position: relative;
  display: flex;
  flex-direction: row;
}
ul.menu > li {
	text-align: left;
	padding-left: 23px;
	padding-right: 23px;
	position: relative;
  padding-bottom: 35px;
  margin-bottom: -35px;
}
@media screen and (max-width: 1199px) {
  ul.menu > li {
    padding-left: 15px;
    padding-right: 15px;
  }

}

ul.menu > li:last-child {
  padding-right: 0;
}
ul.menu > li > a {
	position: relative;
  color: #252525;
  font-weight: bold;
  font-size: 16px;
}

ul.menu > li.menu-item-has-children:hover {
  border-bottom: none;
}
ul.menu a {
  text-decoration: none;
}

ul.menu li ul {
	display: none;
	top: 35px;
	position: absolute;
	width: 220px;
	z-index: 500;
  border: 1px solid #737373;
	margin: 0;
	padding: 8px;
	left: 10px;
  background: #fff;
}
ul.menu li:hover ul {
	display: block;
}
ul.menu li ul li {
	display: block;
	border-top: 1px solid #D1D1D1;
	width: 100%;
	position: relative;
	padding: 0;
	margin: 0;
	height: auto;
	padding-bottom: 0;
  margin-bottom: 5px;
  margin-top: 5px;
	-webkit-transition-duration: 0.6s;
	-moz-transition-duration: 0.6s;
	-o-transition-duration: 0.6s;
	-ms-transition-duration: 0.6s;
	transition-duration: 0.6s;
}
ul.menu li ul li a {
	margin-top: 10px;
  margin-bottom: 10px;
	top: 0;
	font-size: 14px;
	color: #000;
	font-weight: bold;
	text-transform: none;
	padding-bottom: 0;
}
ul.menu li ul li:first-child {
	border-top: none;
}
ul.menu li ul li:last-child {
	border-bottom: none;
}

ul.menu li:hover,
ul.menu li:hover>a{
	color: #98002E;
}
ul.menu li.current_page_item>a {
	color: #98002E;
}
ul.menu li.current_page_item ul li a {
  color: #000;
}
ul.menu li.current_page_item ul li:hover a {
  color: #98002E;
}

/**
 * FRONT PAGE
 */
.front-banner-image {
  height: 285px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.page-banner .front-banner-image h1 {
  padding-right: 50%;
  position: absolute;
  bottom: 50px;
  left: 50px;
  margin-bottom: 0;
  font-size: 32px;
}


@media(max-width: 991px) {
  .page-banner .front-banner-image h1 {
    left: 20px;
    top: 10px;
    margin-top: 0;
    font-size: 26px;
  }
}

/**
 * SEARCH PAGES
 */
.search-title {
  margin-left: 15px;
  color: #788FA5;
  font-size: 18px;
}

.search-input {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.search-input .select2-container {
  margin-bottom: 20px;
}

.select2 {
  width:100%!important;
}

.search-input .select2-container .select2-selection--single,
.form-page .select2-container .select2-selection--single,
.form-page .select2-container .select2-selection--multiple {
  height: 45px;
  border: 2px solid #C2CDD7;
  border-radius: 0;
  color: #252525;
  font-size: 18px;
}

.search-input .select2-container--default .select2-selection--single .select2-selection__rendered,
.form-page .select2-container--default .select2-selection--single .select2-selection__rendered,
.form-page .select2-container--default .select2-selection--multiple .select2-selection__rendered {
  height: 45px;
  line-height: 40px;
  padding-left: 15px;
}

.search-input .select2-container--default .select2-selection--single .select2-selection__placeholder,
.form-page .select2-container--default .select2-selection--single .select2-selection__placeholder,
.form-page .select2-container--default .select2-selection--multiple .select2-selection__placeholder {
  color: #252525;
  font-size: 18px;
}

.form-page .select2-container--default .select2-selection--multiple .select2-selection__rendered {
  display: flex;
}

.form-page .select2-container--default .select2-selection--multiple .select2-selection__choice {
  font-size: 12px;
  height: 25px;
  margin-top: 14px;
  line-height: 24px;
  float: none;
}

.form-page .select2-container--default .select2-selection--multiple .select2-search__field {
  margin-top: -2px;
}


.form-page .select2-container--default .select2-selection--multiple .select2-selection__choice {
  margin-top: 8px;
}

.search-input .select2-container .select2-selection__arrow,
.form-page .select2-container .select2-selection__arrow {
  display: none;
}

.search-input input,
.form-page input {
  height: 45px;
  border: 2px solid #C2CDD7;
  padding-left: 15px;
  color: #252525;
  font-size: 18px;
}

.search-input input::placeholder,
.form-page input::placeholder {
  color: #252525;
}

.search-button {
  width: 120px;
  margin-left: 15px;
}

.search-button button {
  width: 100%;
  height: 100%;
  background-color: #252525;
  color: white;
  font-weight: bold;
  font-size: 20px;
  border-radius: 0;
}

.page-template-page-candidates .search-button button {
  height: calc(100% - 20px);
}

.search-button button:hover {
  color: white;
}

.deactivate-button {
  background-color: #252525;
  color: white;
  font-weight: bold;
  font-size: 20px;
  border-radius: 0;
  padding: 10px 20px;
}

.deactivate-button:hover {
  color: rgba(255, 255, 255, 0.8);
}

@media (max-width: 767px) {
  .search-bar>.row>.d-flex {
    flex-direction: column;
  }

  .search-button {
    margin-top: 15px;
    margin-left: 0;
    width: 100%;
  }
}


/**
 * OVERVIEW BOXES
 */
.overview-box {
  margin-bottom: 20px;
  overflow: hidden;
}

.overview-box a {
  text-decoration: none;
}

.overview-box .company-name {
  font-size: 28px;
  color: #252525;
  font-weight: bold;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
}

.overview-box_image-container {
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #E6EFF0;
}

.overview-box_image-container img {
  max-height: 80px;
  max-width: 100%;
}

.overview-box_image-container.multiple-images {
  height: 230px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow: hidden;
  justify-content: start;
  text-align: center;
}

.overview-box_image-container.multiple-images a {
  flex: 0;
  display: table-cell !important;
  vertical-align: middle;
}

.overview-box_image-container.multiple-images * {
  display: block;
  width: auto;
  height: auto;
  max-width: unset;
  max-height: 80px;
  margin-left: 75px;
  margin-right: 75px;
}

.overview-box_header {
  background-color: #98002E;
  color: white;
  text-align: center;
}

.overview-box_header h2 {
  color: #252525;
  font-weight: bold;
  font-size: 18px;
  padding: 15px;
  margin-bottom: 0;
}

.overview-box_slider {
  display: flex;
  flex-direction: row;
  overflow: hidden;
}

.overview-box_slider a {
  flex: 0 0 100%;
}

.overview-box_details {
  height: 120px;
  background-color: #98002E;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
}

.overview-box_arrow-icon {
  position: absolute;
  right: 10px;
  bottom: 10px;
}

.overview-box_footer {
  min-height: 50px;
  margin-top: 10px;
  background-color: #FFEAD4;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #252525;
  font-weight: bold;
  height: 100%;
}

.overview-box_footer a {
  font-size: 20px;
  font-weight: bold;
  color: #252525;
  padding: 15px;
}

.overview-box_title {
  font-weight: bold;
  font-size: 18px;
  text-align: center;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.overview-box_subtitle {
  font-size: 16px;
}

/**
 * PAGE BANNER
 */
.page-banner {
  color: white;
}

.page-banner .attachment-post-thumbnail {
  width: 100%;
}

.page-banner h1 {
  margin-bottom: 20px;
  font-weight: bold;
}

@media (max-width: 991px) {
  .page-banner {
    min-height: 100px;
    display: flex;
    align-items: center;
  }

  .page-banner h1 {
    margin-top: 15px;
    margin-bottom: 15px;
  }

  .page-banner .page-banner-image {
    display: none;
  }
}

.footer-banner {
  background-color: #27509B;
}

footer {
  background-color: #27509B;
}

footer .footer-text {
  margin-top: 15px;
  font-size: 14px;
  color: white;
  text-align: center;
}

/**
 * SINGLE PAGES
 */
.single-content {
  margin-top: 75px;
  margin-bottom: 50px;
  padding-left: 15px;
}

.post-details h1 {
  font-size: 35px;
  font-weight: bold;
  color: #252525;
  margin-bottom: 60px;
}

.post-details .post-dates {
  margin-bottom: 30px;
}

.post-details .post-description {
  margin-bottom: 30px;
}

.post-details .post-description p {
  margin-bottom: 0;
}

.post-details .post-removal-date {
  margin-bottom: 20px;
}

.company-details .company-logo {
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #E6EFF0;
  font-size: 28px;
  color: #252525;
  font-weight: bold;
  text-decoration: none;
  width: 100%;
}

.company-details a {
  text-decoration: none;
}

.company-details .company-logo img {
  max-height: 100px;
  max-width: 100%;
  flex: none;
}

.company-details .company-info {
  color: white;
  padding: 25px 15px 30px;
}

.company-details .company-info h2 {
  font-size: 18px;
  font-weight: bold;
  font-family: "Roboto", sans-serif;
}

.company-details .company-info strong, .company-details .company-info span {
  font-size: 14px;
  line-height: 0.8px;
}

@media (max-width: 991px) {
  .single-content {
    padding-left: 0;
  }
}

.related-posts h3 {
  font-size: 16px;
  color: #788FA5;
  font-family: "Roboto", sans-serif;
}

/**
 * FORM PAGES
 */
.form-page {
  color: #252525;
  font-size: 18px;
}

.form-page h1 {
  margin-top: 40px;
  font-weight: bold;
  color: #252525;
  font-size: 40px;
}

.form-page textarea {
  display: block;
  width: 100%;
  border: 2px solid #C2CDD7;
}

.form-page input[type="file"] {
  display: none;
}

.form-page .file-upload-button {
  border: 2px solid #C2CDD7;
  width: 100%;
  height: 45px;
  display: flex;
  align-items: center;
  padding-left: 15px;
}

.submit-button {
  width: 100%;
  background-color: #27509B;
  color: white;
  font-weight: bold;
  border: 0;
  height: 45px;
  font-size: 20px;
  margin-bottom: 10px;
}

.form-page .submit-text {
  font-size: 14px;
}

@media (max-width: 991px) {
  .form-page .row {
    margin-left: -15px;
  }
}

/**
 * CANDIDATES
 */

.candidate-link-box-wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
  margin-bottom: 100px;
}

.candidate-link-box-wrapper a{
  text-decoration: none;
}

.candidate-link-box {
  height: 200px;
  width: 260px;
  margin: 10px;
  display: flex;
  align-items: center;
  font-weight: bold;
  color: white;
  justify-content: center;
  font-size: 28px;
  text-align: center;
  padding: 15px;
}

.candidate-link-box.red {
  background-color: #98002E;
}

.candidate-link-box.green {
  background-color: #8CC63F;
}

@media(max-width: 575px) {
  .candidate-link-box-wrapper {
    flex-direction: column;
    margin-top: 0;
    margin-bottom: 50px;
  }
}

#sitelogo {
  max-height: 110px;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.btn.btn-primary {
  background-color: #252525;
  border: 0;
}
