@font-face {
  font-family: "Manrope";
  src:
    url(../1fc53579e1040cbf987d.woff2) format("woff2"),
    url(../b6c4aa0b0b711186d005.woff) format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src:
    url(../0d44fe833dd4c7229544.woff2) format("woff2"),
    url(../f4e54434d986b1395b3b.woff) format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src:
    url(../cb78aabfaaf5d95c8665.woff2) format("woff2"),
    url(../2046a49b5fa996c43f44.woff) format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src:
    url(../4fd67bb050c2faa01db8.woff2) format("woff2"),
    url(../5893ddfd10c17e34c95b.woff) format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src:
    url(../270c4d6c4c0046a961da.woff2) format("woff2"),
    url(../7be1290f01a23cfa7732.woff) format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src:
    url(../9cccfee0f8d3153ae547.woff2) format("woff2"),
    url(../4e55dc20921a95ef83f4.woff) format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src:
    url(../a90ad203eaed8bfd3323.woff2) format("woff2"),
    url(../af754df8afbc222b77e8.woff) format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../6593b9dd93fd1ad3b823.woff2) format("woff2"),
    url(../7496e611015392eeb264.woff) format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../561754398b82093a6f62.woff2) format("woff2"),
    url(../e316d27fcb909c6a0f8c.woff) format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../042d8b43b8cd78c82002.woff2) format("woff2"),
    url(../17618d0f3b7d44d67ee0.woff) format("woff");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../a3fb49867f7d7f61da35.woff2) format("woff2"),
    url(../f9f395910b47aec3eef4.woff) format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../7d308472292c5b6380e7.woff2) format("woff2"),
    url(../82d303e4123f5cfce09a.woff) format("woff");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../592bb98491e6543a714c.woff2) format("woff2"),
    url(../6e3d53477bfc07c42e04.woff) format("woff");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../ad3819817eba646755a0.woff2) format("woff2"),
    url(../024887782e8aa6b83345.woff) format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../c8898743eb0c2b1a9110.woff2) format("woff2"),
    url(../945b91a8ac4af16ef2eb.woff) format("woff");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../e45123095019f1a6e107.woff2) format("woff2"),
    url(../231ba51cf73a2875afdf.woff) format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../d8672058efc58b984c2b.woff2) format("woff2"),
    url(../328e0e6c14afe4f9dec3.woff) format("woff");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../5992a8ed0303a4751c8c.woff2) format("woff2"),
    url(../5655b8811e4309c54136.woff) format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../107f1db7a8a60b483b6f.woff2) format("woff2"),
    url(../d01bc3f75b766d5db4c8.woff) format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../9a8766f1516f3b759bb4.woff2) format("woff2"),
    url(../164999dfb0d8caaac833.woff) format("woff");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../8e11d2d50e015203c082.woff2) format("woff2"),
    url(../88dbd947375578c8a5d3.woff) format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../111f506e85817182cd90.woff2) format("woff2"),
    url(../74250e25625a9b4ab373.woff) format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../72a0d77e807e7f2a1262.woff2) format("woff2"),
    url(../acac4fcb6067e4626f90.woff) format("woff");
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../d0658fa6ae752fc58e6a.woff2) format("woff2"),
    url(../6fb9ab42c75faedcd8f6.woff) format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fira Sans";
  src:
    url(../1b538919d1fd3fd4a3af.woff2) format("woff2"),
    url(../2cac168dce0660dee03a.woff) format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

.site-header {
  border-radius: 16px;
  background: var(--footerheader);
  padding: 1.6rem 4.8rem !important;
  position: fixed;
  top: 16px;
  left: 50%;
  z-index: 110;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 32px);
  max-width: 1390px;
  margin: 0 auto;
  left: 0;
  right: 0;
}

.site-header .burger-menu {
  display: none;
}

.site-header .header-mobile {
  display: none;
}

.site-header .header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1330px;
}

.site-header .start-section {
  display: flex;
  align-items: center;
  gap: 5rem;
}

.site-header .header-logo {
  display: block;
}

.site-header .header-logo img {
  height: 8.5rem;
  width: auto;
}

.site-header .header-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 3.2rem;
}

.site-header .header-nav ul li {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
}

.site-header .header-nav ul li.dropdown {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.site-header .header-nav ul li.dropdown svg g path {
  transition: stroke 0.2s ease;
}

.site-header .header-nav ul li.dropdown:hover svg g path {
  stroke: var(--primary);
}

.site-header .header-nav ul li.dropdown:hover .dropdown-menu {
  display: flex;
  flex-direction: column;
}

.site-header .header-nav ul li.dropdown:hover ul a {
  color: var(--white);
}

.site-header .header-nav ul li.dropdown .dropdown-menu li:hover a {
  color: var(--primary);
}

.site-header .header-nav ul li a {
  color: #fff;
  text-transform: uppercase;
  font-weight: normal;
  line-height: 120%;
  transition: color 0.2s ease;
  font-size: 1.8rem;
}

.site-header .header-nav ul li a:hover {
  color: var(--primary);
}

.site-header .header-nav ul li.dropdown:hover {
  cursor: pointer;
}

.site-header .header-nav ul li.dropdown:hover a {
  color: var(--primary);
}

.site-header .header-nav ul li .dropdown-menu {
  display: none;
  position: absolute;
  padding: 8px 12px;
  padding-top: 3rem;
  gap: 16px;
  top: 100%;
  left: -10px;
  background: var(--footerheader);
  min-width: 114px;
  z-index: 1000;
  border-radius: 0px 0px 12px 12px;
  align-items: flex-start;
}

.site-header .header-nav ul li .dropdown-menu li a {
  font-size: 1.6rem;
  display: block;
  color: var(--white);
  white-space: nowrap;
}

.site-header .header-actions {
  display: flex;
  align-items: center;
  gap: 20px;
}

.site-header .header-actions .search-container {
  display: flex;
  position: relative;
  gap: 3rem;
}

.site-header .header-actions .search-container .search-btn {
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

.site-header .header-actions .search-container .search-btn svg g path {
  transition: all 0.2s ease;
}

.site-header .header-actions .search-container .search-btn:hover svg g path {
  stroke: var(--primary);
}

.site-header .header-actions .search-container .search-input {
  width: 40rem;
  padding: 6px 12px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-bottom: 1px solid var(--grey-text);
  opacity: 0;
  visibility: hidden;
  transform: translateX(-10px);
  transition:
    opacity 0.2s ease,
    visibility 0.2s,
    transform 0.2s ease;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--white);
}

.site-header .header-actions .search-container .search-input::placeholder {
  color: #999;
}

.site-header .header-actions .search-container.active .search-input {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.site-header .header-actions .search-container .search-suggestions {
  position: absolute;
  top: 6rem;
  left: 0;
  width: 90%;
  padding: 0;
  list-style: none;
  background: var(--footerheader);
  z-index: 1111;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-5px);
  transition:
    opacity 0.2s,
    transform 0.2s,
    visibility 0.2s;
  max-height: 30rem;
  overflow-y: auto;
}

.site-header .header-actions .search-container .search-suggestions.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.site-header .header-actions .search-container .search-suggestions li {
  padding: 8px 12px;
  cursor: pointer;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--white);
}

.site-header .header-actions .search-container .search-suggestions li:hover,
.site-header .header-actions .search-container .search-suggestions li.highlighted {
  background-color: var(--primary);
  color: #fff;
}

.site-header .header-actions .lang-switch {
  color: #fff;
  text-decoration: none;
  transition: color 0.2s ease;
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 120%;
}

.site-header .header-actions .lang-switch:hover {
  color: var(--primary);
}

@media (max-width: 768px) and (orientation: portrait) {
  .site-header {
    border-radius: 12px;
    padding: 1.6rem 3.2rem !important;
    transform: none;
    z-index: 110;
  }

  .site-header .header-nav {
    display: none;
  }

  .site-header .end-section {
    display: none;
  }

  .site-header .header-mobile {
    display: flex;
  }

  .site-header .header-mobile svg {
    width: 5.2rem;
    height: 5.2rem;
  }

  .site-header .header-mobile svg path {
    width: 5.2rem;
    height: 5.2rem;
  }

  .site-header .start-section {
    width: 100%;
    justify-content: space-between;
  }

  .site-header .header-logo img {
    height: 6.6rem;
    width: auto;
  }

  .site-header .burger-menu {
    display: flex;
  }

  .site-header .burger-menu .burger-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 5.2rem;
    height: 5.2rem;
    transition: transform 0.3s ease;
  }

  .site-header .burger-menu .burger-icon--closed .burger-line--top {
    transform-origin: center;
    transform: rotate(0) translate(0, 0);
  }

  .site-header .burger-menu .burger-icon--closed .burger-line--middle {
    opacity: 1;
    transform: translateX(0);
  }

  .site-header .burger-menu .burger-icon--closed .burger-line--bottom {
    transform-origin: center;
    transform: rotate(0) translate(0, 0);
  }

  .site-header .burger-menu .burger-icon--open .burger-line--top {
    transform: rotate(45deg) translateY(6.5px);
  }

  .site-header .burger-menu .burger-icon--open .burger-line--middle {
    opacity: 0;
    transform: translateX(-20px);
  }

  .site-header .burger-menu .burger-icon--open .burger-line--bottom {
    transform: rotate(-45deg) translateY(-6.5px);
  }

  .site-header .burger-menu .burger-svg {
    width: 5.2rem;
    height: 5.2rem;
  }

  .site-header .burger-menu .burger-line {
    transition:
      transform 0.4s cubic-bezier(0.23, 1, 0.32, 1),
      opacity 0.2s ease;
    transform-origin: center;
    stroke: #fff;
    stroke-width: 2;
    stroke-linecap: round;
  }
}

.site-header .no-scroll {
  display: flex;
}

.site-header .scroll {
  display: none;
}

.burger-menu-panel {
  display: none;
}

@media (max-width: 768px) and (orientation: portrait) {
  .burger-menu-panel {
    position: fixed;
    padding-top: 20.4rem !important;
    padding-bottom: 10rem !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #f5f5f5;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.3s ease-out;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
  }

  .burger-menu-panel.active {
    transform: translateX(0);
  }

  .burger-menu-panel .menu-body {
    flex-grow: 1;
  }

  .burger-menu-panel .menu-body .menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item {
    margin-bottom: 4.8rem;
    position: relative;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item a {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.8rem;
    line-height: 110%;
    color: var(--blue);
  }

  .burger-menu-panel .menu-body .menu-list .menu-item a svg {
    width: 3.6rem;
    height: 3.6rem;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item__link:hover {
    color: var(--primary);
  }

  .burger-menu-panel .menu-body .menu-list .menu-item__arrow {
    width: 1.8rem;
    height: 1rem;
    transition: transform 0.3s ease;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item__arrow.rotated {
    transform: rotate(180deg);
  }

  .burger-menu-panel .menu-body .menu-list .menu-item .menu-sublist {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item .menu-sublist.active {
    max-height: 36rem;
    padding-top: 3.2rem;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item .menu-sublist .menu-subitem {
    margin-bottom: 2.4rem;
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item .menu-sublist .menu-subitem a {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 120%;
    color: var(--grey-text);
    display: block;
  }

  .burger-menu-panel .menu-body .menu-list .menu-item .menu-sublist .menu-subitem a:hover {
    color: var(--primary);
  }

  .burger-menu-panel .menu-footer {
    display: flex;
    justify-content: center;
  }
}

.site-header.scrolled {
  background: var(--white);
}

.site-header.scrolled .header-content .start-section .burger-menu .burger-icon svg line {
  stroke: var(--blue);
}

.site-header.scrolled .header-content .start-section .header-nav ul li:hover {
  color: var(--primary);
}

.site-header.scrolled .header-content .start-section .header-nav ul li a {
  color: var(--text);
}

.site-header.scrolled .header-content .start-section .header-nav ul li a:hover {
  color: var(--primary);
}

.site-header.scrolled .header-content .start-section .header-nav ul li ul {
  background: var(--white);
}

.site-header.scrolled .header-content .end-section .header-actions .search-container .search-input {
  color: var(--text);
}

.site-header.scrolled .header-content .end-section .header-actions .search-container .search-suggestions {
  background: var(--white);
  color: var(--text) !important;
}

.site-header.scrolled .header-content .end-section .header-actions .search-container .search-suggestions li {
  color: var(--text);
}

.site-header.scrolled .header-content .end-section .header-actions .lang-switch {
  color: var(--text);
}

.site-header.scrolled .header-content .end-section .header-actions .lang-switch:hover {
  color: var(--primary);
}

.site-header.scrolled .no-scroll {
  display: none;
}

.site-header.scrolled .scroll {
  display: flex;
}

.site-footer.container {
  margin: 0 !important;
}

.site-footer {
  background: var(--footerheader);
  color: var(--light-text);
  width: 100%;
}

.site-footer .footer-logo {
  padding: 3.2rem 0px 4rem 0px;
}

.site-footer .footer-logo img {
  width: 10rem;
  height: auto;
}

.site-footer .footer-content {
  display: grid;
  grid-template-columns: 41.6rem 11.3rem 21.9rem 26.9rem;
  gap: 19.8rem;
  margin-bottom: 4rem;
  position: relative;
}

.site-footer .footer-content .footer-column.footer-contacts p:nth-last-child(2) {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--white);
  margin-bottom: 3.2rem;
}

.site-footer .footer-content .footer-column p:first-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--white);
  margin-bottom: 3.2rem;
}

.site-footer .footer-content .footer-column.footer-form p:nth-last-child(2) {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--white);
  margin-bottom: 3.2rem;
}

.site-footer .footer-content .footer-column.footer-form .footer-column-form-text {
  white-space: nowrap;
}

.site-footer .footer-content .footer-column p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
}

.site-footer .footer-content .footer-column.footer-form p:first-child {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 120%;
  margin-bottom: 0.8rem;
}

.site-footer .footer-content .footer-column.footer-form p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  margin-bottom: 2.4rem;
}

.site-footer .footer-content .footer-column.footer-form form p {
  font-family: var(--font-family);
  font-weight: 400 !important;
  font-size: 1.2rem !important;
  text-transform: none !important;
  line-height: 120%;
}

.site-footer .footer-content .footer-column.footer-form form p a {
  color: var(--white);
  transition: all 0.2s ease;
}

.site-footer .footer-content .footer-column.footer-form form p a:hover {
  color: var(--primary);
}

.site-footer .footer-content .footer-column.footer-form form .btn {
  width: 100%;
  justify-content: center;
}

.site-footer .footer-content .footer-column ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.site-footer .footer-content .footer-column ul li {
  margin-bottom: 2.4rem;
}

.site-footer .footer-content .footer-column ul li a {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  transition: all 0.2s ease;
}

.site-footer .footer-content .footer-column ul li a:hover {
  color: var(--primary);
}

.site-footer .footer-content .footer-column .contact-item {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-bottom: 2.5rem;
}

.site-footer .footer-content .footer-column .contact-item a {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  transition: all 0.2s ease;
}

.site-footer .footer-content .footer-column .contact-item a:hover {
  color: var(--primary);
}

.site-footer .footer-links {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  cursor: pointer;
  width: fit-content;
  position: absolute;
  bottom: 0;
  right: 0;
}

.site-footer .footer-links:hover a {
  color: var(--primary);
}

.site-footer .footer-links a {
  display: flex;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  text-align: right;
  transition: color 0.2s ease;
}

.site-footer .footer-links .pdf-badge {
  background: #e2231a;
  width: fit-content;
  padding: 2.2rem 1.7rem;
  border-radius: 4px;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: var(--white);
}

.site-footer .footer-bottom {
  border-top: 1px solid var(--line-light);
  padding-top: 2.4rem;
  padding-bottom: 2.6rem;
  font-size: 1.2rem;
}

.site-footer .footer-bottom .bottom-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.site-footer .footer-bottom .bottom-content .copyright {
  max-width: 56.5rem;
  font-weight: 400;
  font-size: 1.2rem;
  color: var(--line-light);
}

.site-footer .footer-bottom .bottom-content .copyright a {
  text-decoration: underline;
  text-decoration-skip-ink: none;
  transition: all 0.2s ease;
}

.site-footer .footer-bottom .bottom-content .copyright a:hover {
  color: var(--primary);
}

.site-footer .footer-bottom .bottom-content .legal-links {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 110%;
  color: var(--line-light);
}

.site-footer .footer-bottom .bottom-content .legal-links a {
  text-decoration: none;
  transition: all 0.2s ease;
  height: fit-content;
}

.site-footer .footer-bottom .bottom-content .legal-links a:hover {
  color: var(--primary);
}

.site-footer .footer-bottom .bottom-content .company-info {
  max-width: 44rem;
}

@media (max-width: 768px) and (orientation: portrait) {
  .site-footer .footer-bottom {
    padding: 4.6rem 0rem 3.2rem;
  }

  .site-footer .footer-links {
    margin-bottom: -10rem;
  }

  .site-footer .footer-links a {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 120%;
    text-align: right;
    color: var(--light-text);
  }

  .site-footer .footer-links .pdf-badge {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 120%;
    color: var(--white);
  }

  .site-footer .footer-logo {
    padding: 8rem 0px 6.4rem 0px;
  }

  .site-footer .footer-logo img {
    width: 9rem;
    height: auto;
  }

  .site-footer .footer-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 2rem;
    grid-template-areas: "form form" "menu services" "contacts contacts";
    margin-bottom: 15.4rem;
  }

  .site-footer .footer-content .footer-column p:first-child {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 120%;
    color: var(--white);
    margin-bottom: 4.8rem;
  }

  .site-footer .footer-content .footer-column ul li {
    margin-bottom: 3.2rem;
  }

  .site-footer .footer-content .footer-column ul li a {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 120%;
    color: var(--light-text);
  }

  .site-footer .footer-content .footer-column.footer-form .footer-column-form-text {
    white-space: wrap;
  }

  .site-footer .footer-content .footer-column.footer-form p:first-child {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 120%;
    margin-bottom: 1.6rem;
  }

  .site-footer .footer-content .footer-column.footer-form.footer-form p:nth-last-child(2) {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--white);
  }

  .site-footer .footer-content .footer-column.footer-form.footer-form form .btn {
    margin-bottom: 4.4rem;
  }

  .site-footer .footer-content .footer-column.footer-form form p {
    font-family: var(--font-family);
    font-weight: 400 !important;
    font-size: 2rem !important;
    line-height: 120%;
    color: var(--light-text);
  }

  .site-footer .footer-content .footer-form {
    grid-area: form;
    width: 100%;
  }

  .site-footer .footer-content .footer-menu {
    grid-area: menu;
  }

  .site-footer .footer-content .footer-services {
    grid-area: services;
  }

  .site-footer .footer-content .footer-column.footer-contacts p:nth-last-child(2) {
    font-size: 2.4rem;
  }

  .site-footer .footer-content .footer-contacts {
    grid-area: contacts;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }

  .site-footer .footer-content .footer-contacts p:first-child {
    grid-column: 1;
    grid-row: 1;
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 120%;
    text-transform: uppercase;
    color: var(--white);
    margin-bottom: 2.8rem;
  }

  .site-footer .footer-content .footer-contacts .contact-item {
    grid-column: 1;
    display: flex;
    align-items: flex-start;
    gap: 1.6rem;
    margin-bottom: 0;
  }

  .site-footer .footer-content .footer-contacts .contact-item svg {
    width: 4rem;
    height: 4rem;
  }

  .site-footer .footer-content .footer-contacts .contact-item a {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 120%;
    color: var(--light-text);
  }

  .site-footer .footer-content .footer-contacts .contact-item:nth-of-type(1) {
    grid-row: 2;
  }

  .site-footer .footer-content .footer-contacts .contact-item:nth-of-type(2) {
    grid-row: 3;
    margin-top: -5rem;
  }

  .site-footer .footer-content .footer-contacts p:nth-last-child(2) {
    grid-column: 2;
    grid-row: 1;
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 120%;
    text-transform: uppercase;
    color: var(--white);
    margin-bottom: 1.6rem;
  }

  .site-footer .footer-content .footer-contacts p:last-child {
    grid-column: 2;
    grid-row: 2;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 120%;
    color: var(--light-text);
    margin-bottom: 0;
  }

  .site-footer .footer-form p:first-child {
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }

  .site-footer .footer-form p:nth-child(2) {
    font-size: 1.6rem;
    margin-bottom: 1.6rem;
  }

  .site-footer .footer-menu p:first-child,
  .site-footer .footer-services p:first-child {
    margin-bottom: 1.6rem;
  }

  .site-footer .footer-menu ul li,
  .site-footer .footer-services ul li {
    margin-bottom: 1.6rem;
  }

  .site-footer .footer-menu ul li a,
  .site-footer .footer-services ul li a {
    font-size: 2.4rem;
  }

  .site-footer .footer-bottom .bottom-content {
    flex-direction: column;
    gap: 3.2rem;
  }

  .site-footer .footer-bottom .bottom-content .copyright {
    font-size: 1.1rem;
    order: 2;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2rem;
    color: var(--line-light);
    max-width: 100%;
  }

  .site-footer .footer-bottom .bottom-content .company-info {
    order: 3;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2rem;
    color: var(--line-light);
    max-width: 100%;
  }

  .site-footer .footer-bottom .bottom-content .legal-links {
    flex-direction: column;
    gap: 1.6rem;
    order: 1;
    max-width: 100%;
  }

  .site-footer .footer-bottom .bottom-content .legal-links a {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 120%;
    color: var(--line-light);
  }
}

