body {
  font-family: Arial, sans-serif;
  max-width: 1500px;
  margin: 0 auto;
  padding: 31px 62px;
  box-sizing: border-box;
}

header {
  background-color: #ffffff;
  padding: 23px 0;
  margin-bottom: 46px;
  width: 100%;
}

.header-container {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 31px;
}

.vacancy-container {
  display: flex;
  justify-content: space-between;
  gap: 77px;
  max-width: 100%;
}

.vacancy-left {
  flex: 3;
}

.vacancy-right {
  flex: 1;
}

.company-logo {
  width: 262px;
  height: 262px;
  margin-bottom: 23px;
  border: none;
  position: relative;
  overflow: hidden;
  background-color: #2b0a60;
  display: flex;
  justify-content: center;
  align-items: center;
}

.company-logo-img {
  width: 70%;
  height: 70%;
  object-fit: contain;
  display: block;
}

h1 {
  font-size: 48px;
  margin-bottom: 31px;
  font-weight: 400;
  margin-top: 0;
  line-height: 1.2;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: break-spaces;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
}

.job-details {
  margin-bottom: 54px;
}

.job-details div {
  margin-bottom: 9px;
  font-size: 32px;
  line-height: 1.5;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: break-spaces;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  font-weight: 400;
}

.company-name {
  font-weight: Medium;
  margin-top: 15px;
  font-size: 34px;
}

.company-info {
  margin-top: 31px;
}

.address, .contact-person {
  margin-bottom: 39px;
}

.address h3, .contact-person h3 {
  margin-bottom: 12px;
  font-size: 32px;
  font-weight: 500;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: pre;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  line-height: 1.2;
}

.address p, .contact-person p {
  margin: 8px 0;
  font-size: 24px;
  line-height: 1.5;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: break-spaces;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  font-weight: 400;
}

a {
  color: blue;
  text-decoration: none;
  font-size: 24px;
}

.contact-person a {
  color: blue;
  text-decoration: none;
  font-size: 24px;
  font-family: Roboto, Arial, sans-serif;
  font-weight: 400;
}

.tasks, .conditions, .requirements {
  margin-bottom: 46px;
}

.tasks h3, .conditions h3, .requirements h3 {
  font-size: 32px;
  margin-bottom: 23px;
  font-weight: 500;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: break-spaces;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  line-height: 1.2;
}

.tasks p, .conditions p, .requirements p {
  margin: 19px 0;
  font-size: 32px;
  line-height: 1.5;
  position: relative;
  padding-left: 39px;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: break-spaces;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  font-weight: 400;
}

.tasks p:before, .conditions p:before, .requirements p:before {
  content: "—";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 32px;
  font-family: Roboto, Arial, sans-serif;
  font-weight: 400;
}

.slogan {
  font-weight: 500;
  margin-top: 39px;
  font-size: 32px;
  font-family: Roboto, Arial, sans-serif;
  color: #000000;
  text-transform: none;
  overflow-wrap: initial;
  white-space: pre;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  line-height: 1.2;
}

.vacancy-right a {
  color: #244cf9;
  text-decoration: underline;
  font-size: 20px;
  font-family: Roboto, Arial, sans-serif;
  text-transform: none;
  overflow-wrap: initial;
  white-space: pre;
  text-rendering: geometricprecision;
  letter-spacing: 0px;
  font-weight: 400;
  line-height: 1.2;
}

/* Сохраняем адаптивность */
@media (max-width: 1500px) {
  body {
    padding: 20px 40px;
  }
  
  .vacancy-container {
    gap: 50px;
  }
  
  h1 {
    font-size: 38px;
  }
  
  .job-details div, .tasks p, .conditions p, .requirements p, .address p, .contact-person p, a {
    font-size: 20px;
  }
  
  .company-logo {
    width: 200px;
    height: 200px;
  }
  
  .company-name {
    font-size: 26px;
  }
  
  .tasks h3, .conditions h3, .requirements h3, .address h3, .contact-person h3 {
    font-size: 24px;
  }
}

@media (max-width: 900px) {
  .vacancy-container {
    flex-direction: column;
  }
  
  .vacancy-left, .vacancy-right {
    flex: none;
    max-width: 100%;
  }
}
/*Стили кнопок показать контакты*/
.hidden-contacts {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
  margin-top: 5px;
}

.hidden-contacts.show {
  max-height: 100px;
}

.contact-item {
  margin: 5px 0;
}

.vacancy-list{
  display: grid;
}

.vacancy{
  background-color: #dadada;
  max-width: 90%;
  font-size: 18px;
  padding: 10px;
  margin-bottom: 12px;
}

.vacancy h4{
  font-size: 20px;
  margin-top: 1px;
  margin-bottom: 6px;
}

.vacancy p{
  margin: 0px;
}