@import url("https://fonts.googleapis.com/css?family=Open+Sans:normal,bold");

html {
  box-sizing: border-box;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}

body {
  margin: 0;
  font-size: 13px;
  font-family: "Open Sans", sans-serif, Verdana, Helvetica;
  color: #444;
  background-color: white;
}

a {
  text-decoration: none;
  color: #00772d;
}

a:hover {
  text-decoration: underline;
}

.jobs {
  margin: 0px 10px;
}

.jobs-filter {
  display: flex;
  gap: 20px;
  position: sticky;
  top: 0px;
  z-index: 1;
  background: white;
  border-bottom: 1px solid #ccc;
}

.contract-type-selector,
.sector-selector {
  display: none;
}

.job-item {
  display: grid;
  grid-template-columns: 25% 20% 20% 20% 1fr;
  grid-template-rows: auto;
  gap: 10px;
  padding: 10px 0px;
  border-bottom: 1px solid #ccc;
  position: relative;
}

.job-item.title {
  position: sticky;
  z-index: 1;
  background: white;
  top: 41px;
}

@media (max-width: 568px) {
  .jobs-filter {
    display: block;
  }

  .job-item {
    display: block;
  }
}

.sector-title,
.sector,
.ad-type-title,
.ad-type {
  display: none;
}

.job-item.type-hidden,
.job-item.sector-hidden,
.job-item.region-hidden {
  display: none;
}

.job-item > div {
  hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  overflow: hidden;
}

@media (max-width: 568px) {
  .job-item > div {
    margin-bottom: 2px;
  }
}

.title {
  font-weight: bold;
}

@media (max-width: 568px) {
  .job-item.title {
    display: none;
  }
}

.more > a {
  background: url(images/arrow-more.png) no-repeat left center;
  overflow: hidden;
  width: 36px;
  float: right;
  height: 100%;
}

@media (max-width: 568px) {
  .more {
    position: absolute;
    top: 10px;
    right: 10px;
    height: 20px;
  }
}

/* single job */
.single-job {
  margin: 0 10px;
}

.single-job p,
.single-job ul,
.single-job h3 {
  margin-bottom: 10px;
}

.single-job p,
.single-job li,
.single-job h3 {
  font-size: 16px;
  line-height: 1.4;
  margin-top: 0;
}

.single-job .back-link {
  position: absolute;
  top: 45px;
  right: 10px;
  font-size: 14px;
}
@media (max-width: 568px) {
  .single-job .back-link {
    display: block;
    position: initial;
    text-align: right;
    margin-top: 10px;
  }
}

.single-job .headline > h1 {
  font-size: 30px;
  margin: 30px 0px 15px;
  color: black;
  font-weight: bold;
}

.headline .info {
  font-size: 16px;
  padding: 10px;
  margin-bottom: 30px;
  border: 1px solid #ccc;
}

.headline .info b {
  width: 120px;
  display: inline-block;
}

.text-form {
  display: flex;
  gap: 2%;
}

@media (max-width: 568px) {
  .text-form {
    display: block;
  }
}

.text-form__text,
.text-form__form {
  flex: 50%;
  text-align: justify;
}

.text-form__form label {
  display: block;
  font-weight: bold;
  color: #999;
  padding-bottom: 5px;
  font-size: 16px;
}

.text-form__form input {
  display: block;
}

.form-input {
  margin-bottom: 50px;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="date"],
textarea,
select {
  padding: 12px;
  background-color: #f9f9f9;
  border: 1px solid #ccc;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  width: 100%;
  line-height: 1.2;
  margin-bottom: 20px;
  outline: none;
}

input[type="file"] {
  line-height: 1.2;
  margin-bottom: 20px;
  height: 28px;
  width: 154px;
}

input[type="file"]::-webkit-file-upload-button {
  height: 28px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
textarea:focus,
select:focus {
  background-color: #e6f0dc;
  border-color: #6b8d1a !important;
}

select,
input[type="date"] {
  width: auto;
}

select {
  font-size: 13px;
  -webkit-appearance: none;
}

option {
  color: black;
}

input,
button,
textarea,
select {
  font-family: inherit;
  font-weight: inherit;
  font-size: 16px;
}

.confirm-message {
  padding: 10px;
  margin: 5px 0px 10px;
  border: 1px solid #00772d;
  color: #00772d;
  font-size: 20px;
  display: none;
}
.confirm-message.show {
  display: block;
}

span.mandatory {
  font-weight: bold;
  color: #f00;
  padding-left: 10px;
}

.global-error-message {
  padding: 10px;
  margin: 5px 0px 10px;
  border: 1px solid red;
  color: red;
  font-size: 20px;
  display: none;
}
.global-error-message.show {
  display: block;
}

.result-error-message {
  color: red;
  padding-left: 10px;
}

.file-input-area {
  font-size: 16px;
  margin-bottom: 20px;
  background-color: #f9f9f9;
  border: 1px solid #ccc;
}

.file-input-area:empty {
  visibility: hidden;
}

.file-input-item {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 10px;
  margin: 12px;
}

.file-too-big {
  color: red;
}

.delete-file {
  color: red;
  cursor: pointer;
  font-size: 20px;
  position: relative;
  top: -3px;
}

.message-field {
  display: none;
}

/* .submit-wrapper {
  display: flex;
  justify-content: center;
} */

.select {
  padding: 1px;
  background-color: #f9f9f9;
  border: 1px solid #ccc;
  font-size: 13px;
}

:focus {
  outline: 0;
}