.ssilki {
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-size: 5rem;
  font-weight: bold;
  margin-top: 150px;
}

.about-company {
  margin-bottom: 20rem;
}

.about-company__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.about-company__block {
  display: flex;
  justify-content: space-between;
}

.about-company__block .about-company__content-button {
  display: none;
}

.about-company__content-text div:first-child {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 6.5rem;
}

.about-company__content-text div:first-child p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  width: 58rem;
}

.about-company__content-text .about-company__content-image {
  display: none;
}

.about-company__content-text .btn div {
  margin-bottom: 0;
}

.about-company__content-text .btn {
  display: flex;
  margin-bottom: 10.6rem;
}

.about-company__content-text__group {
  display: flex;
  flex-direction: row;
}

.about-company__content-text__group div:first-child {
  padding-right: 2rem;
}

.about-company__content-text__group div:last-child {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  border-left: 1px solid var(--line-light);
  padding-left: 2.5rem;
}

.about-company__content-text__group div:last-child p:first-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.about-company__content-text__group div:last-child p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  width: 48rem;
  color: var(--grey-text);
}

.about-company__content-image img {
  width: 100rem;
  height: 70rem;
}

.services {
  margin-bottom: 20rem;
}

.services__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.services__subtitle {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--grey-text);
  max-width: 88rem;
  margin-bottom: 8rem;
}

.services__catalog {
  display: flex;
  justify-content: space-between;
}

.services__catalog__item {
  width: 58.2rem;
}

.services__catalog .item-container {
  padding: 2.4rem 2.4rem 4.4rem 2.4rem;
  border-radius: 16px;
  background: var(--white);
  transition: all 0.2s ease;
}

.services__catalog .item-container:hover {
  box-shadow:
    2px 2px 8px 0 rgba(0, 0, 0, 0.12),
    -2px -2px 8px 0 rgba(0, 0, 0, 0.12);
  background: #fff8f4;
}

.services__catalog .image-block {
  display: flex;
  justify-content: space-between;
  margin-bottom: 6.4rem;
}

.services__catalog .image-block p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 4rem;
  color: var(--blue);
}

.services__catalog .text-block {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  margin-bottom: 7.4rem;
}

.services__catalog .text-block p:first-child {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
}

.services__catalog .text-block p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--grey-text);
  width: 39rem;
}

.projects {
  margin-bottom: 20rem;
}

.projects__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.projects__bottom-line {
  display: flex;
  justify-content: end;
}

.projects__menu .swiper {
  width: 100%;
  height: auto;
}

.projects__menu .swiper-wrapper {
  align-items: stretch;
}

.projects__menu .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: stretch;
}

@media (min-width: 769px) {
  .projects__menu {
    overflow: visible !important;
    margin-bottom: 4.5rem !important;
  }

  .projects__menu .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, auto) !important;
    gap: 8.4rem 2.2rem !important;
    transform: none !important;
    transition: none !important;
    width: 100% !important;
  }

  .projects__menu .swiper-slide {
    width: 100% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    flex-shrink: unset !important;
    position: static !important;
    display: block !important;
    text-align: left !important;
  }

  .projects__menu__item {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .projects__menu__item div:nth-last-child(1) {
    display: flex;
    justify-content: end;
  }

  .projects__menu__item p {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 110%;
    color: var(--text);
  }

  .projects__menu__item img {
    width: 100%;
    height: 57.6rem;
    object-fit: cover;
    transition: height 0.2s ease;
    border-radius: 16px;
    margin-bottom: 2rem;
  }

  .projects__menu__item .projects__info {
    display: flex;
    flex-direction: column;
  }

  .projects__menu__item .projects__info p {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    margin-bottom: 0rem;
    transition: all 0.2s ease;
  }

  .projects__menu__item .projects__details {
    display: flex;
    flex-direction: column;
  }

  .projects__menu__item .projects__details>p:nth-child(1) {
    margin-bottom: 2rem;
  }

  .projects__menu__item .projects__details>div:nth-child(3) {
    height: 1px;
    width: 100%;
    background: var(--line-light);
    margin: 2rem 0rem;
  }

  .projects__menu__item .projects__details>div:nth-child(3),
  .projects__menu__item .projects__details>div:nth-child(4) {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: all 0.2s ease;
  }

  .projects__menu__item:hover img {
    height: 38.4rem;
  }

  .projects__menu__item:hover .projects__info>p:nth-child(1),
  .projects__menu__item:hover .projects__info>p:nth-child(2) {
    opacity: 1;
    max-height: 5rem;
    margin-bottom: 2rem;
  }

  .projects__menu__item:hover .projects__details>p:nth-child(1),
  .projects__menu__item:hover .projects__details>p:nth-child(2),
  .projects__menu__item:hover .projects__details>div:nth-child(3),
  .projects__menu__item:hover .projects__details>div:nth-child(4) {
    opacity: 1;
    max-height: 5rem;
  }
}

@media (max-width: 768px) and (orientation: portrait) {
  .projects__menu.swiper {
    padding-bottom: 8rem;
    margin-bottom: 4.8rem;
  }

  .projects__menu .swiper-button-prev,
  .projects__menu .swiper-button-next {
    top: auto !important;
    bottom: 0 !important;
    color: #243984;
    width: 3.2rem;
    height: 3.2rem;
  }

  .projects__menu .swiper-button-prev svg,
  .projects__menu .swiper-button-next svg {
    width: 1.2rem;
    height: 2rem;
  }

  .projects__menu .swiper-button-prev {
    left: 30% !important;
  }

  .projects__menu .swiper-button-next {
    right: 30% !important;
  }

  .projects__menu .main-pagination {
    bottom: 0.7rem !important;
  }

  .projects__menu .main-pagination .swiper-pagination-bullet {
    background: #dfe2e7;
    opacity: 1;
    width: 1.6rem;
    height: 1.6rem;
    margin: 0.5rem;
  }

  .projects__menu .main-pagination .swiper-pagination-bullet-active {
    background: var(--blue);
  }

  .projects__menu .main-pagination .swiper-pagination-bullet-disabled {
    color: #dfe2e7;
    opacity: 1;
  }

  .projects__menu .swiper-slide .projects__menu__item {
    width: 100%;
  }

  .projects__menu .swiper-slide .projects__menu__item img {
    width: 56rem;
    height: 60rem;
    object-fit: cover;
    border-radius: 16px;
    margin-bottom: 4rem;
  }

  .projects__menu .swiper-slide .projects__menu__item .projects__info {
    display: none;
  }

  .projects__menu .swiper-slide .projects__menu__item .projects__details {
    display: flex;
    flex-direction: column;
    gap: 3.2rem;
  }

  .projects__menu .swiper-slide .projects__menu__item .projects__details div {
    display: none;
  }

  .projects__menu .swiper-slide .projects__menu__item .projects__details p {
    font-size: 2.8rem;
  }
}

.project-stages-slider {
  user-select: none;
}

.project-stages-slider.dragging {
  cursor: grabbing;
}

.project-stages-slider.dragging * {
  pointer-events: none;
}

.project-stages-slider .project-stages-slider__content-wrapper {
  cursor: grab;
}

.project-stages-slider img {
  -webkit-user-drag: none;
  pointer-events: none;
}

.project-stages-slider {
  margin-bottom: 20rem;
  position: relative;
}

.project-stages-slider__header {
  margin-bottom: 5.2rem;
}

.project-stages-slider__header .project-stages-slider__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.project-stages-slider__content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 100%;
}

.project-stages-slider__description-wrapper {
  width: 100%;
  overflow: hidden;
  transition: height 0.4s ease;
}

.project-stages-slider__text-content {
  flex: 0 0 30%;
  text-align: left;
  height: 70.1rem;
}

@media (max-width: 767px) and (orientation: portrait) {
  .project-stages-slider__text-content {
    flex: 0 0 100%;
    min-height: auto;
  }
}

.project-stages-slider__text-content .project-stages-slider__subtitle {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--blue);
  margin-bottom: 3rem;
}

.project-stages-slider__text-content .project-stages-slider__stage-title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 4.8rem;
  line-height: 120%;
  margin-bottom: 8rem;
  color: var(--text);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.project-stages-slider__text-content .project-stages-slider__description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.project-stages-slider__image-container {
  position: relative;
  flex: 0 0 60%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70.1rem;
}

.project-stages-slider__image-prev,
.project-stages-slider__image-next {
  position: absolute;
  width: 46rem;
  height: 51.7rem;
  opacity: 0.6;
  transition: all 0.3s ease;
}

.project-stages-slider__image-prev img,
.project-stages-slider__image-next img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 16px;
}

.project-stages-slider__image-prev {
  left: 0px;
}

.project-stages-slider__image-next {
  right: 0px;
}

.project-stages-slider__image-current {
  position: relative;
  z-index: 2;
  width: 62.4rem;
  height: 70.1rem;
  transition: all 0.3s ease;
}

.project-stages-slider__image-current img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 16px;
  transition: opacity 0.3s ease;
}

.project-stages-slider__number {
  position: absolute;
  display: flex;
  bottom: 0;
  left: 0;
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 4rem;
  line-height: 120%;
  color: var(--blue);
}

.project-stages-slider__count {
  position: absolute;
  display: flex;
  bottom: 0;
  right: 0;
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 4rem;
  line-height: 120%;
  color: #dfe2e7;
}

.project-stages-slider__controls {
  display: flex;
  align-items: center;
  justify-content: end;
  margin-right: 45rem;
  gap: 2.4rem;
  margin-top: 4rem;
}

.project-stages-slider__btn {
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  display: flex;
  align-items: center;
}

.project-stages-slider__btn--prev {
  order: -1;
}

.project-stages-slider__pagination {
  display: flex;
  gap: 0.8rem;
}

.project-stages-slider__pagination .project-stages-slider__dot {
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background-color: #bdc3c7;
  cursor: pointer;
  transition: all 0.2s ease;
}

.project-stages-slider__pagination .project-stages-slider__dot.is-active {
  background-color: var(--blue);
}

.advantages {
  margin-bottom: 20rem;
}

.advantages__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.advantages__subtitle {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--blue);
  margin-bottom: 5.4rem;
}

.advantages__ps {
  display: flex;
  justify-content: end;
}

.advantages__ps p {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  text-align: right;
  color: var(--blue);
  max-width: 86rem;
}

.advantages__ps p span {
  position: relative;
  bottom: 1.5rem;
  font-family: var(--second-family);
  font-weight: 300;
  font-size: 6.4rem;
  line-height: 100%;
}

.advantages__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, auto);
  gap: 2rem;
  margin-bottom: 6rem;
}

.advantages__list .item__container {
  position: relative;
  padding: 3rem 2rem;
  border-radius: 16px;
  background: var(--white);
  width: 43.6rem;
  height: 41.6rem;
}

.advantages__list .item__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
  margin-bottom: 5.8rem;
  width: 37rem;
}

.advantages__list .item__subtitle {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--grey-text);
  max-width: 31.1rem;
  margin-bottom: 4.8rem;
}

.advantages__list .item__image {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  justify-content: end;
}

.advantages__list .item__image img {
  z-index: 10;
  width: 14.9rem;
  height: 15.6rem;
}

.licenses__slider {
  margin-bottom: 20rem;
}

.licenses__slider__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.licenses__slider .main-slider-container {
  position: relative;
}

.licenses__slider .main-slider-container .swiper.main-slider {
  padding-bottom: 8.4rem;
}

.licenses__slider .main-slider-container .main-slide-content {
  box-sizing: border-box;
}

.licenses__slider .main-slider-container .slider-controls {
  position: absolute;
  bottom: 0;
  width: 95vw;
  max-width: 1330px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  z-index: 11;
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-prev,
.licenses__slider .main-slider-container .slider-controls .licenses__slider-next {
  width: 2.4rem;
  height: 2.4rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-prev svg path,
.licenses__slider .main-slider-container .slider-controls .licenses__slider-next svg path {
  width: 1rem;
  height: 1.6rem;
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-prev.swiper-button-disabled svg g path,
.licenses__slider .main-slider-container .slider-controls .licenses__slider-next.swiper-button-disabled svg g path {
  stroke: #dfe2e7;
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-pagination {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  width: fit-content;
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.3rem;
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.licenses__slider .main-slider-container .slider-controls .licenses__slider-pagination .swiper-pagination-bullet-disabled {
  color: #dfe2e7;
  opacity: 1;
}

.licenses__slider .main-slider-container .inner-slider .inner-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 0.8rem;
  height: 0.8rem;
  margin: 0.3rem;
}

.licenses__slider .main-slider-container .inner-slider .inner-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.licenses__slider .main-slider-container .inner-slide img {
  width: 41.7rem;
  height: 60rem;
  display: block;
}

.news {
  margin-bottom: 20rem !important;
}

.news__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.news__button {
  margin-top: 5rem;
  display: flex;
  justify-content: end;
}

.news .swiper-button-prev,
.news .swiper-button-next {
  top: auto;
  bottom: 0;
  color: #243984;
  width: 2.4rem;
  height: 2.4rem;
}

.news .swiper-button-prev svg,
.news .swiper-button-next svg {
  width: 0.8rem;
  height: 1.4rem;
}

.news .swiper-button-prev {
  left: 47%;
}

.news .swiper-button-next {
  right: 47%;
}

.news .main-pagination {
  bottom: 0.2rem;
}

.news .main-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 0.8rem;
  height: 0.8rem;
  margin: 0.3rem;
}

.news .main-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.news .main-pagination .swiper-pagination-bullet-disabled {
  color: #dfe2e7;
  opacity: 1;
}

.news__list .swiper {
  width: 100%;
  height: auto;
}

.news__list .swiper-wrapper {
  align-items: stretch;
}

.news__list .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: stretch;
}

@media (min-width: 769px) {

  .news__list .swiper,
  .news__list .swiper-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    justify-content: space-between;
  }

  .news__list .swiper-slide {
    width: calc((100% - 4rem) / 3) !important;
    flex-shrink: 0;
    display: block;
  }

  .news__list .item {
    width: 100%;
    height: 100%;
  }

  .news__list .item__container {
    padding: 2.4rem;
    background: var(--white);
    border-radius: 16px;
    height: 100%;
    display: flex;
    flex-direction: column;
  }

  .news__list .item__image {
    width: 100%;
    height: 40.3rem;
    margin-bottom: 4rem;
  }

  .news__list .item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
  }

  .news__list .item__title {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--text);
    margin-bottom: 6rem;
    flex-grow: 1;
  }

  .news__list .item__subtitle {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 1.6rem;
    color: var(--text);
    margin-bottom: 3.2rem;
    flex-grow: 1;
  }

  .news__list .item__date {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 110%;
    color: var(--grey-text);
    margin-bottom: 4rem;
  }

  .news__list .item__button {
    display: flex;
    justify-content: end;
  }
}

@media (max-width: 768px) and (orientation: portrait) {
  .news__list .swiper-slide .item {
    width: 100%;
  }

  .news__list .swiper-slide .item__container {
    padding: 1.6rem 2.4rem;
    background: var(--white);
    border-radius: 12px;
    height: 100%;
    display: flex;
    flex-direction: column;
  }

  .news__list .swiper-slide .item__image {
    width: 100%;
    height: 40rem;
    margin-bottom: 4.8rem;
    border-radius: 10px;
  }

  .news__list .swiper-slide .item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
  }

  .news__list .swiper-slide .item__title {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--text);
    margin-bottom: 3.2rem;
  }

  .news__list .swiper-slide .item__subtitle {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 110%;
    color: var(--text);
    margin-bottom: 3.2rem;
  }

  .news__list .swiper-slide .item__date {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 2rem;
    line-height: 110%;
    color: var(--grey-text);
    margin-bottom: 4.8rem;
  }

  .news__list .swiper-slide .item__button {
    display: flex;
    width: 100%;
    justify-content: center;
  }

  .news__list .swiper-slide .item__button .btn {
    justify-content: center;
    width: 100%;
  }
}

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.modal-overlay.active {
  opacity: 1;
  pointer-events: all;
}

.modal-overlay .modal-content {
  position: relative;
  max-width: 100vw;
  max-height: 100vh;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.modal-overlay .modal-close-button {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  z-index: 10;
}

.modal-overlay .zoom-slider {
  width: 100%;
  height: 100%;
}

.modal-overlay .zoom-slider .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem;
}

.modal-overlay .zoom-slider img {
  width: 54rem;
  height: 75.5rem;
  object-fit: contain;
  cursor: grab;
}

.modal-overlay .zoom-slider img:active {
  cursor: grabbing;
}

.modal-overlay .zoom-next,
.modal-overlay .zoom-prev {
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 40px !important;
  height: 40px !important;
  color: #fff !important;
  opacity: 0.9;
}

.modal-overlay .zoom-prev {
  left: 30% !important;
}

.modal-overlay .zoom-next {
  right: 30% !important;
}

.modal-overlay .zoom-next::after,
.modal-overlay .zoom-prev::after {
  font-size: 1.5rem !important;
  color: #fff !important;
}

