#app,
#app *,
#app *::before,
#app *::after {
  box-sizing: border-box;
}

html,
body {
  max-width: 100%;
}

body {
  overflow-x: hidden;
}

#app,
#app > header,
#app > main,
#app > footer,
.header,
.footer-nav,
.footer-author,
.burger-menu-panel,
.burger-menu-overlay {
  max-width: 100%;
}

#app img,
#app iframe,
#app video,
#app canvas,
#app svg {
  max-width: 100%;
}

main.legacy-page,
.legacy-page__content,
.legacy-page__meta,
.legacy-page__nav,
.legacy-page__html {
  width: 100%;
  max-width: 100%;
}

.legacy-page__html,
.legacy-page__html * {
  max-width: 100%;
}

.legacy-page__html img,
.legacy-page__image,
.step1-legacy-top img,
.legacy-page__gallery img {
  display: block;
  max-width: 100% !important;
  height: auto !important;
  border-radius: 20px;
}

.legacy-page__video iframe,
.legacy-page__html iframe {
  width: 100% !important;
  max-width: 100%;
}

.legacy-page__html table {
  display: block;
  width: 100% !important;
  max-width: 100%;
  overflow-x: auto;
}

.legacy-page__html td,
.legacy-page__html th,
.legacy-page__html p,
.legacy-page__html a,
.legacy-page__html span,
.legacy-page__html li,
.legacy-page__meta,
.legacy-page__intro,
.legacy-page__content h1 {
  overflow-wrap: anywhere;
}

@media (max-width: 1023px) {
  .header {
    padding-right: 88px !important;
  }

  .menu-burger {
    top: 0 !important;
    right: 0 !important;
    width: 72px !important;
    height: 72px !important;
    padding: 18px 16px !important;
    justify-content: center !important;
    border-radius: 24px !important;
  }

  .menu-burger span {
    width: 28px !important;
    height: 5px !important;
  }

  #app > main {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .footer-author {
    gap: 16px;
  }

  .company-board[data-v-a67a922d] {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
  }

  .company-board .image[data-v-a67a922d] {
    width: min(280px, 100%);
    min-width: 0;
    height: auto;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
  }

  .company-board .info[data-v-a67a922d] {
    padding: 18px 20px;
  }

  .company-board .info div[data-v-a67a922d],
  .company-board .info div p[data-v-a67a922d],
  .company-board .info div a[data-v-a67a922d] {
    font-size: 1rem;
    line-height: 1.5;
  }

  .filters[data-v-846966a7] {
    padding: 12px 16px;
    gap: 12px;
    flex-wrap: wrap;
    border-radius: 24px;
  }

  .calendar-events[data-v-846966a7] {
    gap: 24px;
  }

  .action-buttons[data-v-d9bff2d3] {
    padding-top: 24px;
  }

  .action-buttons a[data-v-d9bff2d3] {
    width: 100%;
    max-width: 100%;
  }

  .big-card .all-humans[data-v-1db0165a] {
    padding: 24px 16px;
  }
}

@media (max-width: 767px) {
  .header {
    gap: 12px;
  }

  .footer-author {
    flex-direction: column;
    align-items: flex-start;
  }

  .footer-nav,
  .footer-nav nav,
  .footer-nav nav div,
  .footer-links {
    align-items: center !important;
    text-align: center;
  }

  .footer-nav nav {
    justify-content: center !important;
  }

  .footer-nav nav div a,
  .link-footer {
    justify-content: center;
    text-align: center;
  }

  .footer-author .action-links {
    flex-direction: column;
    gap: 8px;
  }

  .calendar-events[data-v-846966a7] {
    flex-direction: column;
  }

  .events-block[data-v-846966a7],
  .calendar-wrapper[data-v-846966a7],
  .in-this-month[data-v-846966a7],
  .in-this-month div[data-v-846966a7] {
    width: 100%;
    max-width: 100%;
  }

  .calendar-wrapper[data-v-208826da],
  .calendar-side-column[data-v-208826da],
  .events-wrapper[data-v-208826da] .calendar-wrapper,
  .events-wrapper[data-v-208826da] .calendar-side-column {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    overflow: hidden;
  }

  .events-wrapper[data-v-208826da] .home-calendar-input,
  .members-events-calendar .home-calendar-input,
  .ruef-events-calendar .home-calendar-input {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
    -webkit-appearance: none;
    appearance: none;
  }

  .card-of-humans .info[data-v-1db0165a],
  .all-humans[data-v-1db0165a] {
    flex-direction: column;
    align-items: center;
  }

  .card-of-humans .info img[data-v-1db0165a],
  .all-humans .info img[data-v-1db0165a] {
    width: min(180px, 100%);
  }

  .card-links .links a[data-v-1db0165a] {
    width: 100%;
    max-width: 100%;
    min-height: 72px;
    height: auto;
    padding: 18px 20px;
  }
}
