@media screen and ( max-width: 1399px ) {
  .hero {
    background-size: cover !important;
    background-position: center left;
  }
  .hero:before {
    clip-path: polygon(0 0, 55% 0%, 100% 100%, 0% 100%);
  }
}
@media screen and ( max-width: 1199px ) {
  .hero:before {
    width: 80%;
    clip-path: polygon(0 0, 65% 0%, 100% 100%, 0% 100%);
  }
  .footer-top .inner {}
  .footer-top .inner .logo {
    order: 1;
    flex: 0 0 50%;
  }
  .footer-top .inner .callback {
    order: 2;
    flex: 0 0 50%;
    text-align: right;
  }
  .footer-top .inner .address,
  .footer-top .inner .phone,
  .footer-top .inner .email {
    margin-top: 24px;
    flex: 0 0 calc(100% / 3);
    text-align: center;
  }
  .footer-top .inner .address {
    order: 3;
  }
  .footer-top .inner .phone {
    order: 4;
  }
  .footer-top .inner .email {
    order: 5;
  }
}
@media screen and ( max-width: 991px ) {
  .container, .container-md, .container-sm {
    max-width: calc(100% - 64px);
  }
  .hero:before {
    display: none;
  }
  .hero .inner {
    background: rgba(255,255,255,.8);
    margin: 40px 0;
    padding: 40px;
    padding-left: 80px;
  }
  .works-item.main:before {
    display: none;
  }
}
@media screen and ( max-width: 767px ) {
  .cookie-agreement .pc {
    display: none
  }
  .cookie-agreement .mobile {
    display: initial !important
  }
  .hero .inner h2 {
    font-size: 32px;
  }
  .hero .inner h2:before {
    top: 5px;
  }
  .hero .inner p {
    font-size: 24px;
  }
  .block #works .block-header {
    margin: 0;
  }
  .block #about .activities:before {
    border-top: 35px solid var(--color-4);
    border-right: 35px solid var(--color-4);
    border-bottom: 35px solid transparent;
    border-left: 35px solid transparent;
  }
  .laboratory-item {
    margin: 0 auto;
  }
  .footer-top .inner .address,
  .footer-top .inner .phone,
  .footer-top .inner .email {
    margin-top: 24px;
    flex: 100%;
    text-align: center;
  }
  .footer-bottom > * {
    flex: 100%;
    text-align: center;
    margin: 8px 0 0;
  }
}
@media screen and ( max-width: 575px ) {
  .container, .container-md, .container-sm {
    max-width: 100%;
  }
  .hero .container {
    padding: 0;
    margin: 0;
  }
  .hero .inner {
    margin: 0;
    padding: 32px;
    padding-left: 48px;
  }
  .block {
    padding: 32px 8px;
  }
  .block-header {
    font-size: 24px;
  }
  .block #about .activities,
  .works-item,
  .advantages-item {
    padding: 24px;
  }
  .block #pricelist .table th,
  .block #pricelist .table td {
    font-size: 15px;
  }
  .block #pricelist .table th,
  .block #pricelist .table td {
    padding: 8px 8px 8px 0 !important;
  }
  .block #pricelist .table tr > th:first-of-type,
  .block #pricelist .table tr > td:first-of-type {
    padding-left: 8px !important;
  }
  .block #pricelist .table .wide {
    min-width: 240px;
  }
  .footer-top .inner .logo,
  .footer-top .inner .callback {
    flex: 100%;
    text-align: center;
  }
  .footer-top .inner .callback {
    margin-top: 24px;
    order: 6;
  }
}
@media screen and ( max-width: 400px ) {
  .hero .inner h2 {
    font-size: 24px;
  }
  .hero .inner p {
    font-size: 18px;
  }
}