@media (max-width: 768px) and (orientation: portrait) {
  .about-company {
    margin-bottom: 16rem;
  }

  .about-company__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about-company__block {
    flex-direction: column;
  }

  .about-company__block .about-company__content-button {
    display: flex;
    justify-content: end;
  }

  .about-company__block .btn {
    display: flex;
  }

  .about-company__block .about-company__content-image {
    display: none;
  }

  .about-company__content-text {
    margin-right: 0;
  }

  .about-company__content-text div:first-child {
    gap: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about-company__content-text div:first-child p {
    font-size: 2.8rem;
    width: 96%;
  }

  .about-company__content-text .about-company__content-image {
    display: flex;
    margin-bottom: 6.4rem;
  }

  .about-company__content-text .about-company__content-image img {
    width: 100%;
    height: 60rem;
  }

  .about-company__content-text .btn {
    display: none;
  }

  .about-company__content-text__group {
    margin-bottom: 6.4rem;
  }

  .about-company__content-text__group div:first-child {
    padding-right: 2.4rem;
    margin-bottom: auto;
  }

  .about-company__content-text__group div:first-child svg {
    width: 4.8rem;
    height: 4.6rem;
  }

  .about-company__content-text__group div:last-child {
    gap: 3.2rem;
  }

  .about-company__content-text__group div:last-child p:first-child {
    font-size: 3.2rem;
  }

  .about-company__content-text__group div:last-child p:last-child {
    font-size: 2.8rem;
    width: 100%;
  }

  .services {
    margin-bottom: 16rem;
  }

  .services__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .services__subtitle {
    font-size: 3.6rem;
    margin-bottom: 6.4rem;
  }

  .services__catalog {
    flex-direction: column;
    gap: 3.2rem;
  }

  .services__catalog__item {
    width: 100%;
  }

  .services__catalog__item .item-container {
    padding: 4.8rem;
  }

  .services__catalog__item .image-block {
    margin-bottom: 5.8rem;
  }

  .services__catalog__item .image-block img {
    width: 20rem;
    height: 20rem;
  }

  .services__catalog__item .image-block p {
    font-size: 6.4rem;
  }

  .services__catalog__item .text-block {
    gap: 3.2rem;
    margin-bottom: 9rem;
  }

  .services__catalog__item .text-block p:first-child {
    font-size: 3.2rem;
  }

  .services__catalog__item .text-block p:last-child {
    font-size: 2.4rem;
    width: 100%;
  }

  .projects {
    margin-bottom: 16rem;
  }

  .projects__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .projects__bottom-line {
    justify-content: flex-start;
  }

  .project-stages-slider {
    margin-bottom: 16rem;
  }

  .project-stages-slider__header {
    font-size: 3.2rem;
    margin-bottom: 4.8rem;
  }

  .project-stages-slider__content-wrapper {
    gap: 6.4rem;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__text-content .project-stages-slider__subtitle {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__text-content .project-stages-slider__stage-title {
    font-size: 6rem;
    margin-bottom: 6.4rem;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__text-content .project-stages-slider__description {
    font-size: 2.8rem;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__image-container {
    width: 100%;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__image-container .project-stages-slider__image-prev {
    width: 32rem;
    height: 32rem;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__image-container .project-stages-slider__image-current {
    width: 48rem;
    height: 48rem;
  }

  .project-stages-slider__content-wrapper .project-stages-slider__image-container .project-stages-slider__image-next {
    width: 32rem;
    height: 32rem;
  }

  .project-stages-slider .project-stages-slider__controls {
    margin: 0;
    display: flex;
    justify-content: center;
    margin-top: 3rem;
  }

  .advantages {
    margin-bottom: 16rem;
  }

  .advantages__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .advantages__subtitle {
    font-size: 3.6rem;
    margin-bottom: 6.4rem;
  }

  .advantages__list {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
    gap: 1.6rem;
    margin-bottom: 6.4rem;
  }

  .advantages__list .item__container {
    border-radius: 12px;
    padding: 1.2rem;
    width: 33.2rem;
    height: fit-content;
  }

  .advantages__list .item__title {
    font-size: 2.4rem;
    max-width: 25rem;
    margin-bottom: 3.2rem;
  }

  .advantages__list .item__subtitle {
    font-size: 2.4rem;
    margin-bottom: 0;
  }

  .advantages__list .item__image {
    top: 0;
    bottom: auto;
  }

  .advantages__list .item__image img {
    width: 9rem;
    height: auto;
  }

  .advantages__ps {
    width: 100%;
  }

  .advantages__ps p {
    text-align: start;
    font-size: 3.2rem;
  }

  .project-stages-slider__content-wrapper {
    flex-direction: column;
  }

  .licenses__slider {
    margin-bottom: 16rem;
  }

  .licenses__slider__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .licenses__slider .main-slider-container .slider-controls {
    gap: 3.2rem;
  }

  .licenses__slider .main-slider-container .slider-controls .licenses__slider-prev,
  .licenses__slider .main-slider-container .slider-controls .licenses__slider-next {
    width: 3.2rem;
    height: 3.2rem;
  }

  .licenses__slider .main-slider-container .slider-controls .licenses__slider-pagination .swiper-pagination-bullet {
    width: 1.6rem;
    height: 1.6rem;
  }

  .licenses__slider .main-slider-container .inner-slide {
    width: 52rem;
    height: 74.8rem;
  }

  .licenses__slider .main-slider-container .inner-slide img {
    width: 100%;
    height: 100%;
  }

  .news {
    margin-bottom: 8rem !important;
  }

  .news__button .btn {
    display: flex;
    width: 100%;
    justify-content: center;
  }

  .news .news__list.swiper {
    padding-bottom: 8rem;
  }

  .news .news__list.swiper .swiper-button-prev,
  .news .news__list.swiper .swiper-button-next {
    top: auto !important;
    bottom: 0 !important;
    color: #243984;
    width: 3.2rem;
    height: 3.2rem;
  }

  .news .news__list.swiper .swiper-button-prev svg,
  .news .news__list.swiper .swiper-button-next svg {
    width: 1.2rem;
    height: 2rem;
  }

  .news .news__list.swiper .swiper-button-prev {
    left: 30% !important;
  }

  .news .news__list.swiper .swiper-button-next {
    right: 30% !important;
  }

  .news .news__list.swiper .main-pagination {
    bottom: 0.2rem !important;
  }

  .news .news__list.swiper .main-pagination .swiper-pagination-bullet {
    background: #dfe2e7;
    opacity: 1;
    width: 1.6rem;
    height: 1.6rem;
    margin: 0.5rem;
  }

  .news .news__list.swiper .main-pagination .swiper-pagination-bullet-active {
    background: var(--blue);
  }

  .news .news__list.swiper .main-pagination .swiper-pagination-bullet-disabled {
    color: #dfe2e7;
    opacity: 1;
  }

  .news__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .news .item__container {
    border-radius: 12px;
    padding: 1.6rem 2.4rem;
  }

  .modal-overlay .zoom-next {
    right: 0 !important;
  }

  .modal-overlay .zoom-prev {
    left: 0 !important;
  }
}

.hero__location-title--desk,
.hero__location-caption--desk,
.hero__location-title--mobi {
  display: none;
}

.hero__location-title--desk.hero__location-title--active,
.hero__location-caption--desk.hero__location-caption--active,
.hero__location-title--mobi.hero__location-title--active {
  display: block;
}

.hero {
  position: relative;
  height: 102.4rem;
  display: flex;
  align-items: end;
  justify-content: center;
  margin-bottom: 20rem;
  margin: none 1.6rem;
  padding: 0px 4.8rem;
}

.hero__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.8s ease-in-out;
  z-index: -1;
}

.hero video.hero__bg {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  background: none !important;
}

.hero__bg--active {
  opacity: 1;
  z-index: -1;
}

.hero__content {
  color: var(--white);
  text-align: left;
  margin-bottom: 4.6rem;
  margin-right: 20rem;
}

.hero__content .hero__stats-mobile {
  display: none;
}

.hero__content .hero__location-mobile {
  display: none;
}

.hero__tagline {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  margin-bottom: 8.3rem;
}

.hero__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 8rem;
  line-height: 110%;
  margin-bottom: 6.4rem;
}

.hero__subtitle {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  white-space: pre-line;
  margin-bottom: 6.4rem;
  width: 55rem;
}

.hero .btn {
  margin-bottom: 8.1rem;
}

.hero__stats {
  display: flex;
  gap: 7.7rem;
  margin-bottom: 4.1rem;
}

.hero__stats .hero__stat:last-child {
  width: 25rem;
}

.hero__stat {
  text-align: left;
  border-right: 1px solid var(--line-light);
  display: flex;
  flex-direction: column;
  padding-right: 7.7rem;
  padding-bottom: 2.9rem;
}

.hero .hero__stat:last-child {
  border-right: none;
}

.hero__stat-number {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 8rem;
  color: var(--white);
}

.hero__stat-label {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  text-align: left;
  color: var(--white);
}

.hero__stat:nth-last-child(2) .hero__stat-label {
  width: 13.4rem;
}

.hero__stat:first-child {
  white-space: nowrap;
}

.hero__location-title {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--white);
  margin-bottom: 1.4rem;
}

.hero__location-images {
  height: 8rem;
  display: flex;
}

.hero__location-btn {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  outline: none;
  z-index: 10;
}

.hero__location-btn:nth-child(2) {
  transform: translateX(-3.4rem);
  z-index: 9;
}

.hero__location-btn:nth-child(3) {
  transform: translateX(-6.8rem);
  z-index: 8;
}

.hero__location-btn:nth-child(4) {
  transform: translateX(-10.2rem);
  z-index: 7;
}

.hero__location-btn:nth-child(5) {
  transform: translateX(-13.6rem);
  z-index: 6;
}

.hero__location-btn:nth-child(6) {
  transform: translateX(-17rem);
  z-index: 5;
}

.hero__location-btn img {
  width: 6.8rem;
  height: 6.8rem;
  object-fit: cover;
  border-radius: 50%;
  transition: all 0.3s ease;
  border: 2px solid rgba(0, 0, 0, 0);
}

.hero__location-btn.active {
  z-index: 60;
}

.hero__location-btn.active img {
  width: 8rem;
  height: 8rem;
  border: 2px solid var(--primary);
}

.hero__location-caption {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 110%;
  color: var(--primary);
}

@media (max-width: 768px) and (orientation: portrait) {
  .hero {
    height: 144.8rem;
    justify-content: center;
    margin-bottom: 8rem;
  }

  .hero__bg {
    width: 100%;
  }

  .hero::before {
    height: 144.8rem;
  }

  .hero__stats:last-child {
    display: none;
  }

  .hero {
    flex-direction: column;
  }

  .hero__content {
    margin-top: 15rem;
    margin-bottom: 0;
    margin-right: 0;
  }

  .hero__content .hero__tagline {
    font-size: 3.2rem;
    margin-bottom: 8rem;
  }

  .hero__content .hero__title {
    font-size: 8rem;
    margin-bottom: 8rem;
  }

  .hero__content .hero__subtitle {
    font-size: 3.8rem;
    width: 100%;
    margin-bottom: 12rem;
  }

  .hero__content .hero__stats-mobile {
    display: flex;
  }

  .hero__content .hero__stats-mobile .hero__stats {
    display: flex;
    gap: 2rem;
    margin-bottom: 5.8rem;
  }

  .hero__content .hero__stats-mobile .hero__stats .hero__stat:nth-child(2) {
    padding-right: 7rem;
  }

  .hero__content .hero__stats-mobile .hero__stats .hero__stat {
    padding-right: 4rem;
    padding-bottom: 2rem;
  }

  .hero__content .hero__stats-mobile .hero__stats .hero__stat:first-child {
    padding-right: 2rem;
  }

  .hero__content .hero__stats-mobile .hero__stats .hero__stat:last-child {
    padding-right: 0rem;
  }

  .hero__content .hero__stats-mobile .hero__stats .hero__stat-number {
    font-size: 6.4rem;
  }

  .hero__content .hero__stats-mobile .hero__stats .hero__stat-label {
    font-size: 2.4rem;
  }

  .hero__content .hero__location {
    display: none;
  }

  .hero__content .hero__location-mobile {
    display: flex;
    flex-direction: column;
    align-items: end;
  }

  .hero__content .hero__location-mobile .hero__location {
    display: flex;
    flex-direction: column;
    width: 22rem;
  }

  .hero__content .hero__location-mobile .hero__location-title {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 110%;
    color: var(--white);
    text-transform: uppercase;
    margin-bottom: 0;
  }

  .hero__content .hero__location-mobile .hero__location-images img {
    width: 6.4rem;
    height: 6.4rem;
  }

  .hero__content .hero__location-mobile .hero__location-images img:first-child {
    width: 6.4rem;
    height: 6.4rem;
    border: none;
  }
}

.hero-other {
  height: 97.9rem;
  display: flex;
  align-items: center;
  margin-bottom: 20rem !important;
  --hero-bg-image-url: "../assets/images/hero-img1.png";
}

.hero-other::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--hero-bg-image-url) no-repeat center center;
  background-size: cover;
  z-index: -1;
  height: 97.9rem;
}

.hero-other__content {
  color: var(--white);
  text-align: left;
  position: relative;
  width: 100%;
}

.hero-other__tagline {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--light-text);
  margin-bottom: 8.7rem;
}

.hero-other__tagline .breadcrumbs-item:last-child {
  color: var(--white);
  display: inline;
  overflow-wrap: break-word;
  word-break: break-word;
  max-width: 100%;
}

.hero-other__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 8rem;
  line-height: 110%;
  color: var(--white);
  margin-bottom: 6.4rem;
  max-width: 60rem;
}

.hero-other__subtitle {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--white);
  max-width: 59rem;
}

.hero-other__pdf-doc {
  position: absolute;
  right: 8.7rem;
  bottom: 0;
  display: flex;
  gap: 1.6rem;
  align-items: center;
}

.hero-other__pdf-doc div {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--white);
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  padding: 1.45rem 0.95rem;
  background: #e2231a;
}

.hero-other__pdf-doc p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--light-text);
  text-transform: uppercase;
}

@media (max-width: 768px) and (orientation: portrait) {
  .hero-other {
    margin-bottom: 8rem !important;
    flex-direction: column;
    height: 103.2rem;
    justify-content: center;
  }

  .hero-other__content {
    margin-top: 13rem;
    padding-bottom: 17.6rem;
  }

  .hero-other::before {
    height: 103.2rem;
  }

  .hero-other__tagline {
    font-size: 2.4rem;
    margin-bottom: 4.8rem;
  }

  .hero-other__title {
    font-size: 8rem;
    margin-bottom: 4.8rem;
  }

  .hero-other__subtitle {
    font-size: 3.4rem;
    max-width: 100%;
  }

  .hero-other__pdf-doc {
    bottom: 0;
    left: 0;
  }

  .hero-other__pdf-doc div {
    font-size: 3.2rem;
    padding: 2.9rem 1.9rem;
  }

  .hero-other__pdf-doc p {
    font-size: 2.8rem;
  }
}

.input-field {
  margin-bottom: 16px;
}

.input-label {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 120%;
  color: var(--line-light);
  display: block;
  margin-left: 2.4rem;
  margin-bottom: 1.2rem;
}

.input-control {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--light-text);
  width: 100%;
  padding: 1.6rem 2.2rem;
  border: 1px solid var(--line-light);
  border-radius: 24px;
  background-color: rgba(0, 0, 0, 0);
}

.input-control::placeholder {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--light-text);
}

.checkbox-field {
  display: flex;
  align-items: flex-start;
  gap: 1.2rem;
  margin-bottom: 1.6rem;
}

/* Dark checkbox variant */
.checkbox-field--dark .checkbox-control {
  appearance: none;
  -webkit-appearance: none;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--text);
  border-radius: 4px;
  background-color: transparent;
  cursor: pointer;
  flex-shrink: 0;
  margin-top: 0.2rem;
}

.checkbox-field--dark .checkbox-control:checked {
  background-color: var(--text);
  border-color: var(--text);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
  background-size: 1.4rem;
  background-position: center;
  background-repeat: no-repeat;
}

.checkbox-field--dark .checkbox-control:focus {
  outline: 2px solid var(--text);
  outline-offset: 2px;
}

.checkbox-field--dark .checkbox-label {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 140%;
  color: var(--text);
  cursor: pointer;
}

.checkbox-field--dark .checkbox-label a {
  color: var(--primary);
  text-decoration: underline;
  transition: opacity 0.2s ease;
}

.checkbox-field--dark .checkbox-label a:hover {
  opacity: 0.8;
}

.checkbox-control {
  appearance: none;
  -webkit-appearance: none;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--line-light);
  border-radius: 4px;
  background-color: transparent;
  cursor: pointer;
  flex-shrink: 0;
  margin-top: 0.2rem;
}

.checkbox-control:checked {
  background-color: var(--primary);
  border-color: var(--primary);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
  background-size: 1.4rem;
  background-position: center;
  background-repeat: no-repeat;
}

.checkbox-control:focus {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.checkbox-label {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 140%;
  color: var(--light-text);
  cursor: pointer;
}

.checkbox-label a {
  color: var(--primary);
  text-decoration: underline;
  transition: opacity 0.2s ease;
}

.checkbox-label a:hover {
  opacity: 0.8;
}

@media (max-width: 768px) and (orientation: portrait) {
  .input-label {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 110%;
    color: var(--line-light);
    margin-left: 4.8rem;
    margin-bottom: 2.4rem;
  }

  .input-control {
    font-size: 2.8rem;
    padding: 3.2rem;
  }

  .input-control::placeholder {
    font-size: 2.8rem;
  }

  .checkbox-field--dark .checkbox-control {
    width: 3rem;
    height: 3rem;
    margin-top: 0.4rem;
  }

  .checkbox-field--dark .checkbox-control:checked {
    background-size: 2rem;
  }

  .checkbox-field--dark .checkbox-label {
    font-size: 2rem;
  }

  .checkbox-field {
    gap: 2rem;
    margin-bottom: 2.4rem;
  }

  .checkbox-control {
    width: 3rem;
    height: 3rem;
    margin-top: 0.4rem;
  }

  .checkbox-control:checked {
    background-size: 2rem;
  }

  .checkbox-label {
    font-size: 2.4rem;
    line-height: 130%;
  }
}

.btn {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  background: var(--primary);
  color: var(--light-text);
  padding: 0.8rem 1.6rem 0.8rem 2rem;
  border-radius: 32px;
  text-decoration: none;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.btn .icon_arrow-right {
  border: 1px solid var(--white);
  border-radius: 50%;
  padding: 0.7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0);
  transition: all 0.2s ease;
}

.btn .icon_arrow-right svg {
  width: 1.6rem;
  height: 1.6rem;
}

.btn .icon_download {
  border: 1px solid var(--white);
  border-radius: 50%;
  padding: 0.7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0);
  transition: all 0.2s ease;
}

.btn .icon_download svg {
  width: 1.6rem;
  height: 1.6rem;
}

.btn svg g path {
  transition: all 0.2s ease;
}

.btn:hover {
  background: #e85900;
}

.btn:hover .icon_arrow-right {
  background: var(--white);
}

.btn:hover .icon_download {
  background: var(--white);
}

.btn:hover svg g path {
  stroke: #e85900;
}

.btn--outline {
  background: rgba(0, 0, 0, 0);
  color: var(--primary);
  border: 1px solid var(--primary);
}

.btn--outline .icon_arrow-right {
  border-color: var(--primary);
  background: rgba(0, 0, 0, 0);
}

.btn--outline .icon_download {
  border-color: var(--primary);
  background: rgba(0, 0, 0, 0);
}

.btn--outline svg g path {
  stroke: var(--primary);
}

.btn--outline:hover {
  background: var(--primary);
  color: var(--light-text);
}

.btn--outline:hover .icon_arrow-right {
  background: var(--light-text);
}

.btn--outline:hover .icon_download {
  background: var(--light-text);
}

.btn--outline:hover svg g path {
  stroke: var(--primary);
}

.btn--disabled {
  background: #ccc;
  color: #666;
  cursor: not-allowed;
}

.btn--disabled:hover {
  background: #ccc;
}

@media (max-width: 768px) and (orientation: portrait) {
  .btn {
    font-size: 2.4rem;
    padding: 1.6rem 3rem;
  }

  .btn .icon_arrow-right {
    padding: 1.6rem;
  }

  .btn .icon_arrow-right svg {
    width: 3.2rem;
    height: 3.2rem;
  }

  .btn .icon_download {
    padding: 1.6rem;
  }
}

.error {
  position: relative;
}

.error__img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-44%, -44%);
}

.error__img img {
  height: 110.7rem;
  width: 158.9rem;
}

.error__img img:last-child {
  display: none;
}

.error__text {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  padding-top: 92.6rem;
  padding-bottom: 20rem;
  justify-content: center;
  width: 100%;
  z-index: 10;
}

.error__text__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  text-align: center;
  color: var(--blue);
}

.error__text__subtitle {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 16px;
  line-height: 120%;
  text-align: center;
  color: var(--text);
  max-width: 68rem;
  margin: 0 auto;
}

.error__text__button {
  display: flex;
  justify-content: center;
}

.error__text__button .btn {
  width: fit-content;
}

@media (max-width: 768px) and (orientation: portrait) {
  .error__img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -30%);
    width: 100%;
  }

  .error__img img {
    display: none;
    height: auto;
    width: 75rem;
  }

  .error__img img:last-child {
    display: block;
    z-index: 5;
  }

  .error__text {
    padding-top: 62rem;
    padding-bottom: 9.2rem;
  }

  .error__text__title {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.8rem;
    line-height: 110%;
    text-align: center;
    color: var(--blue);
  }

  .error__text__subtitle {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 110%;
    text-align: center;
    color: var(--text);
  }
}

.user-agreement__title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 4.8rem;
  line-height: 120%;
  color: var(--text);
  margin-top: 24rem;
  margin-bottom: 10rem;
}

.user-agreement__list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-bottom: 10rem;
}

.user-agreement__list .title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--text);
  margin-bottom: 4rem;
}

.user-agreement__list .description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.user-agreement__list .description span {
  font-weight: 700;
}

.user-agreement__list .description ul li {
  list-style: disc;
  margin-left: 2.5rem;
}

.user-agreement__buttons {
  display: flex;
  gap: 4rem;
  margin-bottom: 20rem;
}

@media (max-width: 768px) and (orientation: portrait) {
  .user-agreement__title {
    margin-top: 20rem;
    margin-bottom: 6.4rem;
    font-size: 6rem;
  }

  .user-agreement__list {
    gap: 4.8rem;
  }

  .user-agreement__list .title {
    font-size: 3.2rem;
  }

  .user-agreement__list .description {
    font-size: 2.8rem;
  }

  .user-agreement__list .description ul li {
    margin-left: 4rem;
  }

  .user-agreement__buttons {
    margin-bottom: 8rem;
    gap: 2rem;
  }

  .user-agreement__buttons .btn {
    white-space: nowrap;
  }
}

.policy__title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 4.8rem;
  line-height: 120%;
  color: var(--text);
  margin-top: 24rem;
  margin-bottom: 10rem;
}

.policy__list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-bottom: 10rem;
}

.policy__list .title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--text);
  margin-bottom: 4rem;
}

.policy__list .description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.policy__list .description span {
  font-weight: 700;
}

.policy__list .description ul li {
  list-style: disc;
  margin-left: 2.5rem;
  font-size: 2.4rem;
}

.policy__list .description ul li ul li {
  font-size: 2.2rem;
}

.policy__buttons {
  display: flex;
  gap: 4rem;
  margin-bottom: 20rem;
}

@media (max-width: 768px) and (orientation: portrait) {
  .policy__title {
    margin-top: 20rem;
    margin-bottom: 6.4rem;
    font-size: 6rem;
  }

  .policy__list {
    gap: 4.8rem;
  }

  .policy__list .title {
    font-size: 3.2rem;
  }

  .policy__list .description {
    font-size: 2.8rem;
  }

  .policy__list .description ul li {
    margin-left: 4rem;
    font-size: 3.6rem;
  }

  .policy__list .description ul li ul li {
    font-size: 3.4rem;
  }

  .policy__buttons {
    margin-bottom: 8rem;
    gap: 2rem;
  }

  .policy__buttons .btn {
    white-space: nowrap;
  }
}

.contacts__breadcrumbs {
  margin-top: 24.8rem;
  display: flex;
  gap: 0.8rem;
  margin-bottom: 6rem;
}

.contacts__breadcrumbs p:first-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--grey-text);
  border-right: 1px solid var(--grey-text);
  padding-right: 0.8rem;
}

.contacts__breadcrumbs p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--grey-text);
}

.contacts__title-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12rem;
}

.contacts__title-line p:first-child {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 8rem;
  line-height: 110%;
  color: var(--text);
}

.contacts__title-line p:last-child {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  text-align: right;
  color: var(--grey-text);
}

.contacts__info {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25rem;
}

.contacts__info .list__card div {
  box-shadow: 2px 2px 20px 0 rgba(0, 0, 0, 0.12);
  width: 114.5rem;
  height: 77.8rem;
  border-radius: 16px;
}

.contacts .info__list {
  display: flex;
  flex-direction: column;
  gap: 4.7rem;
}

.contacts .info__list .list__item {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  border-radius: 16px;
  padding: 1.6rem 3.2rem;
  box-shadow: 2px 2px 20px 0 rgba(0, 0, 0, 0.12);
  background: var(--white);
  width: 100%;
}

.contacts .info__list .list__item p:first-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--text);
}

.contacts .info__list .list__item p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  white-space: nowrap;
}

@media (max-width: 768px) and (orientation: portrait) {
  .contacts__breadcrumbs {
    margin-top: 25.8rem;
    margin-bottom: 4.8rem;
  }

  .contacts__breadcrumbs p:first-child {
    font-size: 2.4rem;
  }

  .contacts__breadcrumbs p:last-child {
    font-size: 2.4rem;
  }

  .contacts__title-line {
    flex-direction: column;
    gap: 4.8rem;
    align-items: flex-start;
    margin-bottom: 14.8rem;
  }

  .contacts__title-line p:first-child {
    font-size: 8rem;
  }

  .contacts__title-line p:last-child {
    font-size: 3.6rem;
    text-align: start;
  }

  .contacts__info {
    flex-direction: column;
    gap: 3.2rem;
    margin-bottom: 8rem;
  }

  .contacts__info .info__list {
    gap: 3.2rem;
  }

  .contacts__info .info__list .list__item {
    padding: 3.2rem 4.8rem;
    gap: 3.2rem;
  }

  .contacts__info .info__list .list__item p:first-child {
    font-size: 2.4rem;
  }

  .contacts__info .info__list .list__item p:last-child {
    white-space: wrap;
    font-size: 2.8rem;
  }

  .contacts__info .list__card div {
    width: 100%;
    height: 60rem;
  }
}

.project-page__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.project-page__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(5, auto);
  gap: 9.6rem;
  margin-bottom: 8rem;
}

.project-page__container .projects__menu__item img {
  width: 100%;
  height: 57.6rem;
  object-fit: cover;
  border-radius: 16px;
}

.project-page__container .projects__menu__item:last-child .projects__details {
  display: flex;
  flex-direction: column;
}

.project-page__container .projects__menu__item:last-child .projects__details>p:nth-child(1) {
  margin-bottom: 2rem;
}

.project-page__container .projects__menu__item:last-child .projects__details>div:nth-child(3) {
  height: 1px;
}

.project-page__number {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.4rem;
  margin-bottom: 20rem;
}

.project-page__number .btn {
  display: none;
}

.project-page__number .page-number {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--grey-text);
}

.project-page__number .page-number--active {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--blue);
}

@media (max-width: 768px) and (orientation: portrait) {
  .project-page__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .project-page__container {
    display: flex;
    flex-direction: column;
    gap: 4.8rem;
    margin-bottom: 6.4rem;
  }

  .project-page__container .projects__menu__item div:nth-last-child(1) {
    display: flex;
    justify-content: end;
  }

  .project-page__container .projects__menu__item .projects__info p {
    display: flex;
  }

  .project-page__container .projects__menu__item .projects__details {
    display: flex;
    flex-direction: column;
  }

  .project-page__container .projects__menu__item p {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 110%;
    color: var(--text);
  }

  .project-page__container .projects__menu__item img {
    height: 60rem;
    margin-bottom: 2.4rem;
  }

  .project-page__container .projects__menu__item .projects__info>p:nth-child(1),
  .project-page__container .projects__menu__item .projects__info>p:nth-child(2) {
    opacity: 1;
    max-height: 10rem;
    margin-bottom: 2.4rem;
  }

  .project-page__container .projects__menu__item .projects__details>p:nth-child(1),
  .project-page__container .projects__menu__item .projects__details>p:nth-child(2),
  .project-page__container .projects__menu__item .projects__details>div:nth-child(4) {
    margin-bottom: 2.4rem;
    opacity: 1;
    max-height: 10rem;
  }

  .project-page__number button {
    display: none;
  }

  .project-page__number .js-show-more {
    width: 100%;
  }

  .project-page__number .js-show-more .btn {
    display: flex;
    width: 100%;
    justify-content: center;
  }

  .project-page__number {
    margin-bottom: 8rem;
  }
}

@media (max-width: 768px) and (orientation: portrait) {
  .projects__hidden-items {
    display: none;
  }
}

.services-page .hero-other__subtitle {
  margin-bottom: 6.4rem;
}

.services-page .hero-other__pdf-doc {
  bottom: 11.5rem;
}

.services-page__content {
  display: flex;
  flex-direction: column;
  gap: 20rem;
  margin-bottom: 20rem;
}

.services-page__content__item {
  display: flex;
  gap: 31.1rem;
}

.services-page__content__item .image img {
  width: 56.3rem;
  height: 56.3rem;
}

.services-page__content__item .info {
  display: flex;
  flex-direction: column;
  gap: 5.9rem;
}

.services-page__content__item .info__button {
  display: flex;
  justify-content: end;
}

.services-page__content__item .info-line__1 p:first-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 4.8rem;
  line-height: 120%;
  color: var(--text);
  margin-bottom: 3.2rem;
}

.services-page__content__item .info-line__1 p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 18px;
  line-height: 110%;
  color: var(--grey-text);
}

.services-page__content__item .info-line__2 p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 3.2rem;
}

.services-page__content__item .info-line__2 div {
  display: flex;
  justify-content: space-between;
}

.services-page__content__item .info-line__2 div ul {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.services-page__content__item .info-line__2 div ul li {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--grey-text);
}

.services-page__content__item:nth-last-child(2) .image {
  order: 2;
}

.services-page__content__item:nth-last-child(2) .info {
  order: 1;
}

.services-page__content__item:nth-last-child(2) .info__button {
  justify-content: flex-start;
}

@media (max-width: 768px) and (orientation: portrait) {
  .services-page .hero-other__subtitle {
    margin-bottom: 6.4rem;
  }

  .services-page .hero-other__pdf-doc {
    bottom: 0;
  }

  .services-page__content {
    gap: 6.4rem;
    margin-bottom: 8rem;
  }

  .services-page__content__item {
    flex-direction: column;
    gap: 4.8rem;
  }

  .services-page__content__item .image img {
    height: 64rem;
    width: 100%;
  }

  .services-page__content__item .info {
    gap: 4.8rem;
  }

  .services-page__content__item .info-line__1 p:first-child {
    font-size: 6rem;
    margin-bottom: 4.8rem;
  }

  .services-page__content__item .info-line__1 p:last-child {
    font-size: 2.8rem;
  }

  .services-page__content__item .info-line__2 p {
    font-size: 3.2rem;
    margin-bottom: 3.2rem;
  }

  .services-page__content__item .info-line__2 div {
    flex-direction: column;
    gap: 2.4rem;
  }

  .services-page__content__item .info-line__2 div ul {
    gap: 2.4rem;
  }

  .services-page__content__item .info-line__2 div ul li {
    font-size: 2.4rem;
  }

  .services-page__content__item:nth-last-child(2) .image {
    order: 1;
  }

  .services-page__content__item:nth-last-child(2) .info {
    order: 2;
  }

  .services-page__content__item:nth-last-child(2) .info__button {
    justify-content: end;
  }
}

.news-page {
  margin-bottom: 20rem;
}

.news-page__hidden-items {
  border-top: 1px solid var(--line-light);
  padding-top: 6rem;
  margin-bottom: 10rem;
}

.news-page__content {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-bottom: 6rem;
}

.news-page__content__line {
  height: 1px;
  width: 100%;
  display: flex;
  background-color: var(--line-light);
}

.news-page__content__item {
  display: flex;
  justify-content: space-between;
}

.news-page__content__item .image img {
  width: 70.7rem;
  height: 50rem;
}

.news-page__content__item .info {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 85.4rem;
}

.news-page__content__item .info__date {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 16px;
  color: var(--grey-text);
}

.news-page__content__item .info__text {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.news-page__content__item .info__text__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
}

.news-page__content__item .info__text__subtitle {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.news-page .news-page__number {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.4rem;
}

.news-page .news-page__number .page-number {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--grey-text);
}

.news-page .news-page__number .page-number--active {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--blue);
}

@media (max-width: 768px) and (orientation: portrait) {
  .news-page {
    margin-bottom: 8rem;
  }

  .news-page__hidden-items {
    margin-bottom: 0rem;
  }

  .news-page__number button {
    display: none;
  }

  .news-page__number .js-show-more {
    width: 100%;
  }

  .news-page__number .js-show-more button {
    width: 100%;
    display: flex;
    justify-content: center;
    display: flex !important;
  }

  .news-page__content {
    gap: 6.4rem;
    margin-bottom: 6.4rem;
  }

  .news-page__content__item {
    flex-direction: column;
    gap: 4.8rem;
  }

  .news-page__content__item .image img {
    width: 100%;
    height: 60rem;
  }

  .news-page__content__item .info__date {
    font-size: 2.4rem;
    margin-bottom: 3.6rem;
  }

  .news-page__content__item .info__text {
    gap: 3.2rem;
    margin-bottom: 3.6rem;
  }

  .news-page__content__item .info__text__title {
    font-size: 6rem;
  }

  .news-page__content__item .info__text__subtitle {
    font-size: 2.8rem;
  }
}

@media (min-width: 768px) {
  .js-show-more {
    display: none !important;
  }
}

.general-contractor .hero-other__subtitle {
  margin-bottom: 6.4rem;
}

.general-contractor .hero-other__pdf-doc {
  display: none;
}

.general-contractor .info-block {
  display: flex;
  justify-content: space-between;
}

.general-contractor .info-block__text {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--text);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 75rem;
}

.general-contractor .info-block__image img {
  border-radius: 16px;
  width: 85.4rem;
  height: 57.5rem;
}

.general-contractor .info-block:first-child {
  margin-bottom: 8rem;
}

.general-contractor .info-block:nth-child(2) {
  margin-bottom: 20rem;
}

.general-contractor .info-block:nth-child(2) .info-block__image img {
  width: 70.8rem;
}

.general-contractor .info-block:nth-child(2) .info-block__text {
  margin-right: 10rem;
}

.general-contractor .service-list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-bottom: 20rem;
}

.general-contractor .service-list__top-title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.general-contractor .service-list__item {
  background-color: var(--white);
  border-radius: 16px;
  overflow: hidden;
}

.general-contractor .service-list__item .service-list__roster {
  padding: 3.6rem 3.2rem 2.4rem;
  overflow: hidden;
  opacity: 1;
  transition:
    max-height 0.3s ease-out,
    opacity 0.3s ease-out;
}

.general-contractor .service-list__item .service-list__roster.is-collapsed {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.general-contractor .service-list__item.is-expanded .service-list__icon .service-list__icon-cross {
  opacity: 0;
  transform: rotate(90deg);
}

.general-contractor .service-list__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.4rem 3.2rem;
  cursor: pointer;
  background-color: var(--white);
}

.general-contractor .service-list__title p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.general-contractor .service-list__title .service-list__icon {
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  display: block;
}

.general-contractor .service-list__title .service-list__icon path {
  stroke: #243984;
  stroke-width: 4;
  stroke-linecap: round;
  fill: none;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.general-contractor .service-list__title .service-list__icon .service-list__icon-cross {
  opacity: 1;
  transform-origin: center;
}

.general-contractor .service-list__roster {
  padding: 2.4rem 3.2rem;
  opacity: 1;
  transition:
    max-height 0.3s ease-in,
    opacity 0.3s ease-in;
}

.general-contractor .service-list__roster__item {
  margin-bottom: 2.4rem;
}

.general-contractor .service-list__roster__item:last-child {
  margin-bottom: 0;
}

.general-contractor .service-list__roster__item__container {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  align-items: flex-start;
}

.general-contractor .service-list__roster__item__container .name {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 2.4rem;
}

.general-contractor .service-list__roster__item__container .title {
  flex-shrink: 0;
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--text);
}

.general-contractor .service-list__roster__item__container .description {
  flex: 1;
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--grey-text);
  margin: 0;
}

@media (max-width: 768px) and (orientation: portrait) {
  .general-contractor .hero-other__subtitle {
    margin-bottom: 8rem;
  }

  .general-contractor .hero-other__content {
    padding-bottom: 0;
  }

  .general-contractor .info-block {
    flex-direction: column;
    gap: 4.8rem;
  }

  .general-contractor .info-block__text {
    width: 100%;
    font-size: 3.6rem;
    display: flex;
    flex-direction: column;
    gap: 3.2rem;
  }

  .general-contractor .info-block__image img {
    width: 100% !important;
    height: 60rem;
  }

  .general-contractor .info-block:first-child {
    margin-bottom: 6.4rem;
  }

  .general-contractor .info-block:nth-child(2) {
    margin-bottom: 16rem;
  }

  .general-contractor .info-block:nth-child(2) .info-block__image {
    order: 2;
  }

  .general-contractor .service-list {
    gap: 6.4rem;
    margin-bottom: 8rem;
  }

  .general-contractor .service-list__top-title {
    font-size: 3.2rem;
  }

  .general-contractor .service-list__item .service-list__roster {
    padding: 2.4rem 3.2rem 2.4rem;
  }

  .general-contractor .service-list__title {
    padding: 2.4rem 3.2rem;
  }

  .general-contractor .service-list__title p {
    font-size: 3.2rem;
  }

  .general-contractor .service-list__title .service-list__icon {
    width: 4.8rem;
    height: 4.8rem;
  }

  .general-contractor .service-list__roster__item {
    margin-bottom: 3.6rem;
  }

  .general-contractor .service-list__roster__item__container {
    gap: 3.2rem;
  }

  .general-contractor .service-list__roster__item__container .name {
    font-size: 3.2rem;
  }

  .general-contractor .service-list__roster__item__container .title {
    font-size: 3.2rem;
  }

  .general-contractor .service-list__roster__item__container .description {
    font-size: 2.8rem;
  }
}

.construction-audit .hero-other__subtitle {
  margin-bottom: 6.4rem;
}

.construction-audit .hero-other__pdf-doc {
  display: none;
}

.construction-audit__info .info {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.construction-audit__info .info__description p {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--text);
}

.construction-audit__info .info__line {
  border: 1px solid var(--line-light);
  width: 100%;
}

.construction-audit__info .info__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--blue);
  margin-bottom: 3.2rem;
}

.construction-audit__info .info .service-list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 20rem;
}

.construction-audit__info .info .service-list__top-title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.construction-audit__info .info .service-list__item {
  background-color: var(--white);
  border-radius: 16px;
  overflow: hidden;
}

.construction-audit__info .info .service-list__item .service-list__roster {
  padding: 3.6rem 3.2rem 2.4rem;
  overflow: hidden;
  opacity: 1;
  transition:
    max-height 0.3s ease-out,
    opacity 0.3s ease-out;
}

.construction-audit__info .info .service-list__item .service-list__roster.is-collapsed {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.construction-audit__info .info .service-list__item.is-expanded .service-list__icon .service-list__icon-cross {
  opacity: 0;
  transform: rotate(90deg);
}

.construction-audit__info .info .service-list__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.4rem 3.2rem;
  cursor: pointer;
  background-color: var(--white);
}

.construction-audit__info .info .service-list__title p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--text);
}

.construction-audit__info .info .service-list__title .service-list__icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: block;
}

.construction-audit__info .info .service-list__title .service-list__icon path {
  stroke: #243984;
  stroke-width: 2;
  stroke-linecap: round;
  fill: none;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.construction-audit__info .info .service-list__title .service-list__icon .service-list__icon-cross {
  opacity: 1;
  transform-origin: center;
}

.construction-audit__info .info .service-list__roster {
  padding: 2.4rem 3.2rem;
  opacity: 1;
  transition:
    max-height 0.3s ease-in,
    opacity 0.3s ease-in;
}

.construction-audit__info .info .service-list__roster__item {
  margin-bottom: 2.4rem;
}

.construction-audit__info .info .service-list__roster__item:last-child {
  margin-bottom: 0;
}

.construction-audit__info .info .service-list__roster__item__container {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  align-items: flex-start;
}

.construction-audit__info .info .service-list__roster__item__container .name {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 2.4rem;
}

.construction-audit__info .info .service-list__roster__item__container .title {
  flex-shrink: 0;
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--text);
}

.construction-audit__info .info .service-list__roster__item__container .description {
  flex: 1;
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--grey-text);
  margin: 0;
}

.construction-audit__card {
  margin-bottom: 20rem;
}

.construction-audit__card__title {
  display: flex;
  justify-content: center;
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 4.8rem;
  line-height: 120%;
  color: var(--text);
  margin-bottom: 12rem;
}

.construction-audit__card .card-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9rem;
  justify-content: center;
}

.construction-audit__card .card-list__item {
  position: relative;
}

.construction-audit__card .card-list__item__container {
  padding: 4rem 2.4rem;
  background-color: var(--white);
  border-radius: 16px;
  height: 31.9rem;
}

.construction-audit__card .card-list__item__text {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--text);
  width: 36.6rem;
}

.construction-audit__card .card-list__item__image {
  position: absolute;
  bottom: -0.5rem;
  right: 0;
}

.construction-audit__card .card-list__item__image img {
  width: 19.4rem;
  height: 20.6rem;
}

.construction-audit__text {
  display: flex;
  flex-wrap: wrap;
  gap: 12rem;
  justify-content: center;
  margin-bottom: 20rem;
}

.construction-audit__text__block p {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--text);
  width: 68rem;
}

.construction-audit__text__block:last-child p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  text-align: center;
  color: var(--blue);
  width: 114.6rem;
}

@media (max-width: 768px) and (orientation: portrait) {
  .construction-audit .hero-other__subtitle {
    margin-bottom: 8rem;
  }

  .construction-audit .hero-other__content {
    padding-bottom: 0;
  }

  .construction-audit__info .info {
    gap: 6.4rem;
  }

  .construction-audit__info .info__description p {
    font-size: 3.6rem;
  }

  .construction-audit__info .info__title {
    font-size: 3.2rem;
    margin-bottom: 0;
  }

  .construction-audit__info .info .service-list {
    gap: 4.8rem;
    margin-bottom: 24.4rem;
  }

  .construction-audit__info .info .service-list__item .service-list__roster {
    padding: 2.4rem 3.2rem 2.4rem;
  }

  .construction-audit__info .info .service-list__title {
    padding: 2.4rem 3.2rem;
  }

  .construction-audit__info .info .service-list__title p {
    font-size: 2.4rem;
    max-width: 52.8rem;
  }

  .construction-audit__info .info .service-list__title .service-list__icon {
    width: 4.8rem;
    height: 4.8rem;
  }

  .construction-audit__info .info .service-list__roster__item {
    margin-bottom: 3.6rem;
  }

  .construction-audit__info .info .service-list__roster__item__container {
    gap: 3.2rem;
  }

  .construction-audit__info .info .service-list__roster__item__container .name {
    font-size: 2.4rem;
  }

  .construction-audit__info .info .service-list__roster__item__container .title {
    font-size: 2.4rem;
  }

  .construction-audit__info .info .service-list__roster__item__container .description {
    font-size: 2.4rem;
  }

  .construction-audit__card {
    margin-bottom: 18.4rem;
  }

  .construction-audit__card__title {
    font-size: 6rem;
    margin-bottom: 6.4rem;
  }

  .construction-audit__card .card-list {
    gap: 1.6rem;
  }

  .construction-audit__card .card-list__item__container {
    border-radius: 4px;
    height: 33.2rem;
    width: 33.2rem;
    padding: 1.6rem;
  }

  .construction-audit__card .card-list__item__text {
    font-size: 2.4rem;
    width: 30rem;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: normal;
  }

  .construction-audit__card .card-list__item__image img {
    width: 10.7rem;
    height: 11.3rem;
  }

  .construction-audit__text {
    gap: 3.2rem;
    margin-bottom: 8rem;
  }

  .construction-audit__text__block p {
    font-size: 2.8rem;
  }

  .construction-audit__text__block:last-child p {
    margin-top: 3.2rem;
    width: 100%;
    font-size: 3.2rem;
    text-transform: uppercase;
  }
}

@media (max-width: 375px) {
  .construction-audit__card .card-list__item__container {
    width: 32rem;
  }
}

.specific-project .hero-other__pdf-doc {
  display: none;
}

.specific-project__title {
  margin-bottom: 6.7rem;
}

.specific-project__title p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 8rem;
  color: var(--blue);
}

.specific-project__title-block {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20rem;
}

.specific-project__title-block .info {
  display: flex;
  flex-direction: column;
}

.specific-project__title-block .info__description {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--grey-text);
  margin-bottom: 8.9rem;
}

.specific-project__title-block .info__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
  max-width: 56.3rem;
}

.specific-project__title-block .info__list {
  display: flex;
  flex-direction: column;
  margin-top: auto;
  gap: 1.6rem;
}

.specific-project__title-block .info__list__item {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.specific-project__title-block .info__list__title {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--text);
}

.specific-project__title-block .info__list__title img {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 16px;
}

.specific-project__title-block .info__list__description {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--grey-text);
  margin-left: 3.2rem;
}

.specific-project__title-block .image img {
  width: 100rem;
  height: 60.3rem;
  border-radius: 16px;
}

.specific-project__about-company {
  max-width: 90.6rem;
  margin-bottom: 20rem;
}

.specific-project__about-company .title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.specific-project__about-company .text-list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.specific-project__gallery {
  margin-bottom: 20rem;
}

.specific-project__gallery__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.specific-project__gallery .photo-gallery {
  padding-bottom: 8.4rem;
}

.specific-project__gallery .photo-gallery .swiper-wrapper {
  display: flex;
  align-items: center;
}

.specific-project__gallery .photo-gallery .swiper-slide {
  width: 56.2rem;
  height: 48rem;
  border-radius: 16px;
}

.specific-project__gallery .photo-gallery .swiper-slide img {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  object-fit: cover;
  object-position: center;
}

.specific-project__gallery .photo-gallery .swiper-button-prev,
.specific-project__gallery .photo-gallery .swiper-button-next {
  top: auto !important;
  bottom: 0 !important;
  color: #243984;
  width: 3.2rem;
  height: 3.2rem;
}

.specific-project__gallery .photo-gallery .swiper-button-prev svg,
.specific-project__gallery .photo-gallery .swiper-button-next svg {
  width: 1.2rem;
  height: 2rem;
}

.specific-project__gallery .photo-gallery .swiper-button-prev {
  left: 43% !important;
}

.specific-project__gallery .photo-gallery .swiper-button-next {
  right: 43% !important;
}

.specific-project__gallery .photo-gallery .main-pagination {
  bottom: 0.2rem !important;
}

.specific-project__gallery .photo-gallery .main-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.5rem;
}

.specific-project__gallery .photo-gallery .main-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.specific-project__gallery .photo-gallery .main-pagination .swiper-pagination-bullet-disabled {
  color: #dfe2e7;
  opacity: 1;
}

.specific-project__gallery .lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  box-sizing: border-box;
}

.specific-project__gallery .lightbox-overlay .lightbox-content {
  max-width: 90vw;
  max-height: 95vh;
  width: auto;
  height: auto;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-close {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  z-index: 1100;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image {
  height: 70vh;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container {
  width: 100%;
  max-width: 100%;
  position: relative;
  height: 100%;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container .lightbox-swiper {
  height: 100%;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container .lightbox-swiper .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  height: auto;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container .lightbox-swiper .swiper-slide img {
  width: auto;
  height: 100%;
  object-fit: contain;
  object-position: center;
  border-radius: 8px;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container .lightbox-swiper .swiper-button-prev,
.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container .lightbox-swiper .swiper-button-next {
  color: #fff;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails {
  width: 100%;
  max-width: 100%;
  margin-top: 6rem;
  height: 12.5rem;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container {
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container .thumb-swiper {
  height: 100%;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container .thumb-swiper .swiper-wrapper {
  display: flex;
  gap: 0.5rem;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container .thumb-swiper .swiper-slide {
  width: 15rem;
  height: 12.5rem;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 0);
  border-radius: 0.8rem;
  overflow: hidden;
  transition:
    border-color 0.2s,
    transform 0.2s;
  flex-shrink: 0;
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container .thumb-swiper .swiper-slide.swiper-slide-thumb-active {
  border-color: var(--primary);
}

.specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container .thumb-swiper .swiper-slide img {
  width: auto;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 0.6rem;
}

.specific-project__video {
  position: relative;
  display: block;
}

.specific-project__video__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.specific-project__video__description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  margin-bottom: 6rem;
  width: 83.1rem;
}

.specific-project__video__video {
  margin-bottom: 20rem;
  width: 100%;
  height: 82rem;
  position: relative;
  display: block;
  border-radius: 16px;
}

.specific-project__video__video .video-poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../images/video.png);
  background-size: cover;
  background-position: center;
  pointer-events: none;
  z-index: 1;
  border-radius: 16px;
}

.specific-project__video__video video {
  display: block;
  width: 100%;
  height: 82rem;
}

@media (max-width: 768px) and (orientation: portrait) {
  .specific-project .hero-other__content {
    padding-bottom: 0;
  }

  .specific-project__title {
    font-size: 8rem;
    margin-bottom: 8rem;
  }

  .specific-project__title-block {
    flex-direction: column;
    margin-bottom: 16rem;
  }

  .specific-project__title-block .info__description {
    font-size: 2.8rem;
    margin-bottom: 4.8rem;
  }

  .specific-project__title-block .info__title {
    max-width: 100%;
    font-size: 3.2rem;
    margin-bottom: 4.8rem;
  }

  .specific-project__title-block .info__list {
    gap: 2.4rem;
    margin-bottom: 4.8rem;
  }

  .specific-project__title-block .info__list__item {
    gap: 1.6rem;
  }

  .specific-project__title-block .info__list__title {
    gap: 1.6rem;
  }

  .specific-project__title-block .info__list__title img {
    width: 3.2rem;
    height: 3.2rem;
  }

  .specific-project__title-block .info__list__title p {
    font-size: 2.4rem;
  }

  .specific-project__title-block .info__list__description {
    margin-left: 4.8rem;
  }

  .specific-project__title-block .info__list__description p {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 120%;
    color: var(--grey-text);
  }

  .specific-project__title-block .image img {
    width: 100%;
    height: 60rem;
  }

  .specific-project__about-company {
    max-width: 100%;
    margin-bottom: 16rem;
  }

  .specific-project__about-company .title {
    margin-bottom: 6.4rem;
  }

  .specific-project__about-company .title p {
    font-size: 3.2rem;
  }

  .specific-project__about-company .text-list {
    gap: 3.2rem;
  }

  .specific-project__about-company .text-list p {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 110%;
    color: var(--text);
  }

  .specific-project__gallery {
    margin-bottom: 16rem;
  }

  .specific-project__gallery__title {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 3.2rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 6.4rem;
  }

  .specific-project__gallery .lightbox-overlay {
    display: none;
    padding: 1rem;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content {
    max-width: 100vw;
    max-height: 100vh;
    width: 100%;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-close {
    top: 1rem;
    right: 1rem;
    z-index: 1001;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image {
    height: 50vh;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image .main-image-container .lightbox-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails {
    margin-top: 2rem;
    height: 8rem;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-thumbnails .thumbnail-container .thumb-swiper .swiper-slide {
    width: 10rem;
    height: 8rem;
  }

  .specific-project__gallery .photo-gallery {
    padding-bottom: 9.6rem;
  }

  .specific-project__gallery .photo-gallery .swiper-wrapper {
    display: flex;
    align-items: center;
  }

  .specific-project__gallery .photo-gallery .swiper-slide {
    width: 60rem;
    height: 52rem;
  }

  .specific-project__gallery .photo-gallery .swiper-slide img {
    width: 100%;
    height: 100%;
  }

  .specific-project__gallery .photo-gallery .swiper-button-prev,
  .specific-project__gallery .photo-gallery .swiper-button-next {
    top: auto !important;
    bottom: 0 !important;
    color: #243984;
    width: 3.2rem;
    height: 3.2rem;
  }

  .specific-project__gallery .photo-gallery .swiper-button-prev svg,
  .specific-project__gallery .photo-gallery .swiper-button-next svg {
    width: 1.2rem;
    height: 2rem;
  }

  .specific-project__gallery .photo-gallery .swiper-button-prev {
    left: 25% !important;
  }

  .specific-project__gallery .photo-gallery .swiper-button-next {
    right: 25% !important;
  }

  .specific-project__gallery .photo-gallery .main-pagination {
    bottom: 0.2rem !important;
  }

  .specific-project__gallery .photo-gallery .main-pagination .swiper-pagination-bullet {
    background: #dfe2e7;
    opacity: 1;
    width: 1.6rem;
    height: 1.6rem;
    margin: 0.5rem;
  }

  .specific-project__gallery .photo-gallery .main-pagination .swiper-pagination-bullet-active {
    background: var(--blue);
  }

  .specific-project__gallery .photo-gallery .main-pagination .swiper-pagination-bullet-disabled {
    color: #dfe2e7;
    opacity: 1;
  }

  .specific-project__video__title {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 3.2rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 6.4rem;
  }

  .specific-project__video__description {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 110%;
    color: var(--text);
    width: 100%;
    margin-bottom: 4.8rem;
  }

  .specific-project__video__video {
    height: 60rem;
    border-radius: 12px;
    margin-bottom: 8rem;
  }

  .specific-project__video__video video {
    height: 60rem;
  }
}

.technical-customer .hero-other__subtitle {
  margin-bottom: 6.4rem;
}

.technical-customer .hero-other__pdf-doc {
  display: none;
}

.technical-customer__info {
  margin-bottom: 20rem;
}

.technical-customer__info .text {
  display: flex;
  gap: 16.6rem;
}

.technical-customer__info .text p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  max-width: 72rem;
}

.technical-customer__info .text:first-child {
  margin-bottom: 8rem;
}

.technical-customer__info .title p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
  margin-bottom: 6rem;
}

.technical-customer__process {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20rem;
}

.technical-customer__process__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
}

.technical-customer__process .swiper {
  width: 114.3rem;
  margin: 0;
  padding-bottom: 6.4rem;
}

.technical-customer__process .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.technical-customer__process .swiper-slide {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  padding: 6rem 4rem;
  background: var(--white);
  border: 1px solid var(--line-light);
  border-radius: 16px;
  box-shadow:
    2px 1px 8px 0 rgba(0, 0, 0, 0.08),
    -2px -1px 8px 0 rgba(0, 0, 0, 0.08);
  width: 60rem;
  height: 50rem;
  transition: transform 0.5s ease, opacity 0.15s ease;
  box-sizing: border-box;
}

.technical-customer__process .swiper-slide__number {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--primary);
}

.technical-customer__process .swiper-slide-prev .swiper-slide__number,
.technical-customer__process .swiper-slide-next .swiper-slide__number {
  text-align: right;
}

.technical-customer__process .swiper-slide__title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.technical-customer__process .swiper-slide__description {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  flex: 1;
  overflow-y: auto;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.technical-customer__process .swiper-slide__description p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Carousel transforms — handled by JS setTranslate for deck effect */

.technical-customer__process .swiper-button-prev,
.technical-customer__process .swiper-button-next {
  top: auto !important;
  bottom: 0 !important;
  color: #243984;
  width: 3.2rem !important;
  height: 3.2rem !important;
  --swiper-navigation-size: 2rem;
}

.technical-customer__process .swiper-button-prev svg,
.technical-customer__process .swiper-button-next svg {
  width: 1.2rem;
  height: 2rem;
}

.technical-customer__process .swiper-button-prev {
  left: 35% !important;
}

.technical-customer__process .swiper-button-next {
  right: 35% !important;
}

.technical-customer__process .main-pagination {
  bottom: 0 !important;
  left: 35% !important;
  right: 35% !important;
  width: auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3.2rem;
}

.technical-customer__process .main-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 1.6rem;
  height: 1.6rem;
  margin: 0.5rem;
}

.technical-customer__process .main-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.technical-customer__process .main-pagination .swiper-pagination-bullet-disabled {
  color: #dfe2e7;
  opacity: 1;
}

.technical-customer__event {
  margin-bottom: 20rem;
}

.technical-customer__event__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
  margin-bottom: 6rem;
}

.technical-customer__event__block {
  display: flex;
  gap: 17.2rem;
}

.technical-customer__event__column {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  width: 74rem;
}

.technical-customer__event__column p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.technical-customer__target {
  margin-bottom: 20rem;
}

.technical-customer__target__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.technical-customer__target__block {
  display: flex;
  gap: 17.2rem;
}

.technical-customer__target__block__column:first-child p {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--text);
}

.technical-customer__target__block__column:last-child {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.technical-customer__target__block__column:last-child div {
  border: 1px solid var(--line-light);
  width: 100%;
}

.technical-customer__target__block__column p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  width: 73rem;
}

.technical-customer__services__title {
  margin-bottom: 8rem;
}

.technical-customer__services__title p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.technical-customer__services__list .service-list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 20rem;
}

.technical-customer__services__list .service-list__top-title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.technical-customer__services__list .service-list__item {
  background-color: var(--white);
  border-radius: 16px;
  overflow: hidden;
}

.technical-customer__services__list .service-list__item .service-list__roster {
  padding: 1.6rem 3.2rem 2.4rem;
  overflow: hidden;
  opacity: 1;
  transition:
    max-height 0.3s ease-out,
    opacity 0.3s ease-out;
}

.technical-customer__services__list .service-list__item .service-list__roster.is-collapsed {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.technical-customer__services__list .service-list__item.is-expanded .service-list__icon .service-list__icon-cross {
  opacity: 0;
  transform: rotate(90deg);
}

.technical-customer__services__list .service-list__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.4rem 3.2rem;
  cursor: pointer;
  background-color: var(--white);
}

.technical-customer__services__list .service-list__title p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 24px;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--text);
}

.technical-customer__services__list .service-list__title .service-list__icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: block;
}

.technical-customer__services__list .service-list__title .service-list__icon path {
  stroke: #243984;
  stroke-width: 4;
  stroke-linecap: round;
  fill: none;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.technical-customer__services__list .service-list__title .service-list__icon .service-list__icon-cross {
  opacity: 1;
  transform-origin: center;
}

.technical-customer__services__list .service-list__roster {
  padding: 2.4rem 3.2rem;
  opacity: 1;
  transition:
    max-height 0.3s ease-in,
    opacity 0.3s ease-in;
}

.technical-customer__services__list .service-list__roster__item {
  margin-bottom: 2.4rem;
}

.technical-customer__services__list .service-list__roster__item:last-child {
  margin-bottom: 0;
}

.technical-customer__services__list .service-list__roster__item__container p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.technical-customer__services__list .service-list__roster__item__container span {
  font-weight: 700;
}

@media (max-width: 768px) and (orientation: portrait) {
  .technical-customer .hero-other__content {
    padding-bottom: 0;
  }

  .technical-customer__info {
    margin-bottom: 16rem;
  }

  .technical-customer__info .text:first-child {
    margin-bottom: 6.4rem;
  }

  .technical-customer__info .text:last-child {
    gap: 3.2rem;
  }

  .technical-customer__info .text {
    flex-direction: column;
    gap: 3.2rem;
  }

  .technical-customer__info .text p {
    font-size: 2.8rem;
  }

  .technical-customer__info .title p {
    font-size: 2.8rem;
    margin-bottom: 4.8rem;
  }

  .technical-customer__process {
    flex-direction: column;
    margin-bottom: 16rem;
  }

  /* Reset carousel effect for mobile portrait */
  .technical-customer__process__slider {
    overflow: visible;
    padding: 0;
  }

  .technical-customer-swiper {
    overflow: hidden !important;
  }

  .technical-customer-swiper .swiper-slide {
    transform: none !important;
    opacity: 1 !important;
    width: auto !important;
  }

  .technical-customer-swiper .swiper-slide-active,
  .technical-customer-swiper .swiper-slide-prev,
  .technical-customer-swiper .swiper-slide-next {
    transform: none !important;
  }

  .technical-customer__process .swiper {
    width: 100%;
  }

  .technical-customer__process .swiper-slide {
    gap: 4.8rem;
    padding: 4.8rem;
    width: 60rem !important;
    height: 70rem;
  }

  .technical-customer__process .swiper-slide__number p {
    font-size: 3.2rem;
  }

  .technical-customer__process .swiper-slide__title p {
    font-size: 3.2rem;
  }

  .technical-customer__process .swiper-slide__description {
    gap: 0;
  }

  .technical-customer__process .swiper-slide__description p {
    font-size: 2.8rem;
    width: 100%;
  }

  .technical-customer__process .swiper-slide__description p:last-child {
    margin-top: 3.2rem;
  }

  .technical-customer__process .swiper .swiper-button-prev,
  .technical-customer__process .swiper .swiper-button-next {
    top: auto !important;
    bottom: 0 !important;
    color: #243984;
    width: 3.2rem;
    height: 3.2rem;
  }

  .technical-customer__process .swiper .swiper-button-prev svg,
  .technical-customer__process .swiper .swiper-button-next svg {
    width: 1.2rem;
    height: 2rem;
  }

  .technical-customer__process .swiper .swiper-button-prev {
    left: 30% !important;
  }

  .technical-customer__process .swiper .swiper-button-next {
    right: 30% !important;
  }

  .technical-customer__process .swiper .main-pagination {
    bottom: 0.2rem !important;
  }

  .technical-customer__process .swiper .main-pagination .swiper-pagination-bullet {
    background: #dfe2e7;
    opacity: 1;
    width: 1.6rem;
    height: 1.6rem;
    margin: 0.5rem;
  }

  .technical-customer__process .swiper .main-pagination .swiper-pagination-bullet-active {
    background: var(--blue);
  }

  .technical-customer__process .swiper .main-pagination .swiper-pagination-bullet-disabled {
    color: #dfe2e7;
    opacity: 1;
  }

  .technical-customer__event {
    margin-bottom: 16rem;
  }

  .technical-customer__event__title {
    margin-bottom: 6.4rem;
  }

  .technical-customer__event__title p {
    font-size: 2.8rem;
  }

  .technical-customer__event__block {
    flex-direction: column;
    gap: 3.2rem;
  }

  .technical-customer__event__column {
    width: 100%;
  }

  .technical-customer__event__column p {
    font-size: 2.8rem;
  }

  .technical-customer__target {
    flex-direction: column;
    margin-bottom: 16rem;
  }

  .technical-customer__target__title {
    margin-bottom: 6.4rem;
    font-size: 3.2rem;
  }

  .technical-customer__target__block {
    flex-direction: column;
    gap: 6.4rem;
  }

  .technical-customer__target__block__column p {
    width: 100%;
  }

  .technical-customer__target__block__column:first-child p {
    font-size: 3.6rem;
  }

  .technical-customer__target__block__column:last-child {
    gap: 2.4rem;
  }

  .technical-customer__target__block__column:last-child p {
    font-size: 2.8rem;
  }

  .technical-customer__services__title {
    margin-bottom: 6.4rem;
  }

  .technical-customer__services__title p {
    font-size: 3.2rem;
  }

  .technical-customer__services__list .service-list {
    gap: 4.8rem;
    margin-bottom: 8rem;
  }

  .technical-customer__services__list .service-list__item {
    border-radius: 12px;
  }

  .technical-customer__services__list .service-list__title p {
    font-size: 3.2rem;
  }

  .technical-customer__services__list .service-list__roster__item__container p {
    font-size: 2.8rem;
  }
}

.detail-news .hero-other__content .hero-other__title {
  max-width: 90rem;
}

.detail-news .hero-other__content .btn {
  display: none;
}

.detail-news .hero-other__content .hero-other__pdf-doc {
  display: none;
}

.detail-news .hero-other__content .hero-other__subtitle {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--light-text);
  display: flex;
  justify-content: space-between;
  max-width: 52.9rem;
}

.detail-news__description {
  margin-bottom: 8rem;
}

.detail-news__description .title {
  margin-bottom: 8rem;
}

.detail-news__description .title p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.detail-news__description .list {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  max-width: 100rem;
}

.detail-news__description .list .item {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.detail-news__description .list .item .name p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--text);
}

.detail-news__description .list .item .text {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.detail-news__description .list .item .text p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.detail-news__image-slider {
  margin-bottom: 20rem;
  position: relative;
}

.detail-news__image-slider .slider-controls {
  position: absolute;
  bottom: 0;
  width: 95vw;
  max-width: 1330px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  z-index: 11;
}

.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-prev,
.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-next {
  width: 2.4rem;
  height: 2.4rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-prev.swiper-button-disabled svg g path,
.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-next.swiper-button-disabled svg g path {
  stroke: #dfe2e7;
}

.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  width: fit-content;
}

.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet {
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: #c4c4c4;
  opacity: 1;
  margin: 0;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
}

.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet-active {
  background: #243984;
  transform: scale(1.3);
}

.detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet-disabled {
  display: none;
}

.detail-news__image-slider .detail-news__image-slider__slider {
  padding-bottom: 8.4rem;
}

.detail-news__image-slider .detail-news__image-slider__slider .swiper-wrapper {
  display: flex;
  align-items: center;
}

.detail-news__image-slider .detail-news__image-slider__slider .swiper-slide {
  width: 56.2rem;
  height: 50rem;
  border-radius: 1.6rem;
  overflow: hidden;
}

.detail-news__image-slider .detail-news__image-slider__slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 1.6rem;
}

.detail-news__slider .news__list {
  padding-bottom: 8rem;
}

.detail-news__slider .news__list .swiper-button-prev,
.detail-news__slider .news__list .swiper-button-next {
  top: auto !important;
  bottom: 0 !important;
  color: #243984;
  width: 3.2rem;
  height: 3.2rem;
}

.detail-news__slider .news__list .swiper-button-prev svg,
.detail-news__slider .news__list .swiper-button-next svg {
  width: 1.2rem;
  height: 2rem;
}

.detail-news__slider .news__list .swiper-button-prev {
  left: 43% !important;
}

.detail-news__slider .news__list .swiper-button-next {
  right: 43% !important;
}

.detail-news__slider .news__list .main-pagination {
  bottom: 0.2rem !important;
}

.detail-news__slider .news__list .main-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.5rem;
}

.detail-news__slider .news__list .main-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.detail-news__slider .news__list .main-pagination .swiper-pagination-bullet-disabled {
  color: #dfe2e7;
  opacity: 1;
}

@media (max-width: 768px) and (orientation: portrait) {
  .detail-news .hero-other__content {
    padding-bottom: 0;
  }

  .detail-news .hero-other__content .hero-other__title {
    max-width: 65rem;
    margin-bottom: 8rem;
  }

  .detail-news .hero-other__content .hero-other__subtitle {
    font-size: 2.4rem;
    max-width: 100%;
  }

  .detail-news__description {
    margin-bottom: 6.4rem;
  }

  .detail-news__description .title {
    margin-bottom: 6.4rem;
  }

  .detail-news__description .title p {
    font-size: 3.2rem;
  }

  .detail-news__description .list {
    gap: 4.8rem;
  }

  .detail-news__description .list .item {
    gap: 3.6rem;
  }

  .detail-news__description .list .item .name p {
    font-size: 6rem;
  }

  .detail-news__description .list .item .text {
    gap: 4.8rem;
  }

  .detail-news__description .list .item .text p {
    font-size: 2.8rem;
  }

  .detail-news__image-slider {
    margin-bottom: 16rem;
  }

  .detail-news__image-slider .slider-controls {
    gap: 3.2rem;
  }

  .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-prev,
  .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-next {
    width: 3.2rem;
    height: 3.2rem;
  }

  .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet {
    width: 1.6rem;
    height: 1.6rem;
  }
}

.about .hero-other__title {
  max-width: 72rem;
}

.about .hero-other__pdf {
  width: 12.5rem;
}

.about__info {
  margin-bottom: 20rem;
}

.about__info__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.about__info__container {
  display: flex;
  justify-content: space-between;
}

.about__info__container__text {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 72rem;
}

.about__info__container__text .about__info__container__image {
  display: none;
}

.about__info__container__text__list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.about__info__container__text__list p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.about__info__container__text__list a {
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: var(--blue);
}

.about__info__container__text__mission {
  display: flex;
  gap: 2.4rem;
}

.about__info__container__text__mission svg {
  width: 2.4rem;
  height: 2.3rem;
}

.about__info__container__text__mission .line {
  border-right: 1px solid var(--line-light);
  height: 100%;
}

.about__info__container__text__mission__text {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2.4rem;
  width: 50rem;
}

.about__info__container__text__mission__text p:first-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.about__info__container__text__mission__text p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--grey-text);
}

.about__info__container__image img {
  border-radius: 16px;
  width: 85.2rem;
  height: 61.5rem;
}

.about__numbers {
  margin-bottom: 25.5rem;
}

.about__numbers__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 7rem;
}

.about__numbers__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28rem;
}

.about__numbers__list__item {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  position: relative;
}

.about__numbers__list__item p:first-child {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 12rem;
  color: var(--blue);
  text-align: center;
}

.about__numbers__list__item p:last-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--grey-text);
  text-align: center;
}

.about__numbers__list__item div {
  border: 1px solid var(--line-light);
  width: 100%;
}

.about__numbers__list__item .percent {
  position: absolute;
  top: 0;
  right: -8px;
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 4rem;
  color: var(--blue);
}

.about__numbers__list__item:first-child p:nth-last-child(2) {
  display: none;
}

.about__managment {
  margin-bottom: 20rem;
}

.about__managment__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 16rem;
}

.about__managment__list {
  display: flex;
  justify-content: space-between;
}

.about__managment__list__item {
  border-radius: 16px;
  background: var(--white);
  padding: 6.8rem 6.1rem;
}

.about__managment__list__item__container {
  display: flex;
  gap: 2.3rem;
  width: 43.9rem;
  height: 12.4rem;
}

.about__managment__list__item__container .svg-box svg {
  width: 2.4rem;
  height: 2.3rem;
}

.about__managment__list__item__container .text-block {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.about__managment__list__item__container .text-block p:first-child {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.about__managment__list__item__container .text-block p:last-child {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--grey-text);
}

.about__managment__list__item__container .text-block div {
  border: 1px solid var(--line-light);
  width: 100%;
}

.about .specific-project__video {
  position: relative;
  display: block;
}

.about .specific-project__video__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.about .specific-project__video__description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  margin-bottom: 6rem;
  width: 83.1rem;
}

.about .specific-project__video__video {
  margin-bottom: 20rem;
  width: 100%;
  height: 82rem;
  position: relative;
  display: block;
  border-radius: 16px;
}

.about .specific-project__video__video .video-poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../images/video2.png);
  background-size: cover;
  background-position: center;
  pointer-events: none;
  z-index: 1;
  border-radius: 16px;
}

.about .specific-project__video__video video {
  display: block;
  width: 100%;
  height: 82rem;
}

.about__portfolio {
  position: relative;
}

.about__portfolio__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.about__portfolio .slider-controls {
  position: absolute;
  bottom: 0;
  width: 95vw;
  max-width: 1330px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  z-index: 11;
}

.about__portfolio .slider-controls .swiper-portfolio-prev,
.about__portfolio .slider-controls .swiper-portfolio-next {
  width: 2.4rem;
  height: 2.4rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.about__portfolio .slider-controls .swiper-portfolio-prev.swiper-button-disabled svg g path,
.about__portfolio .slider-controls .swiper-portfolio-next.swiper-button-disabled svg g path {
  stroke: #dfe2e7;
}

.about__portfolio .slider-controls .swiper-portfolio-pagination {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  width: fit-content;
}

.about__portfolio .slider-controls .swiper-portfolio-pagination .swiper-pagination-bullet {
  background: none;
  opacity: 1;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--grey-text);
  cursor: pointer;
  transition: color 0.3s ease;
  display: block;
}

.about__portfolio .slider-controls .swiper-portfolio-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  color: var(--blue);
}

.about__portfolio .swiper-portfolio {
  padding-bottom: 6rem;
  margin-bottom: 6rem;
}

.about__portfolio__list {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.about__portfolio__list .projects__menu__item {
  width: calc(33% - 1rem);
}

.about__portfolio__pagination {
  display: flex;
  gap: 2.4rem;
  align-items: center;
  justify-content: center;
  margin-bottom: 11.6rem;
}

.about__portfolio__pagination p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--grey-text);
}

.about__portfolio__mobile {
  display: none;
}

.about__slider {
  margin-bottom: 20rem;
  position: relative;
}

.about__slider .slider-controls {
  position: absolute;
  bottom: 0;
  width: 95vw;
  max-width: 1330px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  z-index: 11;
}

.about__slider .slider-controls .about-slider-prev,
.about__slider .slider-controls .about-slider-next {
  width: 2.4rem;
  height: 2.4rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.about__slider .slider-controls .about-slider-prev.swiper-button-disabled svg g path,
.about__slider .slider-controls .about-slider-next.swiper-button-disabled svg g path {
  stroke: #dfe2e7;
}

.about__slider .slider-controls .about-slider-pagination {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  width: fit-content;
}

.about__slider .slider-controls .about-slider-pagination .swiper-pagination-bullet {
  background: #dfe2e7;
  opacity: 1;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.3rem;
}

.about__slider .slider-controls .about-slider-pagination .swiper-pagination-bullet-active {
  background: var(--blue);
}

.about__slider .slider-controls .about-slider-pagination .swiper-pagination-bullet-disabled {
  color: #dfe2e7;
  opacity: 1;
}

.about__slider__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 8rem;
}

.about__slider .swiper {
  width: 100%;
  padding-bottom: 6.4rem;
}

.about__slider .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}

.about__slider .swiper-slide img {
  width: 41.7rem;
  height: 60rem;
}

@media (max-width: 768px) and (orientation: portrait) {
  .about__info {
    margin-bottom: 16rem;
  }

  .about__info__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about__info__container {
    flex-direction: column;
  }

  .about__info__container__text {
    width: 100%;
  }

  .about__info__container__text .about__info__container__image {
    display: flex;
    margin-bottom: 4.8rem;
  }

  .about__info__container__text .about__info__container__image img {
    width: 100%;
    height: 60rem;
  }

  .about__info__container__text__list {
    gap: 3.2rem;
    margin-bottom: 4.8rem;
  }

  .about__info__container__text__list p {
    font-size: 2.8rem;
  }

  .about__info__container__text__mission {
    gap: 2.4rem;
  }

  .about__info__container__text__mission svg {
    width: 4.8rem;
    height: 4.6rem;
  }

  .about__info__container__text__mission .line {
    height: inherit;
  }

  .about__info__container__text__mission__text {
    gap: 3.2rem;
    width: 100%;
  }

  .about__info__container__text__mission__text p:first-child {
    font-size: 3.2rem;
  }

  .about__info__container__text__mission__text p:last-child {
    font-size: 2.8rem;
  }

  .about__info__container__image {
    display: none;
  }

  .about__numbers {
    margin-bottom: 16rem;
  }

  .about__numbers__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about__numbers__list {
    gap: 3.2rem;
  }

  .about__numbers__list__item:first-child p:last-child {
    display: none;
  }

  .about__numbers__list__item:first-child p:nth-last-child(2) {
    display: flex;
    justify-content: center;
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 120%;
    text-transform: uppercase;
    text-align: center;
    color: var(--grey-text);
  }

  .about__numbers__list__item {
    gap: 4.8rem;
    width: 20.6rem;
  }

  .about__numbers__list__item p:first-child {
    font-size: 6.4rem;
  }

  .about__numbers__list__item .percent {
    font-size: 4rem;
    right: 1rem;
  }

  .about__numbers__list__item p:last-child {
    font-size: 2.4rem;
  }

  .about__managment {
    margin-bottom: 16rem;
  }

  .about__managment__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about__managment__list {
    flex-direction: column;
    gap: 4.8rem;
  }

  .about__managment__list__item {
    padding: 6.4rem 4.8rem;
  }

  .about__managment__list__item__container {
    gap: 3.2rem;
    width: 100%;
    height: auto;
  }

  .about__managment__list__item__container .svg-box svg {
    width: 4.8rem;
    height: 4.6rem;
  }

  .about__managment__list__item__container .text-block {
    gap: 3.2rem;
  }

  .about__managment__list__item__container .text-block p:first-child {
    font-size: 3.2rem;
  }

  .about__managment__list__item__container .text-block p:last-child {
    font-size: 3.6rem;
  }

  .about .specific-project__video__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about .specific-project__video__description {
    font-size: 2.8rem;
    margin-bottom: 4.8rem;
    width: 100%;
  }

  .about .specific-project__video__video {
    margin-bottom: 16rem;
    height: 60rem;
  }

  .about .specific-project__video__video video {
    height: 60rem;
  }

  .about__portfolio__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about .desktop {
    display: none;
  }

  .about__portfolio__mobile {
    display: block;
  }

  .about__portfolio__mobile__title {
    margin-bottom: 6.4rem;
  }

  .about__portfolio__mobile__title p {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 3.2rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--blue);
  }

  .about__portfolio__mobile .detail-news__image-slider {
    margin-bottom: 16rem;
  }

  .about__portfolio__mobile .detail-news__image-slider .slider-controls {
    position: absolute;
    bottom: 0;
    width: 95vw;
    max-width: 1330px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3.2rem;
    z-index: 11;
  }

  .about__portfolio__mobile .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination {
    display: flex;
    align-items: center;
    gap: 3.2rem;
    width: fit-content;
    font-family: inherit;
  }

  .about__portfolio__mobile .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet {
    background: none;
    opacity: 1;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 3.2rem;
    line-height: 110%;
    color: var(--grey-text);
    cursor: pointer;
    transition: color 0.3s ease;
    display: block;
    border-radius: 0;
    transform: none !important;
  }

  .about__portfolio__mobile .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet-active {
    color: var(--blue);
  }

  .about__portfolio__mobile .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet:hover:not(.swiper-pagination-bullet-active) {
    color: var(--blue);
    opacity: 0.7;
  }

  .about__portfolio__mobile .detail-news__image-slider .slider-controls .detail-news__image-slider__slider-pagination .swiper-pagination-bullet-disabled {
    color: var(--grey-text);
    opacity: 0.4;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider {
    padding-bottom: 8.4rem;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-wrapper {
    display: flex;
    align-items: center;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-slide {
    width: 56.2rem;
    height: 50rem;
    overflow: hidden;
    border-radius: 1.6rem;
    display: block;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-button-prev,
  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-button-next {
    top: auto !important;
    bottom: 0 !important;
    color: #243984;
    width: 3.2rem;
    height: 3.2rem;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-button-prev svg,
  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-button-next svg {
    width: 1.2rem;
    height: 2rem;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-button-prev {
    left: 25% !important;
  }

  .about__portfolio__mobile .detail-news__image-slider__slider .swiper-button-next {
    right: 25% !important;
  }

  .about__slider {
    margin-bottom: 8rem;
  }

  .about__slider .slider-controls {
    gap: 3.2rem;
  }

  .about__slider .slider-controls .about-slider-prev,
  .about__slider .slider-controls .about-slider-next {
    width: 3.2rem;
    height: 3.2rem;
  }

  .about__slider .slider-controls .about-slider-pagination .swiper-pagination-bullet {
    width: 1.6rem;
    height: 1.6rem;
  }

  .about__slider__title {
    font-size: 3.2rem;
    margin-bottom: 6.4rem;
  }

  .about__slider .swiper-wrapper .swiper-slide {
    height: 74.8rem;
  }

  .about__slider .swiper-wrapper .swiper-slide img {
    height: 100%;
    width: 100%;
  }

  .about__slider .swiper-button-prev {
    left: 30% !important;
  }

  .about__slider .swiper-button-next {
    right: 30% !important;
  }
}

.career .hero-other__subtitle {
  margin-bottom: 6.4rem;
}

.career .hero-other__pdf-doc {
  bottom: 11.5rem;
}

.career__philosophy__title {
  margin-bottom: 8rem;
}

.career__philosophy__title p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.career__philosophy__info {
  display: flex;
  gap: 16.6rem;
  margin-bottom: 20rem;
}

.career__philosophy__info__block-btn {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}

.career__philosophy__info__block-btn p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  max-width: 70.8rem;
}

.career__philosophy__info__block-btn .btn {
  width: fit-content;
}

.career__philosophy__info__block-text {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.career__philosophy__info__block-text p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--text);
  border-bottom: 1px solid var(--line-light);
  padding-bottom: 2.4rem;
  max-width: 70.8rem;
}

.career__philosophy__info__block-text p:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.career__philosophy__info__block-btn-mobi {
  display: none;
}

.career__conditions {
  margin-bottom: 20rem;
}

.career__conditions__title {
  margin-bottom: 8rem;
}

.career__conditions__title p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.career__conditions__subtitle {
  margin-bottom: 6rem;
}

.career__conditions__subtitle p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  max-width: 73rem;
}

.career__conditions__cards {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}

.career__conditions__cards__item {
  width: calc(33.3333333333% - 1.5rem);
}

.career__conditions__cards__item__container {
  padding: 4rem 3.2rem;
  background: var(--white);
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.career__conditions__cards__item__number p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--blue);
}

.career__conditions__cards__item__title {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: uppercase;
  color: var(--text);
}

.career__conditions__cards__item__line {
  border: 1px solid var(--line-light);
}

.career__conditions__cards__item__description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--grey-text);
}

.career__no-vacancy {
  display: flex;
  justify-content: space-between;
}

.career__no-vacancy__info {
  max-width: 83rem;
  display: flex;
  flex-direction: column;
  gap: 8rem;
}

.career__no-vacancy__info__title p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.career__no-vacancy__info__block {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.career__no-vacancy__info__block p:first-child {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--blue);
}

.career__no-vacancy__info__block p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.career__vacancy__title {
  margin-bottom: 8rem;
}

.career__vacancy__title p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--blue);
}

.career__vacancy__description {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 85rem;
  margin-bottom: 8rem;
}

.career__vacancy__description p:first-child {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--blue);
}

.career__vacancy__description p:last-child {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
}

.career__vacancy__form {
  max-width: 71.3rem;
  margin-bottom: 8rem;
}

.career__vacancy__form__container {
  padding: 3.2rem;
  background: var(--white);
  border-radius: 16px;
}

.career__vacancy__form__title {
  margin-bottom: 4rem;
}

.career__vacancy__form__title p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  color: var(--text);
}

.career__vacancy__form__inputs .input-label {
  color: var(--grey-text);
}

.career__vacancy__form__inputs .input-control {
  color: var(--text);
}

.career__vacancy__form__inputs .input-control::placeholder {
  color: var(--grey-text);
}

.career__vacancy__form__ps {
  margin-bottom: 2.4rem;
}

.career__vacancy__form__ps p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 120%;
  color: var(--grey-text);
}

.career__vacancy__form__ps a {
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: var(--blue);
  transition: ease 0.3s;
}

.career__vacancy__form__ps a:hover {
  color: var(--primary);
}

.career__vacancy__form__button-file-wrapper {
  margin-bottom: 2.4rem;
  max-width: 26rem;
}

.career__vacancy__form__button-file__trigger {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.4rem;
  padding: 0.9rem 1.6rem;
  border: 1px solid var(--blue);
  border-radius: 32px;
  cursor: pointer;
}

.career__vacancy__form__button-file__trigger p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--blue);
}

.career__vacancy__form__button-file__trigger:hover {
  background-color: rgba(36, 57, 132, 0.1);
}

.career__vacancy__form__file-preview {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: 0.9rem 1.6rem;
  border: 1px solid var(--blue);
  border-radius: 32px;
  background: var(--blue);
  color: #fff;
  max-width: 100%;
}

.career__vacancy__form__file-preview.hidden {
  display: none;
}

.career__vacancy__form__file-preview__content {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  flex: 1;
  min-width: 0;
}

.career__vacancy__form__file-preview__file-icon svg {
  width: 2.4rem;
  height: 2.4rem;
  stroke: #fff;
}

.career__vacancy__form__file-preview__file-name {
  font-family: var(--font-family);
  font-size: 1.6rem;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.career__vacancy__form__file-preview__file-remove {
  background: var(--blue);
  border: none;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  border-radius: 50%;
}

.career__vacancy__form__file-preview__file-remove:hover {
  background: #1a2a5e;
}

.career__vacancy__form__file-preview__file-remove svg {
  width: 16px;
  height: 16px;
}

.career__vacancy__form__button-submit {
  display: flex;
}

.career__vacancy__form__button-submit .btn {
  display: flex;
  width: 100%;
  justify-content: center;
}

.career__vacancy__list .service-list {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-bottom: 20rem;
}

.career__vacancy__list .service-list .service-group__header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4rem;
}

.career__vacancy__list .service-list .service-group__header__info {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  width: 100%;
}

.career__vacancy__list .service-list .service-group__header__title {
  display: flex;
  justify-content: space-between;
}

.career__vacancy__list .service-list .service-group__header__title p {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 100%;
  color: var(--blue);
}

.career__vacancy__list .service-list .service-group__header__title button {
  cursor: pointer;
  transition: transform 0.3s ease;
  transform: rotate(180deg);
}

.career__vacancy__list .service-list .service-group__header__title svg {
  width: 3.2rem;
  height: 3.2rem;
}

.career__vacancy__list .service-list .service-group__header__line {
  border: 1px solid var(--line-light);
}

.career__vacancy__list .service-list .service-group__header__description p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 110%;
  color: var(--text);
  max-width: 150rem;
}

.career__vacancy__list .service-list .service-group.is-collapsed .service-group__header {
  margin-bottom: 0;
}

.career__vacancy__list .service-list .service-group.is-collapsed .service-group__header button {
  transform: rotate(0deg);
}

.career__vacancy__list .service-list .service-group.is-collapsed .service-group__content {
  display: none;
}

.career__vacancy__list .service-list .service-group .service-group__content .service-list__roster:first-child {
  padding: 0;
}

.career__vacancy__list .service-list .service-list__roster.is-collapsed {
  display: none;
}

.career__vacancy__list .service-list__item {
  background-color: var(--white);
  border-radius: 16px;
  overflow: hidden;
}

.career__vacancy__list .service-list__item .service-list__roster {
  padding: 0rem 3.2rem 2.4rem 3.2rem;
  overflow: hidden;
  opacity: 1;
  transition:
    max-height 0.3s ease-out,
    opacity 0.3s ease-out;
}

.career__vacancy__list .service-list__item .service-list__roster.is-collapsed {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.career__vacancy__list .service-list__item.is-expanded .service-list__icon .service-list__icon-cross {
  opacity: 0;
  transform: rotate(90deg);
}

.career__vacancy__list .service-list__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.4rem 3.2rem;
  cursor: pointer;
  background-color: var(--white);
}

.career__vacancy__list .service-list__title p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--text);
}

.career__vacancy__list .service-list__title .service-list__icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: block;
}

.career__vacancy__list .service-list__title .service-list__icon path {
  stroke: #243984;
  stroke-width: 2;
  stroke-linecap: round;
  fill: none;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.career__vacancy__list .service-list__title .service-list__icon .service-list__icon-cross {
  opacity: 1;
  transform-origin: center;
}

.career__vacancy__list .service-list__roster {
  padding: 2.4rem 3.2rem;
  opacity: 1;
  transition:
    max-height 0.3s ease-in,
    opacity 0.3s ease-in;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.career__vacancy__list .service-list__roster__item {
  margin-bottom: 2.4rem;
}

.career__vacancy__list .service-list__roster__item:last-child {
  margin-bottom: 0;
}

.career__vacancy__list .service-list__roster__item__container {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  align-items: flex-start;
}

.career__vacancy__list .service-list__roster__item__container p {
  font-family: var(--font-family);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 120%;
  color: var(--grey-text);
}

@media (max-width: 768px) and (orientation: portrait) {
  .career .hero-other__pdf-doc {
    bottom: 3.5rem;
  }

  .career .hero-other {
    height: 120.8rem;
  }

  .career .hero-other:before {
    height: 120.8rem;
  }

  .career .hero-other__content {
    padding-bottom: 25.6rem;
  }

  .career__philosophy__title {
    margin-bottom: 6.4rem;
  }

  .career__philosophy__title p {
    font-size: 3.2rem;
  }

  .career__philosophy__info {
    flex-direction: column;
    gap: 6.4rem;
    margin-bottom: 16rem;
  }

  .career__philosophy__info__block-btn p {
    font-size: 2.8rem;
  }

  .career__philosophy__info__block-btn .btn {
    display: none;
  }

  .career__philosophy__info__block-text p {
    font-size: 2.4rem;
  }

  .career__philosophy__info__block-btn-mobi {
    display: flex;
  }

  .career__conditions {
    margin-bottom: 16rem;
  }

  .career__conditions__title {
    margin-bottom: 6.4rem;
  }

  .career__conditions__title p {
    font-size: 3.2rem;
  }

  .career__conditions__subtitle {
    margin-bottom: 4.8rem;
  }

  .career__conditions__subtitle p {
    font-size: 2.8rem;
  }

  .career__conditions__cards {
    flex-direction: column;
    gap: 3.2rem;
  }

  .career__conditions__cards__item {
    width: 100%;
  }

  .career__conditions__cards__item__container {
    padding: 4.8rem 3.2rem;
    gap: 3.2rem;
  }

  .career__conditions__cards__item__number p {
    font-size: 3.2rem;
  }

  .career__conditions__cards__item__title {
    font-size: 3.2rem;
  }

  .career__conditions__cards__item__description {
    font-size: 2.8rem;
  }

  .career__no-vacancy {
    flex-direction: column;
  }

  .career__no-vacancy__info {
    gap: 6.4rem;
  }

  .career__no-vacancy__info__title p {
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 3.2rem;
    line-height: 110%;
    text-transform: uppercase;
    color: var(--blue);
  }

  .career__no-vacancy__info__block {
    gap: 4rem;
    margin-bottom: 6.4rem;
  }

  .career__no-vacancy__info__block p:first-child {
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 6rem;
    line-height: 120%;
    color: var(--blue);
  }

  .career__no-vacancy__info__block p:last-child {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 110%;
    color: var(--text);
  }

  .career__vacancy__title {
    margin-bottom: 6.4rem;
  }

  .career__vacancy__title p {
    font-size: 3.2rem;
  }

  .career__vacancy__description {
    gap: 4rem;
    margin-bottom: 6.4rem;
  }

  .career__vacancy__description p:first-child {
    font-size: 6rem;
  }

  .career__vacancy__description p:last-child {
    font-size: 2.8rem;
  }

  .career__vacancy__form {
    max-width: 100%;
    margin-bottom: 6.4rem;
  }

  .career__vacancy__form__container {
    padding: 3.2rem;
  }

  .career__vacancy__form__title {
    margin-bottom: 6.4rem;
  }

  .career__vacancy__form__title p {
    font-size: 6rem;
  }

  .career__vacancy__form__ps {
    margin-bottom: 3.2rem;
  }

  .career__vacancy__form__ps p {
    font-size: 2rem;
  }

  .career__vacancy__form__button-file-wrapper {
    width: 42rem;
    max-width: none;
  }

  .career__vacancy__form__button-file-wrapper label {
    gap: 4.8rem;
    padding: 1.6rem 3.2rem;
  }

  .career__vacancy__form__button-file-wrapper label p {
    font-size: 2.4rem;
  }

  .career__vacancy__list .service-list {
    margin-bottom: 8rem;
  }

  .career__vacancy__list .service-list .service-group__header__title p {
    font-size: 4.8rem;
  }

  .career__vacancy__list .service-list .service-group__header__title button svg {
    width: 6.4rem;
    height: 6.4rem;
  }

  .career__vacancy__list .service-list .service-group__header__description p {
    font-size: 3.6rem;
  }

  .career__vacancy__list .service-list .service-group__content .service-list__roster .service-list__item .service-list__title p {
    font-size: 3.2rem;
  }

  .career__vacancy__list .service-list .service-group__content .service-list__roster .service-list__item .service-list__title svg {
    width: 4.8rem;
    height: 4.8rem;
  }
}

.cookie {
  position: fixed;
  bottom: 4.2rem;
  right: 4.8rem;
  z-index: 9999;
}

.cookie__container {
  background: var(--white);
  width: 46rem;
  height: auto;
  padding: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  border-radius: 16px;
  position: relative;
  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.12);
}

.cookie__container__title {
  font-family: var(--second-family);
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 100%;
  color: var(--text);
}

.cookie__container__description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--text);
}

.cookie__container__ps {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--text);
}

.cookie__container__ps a {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: var(--grey-text);
}

.cookie__container__buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cookie__container__buttons .setings-cookie {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 120%;
  color: var(--text);
}

.cookie__setings {
  display: none;
}

.cookie__setings .cookie__container {
  height: auto;
}

.cookie__setings .cookie__container .btn {
  display: flex;
  width: fit-content;
}

.cookie__setings .cookie__container__block {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.cookie__setings .cookie__container__block__text {
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--text);
}

.cookie__setings .cookie__container__block__text-2 {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--text);
}

.cookie__setings .cookie__container__block__line {
  border-top: 1px solid var(--line-light);
}

.cookie__setings .cookie__container__block__description__item {
  display: flex;
  flex-direction: column;
  gap: 1.8rem;
}

.cookie__setings .cookie__container__block__description .service-list__check span {
  color: var(--grey-text);
}

.cookie__setings .cookie__container__block__description .service-list:first-child .service-list__title__obe .service-list__check span {
  color: var(--blue);
}

.cookie__setings .cookie__container__block__description .service-list {
  display: flex;
}

.cookie__setings .cookie__container__block__description .service-list__item {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.cookie__setings .cookie__container__block__description .service-list__item .service-list__roster {
  overflow: hidden;
  opacity: 1;
  transition:
    max-height 0.3s ease-out,
    opacity 0.3s ease-out;
}

.cookie__setings .cookie__container__block__description .service-list__item .service-list__roster.is-collapsed {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.cookie__setings .cookie__container__block__description .service-list__item.is-expanded .service-list__icon .service-list__icon-cross {
  opacity: 0;
  transform: rotate(90deg);
}

.cookie__setings .cookie__container__block__description .service-list__title {
  display: flex;
  align-items: center;
  cursor: pointer;
  justify-content: space-between;
  width: 100%;
}

.cookie__setings .cookie__container__block__description .service-list__title__plus {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}

.cookie__setings .cookie__container__block__description .service-list__title__plus p {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 110%;
  color: var(--text);
}

.cookie__setings .cookie__container__block__description .service-list__title .service-list__icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: block;
}

.cookie__setings .cookie__container__block__description .service-list__title .service-list__icon path {
  stroke: #243984;
  stroke-width: 2;
  stroke-linecap: round;
  fill: none;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.cookie__setings .cookie__container__block__description .service-list__title .service-list__icon .service-list__icon-cross {
  opacity: 1;
  transform-origin: center;
}

.cookie__setings .cookie__container__block__description .service-list__title__obe {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.cookie__setings .cookie__container__block__description .service-list__roster {
  padding-top: 1.2rem;
  opacity: 1;
  transition:
    max-height 0.3s ease-in,
    opacity 0.3s ease-in;
}

.cookie__setings .cookie__container__block__description .service-list__roster__item:last-child {
  margin-bottom: 0;
}

.cookie__setings .cookie__container__block__description .service-list__roster__item__container p {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 110%;
  color: var(--grey-text);
}

.cookie__setings .cookie__container__block__description .service-list__check {
  display: flex;
  gap: 2.4rem;
  align-items: center;
  height: fit-content;
}

.cookie__setings .cookie__container__block__description .service-list__check span {
  white-space: nowrap;
}

.cookie__setings .cookie__container__block__description .service-list__check .toggle-switch {
  position: relative;
  display: inline-block;
  width: 52px;
  height: 30px;
}

.cookie__setings .cookie__container__block__description .service-list__check .toggle-switch .toggle-input {
  opacity: 0;
  width: 0;
  height: 0;
}

.cookie__setings .cookie__container__block__description .service-list__check .toggle-switch .toggle-input:checked+.toggle-label {
  background-color: #d8ddef;
}

.cookie__setings .cookie__container__block__description .service-list__check .toggle-switch .toggle-input:checked+.toggle-label::before {
  background-color: #243984;
  transform: translateX(22px);
}

.cookie__setings .cookie__container__block__description .service-list__check .toggle-switch .toggle-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 52px;
  height: 30px;
  background-color: #e9edf3;
  border-radius: 15px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.cookie__setings .cookie__container__block__description .service-list__check .toggle-switch .toggle-label::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 26px;
  height: 26px;
  background-color: #a6a6a8;
  border-radius: 50%;
  transition:
    transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    background-color 0.3s ease;
}

@media (max-width: 768px) and (orientation: portrait) {
  .cookie {
    bottom: 6.4rem;
    right: 16px;
    left: 16px;
  }

  .cookie__container {
    width: 100%;
    height: 55rem;
    padding: 3.2rem 2.4rem;
  }

  .cookie__container__title {
    font-weight: 600;
    font-size: 3.2rem;
  }

  .cookie__container__description {
    font-weight: 400;
    font-size: 2.8rem;
  }

  .cookie__container__ps {
    font-weight: 400;
    font-size: 2.8rem;
  }

  .cookie__container__ps a {
    font-size: 2.8rem;
  }

  .cookie__container__buttons .setings-cookie {
    font-size: 2.4rem;
  }

  .cookie__setings .cookie__container__title p {
    font-weight: 600;
    font-size: 3.2rem;
  }

  .cookie__setings .cookie__container__block {
    gap: 3.6rem;
  }

  .cookie__setings .cookie__container__block__text p {
    font-size: 2.8rem;
  }

  .cookie__setings .cookie__container__block__text-2 {
    font-size: 2.8rem;
  }

  .cookie__setings .cookie__container .service-list__title__obe .service-list__title__plus svg {
    width: 3.2rem;
    height: 3.2rem;
  }

  .cookie__setings .cookie__container .service-list__title__obe .service-list__title__plus p {
    font-size: 2.8rem;
    max-width: 25rem;
  }

  .cookie__setings .cookie__container .service-list__title__obe .service-list__check span {
    font-size: 2rem;
  }

  .cookie__setings .cookie__container .service-list__roster__item__container p {
    font-size: 2.4rem;
  }
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.7);
}

.modal-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 55rem;
  height: auto;
  max-height: 90vh;
  background: var(--footerheader);
  padding: 4rem 6rem;
  border-radius: 16px;
  box-sizing: border-box;
  z-index: 1;
}

.modal-content .call-container .call-form__text {
  margin-bottom: 2.4rem;
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 120%;
  color: var(--white);
}

.modal-content .call-container .call-form__form p {
  margin: 4rem 0rem 3.2rem 0rem;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 120%;
  color: var(--grey-text);
}

.modal-content .call-container .call-form__form p a {
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: var(--light-text);
}

.modal-content .call-container .call-form__form .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  cursor: pointer;
}

.modal-close svg {
  width: 2.4rem;
  height: 2.4rem;
}

body.modal-open {
  overflow: hidden;
}

@media (max-width: 768px) and (orientation: portrait) {
  .modal-content {
    padding: 6.4rem 3.2rem 4.8rem;
    width: 68.6rem;
    min-height: 89.2rem;
    height: auto;
  }

  .modal-content .call-container .call-form__text {
    font-weight: 400;
    font-size: 2.8rem;
    margin-bottom: 4.8rem;
  }

  .modal-content .call-container .call-form__form p {
    font-size: 1.9rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
  }

  .modal-content .call-container .call-form__form p a {
    word-break: keep-all;
  }
}

.modal-success {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.7);
}

.modal-success__content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 55rem;
  height: 25rem;
  background: var(--footerheader);
  padding: 4rem 6rem;
  border-radius: 16px;
  box-sizing: border-box;
  z-index: 1;
}

.modal-success__content__title {
  margin-bottom: 3rem;
}

.modal-success__content__title p {
  font-family: var(--second-family);
  font-weight: 600;
  font-size: 4rem;
  line-height: 120%;
  color: var(--white);
}

.modal-success__content__description {
  margin-bottom: 3rem;
}

.modal-success__content__description p {
  font-family: var(--second-family);
  font-weight: 200;
  font-size: 1.2rem;
  line-height: 120%;
  color: var(--white);
}

.modal-success__content__button {
  display: flex;
  justify-content: end;
}

@media (max-width: 768px) and (orientation: portrait) {
  .modal-success .btn {
    padding: 1rem 2rem;
  }

  .modal-success .btn .icon_arrow-right {
    padding: 0.5rem;
  }
}

.modal-resume {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.7);
}

.modal-resume .career__vacancy__form {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 16px;
  box-sizing: border-box;
  z-index: 1;
}

.modal-resume .career__vacancy__form__container {
  background: var(--footerheader);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__title p {
  color: var(--white);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__inputs .input-label {
  color: var(--light-text);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__inputs .input-control {
  color: var(--white);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__inputs .input-control::placeholder {
  color: var(--white);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__ps p {
  color: var(--grey-text);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__ps p a {
  color: var(--light-text);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__ps p a:hover {
  color: var(--primary);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__button-file-wrapper .career__vacancy__form__button-file__trigger {
  border-color: var(--line-light);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__button-file-wrapper .career__vacancy__form__button-file__trigger svg path {
  stroke: var(--white);
}

.modal-resume .career__vacancy__form__container .career__vacancy__form__button-file-wrapper .career__vacancy__form__button-file__trigger p {
  color: var(--white);
}

@media (max-width: 768px) and (orientation: portrait) {
  .modal-resume .career__vacancy__form {
    width: 95vw;
  }
}

:root {
  --bg: #f5f5f5;
  --primary: #d15203;
  --blue: #243984;
  --text: #1b1f2e;
  --grey-text: #697892;
  --light-text: #e9edf3;
  --line-light: #d6dae3;
  --line-dark: #a6a6a8;
  --white: #fff;
  --footerheader: #21456e;
}

:root {
  --font-family: "Manrope", sans-serif;
  --second-family: "Fira Sans", sans-serif;
  --third-family: "Montserrat", sans-serif;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: var(--font-family);
  font-size: 0.520835vw;
  font-style: normal;
  font-weight: 400;
  -webkit-animation: bugfix infinite 1s;
  line-height: 1.2;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-family);
  font-style: normal;
  font-weight: 400;
  -webkit-animation: bugfix infinite 1s;
  line-height: 1.2;
  margin: 0;
  padding: 0;
  color: var(--text);
  background-color: #f5f5f5;
}

body.no-scroll {
  overflow: hidden;
}

input,
textarea {
  -webkit-animation: bugfix infinite 1s;
  line-height: inherit;
  margin: 0;
  padding: 0;
}

a {
  color: unset;
}

a,
a:hover {
  text-decoration: none;
}

button,
input,
a,
textarea {
  outline: none;
  cursor: pointer;
  font: inherit;
}

button:focus,
input:focus,
a:focus,
textarea:focus {
  outline: none;
}

button:active,
input:active,
a:active,
textarea:active {
  outline: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font: inherit;
  margin: 0;
  padding: 0;
}

p {
  margin-top: 0;
  margin-bottom: 0;
}

button {
  border: none;
  color: inherit;
  font: inherit;
  text-align: inherit;
  padding: 0;
  background-color: inherit;
}

ul {
  padding: 0;
  margin: 0;
}

ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.container {
  margin: none 1.6rem;
  padding: 0px 4.8rem;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

/* ===== NEWS DETAIL: Dot pagination (global – all viewports) ===== */
.detail-news__image-slider .detail-news__image-slider__slider-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}

.detail-news__image-slider .detail-news__image-slider__slider-pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #c4c4c4;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
  display: inline-block;
}

.detail-news__image-slider .detail-news__image-slider__slider-pagination .swiper-pagination-bullet-active {
  background: #243984;
  transform: scale(1.3);
}

/* ===== TECHNICAL CUSTOMER: Carousel effect ===== */
/* Parent clips overflow — only active + prev/next visible */
.technical-customer__process__slider {
  overflow: hidden;
  position: relative;
  padding: 2rem 0;
}

/* Swiper overflows to show prev/next previews */
.technical-customer-swiper {
  overflow: visible !important;
}

.technical-customer-swiper .swiper-wrapper {
  align-items: center;
}

.technical-customer-swiper .swiper-slide {
  transition: transform 0.5s ease, opacity 0.5s ease;
  box-sizing: border-box;
}

@media (max-width: 768px) and (orientation: portrait) {
  html {
    font-size: 5px;
    font-size: 1.5625vw;
    font-size: 1.3333333333vw;
    -webkit-text-size-adjust: none;
  }

  body {
    -webkit-text-size-adjust: none;
  }

  .container {
    margin: none auto;
    padding: 0px 16px;
    width: 100%;
  }
}

@media (orientation: landscape) and (max-height: 500px) {
  body {
    overflow-x: hidden;
  }

  /* Slider nav buttons: scale by viewport height in landscape */
  .project-stages-slider__btn svg,
  .licenses__slider-next svg,
  .licenses__slider-prev svg {
    width: 2.75vh !important;
    height: 2.75vh !important;
  }

  .swiper-button-next,
  .swiper-button-prev,
  .about-slider-next,
  .about-slider-prev {
    width: 5vh !important;
    height: 5vh !important;
  }

  .swiper-button-next::after,
  .swiper-button-prev::after {
    font-size: 2.75vh !important;
  }

  /* ===== MAIN PAGE: Projects grid ===== */
  .projects__menu {
    overflow: visible !important;
    margin-bottom: 4.5rem !important;
  }

  .projects__menu .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, auto) !important;
    gap: 4vh 2vw !important;
    transform: none !important;
    transition: none !important;
    width: 100% !important;
    height: auto !important;
  }

  .projects__menu .swiper-slide {
    width: 100% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    flex-shrink: unset !important;
    position: static !important;
    overflow: hidden !important;
    display: block !important;
    text-align: left !important;
  }

  .projects__menu__item {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-width: 0 !important;
  }

  .projects__menu__item img {
    width: 100% !important;
    height: 57.6rem;
    object-fit: cover;
    border-radius: 16px;
    margin-bottom: 2rem;
  }

  .projects__menu__item .projects__details>div:nth-last-child(1) {
    display: flex;
    justify-content: end;
  }

  .projects__menu__item .btn {
    width: fit-content !important;
  }

  /* ===== MAIN PAGE: Licenses slider ===== */
  .licenses__slider {
    max-width: 100vw !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .licenses__slider .main-slider-container {
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .licenses__slider .main-slider-container .swiper.main-slider {
    max-width: 100% !important;
    width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  /* ===== PROJECT PAGE: Grid ===== */
  .project-page__container {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9.6rem !important;
  }

  .project-page__container .projects__menu__item img {
    width: 100%;
    height: 57.6rem;
    object-fit: cover;
    border-radius: 16px;
  }

  .project-page__container .projects__menu__item .btn {
    width: fit-content !important;
  }

  /* ===== SPECIFIC PROJECT: Gallery ===== */
  .specific-project__gallery .photo-gallery .swiper-slide {
    height: 50vh;
  }

  .specific-project__gallery .photo-gallery .swiper-slide img {
    height: 100%;
    object-fit: cover;
  }

  .specific-project__gallery .lightbox-overlay .lightbox-content .lightbox-main-image {
    height: 60vh;
  }

  /* ===== NEWS DETAIL: Image slider cards ===== */
  .detail-news__image-slider .detail-news__image-slider__slider .swiper-slide {
    height: 50rem;
    overflow: hidden;
    border-radius: 8px;
  }


  .detail-news__image-slider .detail-news__image-slider__slider .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ===== NEWS: List (main page) ===== */
  .news__list .swiper,
  .news__list .swiper-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    justify-content: space-between;
    transform: none !important;
    transition: none !important;
    width: 100% !important;
  }

  .news__list .swiper-slide {
    width: calc((100% - 4rem) / 3) !important;
    flex-shrink: 0;
    display: block;
    margin-right: 0 !important;
  }

  .news__list .item__container {
    padding: 2.4rem;
    background: var(--white);
    border-radius: 16px;
    height: 100%;
    display: flex;
    flex-direction: column;
  }

  .news__list .item__image {
    width: 100%;
    height: 40.3rem;
    margin-bottom: 4rem;
  }

  .news__list .item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
  }

  .news__list .item__button {
    display: flex;
    justify-content: end;
  }

  .news__list .item__button .btn {
    width: fit-content !important;
  }

  /* ===== NEWS: Detail slider ===== */
  .detail-news__image-slider .detail-news__image-slider__slider .swiper-slide {
    height: 50vh;
  }

  .detail-news__image-slider .detail-news__image-slider__slider .swiper-slide img {
    height: 100%;
    object-fit: cover;
  }

  /* ===== SERVICES: Catalog ===== */
  .services__catalog {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2.2rem !important;
  }

  /* ===== ABOUT COMPANY ===== */
  .about-company__block {
    display: flex !important;
    flex-direction: row !important;
    gap: 2.4rem;
  }

  .about-company__content-text__group {
    display: flex !important;
    flex-direction: row !important;
    gap: 2rem;
  }

  .about-company__content-text .btn {
    width: fit-content !important;
  }

  /* ===== ABOUT PORTFOLIO ===== */
  .about__portfolio__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
  }

  .about__portfolio__list .projects__menu__item {
    width: calc(33% - 1rem);
  }

  .about__portfolio__list .projects__menu__item img {
    width: 100%;
    height: 57.6rem;
    object-fit: cover;
    border-radius: 16px;
  }

  /* ===== HERO ===== */
  .hero .btn {
    width: fit-content !important;
  }

  /* ===== ALL BUTTONS: Prevent stretch ===== */
  .btn {
    width: fit-content;
  }
}

@media (min-width: 1360px) {
  html {
    font-size: 7px;
  }

  .container {
    max-width: 1360px !important;
    margin-left: auto;
    margin-right: auto;
    padding: 0px 15px;
  }
}

/**
 * Swiper 12.0.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 21, 2025
 */

:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical>.swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function,
      initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;

  .swiper-slide,
  .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
}

/* CSS Mode */
.swiper-css-mode {
  >.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    /* For Firefox */
    -ms-overflow-style: none;

    /* For Internet Explorer and Edge */
    &::-webkit-scrollbar {
      display: none;
    }
  }

  >.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start;
  }

  &.swiper-horizontal {
    >.swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
  }

  &.swiper-vertical {
    >.swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
  }

  &.swiper-free-mode {
    >.swiper-wrapper {
      scroll-snap-type: none;
    }

    >.swiper-wrapper>.swiper-slide {
      scroll-snap-align: none;
    }
  }

  &.swiper-centered {
    >.swiper-wrapper::before {
      content: "";
      flex-shrink: 0;
      order: 9999;
    }

    >.swiper-wrapper>.swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }

  &.swiper-centered.swiper-horizontal {
    >.swiper-wrapper>.swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }

    >.swiper-wrapper::before {
      height: 100%;
      min-height: 1px;
      width: var(--swiper-centered-offset-after);
    }
  }

  &.swiper-centered.swiper-vertical {
    >.swiper-wrapper>.swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }

    >.swiper-wrapper::before {
      width: 100%;
      min-width: 1px;
      height: var(--swiper-centered-offset-after);
    }
  }
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d {

  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom,
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }

  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }

  .swiper-slide-shadow-left {
    background-image: linear-gradient(to left,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }

  .swiper-slide-shadow-right {
    background-image: linear-gradient(to right,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }

  .swiper-slide-shadow-top {
    background-image: linear-gradient(to top,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }

  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress),
.swiper-watch-progress .swiper-slide-visible {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Slide styles end */

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;

  &.swiper-pagination-hidden {
    opacity: 0;
  }

  .swiper-pagination-disabled>&,
  &.swiper-pagination-disabled {
    display: none !important;
  }
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;

  .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }

  .swiper-pagination-bullet-active {
    transform: scale(1);
  }

  .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }

  .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }

  .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }

  .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }

  .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width,
      var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height,
      var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);

  button& {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    appearance: none;
  }

  .swiper-pagination-clickable & {
    cursor: pointer;
  }

  &:only-child {
    display: none !important;
  }
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical>.swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);

  .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }

  &.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;

    .swiper-pagination-bullet {
      display: inline-block;
      transition:
        200ms transform,
        200ms top;
    }
  }
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-horizontal.swiper-pagination-bullets {
  .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }

  &.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;

    .swiper-pagination-bullet {
      transition:
        200ms transform,
        200ms left;
    }
  }
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:
    200ms transform,
    200ms right;
}

/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color,
      rgba(0, 0, 0, 0.25));
  position: absolute;

  .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }

  .swiper-rtl & .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }

  .swiper-horizontal>&,
  &.swiper-pagination-horizontal,
  .swiper-vertical>&.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }

  .swiper-vertical>&,
  &.swiper-pagination-vertical,
  .swiper-horizontal>&.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
}

.swiper-pagination-lock {
  display: none;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;

  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);

  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));

  &.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }

  &.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }

  .swiper-navigation-disabled & {
    display: none !important;
  }

  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center;
    fill: currentColor;
    pointer-events: none;
  }
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;

  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal {

  .swiper-button-prev,
  .swiper-button-next,
  ~.swiper-button-prev,
  ~.swiper-button-next {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    margin-left: 0;
  }

  .swiper-button-prev,
  &~.swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl~.swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }

  .swiper-button-next,
  &~.swiper-button-next,
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl~.swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto;
  }

  .swiper-button-prev,
  &~.swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl~.swiper-button-next {
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }

  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl~.swiper-button-prev {
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}

.swiper-vertical {

  .swiper-button-prev,
  .swiper-button-next,
  ~.swiper-button-prev,
  ~.swiper-button-next {
    left: var(--swiper-navigation-top-offset, 50%);
    right: auto;
    margin-left: calc(0px - (var(--swiper-navigation-size) / 2));
    margin-top: 0;
  }

  .swiper-button-prev,
  ~.swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto;

    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }

  .swiper-button-next,
  ~.swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;

    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}