/* Responsive rules extracted from style.css. Keep this file after style.css. */

@media (max-height: 799px) and (min-width: 1180px) {
  .hero {
      min-height: 700px;
    }
  
    .hero > .site-header,
    .hero__content,
    .hero-benefits {
      transform: translateX(-50%) scale(0.9);
      transform-origin: top center;
    }
}

@media (max-width: 767px) {
  .single__content .gallery[class*="gallery-columns-"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .single__content .gallery[class*="gallery-columns-"] {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1200px) {
  .site-header,
    .hero__content,
    .hero-benefits {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .technology-intro {
      height: 738px;
    }
  
    .technology-intro__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .equipment-catalog {
      height: 817px;
    }
  
    .equipment-catalog__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .partnership {
      height: auto;
    }
  
    .partnership__stage {
      width: 100%;
      min-height: 820px;
      transform: translateX(-50%);
    }

    .partnership__layout {
      width: calc(100% - clamp(64px, 8vw, 112px));
      padding: 64px 0 70px;
      grid-template-columns: minmax(0, 46%) minmax(0, 50%);
      column-gap: 4%;
    }

    .partnership__title {
      font-size: clamp(36px, 3.5vw, 44px);
    }

    .partnership__list li > strong {
      font-size: clamp(17px, 1.6vw, 20px);
    }

  .services {
      height: 738px;
    }
  
    .services__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .request {
      height: 578px;
    }
  
    .request__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .about-company {
      height: 1743px;
    }
  
    .about-company__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }
  
    .about-reveal {
      transition-delay: 40ms;
    }

  .partners {
      height: 656px;
    }
  
    .partners__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .trust-map {
      height: 686px;
    }
  
    .trust-map__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }

  .cases {
      height: 839px;
    }
  
    .cases__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }
  
    .cases-reveal--2 {
      transition-delay: 80ms;
    }
  
    .cases-reveal--3 {
      transition-delay: 160ms;
    }
  
    .cases-reveal--4 {
      transition-delay: 240ms;
    }

  .news-materials {
      height: 673px;
    }
  
    .news-materials__stage {
      transform: translateX(-50%) scale(0.82);
      transform-origin: top center;
    }
  
    .news-reveal--2 {
      transition-delay: 80ms;
    }
  
    .news-reveal--3 {
      transition-delay: 160ms;
    }
  
    .news-reveal--4 {
      transition-delay: 240ms;
    }

  .site-footer {
      height: 650px;
    }
  
    .footer-contact-panel,
    .footer-navigation-panel {
      transform: scale(0.82);
      transform-origin: top left;
    }
  
    .footer-contact-panel {
      margin-left: -525px;
    }
  
    .footer-navigation-panel {
      margin-left: -135px;
    }
  
    .footer-panel-reveal {
      opacity: 0;
      transform: translateY(16px) scale(0.82);
    }
  
    .footer-panel-reveal.is-visible {
      opacity: 1;
      transform: translateY(0) scale(0.82);
    }
}

@media (min-width: 1201px) {
  .about-history__cards article {
    transition:
      min-height 280ms ease,
      margin-left 280ms ease,
      padding 280ms ease,
      border-color 280ms ease,
      box-shadow 280ms ease;
  }

  .about-history-card__index,
  .about-history-card__period,
  .about-history-card__title,
  .about-history-card__text {
    transition:
      margin 280ms ease,
      font-size 280ms ease,
      width 280ms ease;
  }
}

@media (min-width: 1201px) and (max-width: 1439px) {
  /*
   * Fancybox is mounted against the viewport, outside the scaled page root.
   * Keep its own coordinate system and dimensions strictly viewport-based.
   */
  .fancybox__container {
    width: 100vw;
    max-width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    zoom: 1;
  }

  .hero {
    height: auto;
    min-height: max(800px, 121.95122svh);
  }

  .hero .header-actions__request {
    display: flex;
  }

  .hero > .site-header,
  .hero__content,
  .hero-benefits {
    transform: translateX(-50%);
  }

  /*
   * Inner templates do not use the fixed home-page stages, therefore scale
   * their shared content root as one composition in this desktop range.
   * CSS zoom participates in document flow and does not leave a page-height
   * gap that a transform on the complete main element would create.
  */
  .main--inner,
  .main--front,
  .site-footer {
    width: 121.95122%;
    zoom: 0.82;
  }

  .callback-modal,
  .consultation-modal,
  .request-modal,
  .popup__wrap {
    zoom: 0.82;
  }

  .main--inner,
  .main--front {
    margin-left: -10.97561%;
  }

  /*
   * Yandex Maps must not live in the scaled coordinate system: otherwise
   * placemark hit areas can drift away from their visible markers.
   * 1 / 0.82 restores the map section to its natural scale, while 82% keeps
   * its rendered width aligned with the other full-width sections.
   */
  .main--front > .trust-map,
  .main--inner .trust-map {
    width: 82%;
    margin-right: auto;
    margin-left: auto;
    zoom: 1.2195122;
  }

  .main--front > .trust-map .trust-map__stage,
  .main--inner .trust-map .trust-map__stage {
    width: 100%;
    max-width: 1181px;
    padding: 62px 66px 57px;
  }

  .main--front > .trust-map .trust-map__title,
  .main--inner .trust-map .trust-map__title {
    margin-top: 18px;
    font-size: 39px;
  }

  .main--front > .trust-map .trust-map__canvas,
  .main--inner .trust-map .trust-map__canvas {
    height: 410px;
    margin-top: 43px;
  }

  .site-header.site-header--inner {
    left: 50%;
    width: 1440px;
    margin: 0;
    transform: translateX(-50%) scale(0.82);
    transform-origin: top center;
  }

  .main--inner > .container,
  .page-content > .container {
    width: min(1280px, calc(100% - 40px));
  }

}

@media (max-width: 1200px) and (min-width: 993px) {
  .contacts-overview { grid-template-columns: minmax(390px, 42%) minmax(0, 1fr); gap: 24px; }
  .contacts-management__grid { gap: 20px; }
  .management-card { padding: 22px; }

  html,
    body {
      width: 100%;
      min-width: 0;
    }

    main {
      width: 100%;
      overflow: hidden;
    }

  .hero,
    .technology-intro,
    .equipment-catalog,
    .partnership,
    .services,
    .request,
    .about-company,
    .partners,
    .trust-map,
    .cases,
    .news-materials,
    .site-footer {
      min-width: 0;
    }
  
    .site-header,
    .hero__content,
    .hero-benefits,
    .technology-intro__stage,
    .equipment-catalog__stage,
    .partnership__stage,
    .services__stage,
    .request__stage,
    .about-company__stage,
    .partners__stage,
    .trust-map__stage,
    .cases__stage,
    .news-materials__stage {
      transform: translateX(-50%) scale(0.71);
      transform-origin: top center;
    }

    /* Header, hero and technologies use a real intermediate layout.
       Do not add scale/zoom here: this range is prepared as its own composition. */
    .site-header,
    .hero__content,
    .hero-benefits,
    .technology-intro__stage {
      left: 0;
      width: 100%;
      transform: none;
    }

    .hero {
      height: 800px;
      min-height: 700px;
    }

    .site-header {
      top: 0;
      height: 122px;
    }

    .site-header__logo {
      top: 34px;
      left: clamp(24px, 3vw, 40px);
      width: 70px;
      height: 48px;
    }

    .main-nav {
      top: 29px;
      left: clamp(145px, 14vw, 218px);
      width: min(560px, calc(100% - clamp(184px, 18.2vw, 218px) - 340px));
      height: 60px;
      padding: 0 14px;
      gap: 0;
      justify-content: space-between;
      border-radius: 29px;
    }

    .main-nav__link {
      font-size: clamp(10px, 1vw, 12px);
    }

    .main-nav__submenu {
      top: calc(100% + 28px);
    }

    .header-actions {
      top: 29px;
      right: clamp(24px, 3vw, 40px);
      left: auto;
      width: 300px;
      height: 60px;
      border-radius: 30px;
    }

    .header-search {
      top: 7px;
      right: 238px;
    }

    .header-actions__icon-button--max {
      top: 7px;
      left: 70px;
    }

    .header-actions__request {
      display: none;
    }

    .header-actions__contacts {
      display: block;
    }

    .header-actions__divider {
      top: 10px;
      left: 124px;
      display: block;
    }

    .header-actions__contact {
      left: 140px;
    }

    .header-actions__contact--email {
      top: 8px;
      font-size: 11px;
    }

    .header-actions__contact--phone {
      top: 34px;
      font-size: 12px;
    }

    .main--inner > .container,
    .page-content > .container {
      width: calc(100% - clamp(48px, 6vw, 80px));
    }

    .hero__content {
      height: 800px;
    }

    .hero__eyebrow {
      top: 190px;
      left: clamp(32px, 5vw, 60px);
    }

    .hero h1 {
      top: 248px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(410px, 39vw, 470px));
      font-size: clamp(38px, 4vw, 46px);
      line-height: 1.06;
    }

    .hero__lead {
      top: 456px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(410px, 39vw, 470px));
      font-size: 16px;
    }

    .hero__lead br {
      display: none;
    }

    .hero__buttons {
      top: 570px;
      left: clamp(32px, 5vw, 60px);
      gap: 16px;
    }

    .hero__buttons .button {
      height: 58px;
      padding-right: 22px;
      padding-left: 22px;
      font-size: 14px;
    }

    .hero__buttons .button--primary {
      width: clamp(230px, 24vw, 280px);
    }

    .hero__buttons .button--secondary {
      width: clamp(280px, 29vw, 330px);
    }

    .hero-benefits {
      height: 800px;
    }

    .benefit-card {
      top: 190px;
      right: clamp(32px, 4vw, 52px);
      left: auto;
      width: clamp(310px, 31vw, 360px);
      height: 120px;
    }

    .benefit-card--middle {
      top: 338px;
    }

    .benefit-card--bottom {
      top: 496px;
    }

    .benefit-card p {
      width: calc(100% - 88px);
      font-size: 14px;
    }

    .technology-intro {
      height: 850px;
    }

    .technology-intro__stage {
      height: 850px;
    }

    .technology-intro__kicker {
      top: 66px;
      left: clamp(32px, 5vw, 60px);
    }

    .technology-intro__title {
      top: 102px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - 340px);
      font-size: clamp(32px, 3.2vw, 38px);
      line-height: 1.1;
    }

    .technology-intro__lead {
      top: 220px;
      left: clamp(32px, 5vw, 60px);
      width: min(55%, 610px);
      font-size: 16px;
    }

    .technology-intro__more {
      top: 122px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 245px;
      font-size: 15px;
    }

    .technology-card {
      top: 310px;
      width: calc(50% - clamp(44px, 5.8vw, 70px));
      height: 400px;
    }

    .technology-card--pvd {
      left: clamp(32px, 5vw, 60px);
    }

    .technology-card--ion {
      right: clamp(32px, 5vw, 60px);
      left: auto;
    }

    .technology-card .heading-3 {
      top: 32px;
      left: 94px;
      width: calc(100% - 120px);
      font-size: clamp(23px, 2.4vw, 29px);
    }

    .technology-card__marker {
      left: 26px;
      width: 48px;
      height: 48px;
    }

    .technology-card__tag {
      top: 94px;
      right: auto;
      left: 26px !important;
    }

    .technology-card__description,
    .technology-card--pvd .technology-card__description {
      top: 142px;
      left: 26px;
      width: calc(100% - 52px);
      font-size: 15px;
    }

    .technology-card__products {
      top: 242px;
      left: 26px;
      width: calc(100% - 52px);
      height: 132px;
    }

    .technology-card__products .heading-4 {
      top: 18px;
      left: 18px;
      font-size: 15px;
    }

    .technology-card__products p,
    .technology-card__products-text {
      top: 50px;
      left: 18px;
      width: 50%;
      font-size: 12px;
    }

    .technology-card__products img {
      top: -12px;
      right: -6px;
      left: auto;
      width: 48%;
      height: 150px;
    }

    .technology-intro__bottom {
      top: 744px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 58px;
    }

    .technology-intro__bottom button {
      width: 100%;
      font-size: 16px;
    }

    .equipment-catalog {
      height: 920px;
    }

    .equipment-catalog__stage {
      left: 0;
      width: 100%;
      height: 920px;
      transform: none;
    }

    .equipment-catalog__blue-aura {
      top: 40px;
      right: -100px;
      left: auto;
      width: 420px;
      height: 440px;
    }

    .equipment-catalog__lower-glow {
      top: 500px;
      left: -260px;
    }

    .equipment-catalog__kicker {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .equipment-catalog__title {
      top: 92px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - 340px);
      height: auto;
      font-size: clamp(32px, 3.2vw, 38px);
      line-height: 1.08;
    }

    .equipment-catalog__link {
      top: 96px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 220px;
      font-size: 15px;
    }

    .equipment-catalog__lead {
      top: 190px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(300px, 30vw, 350px));
      font-size: 13px;
      line-height: 1.42;
    }

    .equipment-catalog__badge {
      top: 202px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 164px;
      height: 112px;
    }

    .equipment-carousel {
      --f-carousel-gap: 20px;
      --f-carousel-slide-width: clamp(280px, 28vw, 330px);
      --f-carousel-slide-height: 460px;
      top: 340px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      /* height: 570px; */
      /* padding: 12px 0 24px; */
    }

    .equipment-card {
      width: var(--f-carousel-slide-width);
      height: 460px;
    }

    .equipment-card .heading-3 {
      width: auto;
      margin: 28px 18px 0;
      font-size: clamp(21px, 2.1vw, 25px);
    }

    .equipment-card__link > p {
      width: auto;
      margin: 12px 18px 0;
      font-size: 13px;
    }

    .equipment-card__image {
      top: 184px;
      width: 100%;
      height: 276px;
    }

    .equipment-card__arrow {
      right: 16px;
      bottom: 16px;
      width: 42px;
      height: 42px;
    }

    .partnership {
      height: 760px;
    }

    .partnership__stage {
      left: 0;
      width: 100%;
      height: 760px;
      transform: none;
    }

    .partnership__blue-aura {
      top: -180px;
      right: -180px;
      left: auto;
    }

    .partnership__burgundy-aura {
      top: 520px;
    }

    .partnership__kicker {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .partnership__title {
      top: 92px;
      left: clamp(32px, 5vw, 60px);
      width: calc(56% - 60px);
      font-size: clamp(27px, 2.8vw, 33px);
      line-height: 1.06;
    }

    .partnership__lead {
      top: 250px;
      left: clamp(32px, 5vw, 60px);
      width: calc(52% - 150px);
      height: 88px;
      padding: 14px 18px;
      font-size: 13px;
      line-height: 1.35;
    }

    .partnership__portrait {
      top: 250px;
      left: calc(52% - 85px);
      width: 130px;
    }

    .partnership__portrait img {
      width: 82px;
      height: 82px;
    }

    .partnership__portrait strong,
    .partnership__portrait span {
      width: 130px;
    }

    .partnership__portrait strong {
      font-size: 12px;
    }

    .partnership__portrait span {
      font-size: 9px;
    }

    .partnership__production {
      top: 395px;
      left: clamp(32px, 5vw, 60px);
      width: calc(52% - clamp(42px, 6vw, 72px));
      height: 309px;
    }

    .partnership__work {
      top: 62px;
      right: clamp(32px, 4vw, 48px);
      left: auto;
      width: calc(44% - clamp(32px, 4vw, 48px));
    }

    .partnership__work .heading-3 {
      height: 24px;
      font-size: 16px;
    }

    .partnership__list li {
      width: 100%;
      height: 58px;
    }

    .partnership__list li > span {
      width: 44px;
      flex-basis: 44px;
      font-size: 29px;
    }

    .partnership__list li > strong {
      width: calc(100% - 44px);
      font-size: clamp(14px, 1.4vw, 16px);
    }

    .partnership__contact {
      top: 516px;
      right: clamp(32px, 4vw, 48px);
      left: auto;
      width: calc(44% - clamp(32px, 4vw, 48px));
      height: 160px;
    }

    .partnership__contact > p {
      top: 20px;
      left: 24px;
      font-size: 15px;
    }

    .partnership__phone {
      top: 52px;
      left: 24px;
      font-size: clamp(16px, 1.7vw, 20px);
    }

    .partnership__phone span {
      display: block;
      margin-top: 2px;
      font-size: 12px;
    }

    .partnership__cta {
      top: 104px;
      left: 24px;
      width: 238px;
      height: 42px;
      font-size: 13px;
    }

    .partnership,
    .partnership__stage {
      height: auto;
    }

    .partnership__stage {
      min-height: 760px;
    }

    .partnership__layout {
      width: calc(100% - clamp(64px, 9vw, 108px));
      padding: 54px 0 56px;
      grid-template-columns: minmax(0, 56%) minmax(0, 40%);
      column-gap: 4%;
    }

    .partnership__kicker,
    .partnership__title,
    .partnership__portrait,
    .partnership__lead,
    .partnership__production,
    .partnership__work,
    .partnership__contact {
      position: static;
      top: auto;
      right: auto;
      left: auto;
    }

    .partnership__heading-row {
      margin-top: 25px;
      grid-template-columns: minmax(0, 1fr) 130px;
      gap: 18px;
    }

    .partnership__title {
      width: auto;
      font-size: clamp(27px, 2.8vw, 33px);
    }

    .partnership__portrait {
      width: 130px;
    }

    .partnership__lead {
      width: 100%;
      height: auto;
      margin-top: 24px;
    }

    .partnership__production {
      position: relative;
      inset: auto;
      width: 100%;
      height: 300px;
      margin-top: 22px;
    }

    .partnership__work {
      width: 100%;
    }

    .partnership__contact {
      position: relative;
      inset: auto;
      width: 100%;
      margin-top: 24px;
    }

    .services {
      height: 710px;
    }

    .services__stage {
      left: 0;
      width: 100%;
      height: 710px;
      transform: none;
    }

    .services__blue-aura {
      top: -200px;
      right: -160px;
      left: auto;
    }

    .services__burgundy-aura {
      top: 520px;
    }

    .services__kicker {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .services__title {
      top: 92px;
      left: clamp(32px, 5vw, 60px);
      width: 60%;
      font-size: clamp(30px, 3.1vw, 37px);
      line-height: 1.08;
    }

    .services__lead {
      top: 100px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 27%;
      font-size: 14px;
    }

    .services__grid {
      top: 215px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      grid-template-columns: repeat(4, minmax(0, 1fr));
      grid-auto-rows: 205px;
      gap: 18px;
    }

    .service-card {
      width: 100%;
      height: 205px;
    }

    .service-card__marker {
      top: 15px;
      left: 15px;
      width: 32px;
      height: 32px;
    }

    .service-card__marker b {
      font-size: 13px;
    }

    .service-card .heading-3 {
      top: 62px;
      left: 17px;
      width: calc(100% - 34px);
      font-size: clamp(14px, 1.35vw, 17px);
      line-height: 1.12;
    }

    .service-card > p {
      top: 139px;
      left: 17px;
      width: calc(100% - 80px);
      font-size: 11px;
      line-height: 1.28;
    }

    .service-card__arrow {
      right: 14px;
      bottom: 14px;
      width: 34px;
      height: 34px;
      font-size: 20px;
    }

    .request {
      height: 660px;
    }

    .request__stage {
      left: 0;
      width: 100%;
      height: 660px;
      transform: none;
    }

    .request__blue-aura {
      top: -160px;
      right: -170px;
      left: auto;
    }

    .request__burgundy-aura {
      top: 500px;
    }

    .request__kicker {
      top: 58px;
      left: clamp(32px, 5vw, 60px);
    }

    .request__title {
      top: 102px;
      left: clamp(32px, 5vw, 60px);
      width: 31%;
      font-size: clamp(29px, 3vw, 36px);
      line-height: 1.08;
    }

    .request__lead {
      top: 278px;
      left: clamp(32px, 5vw, 60px);
      width: 30%;
      font-size: 14px;
    }

    .request__accent {
      top: 402px;
      left: clamp(32px, 5vw, 60px);
      width: 72px;
    }

    .request__phone-prompt {
      top: 470px;
      left: clamp(32px, 5vw, 60px);
      width: 30%;
      font-size: 15px;
    }

    .request__phone {
      top: 532px;
      left: clamp(32px, 5vw, 60px);
      font-size: 25px;
    }

    .request-form {
      top: 68px;
      right: clamp(32px, 4vw, 48px);
      left: auto;
      width: calc(62% - clamp(32px, 4vw, 48px));
      height: 520px;
    }

    .request-field--object,
    .request-field--batch,
    .request-field--file {
      left: 28px;
      width: calc(57% - 42px);
    }

    .request-field--name,
    .request-field--phone,
    .request-field--email {
      left: 57%;
      width: calc(43% - 28px);
    }

    .request-field--object,
    .request-field--name {
      top: 28px;
    }

    .request-field--batch,
    .request-field--phone {
      top: 132px;
    }

    .request-field--file,
    .request-field--email {
      top: 236px;
    }

    .request-field > label {
      height: 26px;
      font-size: 13px;
    }

    .request-field input:not([type="file"]),
    .request-field select,
    .request-file > label {
      height: 52px;
      font-size: 14px;
    }

    .request-field input:not([type="file"]),
    .request-field select,
    .request-file > label {
      padding-right: 16px;
      padding-left: 16px;
    }

    .request-file img {
      margin-right: 10px;
    }

    .request-consent {
      top: 342px;
      left: 28px;
      width: calc(100% - 56px);
      font-size: 12px;
    }

    .request-consent span {
      width: auto;
    }

    .request-form__submit {
      top: 420px;
      left: 28px;
      width: 230px;
      height: 52px;
      padding-right: 24px;
      padding-left: 22px;
      font-size: 13px;
    }

    .request-form__note {
      top: 424px;
      right: 28px;
      left: 280px;
      width: auto;
      font-size: 12px;
    }

    .about-company {
      height: auto;
    }

    .about-company__stage {
      position: relative;
      top: auto;
      left: 0;
      width: 100%;
      height: auto;
      padding: 54px 0 46px;
      transform: none;
    }

    .about-company__blue-aura {
      top: -180px;
      right: -170px;
      left: auto;
    }

    .about-company__burgundy-aura {
      top: 600px;
    }

    .about-company__heading {
      position: relative;
      inset: auto;
      width: 100%;
      height: 170px;
    }

    .about-company__heading p {
      top: 0;
      left: clamp(32px, 5vw, 60px);
    }

    .about-company__heading .heading-2 {
      top: 38px;
      left: clamp(32px, 5vw, 60px);
      width: 65%;
      font-size: clamp(30px, 3.1vw, 37px);
      line-height: 1.08;
    }

    .about-company__heading div {
      top: 44px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 27%;
      font-size: 14px;
    }

    .about-company__photo {
      position: relative;
      top: auto;
      left: auto;
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 270px;
      margin: 24px auto 0;
    }

    .about-company__years {
      top: 4px;
      left: 30px;
      font-size: 92px;
    }

    .about-company__years-label {
      top: 112px;
      left: 34px;
      width: 300px;
      font-size: 20px;
    }

    .about-company__photo-note {
      top: 205px;
      left: 34px;
      width: 42%;
      font-size: 12px;
    }

    .about-company__timeline-axis {
      top: 64px;
      left: 45%;
      height: 164px;
    }

    .about-company__timeline-item--1995 {
      top: 62px;
      left: 49%;
    }

    .about-company__timeline-item--2005 {
      top: 122px;
      left: 65%;
    }

    .about-company__timeline-item--today {
      top: 182px;
      left: 81%;
    }

    .about-company__timeline-item strong {
      font-size: 16px;
    }

    .about-company__timeline-item span {
      width: 150px;
      font-size: 10px;
    }

    .about-company__overview {
      position: relative;
      top: auto;
      left: auto;
      display: grid;
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 190px;
      margin: 30px auto 0;
      grid-template-columns: 2.35fr repeat(3, 1fr);
      gap: 14px;
    }

    .about-company__narrative,
    .about-company__metric {
      position: relative;
      inset: auto;
      width: 100%;
      height: 190px;
    }

    .about-company__narrative {
      padding: 13px 18px;
    }

    .about-company__narrative p {
      margin-bottom: 9px;
      font-size: 13px;
    }

    .about-company__metric strong {
      top: 20px;
      left: 17px;
      font-size: clamp(38px, 4vw, 48px);
    }

    .about-company__metric--third strong {
      font-size: clamp(34px, 3.6vw, 43px);
    }

    .about-company__metric p {
      top: 94px;
      left: 17px;
      width: calc(100% - 28px);
      font-size: 13px;
    }

    .about-company__metric span {
      top: 140px;
      left: 17px;
    }

    .about-awards__heading {
      position: relative;
      top: auto;
      left: auto;
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 126px;
      margin: 0 auto;
    }

    .about-awards__heading .heading-2 {
      width: 100%;
      font-size: 30px;
    }

    .about-awards__heading div {
      top: 82px;
      width: 70%;
      font-size: 15px;
    }

    .about-awards__documents {
      position: relative;
      top: auto;
      left: auto;
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 540px;
      margin: 24px auto 0;
    }

    .about-awards {
      position: relative;
      margin-top: 70px;
    }

    .partners {
      height: 720px;
    }

    .partners__stage {
      left: 0;
      width: 100%;
      height: 720px;
      transform: none;
    }

    .partners__blue-aura {
      top: -180px;
      right: -170px;
      left: auto;
    }

    .partners__burgundy-aura {
      top: 480px;
    }

    .partners__kicker {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .partners__title {
      top: 92px;
      left: clamp(32px, 5vw, 60px);
      width: 42%;
      font-size: clamp(29px, 3vw, 36px);
      line-height: 1.08;
    }

    .partners__industries {
      top: 260px;
      left: calc(clamp(32px, 5vw, 60px) + 20px);
      width: calc(42% - 20px);
      font-size: 15px;
      line-height: 1.42;
    }

    .partners__accent {
      top: 462px;
      left: clamp(32px, 5vw, 60px);
    }

    .partners__proposition {
      top: 490px;
      left: clamp(32px, 5vw, 60px);
      width: 42%;
      font-size: 16px;
    }

    .partners__all {
      top: 52px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 200px;
      font-size: 14px;
    }

    .partners__rule {
      top: 128px;
      left: 47%;
      height: 500px;
    }

    .partners__logos {
      top: 160px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 47%;
      height: 339px;
    }

    .partners__lane {
      width: 100%;
    }

    .partners__proof {
      top: 526px;
      right: clamp(32px, 8vw, 96px);
      left: auto;
      width: 330px;
      height: 112px;
    }

    .partners__proof-rail {
      top: 38px;
      height: 34px;
    }

    .partners__proof strong {
      top: 25px;
      font-size: 39px;
    }

    .partners__proof p {
      top: 37px;
      left: 126px;
      width: 180px;
      font-size: 13px;
    }

    .trust-map {
      height: 690px;
    }

    .trust-map__stage {
      left: 0;
      width: 100%;
      height: 690px;
      transform: none;
    }

    .trust-map__blue-aura {
      top: -180px;
      right: -180px;
      left: auto;
    }

    .trust-map__burgundy-aura {
      top: 480px;
    }

    .trust-map__kicker {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .trust-map__title {
      top: 82px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      font-size: clamp(30px, 3.1vw, 37px);
      line-height: 1.08;
    }

    .trust-map__canvas {
      top: 188px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 430px;
    }

    .awards-main-carousel {
      --f-carousel-gap: 18px;
      --f-carousel-slide-width: calc((100% - 36px) / 3);
      --f-carousel-slide-height: clamp(400px, 38vw, 456px);
      width: 100%;
      height: clamp(400px, 38vw, 456px);
    }

    .awards-main-carousel__slide {
      width: var(--f-carousel-slide-width);
      height: var(--f-carousel-slide-height);
    }

    .about-awards__thumbs {
      display: none;
    }

    .about-awards__arrows {
      top: clamp(424px, calc(38vw + 24px), 480px);
      right: 0;
      left: auto;
    }

    .hero { min-height: 700px; }

    /* Cases: three real-width cards and a compact consultation row. */
    .cases {
      height: 900px;
    }

    .cases__stage {
      left: 0;
      width: 100%;
      height: 900px;
      transform: none;
    }

    .cases__blue-aura {
      right: -180px;
      left: auto;
    }

    .cases__kicker {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .cases__title {
      top: 88px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      font-size: clamp(30px, 3.1vw, 37px);
    }

    .cases__all {
      top: 144px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      width: 190px;
      font-size: 14px;
    }

    .cases-carousel {
      --f-carousel-gap: 18px;
      --f-carousel-slide-width: calc((100% - 36px) / 3);
      --f-carousel-slide-height: 390px;
      top: 210px;
      left: clamp(32px, 5vw, 60px);
      right: clamp(32px, 5vw, 60px);
      width: auto;
      height: 390px;
      padding: 0;
      overflow: visible;
    }

    .case-card,
    .case-card--tall,
    .case-card__inner,
    .case-card--tall .case-card__inner {
      height: 390px;
    }

    .case-card,
    .case-card--tall {
      width: var(--f-carousel-slide-width) !important;
      max-width: var(--f-carousel-slide-width);
      flex: 0 0 var(--f-carousel-slide-width);
    }

    .case-card__inner,
    .case-card--tall .case-card__inner {
      width: 100%;
    }

    .case-card__image {
      width: 100%;
      height: 205px;
    }

    .case-card .heading-3 {
      top: 236px;
      left: 20px;
      width: calc(100% - 40px);
      font-size: clamp(15px, 1.55vw, 18px);
    }

    .case-card__year {
      top: 333px;
      left: 20px;
      font-size: 14px;
    }

    .case-card__tag {
      top: 356px;
      left: 20px;
    }

    .case-card__arrow {
      top: 333px;
      right: 18px;
      left: auto;
      font-size: 32px;
    }

    .cases__arrows {
      top: 620px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
    }

    .cases__arrow {
      width: 48px;
      height: 48px;
    }

    .cases-consultation {
      top: 700px;
      left: clamp(32px, 5vw, 60px);
      right: clamp(32px, 5vw, 60px);
      width: auto;
      height: 140px;
    }

    .cases-consultation .heading-3 {
      top: 32px;
      left: 28px;
      width: 36%;
      font-size: clamp(18px, 1.8vw, 21px);
      line-height: 1.2;
    }

    .cases-consultation > input {
      top: 24px;
      left: 40%;
      width: 27%;
    }

    .cases-consultation > button {
      top: 24px;
      right: 24px;
      left: auto;
      width: 27%;
    }

    .cases-consultation > label {
      top: 92px;
      left: 40%;
      font-size: 12px;
    }

    /* News and materials: desktop rhythm with three flexible cards. */
    .news-materials {
      height: 700px;
    }

    .news-materials__stage {
      left: 0;
      width: 100%;
      height: 700px;
      transform: none;
    }

    .news-materials__heading p {
      top: 54px;
      left: clamp(32px, 5vw, 60px);
    }

    .news-materials__heading .heading-2 {
      top: 86px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      font-size: clamp(30px, 3.1vw, 37px);
    }

    .news-materials__heading div {
      top: 142px;
      left: 22%;
      width: 56%;
      font-size: 14px;
    }

    .news-materials__tabs {
      top: 184px;
      left: calc(clamp(32px, 5vw, 60px) - 10px);
      width: auto;
    }

    .news-materials__tabs button {
      height: 40px;
      padding: 0 18px;
      font-size: 15px;
    }

    .news-materials__all {
      top: 194px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
      font-size: 14px;
    }

    .news-carousel {
      --f-carousel-gap: 18px;
      --f-carousel-slide-width: calc((100% - 36px) / 3);
      --f-carousel-slide-height: 310px;
      top: 270px;
      left: clamp(32px, 5vw, 60px);
      width: calc(100% - clamp(64px, 10vw, 120px));
      height: 310px;
    }

    .news-card,
    .news-card__inner {
      height: 310px;
    }

    .news-card {
      width: var(--f-carousel-slide-width) !important;
      max-width: var(--f-carousel-slide-width);
      flex: 0 0 var(--f-carousel-slide-width);
    }

    .news-card__inner {
      width: 100%;
    }

    .news-card__accent {
      width: 100%;
    }

    .news-card time {
      top: 25px;
      left: 20px;
      font-size: 14px;
    }

    .news-card__badge {
      top: 18px;
      right: 18px;
      left: auto;
      width: 105px;
      font-size: 13px;
    }

    .news-card__meta {
      top: 55px;
      left: 20px;
    }

    .news-card .heading-3 {
      top: 79px;
      left: 20px;
      width: calc(100% - 40px);
      font-size: clamp(17px, 1.8vw, 21px);
    }

    .news-card__text {
      top: 165px;
      left: 20px;
      width: calc(100% - 40px);
      font-size: 14px;
    }

    .news-card__line {
      top: 248px;
      left: 20px;
      width: calc(100% - 40px);
    }

    .news-card__more {
      top: 254px;
      left: 20px;
      width: calc(100% - 40px);
      font-size: 14px;
    }

    .news-materials__arrows {
      top: 602px;
      right: clamp(32px, 5vw, 60px);
      left: auto;
    }

    .news-materials__arrow {
      width: 48px;
      height: 48px;
    }

    /* Footer: two fluid panels without scaling either of them. */
    .site-footer {
      height: 740px;
    }

    .footer-contact-panel,
    .footer-navigation-panel {
      left: auto;
      height: 650px;
      margin-left: 0;
      transform: none;
    }

    .footer-panel-reveal,
    .footer-panel-reveal.is-visible {
      transform: none;
    }

    .footer-contact-panel {
      top: 40px;
      left: clamp(24px, 3vw, 40px);
      width: calc(34% - 12px);
      border-radius: 28px;
    }

    .footer-contact-panel > .heading-2 {
      top: 38px;
      left: 28px;
      width: calc(100% - 56px);
      font-size: clamp(27px, 2.8vw, 33px);
    }

    .footer-contact-card {
      top: 180px;
      left: 24px;
      width: calc(100% - 48px);
      height: 116px;
    }

    .footer-contact-card--schedule { top: 316px; }
    .footer-contact-card--address { top: 452px; }
    .footer-contact-card__main { width: calc(100% - 54px); font-size: 14px; }
    .footer-contact-card__action { width: calc(100% - 54px); }

    .footer-navigation-panel {
      top: 40px;
      right: clamp(24px, 3vw, 40px);
      width: calc(66% - clamp(64px, 6vw, 80px) - 12px);
      border-radius: 28px;
    }

    .footer-navigation-panel__watermark {
      top: 530px;
      width: 100%;
      font-size: 76px;
    }

    .footer-column { top: 42px; }
    .footer-column--navigation { left: 5%; width: 18%; }
    .footer-column--catalog { left: 25%; width: 34%; }
    .footer-column .heading-2,
    .footer-details > .heading-2 { margin-bottom: 28px; font-size: 14px; }
    .footer-column a { font-size: 14px; line-height: 18px; }

    .footer-details {
      top: 42px;
      left: 63%;
      width: 33%;
    }

    .footer-details__phone { font-size: clamp(18px, 2vw, 23px); }
    .footer-details__email { font-size: clamp(16px, 1.7vw, 19px); }
    .footer-details address { font-size: 13px; }
    .footer-details__callback { width: 100%; font-size: 14px; }

    .footer-legal {
      top: 475px;
      left: 5%;
      width: 48%;
      font-size: 12px;
    }

    .footer-company {
      top: 475px;
      left: 63%;
      width: 32%;
      font-size: 12px;
    }
}

@media (max-width: 992px) {
  .contacts-page { padding-bottom: 28px; }
  .contacts-page__title { margin-bottom: 22px; font-size: 34px; }
  .contacts-overview { grid-template-columns: 1fr; gap: 24px; }
  .contacts-panel,
  .contacts-map { height: auto; }
  .contacts-panel { padding: 22px 16px; }
  .contacts-panel > .heading-2 { margin-bottom: 24px; font-size: 27px; }
  .contacts-info-card { padding-right: 16px; padding-left: 32px; }
  .contacts-info-card__rail { left: 14px; }
  .contacts-info-card__main { font-size: 14px; }
  .contacts-map { height: 430px; }
  .contacts-map__address { top: 16px; left: 16px; width: calc(100% - 32px); padding: 16px; }
  .contacts-map__address p,
  .contacts-map__address a { font-size: 14px; }
  .contacts-management { margin-top: 40px; }
  .contacts-management > .heading-2 { margin-bottom: 24px; font-size: 30px; }
  .contacts-management__grid { grid-template-columns: 1fr; gap: 16px; }
  .management-card { min-height: 0; padding: 22px; }
  .management-card .heading-3 { min-height: 0; }

  html,
    body {
      width: 100%;
      min-width: 0;
      overflow-x: clip;
    }
  
    main {
      width: 100%;
      overflow: hidden;
    }
  
    .hero,
    .technology-intro,
    .equipment-catalog,
    .partnership,
    .services,
    .request,
    .about-company,
    .partners,
    .trust-map,
    .cases,
    .news-materials,
    .site-footer {
      width: 100%;
      min-width: 0;
    }
  
    .technology-intro__stage,
    .equipment-catalog__stage,
    .partnership__stage,
    .services__stage,
    .request__stage,
    .about-company__stage,
    .partners__stage,
    .trust-map__stage,
    .cases__stage,
    .news-materials__stage {
      top: 0;
      left: 0;
      width: 100%;
      transform: none;
    }
  
    .technology-intro__kicker,
    .equipment-catalog__kicker,
    .partnership__kicker,
    .services__kicker,
    .request__kicker,
    .about-company__heading > p,
    .about-awards__heading > p,
    .partners__kicker,
    .trust-map__kicker,
    .cases__kicker,
    .news-materials__heading > p {
      font-size: 14px;
      font-weight: 800;
    }
  
    .technology-intro__title,
    .equipment-catalog__title,
    .partnership__title,
    .services__title,
    .request__title,
    .about-company__heading .heading-2,
    .about-awards__heading .heading-2,
    .partners__title,
    .trust-map__title,
    .cases__title,
    .news-materials__heading .heading-2 {
      width: calc(100% - 32px);
      font-size: 26px;
      line-height: 1.16;
    }
  
    .technology-intro__title br,
    .partnership__title br,
    .request__title br,
    .trust-map__title br {
      display: none;
    }
  
    /* Hero / crM26 */
    .hero {
      height: auto;
      min-height: 0;
      padding-bottom: 40px;
      overflow: hidden;
      background: #f6fafc url("../img/generated-1779098936317.png") center / cover no-repeat;
    }
  
    .hero::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background: rgba(246, 250, 252, 0.925);
    }
  
    .hero__video { display: none; }
  
    .hero__wash {
      display: none;
    }
  
    .hero__aura {
      top: 570px;
      left: -120px;
      z-index: 1;
      width: 360px;
      height: 250px;
      filter: blur(60px);
    }
  
    .site-header {
      top: 16px;
      left: 16px;
      z-index: 5;
      width: calc(100% - 32px);
      height: 56px;
      padding: 0;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: rgba(255, 255, 255, 0.91);
      transform: none;
    }
  
    .site-header__logo {
      top: 7px;
      left: 14px;
      width: 136px;
      height: 42px;
    }
  
    .site-header__logo img {
      width: 60px;
      height: 42px;
      object-fit: contain;
    }
  
    .header-actions {
      display: none;
    }

    .main-nav {
      position: absolute;
      top: 68px;
      left: 0;
      display: flex;
      align-items: stretch;
      width: 100%;
      height: auto;
      max-height: 0;
      padding: 0 16px;
      gap: 0;
      overflow: hidden;
      flex-direction: column;
      border: 1px solid transparent;
      border-radius: 24px;
      background: rgba(255, 255, 255, 0.98);
      box-shadow: 0 18px 38px rgba(7, 19, 41, 0);
      opacity: 0;
      visibility: hidden;
      transform: translateY(-8px);
      transition: max-height 320ms ease-out, padding 320ms ease-out, opacity 220ms ease-out, transform 220ms ease-out, visibility 320ms, box-shadow 220ms;
    }

    .site-header.is-menu-open .main-nav {
      max-height: 620px;
      padding: 14px 16px 18px;
      border-color: var(--line);
      box-shadow: 0 18px 38px rgba(7, 19, 41, 0.14);
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
    }

    .main-nav > .main-nav__link,
    .main-nav__item > .main-nav__link {
      min-height: 44px;
      font-size: 15px;
    }

    .main-nav__item {
      display: grid;
      grid-template-columns: 1fr 44px;
    }

    .main-nav__item--has-children::after {
      display: none;
    }

    .main-nav__submenu-toggle {
      width: 44px;
      height: 44px;
    }

    .main-nav__submenu {
      position: static;
      grid-column: 1 / -1;
      width: 100%;
      max-height: 0;
      padding: 0 8px;
      overflow: hidden;
      border: 0;
      border-radius: 12px;
      box-shadow: none;
      opacity: 1;
      visibility: visible;
      transform: none;
      transition: max-height 240ms ease-out, padding 240ms ease-out, margin 240ms ease-out;
    }

    .main-nav__submenu::before {
      display: none;
    }

    .main-nav__item.is-open .main-nav__submenu {
      max-height: 240px;
      margin-bottom: 6px;
      padding: 6px 8px;
      background: #f3f6fa;
    }

    .main-nav__submenu a {
      padding: 9px 10px;
      font-size: 14px;
    }

    .mobile-nav-search {
      display: grid;
      grid-template-columns: 1fr 44px;
      height: 46px;
      margin-top: 8px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 23px;
      background: #f8fafc;
    }

    .mobile-nav-search input {
      min-width: 0;
      padding: 0 4px 0 16px;
      border: 0;
      outline: 0;
      background: transparent;
      color: var(--ink);
      font-size: 15px;
    }

    .mobile-nav-search button {
      display: grid;
      padding: 0;
      place-items: center;
      background: transparent;
    }

    .mobile-nav-search button img {
      width: 20px;
      height: 20px;
    }
  
    .mobile-header-actions {
      position: absolute;
      top: 5px;
      right: 7px;
      display: flex;
      gap: 8px;
    }
  
    .mobile-header-actions__phone,
    .mobile-header-actions__menu {
      display: grid;
      width: 44px;
      height: 44px;
      padding: 0;
      place-items: center;
      border-radius: 50%;
    }
  
    .mobile-header-actions__phone {
      border: 1px solid var(--line);
      background: #f8fafc;
    }
  
    .mobile-header-actions__phone img {
      width: 20px;
      height: 20px;
      filter: invert(13%) sepia(95%) saturate(4764%) hue-rotate(329deg) brightness(73%) contrast(109%);
    }
  
    .mobile-header-actions__menu {
      gap: 4px;
      align-content: center;
      border: 0;
      background: var(--ink);
    }
  
    .mobile-header-actions__menu span {
      display: block;
      width: 18px;
      height: 2px;
      border-radius: 1px;
      background: #fff;
      transition: transform 220ms ease-out, opacity 180ms ease-out;
    }

    .lead-modal {
      padding: 32px 22px 24px;
      border-radius: 20px;
    }

    .lead-modal .heading-2 {
      font-size: 27px;
    }

    .lead-modal__intro {
      margin-bottom: 20px;
      font-size: 14px;
    }

    .callback-modal {
      padding: 32px 22px 24px;
      border-radius: 12px;
    }

    .callback-modal .callback-modal__close {
      top: 18px;
      right: 18px;
    }

    .callback-modal__icon {
      width: 46px;
      height: 46px;
      margin-bottom: 16px;
    }

    .callback-modal .heading-2 {
      padding-right: 28px;
      font-size: 25px;
    }

    .callback-modal .lead-modal__intro {
      margin: 4px 0 20px;
    }

    .callback-form__footer {
      display: grid;
      gap: 14px;
    }

    .callback-modal .callback-form__submit {
      width: 100%;
      min-width: 0;
    }

    .consultation-modal {
      max-height: calc(100svh - 16px);
      padding: 26px 16px 20px;
      overflow-x: hidden;
      overflow-y: auto;
      border-radius: 12px;
    }

    .consultation-modal .consultation-modal__close {
      top: 14px;
      right: 14px;
    }

    .consultation-modal__kicker {
      margin-bottom: 6px;
      font-size: 10px;
    }

    .consultation-modal .heading-2 {
      padding-right: 28px;
      font-size: 23px;
    }

    .consultation-modal .lead-modal__intro {
      margin: 2px 0 14px;
      font-size: 12px;
      line-height: 1.35;
    }

    .consultation-form,
    .consultation-modal .wpcf7-form {
      gap: 11px;
    }

    .consultation-form__group {
      gap: 6px;
    }

    .consultation-form__fields {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .consultation-form__direction,
    .consultation-form__contact {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .consultation-form__direction {
      gap: 0;
      border: 1px solid #c9d4e2;
      background: #f6fafc;
    }

    .consultation-form__direction label,
    .consultation-form__contact label {
      min-height: 40px;
      padding: 0 5px;
      font-size: 11px !important;
    }

    .consultation-form__contact {
      gap: 5px;
    }

    .consultation-form__contact label {
      gap: 4px !important;
    }

    .consultation-form__contact .wpcf7-list-item-label {
      gap: 4px;
    }

    .consultation-form__contact .wpcf7-list-item-label::before {
      width: 14px;
      height: 14px;
      flex-basis: 14px;
    }

    .consultation-modal .consultation-form__field input {
      height: 44px;
      min-height: 44px;
      padding: 0 12px;
      font-size: 14px;
    }

    .consultation-form__field {
      gap: 5px;
    }

    .consultation-form__label,
    .consultation-form__field {
      font-size: 12px;
    }

    .consultation-modal input.consultation-form__consent {
      width: 18px;
      height: 18px;
      flex-basis: 18px;
    }

    .consultation-modal .wpcf7-acceptance label {
      gap: 8px !important;
      font-size: 11px !important;
    }

    .consultation-form__footer {
      display: flex;
      gap: 12px;
    }

    .consultation-modal .consultation-form__submit {
      width: auto;
      min-height: 48px;
      flex: 1 1 auto;
      padding: 0 14px;
      font-size: 13px;
    }

    .consultation-form__response-time {
      max-width: 120px;
      flex: 0 0 120px;
      gap: 6px;
      font-size: 10px;
      line-height: 1.3;
    }

    .consultation-form__response-time::before {
      width: 14px;
      height: 14px;
      flex-basis: 14px;
    }

    .site-header.is-menu-open .mobile-header-actions__menu span:nth-child(1) {
      transform: translateY(6px) rotate(45deg);
    }

    .site-header.is-menu-open .mobile-header-actions__menu span:nth-child(2) {
      opacity: 0;
    }

    .site-header.is-menu-open .mobile-header-actions__menu span:nth-child(3) {
      transform: translateY(-6px) rotate(-45deg);
    }
  
    .hero__content {
      position: relative;
      top: auto;
      left: auto;
      z-index: 2;
      width: 100%;
      height: auto;
      padding: 118px 16px 0;
      transform: none;
    }
  
    .hero__eyebrow {
      position: relative;
      top: auto;
      left: auto;
      width: 100%;
      height: 34px;
      /* padding: 8px 12px 0 36px; */
      border: 1px solid var(--line);
      border-radius: 17px;
      background: rgba(255, 255, 255, 0.85);
      font-size: 12px;
    }
  
    .hero__eyebrow > span {
      top: 11px;
      left: 14px;
      width: 10px;
      height: 10px;
    }
  
    .hero h1 {
      position: relative;
      top: auto;
      left: auto;
      width: 100%;
      margin-top: 28px;
      font-size: 32px;
      line-height: 1.12;
    }
  
    .hero h1 br { display: none; }
  
    .hero__lead {
      position: relative;
      top: auto;
      left: auto;
      width: 100%;
      margin-top: 24px;
      font-size: 16px;
      line-height: 1.48;
    }
  
    .hero__lead br { display: none; }
  
    .hero__buttons {
      position: relative;
      top: auto;
      left: auto;
      display: block;
      width: 100%;
      margin-top: 28px;
      transform: none;
    }
  
    .hero__buttons .button {
      width: 100%;
      height: 52px;
      padding: 0 44px;
      border-radius: 22px;
      font-size: 15px;
    }
  
    .hero__buttons .button + .button {
      margin-top: 12px;
    }
  
    .button__desktop-label { display: none; }
    .button__mobile-label { display: inline; }
  
    .hero-benefits {
      position: relative;
      top: auto;
      left: auto;
      z-index: 2;
      display: block;
      width: auto;
      height: 190px;
      margin: 32px 16px 0;
      transform: none;
    }
  
    .benefit-card {
      position: absolute;
      top: 0;
      left: 0;
      display: flex;
      width: 100%;
      height: 56px;
      align-items: center;
      border-radius: 8px;
      background: rgba(17, 24, 39, 0.85);
    }
  
    .benefit-card--middle { top: 64px; height: 62px; }
    .benefit-card--bottom { top: 134px; }
  
    .benefit-card p {
      position: static;
      width: 100%;
      margin: 0;
      padding: 0 20px 0 38px;
      font-size: 15px;
      line-height: 1.25;
    }
  
    .benefit-card .pixel-mark {
      top: calc(50% - 8px);
      left: 16px;
      width: 16px;
      height: 16px;
    }
  
    .benefit-card__desktop-text { display: none; }
  
    /* Technologies / SMEDo */
    .technology-intro {
      height: 1068px;
      overflow: hidden;
      background: #fff;
    }
  
    .technology-intro__stage { height: 1068px; }
    .technology-intro__blue-aura,
    .technology-intro__burgundy-aura,
    .technology-intro__more,
    .technology-intro__bottom { display: none; }
  
    .technology-intro__kicker { top: 56px; left: 16px; }
    .technology-intro__title { top: 90px; left: 16px; }
    .technology-intro__lead {
      top: 198px;
      left: 16px;
      width: calc(100% - 32px);
      font-size: 15px;
      line-height: 1.5;
    }
  
    .technology-card {
      left: 16px;
      width: calc(100% - 32px);
      height: 337px;
      border: 1px solid #e2e8f0;
      border-radius: 8px;
      background: #fff;
    }
  
    .technology-card--pvd { top: 306px; }
    .technology-card--ion { top: 667px; }
    .technology-card__accent,
    .technology-card__tag,
    .technology-card__products .heading-4,
    .technology-card__products p,
    .technology-card__products-text { display: none; }
  
    .technology-card__marker {
      top: 18px;
      left: 18px;
      width: 44px;
      height: 44px;
      padding: 0;
      border-radius: 50%;
      font-size: 14px;
    }
  
    .technology-card .heading-3 {
      top: 19px;
      left: 76px;
      width: calc(100% - 108px);
      font-size: 21px;
      line-height: 1.18;
    }
  
    .technology-card__description,
    .technology-card--pvd .technology-card__description {
      top: 86px;
      left: 18px;
      width: calc(100% - 36px);
      font-size: 15px;
      line-height: 1.45;
    }
  
    .technology-card__products {
      top: 186px;
      left: 18px;
      width: calc(100% - 36px);
      height: 130px;
      overflow: hidden;
      border: 1px solid #e2e8f0;
      border-radius: 8px;
    }
  
    .technology-card--ion .technology-card__products { top: 187px; }
  
    .technology-card__products img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: contain;
      transform: none !important;
    }
  
    /* Equipment / QIZ3Q */
    .equipment-catalog {
      height: 3282px;
      margin-bottom: 46px;
      overflow: hidden;
    }
  
    .equipment-catalog__stage { height: 3282px; }
    .equipment-catalog__blue-aura { top: 78px; left: 210px; width: 260px; height: 260px; filter: blur(58px); }
    .equipment-catalog__lower-glow { top: 2760px; left: -170px; width: 360px; height: 260px; }
    .equipment-catalog__kicker { top: 56px; left: 16px; }
    .equipment-catalog__title { top: 92px; left: 16px; }
    .equipment-catalog__lead {
      top: 208px;
      left: 16px;
      width: calc(100% - 32px);
      font-size: 15px;
      line-height: 1.45;
    }
  
    .equipment-catalog__lead-desktop {
      display: none;
    }
  
    .equipment-catalog__lead-mobile {
      display: inline;
    }
  
    .equipment-catalog__link {
      top: 400px;
      left: 16px;
      display: flex;
      width: calc(100% - 32px);
      height: 48px;
      align-items: center;
      justify-content: center;
      gap: 34px;
      border: 1px solid var(--line);
      border-radius: 24px;
      background: #fff;
      font-size: 15px;
      text-transform: none;
    }
  
    .equipment-carousel {
      top: 488px;
      left: 16px;
      width: calc(100% - 32px);
      height: 2594px;
      padding: 0;
      overflow: visible;
    }

    .equipment-carousel .f-carousel__viewport {
      position: static;
      display: block !important;
      height: 2594px;
      overflow: visible !important;
      transform: none !important;
    }
  
    .equipment-card {
      position: absolute !important;
      left: 0 !important;
      width: 100% !important;
      height: 350px !important;
      border: 1px solid #c9d4e2;
      border-radius: 8px;
      background: linear-gradient(180deg, #edf3fa 0, #dce6f2 48%, #fff 55%);
      box-shadow: none;
    }
  
    .equipment-card:nth-child(1) { top: 0 !important; }
    .equipment-card:nth-child(2) { top: 374px !important; }
    .equipment-card:nth-child(3) { top: 748px !important; }
    .equipment-card:nth-child(4) { top: 1122px !important; }
    .equipment-card:nth-child(5) { top: 1496px !important; }
    .equipment-card:nth-child(6) { top: 1870px !important; }
    .equipment-card:nth-child(7) { top: 2244px !important; }
  
    .equipment-card .heading-3 {
      width: auto;
      margin: 24px 20px 0;
      font-size: 22px;
      line-height: 1.12;
    }
  
    .equipment-card__link > p {
      width: auto;
      margin: 10px 20px 0;
      font-size: 14px;
      line-height: 1.3;
    }
  
    .equipment-card__image {
      top: 155px;
      left: 0;
      width: 100%;
      height: 195px;
      border-radius: 0 0 8px 8px;
    }
  
    .equipment-card__image::after {
      background: linear-gradient(180deg, transparent 48%, rgba(7, 19, 41, 0.72));
    }
  
    .equipment-card__arrow {
      top: auto;
      right: 18px;
      bottom: 18px;
      width: 44px;
      height: 44px;
      font-size: 28px;
    }
    .equipment-card__arrow:empty::before { content: "\2197\FE0E"; }
  
    .equipment-catalog__badge {
      top: 3106px;
      left: 16px;
      width: calc(100% - 32px);
      height: 65px;
      border-radius: 8px;
    }
  
    .equipment-catalog__badge-rail { top: 12px; left: 18px; height: 42px; }
    .equipment-catalog__badge-label { top: 18px; left: 36px; width: 130px; font-size: 14px; }
    .equipment-catalog__badge strong { top: 19px; left: 183px; font-size: 20px; }
  
    .equipment-catalog__mobile-cta,
    .services__mobile-cta {
      position: absolute;
      left: 16px;
      display: flex;
      width: calc(100% - 32px);
      height: 52px;
      align-items: center;
      justify-content: center;
      gap: 12px;
      border-radius: 22px;
      color: #fff;
      background: var(--burgundy);
      box-shadow: 0 14px 28px rgba(144, 0, 48, 0.2);
      font-size: 15px;
      font-weight: 800;
    }
  
    .equipment-catalog__mobile-cta { top: 3192px; }
  
    /* Partnership / mElQb */
    .partnership { height: 1410px; }
    .partnership__stage { height: 1410px; }
    .partnership__blue-aura { top: -80px; left: 210px; width: 300px; height: 300px; }
    .partnership__burgundy-aura { top: 850px; left: -190px; width: 380px; height: 280px; }
    .partnership__kicker { top: 56px; left: 16px; }
    .partnership__title { top: 92px; left: 16px; }
  
    .partnership__lead {
      top: 305px;
      left: 16px;
      width: calc(100% - 32px);
      height: 99px;
      padding: 18px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.9);
      box-shadow: none;
      font-size: 15px;
      line-height: 1.42;
    }
  
    .partnership__production {
      top: 426px;
      left: 16px;
      width: calc(100% - 32px);
      height: 220px;
      border-radius: 8px;
    }
  
    .partnership__portrait {
      top: 224px;
      right: auto;
      left: 16px;
      z-index: 3;
      width: 239px;
      height: 66px;
      margin: 0;
      padding: 0;
      overflow: visible;
      border: 0;
      border-radius: 0;
      background: transparent;
    }
  
    .partnership__portrait img {
      position: absolute;
      top: 0;
      left: 0;
      width: 66px;
      height: 66px;
      border-radius: 28px;
      box-shadow: none;
    }
  
    .partnership__portrait figcaption {
      position: absolute;
      top: 10px;
      left: 77px;
      width: 162px;
      height: 34px;
      padding: 0;
    }
  
    .partnership__portrait strong {
      width: 162px;
      font-size: 15px;
      line-height: 1.1;
    }
  
    .partnership__portrait span {
      position: absolute;
      top: 17px;
      left: 0;
      width: 150px;
      margin: 0;
      font-size: 12px;
      line-height: 1.2;
    }
  
    .partnership__portrait span br,
    .partnership__portrait-company { display: none; }
  
    .partnership__work {
      top: 678px;
      left: 16px;
      width: calc(100% - 32px);
    }
  
    .partnership__work .heading-3 {
      height: 26px;
      font-size: 16px;
      line-height: 1;
    }
  
    .partnership__list {
      width: 100%;
      margin-top: 4px;
    }
  
    .partnership__list li {
      width: 100%;
      height: 66px;
    }
  
    .partnership__list li > span {
      width: 52px;
      flex-basis: 52px;
      font-size: 27px;
      font-weight: 300;
    }
  
    .partnership__list li > strong,
    .partnership__list li:last-child > strong {
      width: calc(100% - 52px);
      padding: 0;
      font-size: 17px;
      line-height: 1.22;
    }
  
    .partnership__contact {
      top: 1208px;
      left: 16px;
      width: calc(100% - 32px);
      height: 169px;
      padding: 0;
      border-radius: 8px;
    }
  
    .partnership__contact-rail { left: 0; width: 6px; height: 169px; }
    .partnership__contact > p { top: 20px; left: 22px; width: 177px; font-size: 17px; line-height: 1.25; }
    .partnership__phone { top: 68px; left: 22px; font-size: 21px; }
    .partnership__phone span { display: none; }
    .partnership__cta { top: 104px; left: 22px; width: calc(100% - 44px); height: 42px; font-size: 14px; }

    .partnership,
    .partnership__stage {
      height: auto;
    }

    .partnership__stage {
      min-height: 0;
    }

    .partnership__layout {
      display: block;
      width: 100%;
      padding: 56px 16px 33px;
    }

    .partnership__kicker,
    .partnership__title,
    .partnership__portrait,
    .partnership__lead,
    .partnership__production,
    .partnership__work,
    .partnership__contact {
      position: static;
      top: auto;
      right: auto;
      left: auto;
      width: 100%;
    }

    .partnership__heading-row {
      display: flex;
      margin-top: 19px;
      flex-direction: column;
      gap: 0;
    }

    .partnership__title {
      width: 100%;
    }

    .partnership__portrait {
      display: flex;
      width: 239px;
      height: 66px;
      margin-top: 27px;
      align-items: center;
    }

    .partnership__portrait img {
      position: static;
      flex: 0 0 66px;
    }

    .partnership__portrait figcaption {
      position: static;
      width: 162px;
      height: auto;
      margin-left: 11px;
      padding: 0;
    }

    .partnership__portrait span {
      position: static;
      margin-top: 2px;
    }

    .partnership__lead {
      height: auto;
      margin-top: 15px;
    }

    .partnership__production {
      position: relative;
      inset: auto;
      height: 220px;
      margin-top: 22px;
    }

    .partnership__secondary {
      margin-top: 32px;
    }

    .partnership__work {
      width: 100%;
    }

    .partnership__contact {
      position: relative;
      inset: auto;
      height: 169px;
      margin-top: 32px;
    }

    /* Services / q37TES */
    .services { height: 2126px; }
    .services__stage { height: 2126px; }
    .services__blue-aura { top: -90px; left: 210px; width: 300px; height: 280px; }
    .services__burgundy-aura { top: 1380px; left: -190px; width: 380px; height: 280px; }
    .services__kicker { top: 56px; left: 16px; }
    .services__title { top: 92px; left: 16px; }
    .services__lead { top: 168px; left: 16px; width: calc(100% - 32px); font-size: 15px; line-height: 1.45; }
  
    .services__grid {
      top: 259px;
      left: 16px;
      display: block;
      width: calc(100% - 32px);
      height: 1724px;
    }
  
    .service-card {
      position: absolute;
      left: 0;
      width: 100%;
      height: 190px;
      border-radius: 8px;
    }
  
    .service-card:nth-child(1) { top: 0; }
    .service-card:nth-child(2) { top: 213px; }
    .service-card:nth-child(3) { top: 430px; }
    .service-card:nth-child(4) { top: 655px; }
    .service-card:nth-child(5) { top: 878px; }
    .service-card:nth-child(6) { top: 1098px; }
    .service-card:nth-child(7) { top: 1317px; }
    .service-card:nth-child(8) { top: 1534px; }
  
    .service-card__marker { top: 18px; left: 18px; width: 34px; height: 34px; }
    .service-card__marker b { font-size: 14px; }
    .service-card .heading-3 { top: 66px; left: 24px; width: calc(100% - 87px); font-size: 18px; line-height: 1.12; }
    .service-card > p { top: 136px; left: 24px; width: calc(100% - 98px); font-size: 13px; line-height: 1.3; }
    .service-card__arrow { top: auto; bottom: 18px; right: 18px; width: 36px; height: 36px; font-size: 22px; }
  
    .service-card--has-image .service-card__image {
      opacity: 1;
    }
  
    .service-card--has-image .service-card__marker,
    .service-card--has-image .service-card__marker b,
    .service-card--has-image .heading-3,
    .service-card--has-image > p {
      color: #fff;
      border-color: rgba(255, 255, 255, 0.8);
    }
  
    .service-card--has-image .service-card__arrow {
      color: #fff;
      border-color: rgba(255, 255, 255, 0.35);
      background: rgba(255, 255, 255, 0.12);
    }
  
    .services__mobile-cta { top: 2024px; }
  
    /* Request / JSspG */
    .request { height: 1118px; }
    .request::before { height: 1057px; opacity: 0.08; }
    .request__stage { height: 1118px; }
    .request__blue-aura,
    .request__burgundy-aura { display: none; }
    .request__copy { position: static; }
    .request__kicker { top: 56px; left: 16px; }
    .request__title { top: 92px; left: 16px; }
    .request__lead { top: 206px; left: 16px; width: calc(100% - 32px); font-size: 15px; line-height: 1.45; }
    .request__accent { top: 302px; left: 16px; width: 86px; height: 4px; }
    .request__phone-prompt { top: 330px; left: 16px; width: calc(100% - 32px); font-size: 16px; line-height: 1.42; }
    .request__phone-prompt br { display: none; }
    .request__phone { top: 384px; left: 16px; font-size: 26px; }
  
    .request-form {
      top: 450px;
      left: 16px;
      width: calc(100% - 32px);
      height: 548px;
      padding: 0;
      overflow: visible;
      border-radius: 8px;
    }
  
    .request-field { position: absolute; left: 16px; width: calc(100% - 32px); }
    .request-field--object { top: 24px; }
    .request-field--batch { top: 118px; }
    .request-field--file { top: 212px; }
    .request-field--name { top: 306px; }
    .request-field--phone { top: 400px; }
    .request-field--email { display: none; }
  
    .request-field > label {
      height: 16px;
      font-size: 14px;
      line-height: 16px;
    }
    .request-field input:not([type="file"]),
    .request-field select,
    .request-file > label {
      width: 100%;
      height: 52px;
      margin-top: 10px;
      font-size: 16px;
    }
  
    .request-consent { top: 490px; left: 16px; width: calc(100% - 32px); font-size: 12px; line-height: 1.32; }
    .request-form__submit { top: 574px; left: 0; width: 100%; height: 52px; border-radius: 22px; font-size: 15px; }
    .request-form__note { display: none; }
  
    /* About and awards / c5xHE6 */
    .about-company { height: 1834px; }
    .about-company__stage { height: 1834px; }
    .about-company__blue-aura { top: -80px; left: 210px; width: 300px; height: 280px; }
    .about-company__burgundy-aura { display: none; }
    .about-company__heading { position: static; }
    .about-company__heading > p { top: 56px; left: 16px; }
    .about-company__heading .heading-2 { top: 92px; left: 16px; line-height: 1.14; }
    .about-company__heading > div { top: 254px; left: 16px; width: calc(100% - 32px); font-size: 15px; line-height: 1.42; }
    .about-company__lead-desktop { display: none; }
    .about-company__lead-mobile { display: inline; }
  
    .about-company__photo {
      top: 341px;
      left: 16px;
      width: calc(100% - 32px);
      height: 245px;
      border-radius: 8px;
      box-shadow: 0 18px 32px rgba(7, 19, 41, 0.09);
    }
  
    .about-company__photo::before {
      background: linear-gradient(-90deg, rgba(7, 19, 41, 0.85) 0%, rgba(7, 19, 41, 0.4) 100%);
    }
  
    .about-company__years { top: 18px; left: 24px; font-size: 70px; }
    .about-company__years-label { top: 98px; left: 26px; width: 260px; font-size: 22px; line-height: 1.08; }
    .about-company__years-label br { display: none; }
    .about-company__photo-note { top: 180px; left: 26px; width: 260px; font-size: 13px; line-height: 1.32; }
    .about-company__photo-note-desktop { display: none; }
    .about-company__photo-note-mobile { display: inline; }
    .about-company__timeline-axis,
    .about-company__timeline-item { display: none; }
  
    .about-company__overview {
      position: absolute;
      top: 607px;
      left: 16px;
      display: grid;
      width: calc(100% - 32px);
      height: 578px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      grid-template-rows: 230px 150px 150px;
      column-gap: 23px;
      row-gap: 20px;
    }
    .about-company__narrative {
      position: relative;
      inset: auto;
      grid-column: 1 / -1;
      width: 100%;
      height: 230px;
      padding: 18px;
      box-shadow: 0 14px 28px rgba(7, 19, 41, 0.07);
    }
    .about-company__narrative p { display: inline; margin: 0; font-size: 15px; line-height: 1.35; }
    .about-company__narrative p + p::before { content: " "; }
    .about-company__narrative .about-company__narrative-desktop { display: none; }
    .about-company__narrative .about-company__narrative-mobile { display: block; }
    .about-company__narrative .about-company__narrative-mobile::before { content: none; }
  
    .about-company__metric {
      position: relative;
      top: auto;
      left: auto;
      width: 100%;
      height: 150px;
      border: 1px solid #d9e3ef;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.92);
      box-shadow: 0 14px 28px rgba(7, 19, 41, 0.07);
      transform: none;
    }
    .about-company__metric--third { grid-column: 1; }
    .about-company__metric strong { top: 18px; left: 18px; font-size: 40px; }
    .about-company__metric--third strong { font-size: 40px; }
    .about-company__metric p { top: 86px; left: 18px; width: calc(100% - 35px); font-size: 14px; line-height: 1.15; }
    .about-company__metric span { top: 126px; left: 18px; width: 54px; height: 2px; }
  
    .about-awards { position: absolute; top: 1248px; left: 0; width: 100%; height: 586px; }
    .about-awards__heading { position: static; width: 100%; }
    .about-awards__heading > p { top: 0; left: 16px; }
    .about-awards__heading .heading-2 { top: 34px; left: 16px; }
    .about-awards__heading > div { top: 104px; left: 16px; width: calc(100% - 32px); font-size: 15px; line-height: 1.42; }
    .about-awards__documents { top: 183px; left: calc(50% - 115px); width: 230px; height: 378px; overflow: visible; transform: none; }
    .awards-main-carousel {
      --f-carousel-gap: 0px;
      --f-carousel-slide-width: 230px;
      --f-carousel-slide-height: 312px;
      top: 0;
      left: 0;
      width: 230px;
      height: 312px;
      transform: none;
    }
    .awards-main-carousel .f-carousel__viewport,
    .awards-main-carousel .f-carousel__track { width: 230px; height: 312px; }
    .awards-main-carousel__slide {
      flex: 0 0 230px;
      width: 230px;
      min-width: 230px;
      max-width: 230px;
      height: 312px;
    }
    .awards-main-carousel__slide img { width: 230px; height: 312px; object-fit: cover; }
    .about-awards__thumbs { display: none; }
    .about-awards__arrows {
      top: 330px;
      left: 50%;
      display: flex;
      gap: 12px;
      transform: translateX(-50%);
    }
    .about-awards__arrow {
      width: 42px;
      height: 42px;
      font-size: 22px;
    }
  
    /* Partners / dTgvb */
    .partners { height: 949px; }
    .partners__stage { height: 949px; }
    .partners__blue-aura,
    .partners__burgundy-aura,
    .partners__all,
    .partners__rule,
    .partners__proof { display: none; }
    .partners__kicker { top: 56px; left: 16px; }
    .partners__title { top: 92px; left: 16px; }
    .partners__industries {
      top: 232px;
      left: 16px;
      width: calc(100% - 32px);
      padding-left: 0;
      font-size: 15px;
      line-height: 1.45;
      list-style-position: inside;
    }
    .partners__accent { top: 412px; left: 16px; width: 96px; height: 2px; }
    .partners__proposition { top: 445px; left: 16px; width: calc(100% - 32px); font-size: 15px; line-height: 1.35; }
  
    .partners__logos {
      top: 566px;
      left: 16px;
      display: grid;
      width: calc(100% - 32px);
      height: 328px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px 13px;
      overflow: visible;
    }
  
    .partners__lane,
    .partners__track { display: contents; }
    .partner-tile:nth-child(n + 3) { display: none; }
  
    .partner-tile,
    .partner-tile--wide,
    .partner-tile--offset {
      position: relative;
      width: 100%;
      height: 96px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.92);
    }
  
    .partner-tile__content,
    .partner-tile--wide .partner-tile__content,
    .partner-tile--offset .partner-tile__content {
      position: absolute;
      top: 12px;
      left: 15px;
      width: calc(100% - 30px);
      height: 70px;
      border: 1px solid var(--line);
      border-radius: 7px;
      background: #eef3f8;
    }

    .partner-tile__content img { max-height: 54px; }
    .partner-tile__content strong { font-size: 12px; line-height: 1.12; }
  
    /* Map / Yqxoz */
    .trust-map { height: 559px; }
    .trust-map__stage { height: 559px; }
    .trust-map__blue-aura,
    .trust-map__burgundy-aura { display: none; }
    .trust-map__kicker { top: 56px; left: 16px; }
    .trust-map__title { top: 92px; left: 16px; text-align: left; }
    .trust-map__canvas { top: 205px; left: 16px; width: calc(100% - 32px); height: 315px; border-radius: 8px; }
  
    /* Cases / zVoZg */
    .cases { height: 1595px; }
    .cases__stage { height: 1595px; }
    .cases__blue-aura,
    .cases__all,
    .cases__arrows { display: none; }
    .cases__kicker { top: 56px; left: 16px; }
    .cases__title { text-align: start; top: 92px; left: 16px; }
    .cases__title-desktop { display: none; }
    .cases__title-mobile { display: inline; }
  
    .cases-carousel {
      top: 222px;
      left: 16px;
      width: calc(100% - 32px);
      height: 1138px;
      padding: 0;
      overflow: visible;
    }
  
    .cases-carousel .f-carousel__viewport {
      position: static;
      display: block !important;
      height: 1138px;
      overflow: visible !important;
    }
  
    .case-card,
    .case-card--tall {
      position: absolute !important;
      left: 0 !important;
      width: 100% !important;
      height: 360px !important;
    }
  
    .case-card:nth-child(1) { top: 0 !important; }
    .case-card:nth-child(2) { top: 386px !important; }
    .case-card:nth-child(3) { top: 778px !important; }
    .case-card__inner,
    .case-card--tall .case-card__inner { width: 100%; height: 360px; border-radius: 8px; }
    .case-card__image { top: 18px; left: 18px; width: calc(100% - 36px); height: 178px; border-radius: 8px; }
    .case-card .heading-3 { top: 222px; left: 18px; width: calc(100% - 36px); font-size: 16px; line-height: 1.25; }
    .case-card__year { top: 300px; left: 18px; font-size: 14px; }
    .case-card__tag { top: 324px; left: 18px; font-size: 12px; }
    .case-card__arrow { top: 296px; right: 18px; font-size: 28px; }
  
    .cases-consultation {
      top: 1394px;
      left: 16px;
      width: calc(100% - 32px);
      height: 150px;
      padding: 0;
      border-radius: 8px;
    }
  
    .cases-consultation .heading-3 {
      position: absolute;
      top: 18px;
      left: 18px;
      width: calc(100% - 36px);
      text-align: center;
      font-size: 18px;
      line-height: 1.18;
    }
    .cases-consultation > input,
    .cases-consultation > label { display: none; }
    .cases-consultation > button {
      top: 72px;
      left: 18px;
      width: calc(100% - 36px);
      height: 52px;
      border-radius: 22px;
      font-size: 15px;
    }
  
    /* Materials / o5HCFG */
    .news-materials { height: 907px; background: #fff; }
    .news-materials__stage { height: 907px; }
    .news-materials__blue-aura,
    .news-materials__burgundy-aura,
    .news-materials__tabs,
    .news-materials__all,
    .news-materials__arrows { display: none; }
    .news-materials__heading { position: static; }
    .news-materials__heading > p { top: 56px; left: 16px; }
    .news-materials__heading .heading-2 { text-align: start; top: 90px; left: 16px; }
    .news-materials__heading > div {
      top: 170px;
      left: 16px;
      width: calc(100% - 32px);
      color: #344054;
      font-size: 15px;
      font-weight: 500;
      line-height: 1.45;
      text-align: start;
    }
  
    .news-carousel {
      top: 256px;
      left: 16px;
      width: calc(100% - 32px);
      height: 604px;
      overflow: visible;
    }
  
    .news-carousel .f-carousel__viewport {
      position: static;
      display: block !important;
      height: 604px;
      overflow: visible !important;
    }
  
    .news-card {
      position: absolute !important;
      left: 0 !important;
      width: 100% !important;
      height: 280px !important;
    }
  
    .news-card:nth-child(1) { top: 0 !important; }
    .news-card:nth-child(2) { top: 324px !important; }
    .news-card:nth-child(n + 3) { display: none; }
    .news-card__inner {
      width: 100%;
      height: 280px;
      border-color: #e2e8f0;
      border-radius: 8px;
      box-shadow: 0 14px 28px rgba(7, 19, 41, 0.063);
    }
    .news-card__accent,
    .news-card__meta,
    .news-card__line { display: none; }
    .news-card time { top: 28px; left: 18px; font-size: 14px; }
    .news-card__badge { top: 20px; right: 18px; left: auto; width: 115px; padding: 6px 0; font-size: 14px; text-align: center; }
    .news-card:nth-child(2) .news-card__badge { color: var(--blue); }
    .news-card .heading-3 { top: 80px; left: 18px; width: calc(100% - 36px); font-size: 20px; line-height: 1.18; }
    .news-card__text { top: 160px; left: 18px; width: calc(100% - 36px); font-size: 14px; line-height: 1.4; }
    .news-card__more {
      top: 246px;
      left: 18px;
      width: auto;
      height: auto;
      justify-content: flex-start;
      gap: 4px;
      font-size: 15px;
    }
    .news-card:nth-child(2) .news-card__more { color: var(--blue); }
    .news-card__more b { display: inline; margin-left: 0; color: inherit; font-size: 15px; font-weight: 800; }
  
    /* Footer / n6Koa */
    .site-footer { height: 1234px; background: #eef2f6; }
    .footer-contact-panel,
    .footer-navigation-panel {
      left: 16px;
      width: calc(100% - 32px);
      margin-left: 0;
      transform: none;
    }
  
    .footer-panel-reveal,
    .footer-panel-reveal.is-visible {
      transform: none;
    }
  
    .footer-contact-panel {
      top: 40px;
      height: 565px;
      border-radius: 24px;
      background: linear-gradient(180deg, #071329 0%, #000090 100%);
      box-shadow: 0 20px 40px rgba(7, 19, 41, 0.165);
    }
  
    .footer-contact-panel__glow { display: none; }
  
    .footer-contact-panel > .heading-2 { top: 32px; left: 28px; width: 280px; font-size: 29px; line-height: 1.1; }
    .footer-contact-panel > .heading-2 br { display: none; }
    .footer-contact-card {
      top: 142px;
      left: 16px;
      width: calc(100% - 32px);
      height: 122px;
      border-color: rgba(255, 255, 255, 0.271);
      background: rgba(255, 255, 255, 0.094);
      box-shadow: 0 14px 26px rgba(0, 0, 0, 0.133);
    }
    .footer-contact-card--schedule { top: 278px; }
    .footer-contact-card--address { top: 414px; }
    .footer-contact-card__rail { height: 38px; }
    .footer-contact-card__main { width: 280px; }
    .footer-contact-card__action,
    .footer-contact-card--schedule .footer-contact-card__action,
    .footer-contact-card--address .footer-contact-card__action { top: 92px; }
  
    .footer-navigation-panel {
      top: 621px;
      height: 586px;
      overflow: hidden;
      border-color: #d9e3ef;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.92);
      box-shadow: 0 14px 28px rgba(7, 19, 41, 0.071);
    }
  
    .footer-navigation-panel__watermark,
    .footer-company { display: none; }
  
    .footer-column { top: 28px; }
    .footer-column--navigation { left: 24px; width: 120px; }
    .footer-column--catalog { left: 184px; width: 135px; }
    .footer-column .heading-2 { margin-bottom: 28px; font-size: 14px; }
    .footer-column a { margin-bottom: 9px; font-size: 15px; line-height: 19px; }
    .footer-column--catalog a { font-size: 14px; line-height: 1.2; }
    .footer-column--catalog a:nth-of-type(3) { display: none; }
  
    .footer-details { top: 345px; left: 24px; width: calc(100% - 48px); height: 172px; }
    .footer-details > .heading-2,
    .footer-details__accent { display: none; }
    .footer-details__phone { font-size: 15px; }
    .footer-details__email { margin-top: 10px; font-size: 15px; }
    .footer-details address { margin-top: 10px; font-size: 14px; line-height: 1.35; }
    .footer-details__max { top: 123px; left: 0; }
    .footer-details__callback { top: 119px; right: 0; left: auto; width: 233px; height: 52px; border-radius: 22px; font-size: 15px; }
    .footer-legal { top: 530px; left: 24px; width: calc(100% - 48px); font-size: 12px; line-height: 1.35; }
    .footer-legal p { margin-top: 4px; }
  
    .hero-reveal--2,
    .hero-reveal--3,
    .hero-reveal--4,
    .tech-reveal--2,
    .tech-reveal--3,
    .tech-reveal--4,
    .tech-reveal--5,
    .partnership-reveal--2,
    .partnership-reveal--3,
    .request-reveal--delayed,
    .cases-reveal--2,
    .cases-reveal--3,
    .cases-reveal--4,
    .news-reveal--2,
    .news-reveal--3,
    .news-reveal--4 {
      transition-delay: 60ms;
    }
}

@media (max-width: 1200px) {
  .awards-main-carousel,
  .awards-main-carousel:hover {
    border: 0;
    background: transparent;
    box-shadow: none;
    transform: none;
  }

  .awards-main-carousel__slide,
  .awards-main-carousel__slide img {
    border: 0;
    background: transparent;
    box-shadow: none;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
  .contacts-page__title { font-size: 40px; }
  .contacts-panel { padding: 30px 32px; }
  .contacts-map { height: 520px; }
  .contacts-management__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }

  .cases,
  .cases__stage { height: 890px; }
  .cases__title { width: calc(100% - 32px); }
  .cases__title-desktop { display: inline; }
  .cases__title-mobile { display: none; }
  .cases-carousel {
    --f-carousel-gap: 18px;
    --f-carousel-slide-width: calc((100% - 18px) / 2);
    --f-carousel-slide-height: 390px;
    top: 190px;
    height: 390px;
    padding: 0;
    overflow: visible;
  }
  .cases-carousel .f-carousel__viewport {
    position: relative;
    display: grid !important;
    grid-template-columns: 100%;
    grid-template-rows: 100%;
    height: 390px;
    overflow: visible !important;
  }
  .case-card,
  .case-card--tall {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: var(--f-carousel-slide-width) !important;
    max-width: var(--f-carousel-slide-width);
    flex: 0 0 var(--f-carousel-slide-width);
    height: 390px !important;
  }
  .case-card:nth-child(1),
  .case-card:nth-child(2),
  .case-card:nth-child(3) { top: auto !important; }
  .case-card__inner,
  .case-card--tall .case-card__inner { width: 100%; height: 390px; }
  .case-card__image { top: 0; left: 0; width: 100%; height: 205px; border-radius: 0; }
  .case-card .heading-3 { top: 236px; left: 20px; width: calc(100% - 40px); font-size: 17px; }
  .case-card__year { top: 333px; left: 20px; }
  .case-card__tag { top: 356px; left: 20px; }
  .case-card__arrow { top: 329px; right: 20px; left: auto; }
  .cases__arrows { top: 605px; right: 16px; left: auto; display: flex; }
  .cases-consultation { top: 690px; height: 150px; }

  .news-materials,
  .news-materials__stage { height: 700px; }
  .news-materials { background: #f6fafc; }
  .news-materials__heading .heading-2 { width: calc(100% - 32px); }
  .news-materials__heading > div { top: 150px; }
  .news-carousel {
    --f-carousel-gap: 18px;
    --f-carousel-slide-width: calc((100% - 18px) / 2);
    --f-carousel-slide-height: 310px;
    top: 245px;
    height: 310px;
    overflow: hidden;
  }
  .news-carousel .f-carousel__viewport {
    position: relative;
    display: grid !important;
    grid-template-columns: 100%;
    grid-template-rows: 100%;
    height: 310px;
    overflow: hidden !important;
  }
  .news-card,
  .news-card:nth-child(3) {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: block;
    width: var(--f-carousel-slide-width) !important;
    max-width: var(--f-carousel-slide-width);
    flex: 0 0 var(--f-carousel-slide-width);
    height: 310px !important;
  }
  .news-card:nth-child(1),
  .news-card:nth-child(2),
  .news-card:nth-child(3) { top: auto !important; }
  .news-card__inner { width: 100%; height: 310px; }
  .news-card__accent,
  .news-card__meta,
  .news-card__line { display: block; }
  .news-card__accent { width: 100%; }
  .news-card time { top: 25px; left: 20px; }
  .news-card__badge { top: 18px; right: 18px; left: auto; }
  .news-card__meta { top: 55px; left: 20px; }
  .news-card .heading-3 { top: 79px; left: 20px; width: calc(100% - 40px); font-size: 19px; }
  .news-card__text { top: 165px; left: 20px; width: calc(100% - 40px); }
  .news-card__line { top: 248px; left: 20px; width: calc(100% - 40px); }
  .news-card__more { top: 254px; left: 20px; width: calc(100% - 40px); height: 44px; justify-content: space-between; }
  .news-card__more b { font-size: 28px; }
  .news-materials__arrows { top: 580px; right: 16px; left: auto; display: flex; }

  .about-company,
  .about-company__stage {
    height: 2010px;
  }

  .about-awards {
    height: 762px;
  }

  .about-awards__documents {
    top: 183px;
    left: 16px;
    width: calc(100% - 32px);
    height: 548px;
  }

  .awards-main-carousel {
    --f-carousel-gap: 16px;
    --f-carousel-slide-width: calc((100% - 16px) / 2);
    --f-carousel-slide-height: 480px;
    width: 100%;
    height: 480px;
  }

  .awards-main-carousel .f-carousel__viewport,
  .awards-main-carousel .f-carousel__track {
    width: 100%;
    height: 480px;
  }

  .awards-main-carousel__slide {
    width: var(--f-carousel-slide-width);
    min-width: var(--f-carousel-slide-width);
    max-width: var(--f-carousel-slide-width);
    height: 480px;
    flex-basis: var(--f-carousel-slide-width);
  }

  .awards-main-carousel__slide img {
    width: 100%;
    height: 100%;
  }

  .about-awards__arrows {
    top: 500px;
    right: 0;
    left: auto;
    transform: none;
  }
}

@media (max-width: 767px) {
  .trust-map__details {
    top: auto !important;
    bottom: 12px;
    left: 12px !important;
    width: calc(100% - 24px);
    max-height: calc(100% - 24px);
    padding: 20px;
  }

  .trust-map__details::before {
    display: none;
  }

  .trust-map__details-city {
    font-size: 21px;
  }

  .trust-map__installations li {
    font-size: 13px;
  }

}

@media (max-width: 374px) {
  .hero h1 { font-size: 29px; }
    .hero__lead { font-size: 15px; }
    .technology-intro__title,
    .equipment-catalog__title,
    .partnership__title,
    .services__title,
    .request__title,
    .about-company__heading .heading-2,
    .about-awards__heading .heading-2,
    .partners__title,
    .trust-map__title,
    .cases__title,
    .news-materials__heading .heading-2 { font-size: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  a,
  button,
  .news-card__inner,
  .news-card__accent {
    transition: none;
  }

  .news-card:hover .news-card__inner,
  .news-card:focus-within .news-card__inner {
    transform: none;
  }

  .material-card,
  .project-card {
    transition: none;
  }

  .equipment-page-card {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .main-nav,
    .main-nav__submenu,
    .main-nav__submenu-toggle img,
    .header-search,
    .header-search input,
    .header-search__toggle,
    .header-search__close,
    .mobile-header-actions__menu span {
      transition: none;
    }

  .hero__video,
    .hero-reveal {
      transition: none;
    }
  
    .hero-reveal,
    .page-ready .hero-reveal {
      opacity: 1;
      transform: none;
    }

  .technology-intro__more,
    .tech-reveal {
      transition: none;
    }
  
    .tech-reveal,
    .tech-reveal.is-visible {
      opacity: 1;
      transform: none;
    }
  
    .technology-card__products img {
      transform: none !important;
    }

  .equipment-catalog__link,
    .equipment-card,
    .equipment-card__arrow,
    .equipment-carousel__dots button {
      transition: none;
    }
  
    .equipment-carousel {
      --f-transition-duration: 0ms;
    }

  .partnership__cta,
    .partnership-reveal {
      transition: none;
    }
  
    .partnership-reveal,
    .partnership-reveal.is-visible {
      opacity: 1;
      transform: none;
    }

  .service-card,
    .service-card__image,
    .service-card__marker,
    .service-card__marker b,
    .service-card .heading-3,
    .service-card > p,
    .service-card__arrow {
      transition: none;
    }

  .request-form__submit,
    .request-reveal {
      transition: none;
    }
  
    .request-reveal,
    .request-reveal.is-visible {
      opacity: 1;
      transform: none;
    }

  .about-hover-card,
    .awards-main-carousel,
    .about-awards__thumb,
    .about-awards__arrow,
    .about-reveal {
      transition: none;
    }
  
    .about-reveal,
    .about-reveal.is-visible {
      opacity: 1;
      transform: none;
    }

  .partners__all {
      transition: none;
    }
  
    .partners__track {
      animation: none;
      transform: none;
    }

  .trust-map__marker,
    .trust-map__details-close {
      transition: none;
    }

  .cases__all,
    .case-card__inner,
    .cases__arrow,
    .cases-consultation > button,
    .cases-reveal {
      transition: none;
    }
  
    .cases-reveal,
    .cases-reveal.is-visible {
      opacity: 1;
      transform: none;
    }

  .news-materials__all,
    .news-card__more,
    .news-materials__arrow,
    .news-reveal {
      transition: none;
    }
  
    .news-reveal,
    .news-reveal.is-visible {
      opacity: 1;
      transform: none;
    }

  .footer-contact-card,
    .footer-contact-card__action,
    .footer-column a,
    .footer-details__max,
    .footer-details__callback,
    .footer-legal a,
    .footer-panel-reveal {
      transition: none;
    }
  
    .footer-panel-reveal,
    .footer-panel-reveal.is-visible {
      opacity: 1;
      transform: none;
    }
}

@media (max-width: 1200px) {
  .product-detail__stage > h1 { font-size: 42px; }
  .product-detail__hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; }
  .product-summary { padding-right: 24px; padding-left: 28px; }
  .product-summary__specs { gap: 10px; }
  .product-summary__actions { grid-template-columns: 1fr; gap: 12px; }

  .product-single-placeholder h1 { font-size: 42px; }

  .catalog-archive__heading h1 { font-size: 42px; }
  .catalog-archive__grid { gap: 36px 30px; }

  .not-found-page__content h1 { font-size: 46px; }
  .not-found-page__code { font-size: 220px; }
  .not-found-page__code i { width: 120px; height: 120px; }

  .site-search-page__heading h1 { font-size: 42px; }

  .equipment-page__heading h1 { font-size: 42px; }
  .equipment-page__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }

  .technologies-page__heading h1 { font-size: 42px; }
  .technologies-page .technology-cards { gap: 30px; }

  .services-page__heading h1 { font-size: 42px; }
  .services-page__features article { min-height: 390px; }
  .services-page__directions .services__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .project-detail__header h1 { font-size: 42px; }
  .project-detail__content { width: min(100%, 900px); }

  .projects-archive__heading h1 { font-size: 42px; }
  .projects-archive__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }

  .article-single__layout { grid-template-columns: minmax(0, 1fr) 260px; gap: 40px; }
  .article-single__header h1 { font-size: 42px; }
  .article-single__intro,
  .article-single__hero,
  .article-single__content,
  .article-single__download,
  .article-single__navigation { width: 100%; margin-left: 0; }

  .materials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  .materials-consultation .heading-2 { font-size: 42px; }
  .materials-consultation__phone { font-size: 44px; }
  .materials-consultation p { font-size: 21px; }

  .about-distinctions,
  .about-history,
  .about-gallery { min-width: 0; height: auto; }
  .about-section-stage { width: 100%; padding: 56px clamp(32px,5vw,60px); }
  .about-distinctions__grid,
  .about-history__layout { grid-template-columns: 1fr; gap: 28px; }
  .about-distinctions__points,
  .about-distinctions blockquote,
  .about-distinctions__structure,
  .about-history__rail,
  .about-history__cards { width: 100%; height: auto; }
  .about-history__rail { min-height: 0; }
  .about-history__timeline { display: block; height: auto; }
  .about-history__cards { padding-right: 0; overflow: visible; scroll-snap-type: none; }
  .about-history__cards article { margin-left: 0; }
  .about-history__progress { display: none; }
  .about-history__rail ol { display: none; }
  .about-history__rail ol::before,
  .about-history__rail ol::after { display: none; }
  .about-history__rail li::before { display: none; }
  .about-gallery__grid { display: grid; width: 100%; height: auto; grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: none; grid-auto-rows: auto; gap: 20px; }
  .about-gallery__video {
    padding: 2rem;
  }
  .about-gallery__main,
  .about-gallery__item:nth-of-type(n) { position: relative; inset: auto; width: auto; height: auto; grid-column: auto; grid-row: auto; }
  .about-gallery__grid > .about-gallery__main { display: flex; min-height: 390px; position: relative;flex-direction: column; grid-column: 1 / -1; }
  .about-gallery__item:nth-of-type(n) { min-height: 220px; }
  .about-gallery__copy { position: relative; top: auto; left: auto; width: min(430px,100%); }
  .about-gallery__play { position: relative; top: auto; bottom: auto; left: auto; margin: auto auto 56px; transform: none; }
  .about-gallery__grid a:hover .about-gallery__play,
  .about-gallery__grid a:focus-visible .about-gallery__play { transform: scale(1.06); }
  .about-gallery__caption,
  .about-gallery__item:nth-of-type(n) .about-gallery__caption { top: auto; bottom: 20px; }
  .about-gallery__item:nth-of-type(3) .about-gallery__caption i { margin-top: 0; }
    .services-page__features article img {
    height: 300px;
  }
}

@media (max-width: 767px) {
  .product-detail__stage { width: calc(100% - 32px); padding: 10px 0 56px; }
  .product-detail__stage > h1 { margin-bottom: 34px; font-size: 31px; }
  .product-detail__hero { grid-template-columns: 1fr; gap: 28px; }
  .product-gallery__main { height: 310px; }
  .product-gallery__thumbs { gap: 8px; }
  .product-gallery__thumb { height: 76px; }
  .product-summary { min-height: 0; padding: 24px 20px 26px; }
  .product-summary .heading-2 { font-size: 30px; }
  .product-summary__specs { grid-template-columns: 1fr; }
  .product-summary__spec { min-height: 0; }
  .product-summary__price { font-size: 27px; }
  .product-summary__contact a { overflow-wrap: anywhere; font-size: 16px; }
  .product-about { margin-top: 52px; }
  .product-about > .heading-2 { font-size: 31px; }
  .product-about__tabs { align-items: stretch; flex-direction: column; }
  .product-about__tabs button { width: 100%; }
  .product-about__panel { margin-top: 24px; padding: 22px 18px; font-size: 15px; }
  .product-about__panel dl > div { grid-template-columns: 1fr; gap: 8px; }

  .product-single-placeholder { padding: 10px 0 56px; }
  .product-single-placeholder h1 { font-size: 31px; }

  .catalog-archive__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .catalog-archive__heading h1 { font-size: 31px; }
  .catalog-archive__heading p { margin-top: 20px; font-size: 16px; }
  .catalog-archive__grid { margin-top: 38px; grid-template-columns: 1fr; gap: 22px; }
  article.catalog-product-card.equipment-page-card {
    display: flex;
    min-height: 480px;
    grid-template-rows: none;
  }
  .catalog-product-card__body { padding: 24px 20px 26px; }

  .not-found-page__stage { width: calc(100% - 32px); min-height: 0; padding: 30px 0 56px; }
  .not-found-page__code { position: relative; top: auto; right: auto; justify-content: center; font-size: 120px; }
  .not-found-page__code i { width: 70px; height: 70px; border-width: 10px; }
  .not-found-page__content { margin-top: 32px; }
  .not-found-page__content h1 { font-size: 32px; }
  .not-found-page__content > div:not(.not-found-page__actions) { margin-top: 20px; font-size: 16px; }
  .not-found-page__search { margin-top: 28px; }
  .not-found-page__actions { align-items: flex-start; flex-direction: column; gap: 18px; }
  .not-found-page__links { margin-top: 46px; grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .site-search-page__stage { width: calc(100% - 32px); min-height: 0; padding: 28px 0 56px; }
  .site-search-page__heading h1 { font-size: 31px; }
  .site-search-page__form { min-height: 58px; margin-top: 28px; padding: 5px 5px 5px 16px; grid-template-columns: 24px minmax(0, 1fr); }
  .site-search-page__form input { height: 46px; font-size: 16px; }
  .site-search-page__form button { height: 46px; grid-column: 1 / -1; min-width: 0; margin-top: 6px; justify-content: center; gap: 20px; }
  .site-search-page__summary { align-items: flex-start; flex-direction: column; gap: 6px; }
  .site-search-page__grid { margin-top: 30px; grid-template-columns: 1fr; gap: 18px; }
  .site-search-card > a { min-height: 240px; padding: 24px 20px; }
  .site-search-card .heading-2 { margin-top: 20px; font-size: 21px; }
  .site-search-page__empty { margin-top: 42px; padding: 40px 20px; }

  .equipment-page__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .equipment-page__heading h1 { font-size: 31px; }
  .equipment-page__heading h1 br { display: none; }
  .equipment-page__heading p { margin-top: 20px; font-size: 16px; }
  .equipment-page__grid { margin-top: 38px; grid-template-columns: 1fr; gap: 22px; }
  .equipment-page-card:not(.equipment-page-card--custom) {
    display: grid;
    min-height: 0;
    grid-template-rows: minmax(210px, auto) 288px;
  }
  .equipment-page-card:not(.equipment-page-card--custom) .equipment-page-card__copy {
    min-height: 210px;
    padding: 26px 20px 30px;
  }
  .equipment-page-card:not(.equipment-page-card--custom) .equipment-page-card__copy p {
    margin-top: 20px;
  }
  .equipment-page-card:not(.equipment-page-card--custom) > img {
    position: relative;
    height: 288px;
    grid-row: 2;
  }
  .equipment-page-card:not(.equipment-page-card--custom)::after { height: 288px; }
  .equipment-page-card--custom { min-height: 500px; }
  .equipment-page__text { width: calc(100% - 32px); padding: 48px 0 56px; font-size: 16px; line-height: 1.55; }

  .technologies-page__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .technologies-page__heading h1 { font-size: 31px; }
  .technologies-page__heading h1 br { display: none; }
  .technologies-page__heading p { margin-top: 20px; font-size: 16px; }
  .technologies-page__intro { margin-top: 30px; font-size: 16px; line-height: 1.55; }
  .technologies-page .technology-cards { margin-top: 32px; grid-template-columns: 1fr; gap: 20px; }
  .technologies-page .technology-card {
    height: 337px;
    min-height: 337px;
  }

  .services-page__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .services-page__heading h1 { font-size: 31px; }
  .services-page__heading h1 br { display: none; }
  .services-page__heading p { margin-top: 20px; font-size: 16px; }
  .services-page__features { margin-top: 38px; grid-template-columns: 1fr; gap: 20px; }
  .services-page__features article { min-height: 310px; }
  .services-page__features .heading-2 { font-size: 21px; }
  .services-page__standards { margin-top: 38px; font-size: 17px; line-height: 1.55; }
  .services-page__standards > p { margin-bottom: 30px; }
  .services-page__standards .heading-2 { padding-left: 22px; font-size: 20px; }
  .services-page__directions { margin-top: 48px; }
  .services-page__directions .services__grid { display: grid; height: auto; margin-top: 30px; grid-template-columns: 1fr; gap: 20px; }
  .services-page__directions .service-card { position: relative; top: auto; left: auto; height: 190px; }
  .project-detail__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .project-detail__header h1 { font-size: 24px; }
  .project-detail__meta { margin-top: 24px; gap: 12px; }
  .project-detail__meta p { width: 100%; min-width: 0; padding: 15px 18px; }
  .project-detail__header > span { margin-top: 22px; }
  .project-detail__content { margin-top: 38px; font-size: 17px; line-height: 1.55; }
  .project-detail__content p { margin-bottom: 22px; }
  .project-detail__photos { margin-top: 38px; }
  .project-detail__gallery { --f-carousel-gap: 16px; height: 270px; }
  .project-detail__gallery .f-carousel__viewport { height: 240px; }
  .project-detail__photo { width: calc(100vw - 48px); height: 240px; margin: 0; }

  .projects-archive__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .projects-archive__heading h1 { font-size: 31px; }
  .projects-archive__heading h1 br { display: none; }
  .projects-archive__heading p { margin-top: 20px; font-size: 16px; }
  .projects-archive__grid { margin-top: 38px; grid-template-columns: 1fr; gap: 22px; }
  .project-card__link { min-height: 0; grid-template-rows: 210px minmax(100px, auto) auto; }
  .project-card__image img { height: 210px; }
  .project-card__title { padding: 26px 20px 18px; }
  .project-card__details { padding: 0 20px 20px; }
  .projects-archive__more { width: min(100%, 320px); margin-top: 42px; }

  .article-single__stage { width: calc(100% - 32px); padding: 28px 0 56px; }
  .article-single__layout { display: block; }
  .article-single__header h1 { font-size: 32px; }
  .article-single__meta { font-size: 12px; }
  .article-single__intro { margin-top: 20px; font-size: 17px; }
  .article-single__hero { margin-top: 28px; }
  .article-single__hero figcaption { padding: 42px 16px 16px; font-size: 14px; }
  .article-single__content { margin-top: 28px; font-size: 17px; line-height: 1.55; }
  .article-single__content blockquote { margin: 28px 0; padding: 22px 20px; font-size: 19px; }
  .article-single__related { padding-top: 48px; }
  .article-single__related a { min-height: 112px; }
  .article-single__download { grid-template-columns: 52px 1fr; padding: 14px; }
  .article-single__pdf-badge { width: 52px; height: 52px; }
  .article-single__download .heading-2 { font-size: 17px; }
  .article-single__download a { grid-column: 1 / -1; justify-content: center; }
  .article-single__navigation { grid-template-columns: 1fr; }
  .article-single__navigation a { padding: 20px 40px; }
  .article-single__navigation a + a { border-top: 1px solid #e2e8f0; border-left: 0; }
  .article-single__previous::before,
  .article-single__next::after { bottom: 22px; }

  .materials-archive__stage { width: calc(100% - 32px); padding: 18px 0 64px; }
  .materials-archive__heading h1 { font-size: 34px; }
  .materials-archive__heading p { margin-top: 18px; font-size: 16px; }
  .materials-filter {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 34px;
    gap: 10px;
  }
  .materials-filter a {
    width: 100%;
    min-height: 38px;
    padding: 0 10px;
    font-size: 14px;
    text-align: center;
  }
  .materials-grid { margin-top: 28px; grid-template-columns: 1fr; gap: 20px; }
  .material-card { min-height: 0; padding: 22px 20px 18px; }
  .material-card .heading-2 { font-size: 20px; }
  .materials-consultation {
    min-height: 0;
    padding: 46px 16px 44px;
  }

  .materials-consultation .heading-2 {
    max-width: 100%;
    font-size: clamp(28px, 8.6vw, 31px);
    line-height: 1.04;
  }

  .materials-consultation__phone {
    max-width: 100%;
    margin-top: 20px;
    font-size: clamp(25px, 8vw, 30px);
    line-height: 1.08;
  }

  .materials-consultation p {
    max-width: 100%;
    margin-top: 24px;
    overflow-wrap: anywhere;
    font-size: 17px;
    line-height: 1.4;
  }

  .materials-consultation p::after {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: min(260px, calc(100vw - 64px));
    margin: 24px auto 0;
    transform: none;
  }

  .about-section-stage { width: calc(100% - 32px); padding: 42px 0; }
  .about-section-stage > .heading-2,
  .about-history .about-section-stage > .heading-2 { font-size: 30px; }
  .about-distinctions__points { height: auto; padding: 22px 18px; }
  .about-distinctions__points article { grid-template-columns: 40px 1fr; }
  .about-distinctions blockquote { height: auto; font-size: 20px; }
  .about-distinctions__structure { padding: 24px 20px; }
  .about-history__subtitle { margin-bottom: 30px; }
  .about-history__rail { padding: 26px 20px; }
  .about-history__cards .is-featured .about-history-card__title,
  .about-history__cards .is-featured .about-history-card__text { width: auto; }
  .about-history__cards article,
  .about-history__cards .is-featured { min-height: 0; padding: 24px 20px; }
  .about-history__cards strong.about-history-card__result { position: static; display: block; width: auto; margin-top: 14px; padding: 0; background: transparent; }
  .about-history-card__index { position: static; display: block; margin-bottom: 6px; }
  .about-history-card__mark { display: none; }
  .about-gallery__lead { width: auto; }
  .about-gallery__grid > .about-gallery__main {min-height: 330px; }
  .about-gallery__grid { display: grid; grid-template-columns: 1fr; grid-template-rows: none; grid-auto-rows: auto; gap: 16px; }
  .about-gallery__video { height: 330px; padding: 26px 22px 24px; }
  .about-gallery__item:nth-of-type(n) { min-height: 200px; }
  .about-gallery__copy { position: relative; top: auto; left: auto; width: 100%; }
  .about-gallery__main b { font-size: 22px; }
  .about-gallery__play { position: relative; top: 20%; bottom: auto; left: auto; width: 72px; height: 72px; margin: 0 auto auto; flex: 0 0 72px; transform: none; }
  .about-gallery__grid a:hover .about-gallery__play,
  .about-gallery__grid a:focus-visible .about-gallery__play { transform: scale(1.06); }
  .about-gallery__accents { display: none; }
}

@media (max-width: 1439px) {
  .partners-directory {
    min-width: 0;
  }

  .partners-directory__stage {
    width: calc(100% - 64px);
    max-width: 1280px;
  }
}

@media (max-width: 1200px) {
  .partners-directory { min-width: 0; min-height: 0; }
  .partners-directory__stage { width: calc(100% - 64px); max-width: 900px; }
  .partners-directory__summary { grid-template-columns: repeat(2,minmax(0,1fr)); height: auto; }
  .partners-directory__industries { grid-column: 1 / -1; min-height: 100px; border-top: 1px solid #d9e3ef; }
  .partners-directory__summary article:nth-child(2)::after { display: none; }
  .partners-directory__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
}

@media (max-width: 767px) {
  .partners-directory__stage { width: calc(100% - 32px); padding: 24px 0 60px; }
  .partners-directory__heading h1 { font-size: 34px; }
  .partners-directory__heading p { font-size: 17px; }
  .partners-directory__summary { grid-template-columns: 1fr; margin-top: 36px; }
  .partners-directory__summary article { min-height: 92px; padding: 20px; }
  .partners-directory__summary article::after { display: none; }
  .partners-directory__industries { grid-column: auto; }
  .partners-directory__grid { grid-template-columns: 1fr; margin-top: 36px; }
}

@media (min-width: 993px) and (max-width: 1200px) {
  .about-awards {
    width: 100%;
    min-width: 0;
    height: 760px;
    margin-top: 0;
    padding-top: 70px;
    box-sizing: border-box;
  }

  .about-awards__stage {
    position: relative;
    top: auto;
    left: 0;
    width: 100%;
    height: auto;
    transform: none;
  }
}

@media (max-width: 992px) {
  .about-company,
  .about-company__stage {
    height: 1248px;
  }

  .about-awards {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    min-width: 0;
    height: 586px;
    margin: 0;
  }

  .about-awards__stage {
    position: relative;
    top: auto;
    left: 0;
    width: 100%;
    height: 100%;
    transform: none;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
  .about-awards {
    height: 762px;
  }
}

/* Content-driven technology section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .technology-intro,
  .technology-intro__stage {
    height: auto;
  }

  .technology-intro__stage {
    left: auto;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0 30px;
    width: 100%;
    padding: 66px clamp(32px, 5vw, 60px) 0;
    transform: none;
  }

  .technology-intro__kicker,
  .technology-intro__title,
  .technology-intro__lead,
  .technology-intro__more,
  .technology-intro__bottom {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
  }

  .technology-intro__title {
    width: auto;
    margin-top: 20px;
  }

  .technology-intro__lead {
    width: min(55%, 610px);
    margin-top: 28px;
  }

  .technology-intro__more {
    width: max-content;
  }

  .technology-cards {
    gap: clamp(28px, 4vw, 48px);
    margin-top: 42px;
  }

  .technology-card,
  .technology-card--pvd,
  .technology-card--ion {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: auto;
    height: 400px;
  }

  .technology-card .heading-3 {
    top: 32px;
    left: 94px;
    width: calc(100% - 120px);
    font-size: clamp(23px, 2.4vw, 29px);
  }

  .technology-card__marker {
    left: 26px;
    width: 48px;
    height: 48px;
  }

  .technology-card__tag {
    top: 94px;
    right: auto;
    left: 26px !important;
  }

  .technology-card__description,
  .technology-card--pvd .technology-card__description {
    top: 142px;
    left: 26px;
    width: calc(100% - 52px);
    font-size: 15px;
  }

  .technology-card__products {
    top: 242px;
    left: 26px;
    width: calc(100% - 52px);
    height: 132px;
  }

  .technology-card__products .heading-4 {
    top: 18px;
    left: 18px;
    font-size: 15px;
  }

  .technology-card__products p,
  .technology-card__products-text {
    top: 50px;
    left: 18px;
    width: 50%;
    font-size: 12px;
  }

  .technology-card__products img {
    top: -12px;
    right: -6px;
    left: auto;
    width: 48%;
    height: 150px;
  }

  .technology-intro__bottom {
    width: 100%;
    height: 58px;
    margin-top: 34px;
  }
}

@media (max-width: 992px) {
  .technology-intro {
    min-width: 0;
    height: auto;
    overflow: hidden;
  }

  .technology-intro__stage {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    height: auto;
    padding: 56px 16px 40px;
    transform: none;
  }

  .technology-intro__kicker,
  .technology-intro__title,
  .technology-intro__lead {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
  }

  .technology-intro__title {
    margin-top: 20px;
  }

  .technology-intro__lead {
    margin-top: 24px;
  }

  .technology-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-top: 32px;
  }

  .technology-card,
  .technology-card--pvd,
  .technology-card--ion {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .technology-cards {
    grid-template-columns: 1fr;
  }
}

/* Content-driven equipment catalog. */
@media (min-width: 993px) and (max-width: 1200px) {
  .equipment-catalog,
  .equipment-catalog__stage {
    height: auto;
  }

  .equipment-catalog__stage {
    left: auto;
    grid-template-columns: minmax(0, 1fr) 220px;
    width: 100%;
    padding: 54px clamp(32px, 5vw, 60px) 60px;
    transform: none;
  }

  .equipment-catalog__kicker,
  .equipment-catalog__title,
  .equipment-catalog__lead,
  .equipment-catalog__link,
  .equipment-catalog__badge,
  .equipment-carousel {
    top: auto;
    right: auto;
    left: auto;
  }

  .equipment-catalog__title {
    width: auto;
    margin-top: 28px;
  }

  .equipment-catalog__lead {
    width: auto;
    margin-top: 28px;
  }

  .equipment-catalog__link {
    justify-self: end;
  }

  .equipment-catalog__badge {
    justify-self: end;
  }

  .equipment-carousel {
    width: 100%;
    margin-top: 36px;
  }
}

@media (max-width: 992px) {
  .equipment-catalog {
    min-width: 0;
    height: auto;
    margin-bottom: 0;
  }

  .equipment-catalog__stage {
    position: relative;
    top: auto;
    left: auto;
    display: flex;
    width: 100%;
    height: auto;
    padding: 56px 16px 46px;
    flex-direction: column;
    transform: none;
  }

  .equipment-catalog__kicker,
  .equipment-catalog__title,
  .equipment-catalog__lead,
  .equipment-catalog__link,
  .equipment-catalog__badge,
  .equipment-carousel,
  .equipment-catalog__mobile-cta {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
  }

  .equipment-catalog__kicker {
    order: 1;
  }

  .equipment-catalog__title {
    order: 2;
    height: auto;
    margin-top: 20px;
  }

  .equipment-catalog__lead {
    order: 3;
    margin-top: 28px;
  }

  .equipment-catalog__link {
    order: 4;
    margin-top: 32px;
  }

  .equipment-carousel {
    --f-carousel-gap: 24px;
    --f-carousel-slide-width: calc((100% - 24px) / 2);
    order: 5;
    height: 420px;
    margin-top: 40px;
    padding: 0;
    overflow: hidden;
  }

  .equipment-carousel .f-carousel__viewport {
    position: relative;
    display: grid !important;
    height: 100%;
    grid-template-columns: 100%;
    grid-template-rows: 100%;
    overflow: hidden !important;
  }

  .equipment-card,
  .equipment-card:nth-child(n) {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: var(--f-carousel-slide-width) !important;
    height: 420px !important;
  }

  .equipment-catalog__badge {
    order: 6;
    height: 65px;
    margin-top: 24px;
  }

  .equipment-catalog__mobile-cta {
    order: 7;
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .equipment-catalog__stage {
    position: relative;
    inset: auto;
    right: auto;
    left: auto;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 56px 16px 46px !important;
    align-items: stretch;
    box-sizing: border-box;
    transform: none !important;
  }

  .equipment-carousel {
    --f-carousel-slide-width: 100%;
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    overflow: visible;
  }

  .equipment-carousel .f-carousel__viewport {
    position: static;
    display: flex !important;
    width: 100%;
    height: auto;
    min-height: 0;
    flex: none;
    flex-direction: column;
    gap: 24px;
    overflow: visible !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    transform: none !important;
  }

  .equipment-card,
  .equipment-card:nth-child(n) {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
    grid-area: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .equipment-card__link {
    height: auto;
  }

  .equipment-card__image {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    height: 195px;
    margin-top: 16px;
    overflow: hidden;
  }

  .equipment-carousel__navigation {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
  .equipment-card,
  .equipment-card:nth-child(n) {
    height: 420px !important;
  }

  .equipment-card .heading-3 {
    font-size: 20px;
  }

  .equipment-card__link > p {
    font-size: 13px;
  }

  .equipment-card__image {
    top: 160px;
    height: 260px;
  }
}

/* Content-driven services section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .services,
  .services__stage {
    height: auto;
  }

  .services__stage {
    left: auto;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 27%);
    width: 100%;
    padding: 54px clamp(32px, 5vw, 60px) 60px;
    transform: none;
  }

  .services__kicker,
  .services__title,
  .services__lead,
  .services__grid {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
  }

  .services__title {
    width: auto;
    margin-top: 24px;
  }

  .services__lead {
    width: auto;
    margin-top: 30px;
  }

  .services__grid {
    width: 100%;
    margin-top: 46px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: 205px;
    gap: 18px;
  }

  .service-card {
    width: 100%;
    height: 205px;
  }
}

@media (min-width: 1201px) and (max-width: 1439px) {
  .service-card > p {
    width: calc(100% - 92px);
  }
}

@media (max-width: 992px) {
  .services {
    min-width: 0;
    height: auto;
  }

  .services__stage {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    height: auto;
    padding: 56px 16px 46px;
    transform: none;
  }

  .services__kicker,
  .services__title,
  .services__lead,
  .services__grid,
  .services__mobile-cta {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
  }

  .services__title {
    margin-top: 20px;
  }

  .services__lead {
    margin-top: 24px;
  }

  .services__grid {
    display: grid;
    height: auto;
    margin-top: 32px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
    gap: 20px;
  }

  .service-card,
  .service-card:nth-child(n) {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: 205px;
  }

  .services__mobile-cta {
    display: flex;
    margin-top: 24px;
  }
}

@media (max-width: 767px) {
  .services__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

/* Content-driven request section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .request {
    min-width: 0;
  }

  .request,
  .request__stage {
    height: auto;
  }

  .request__stage {
    left: auto;
    grid-template-columns: minmax(300px, 32%) minmax(0, 1fr);
    gap: clamp(28px, 4vw, 52px);
    width: 100%;
    padding: 58px clamp(32px, 5vw, 60px) 60px;
    transform: none;
  }

  .request__copy,
  .request__kicker,
  .request__title,
  .request__lead,
  .request__accent,
  .request__phone-prompt,
  .request__phone,
  .request-form {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
  }

  .request__title {
    width: 100%;
    margin-top: 30px;
  }

  .request__lead {
    width: 100%;
    margin-top: 34px;
  }

  .request__accent {
    margin-top: 30px;
  }

  .request__phone-prompt {
    width: 100%;
    margin-top: 54px;
  }

  .request__phone {
    margin-top: 14px;
  }

  .request-form {
    display: grid;
    width: 100%;
    height: auto;
    padding: 28px;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 26px 28px;
  }

  .request-field,
  .request-consent,
  .request-form__submit,
  .request-form__note {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
  }

  .request-field--object,
  .request-field--batch,
  .request-field--file,
  .request-field--name,
  .request-field--phone,
  .request-field--email {
    width: 100%;
  }

  .request-consent {
    width: 100%;
  }

  .request-form__note {
    width: auto;
  }
}

@media (max-width: 992px) {
  .request {
    min-width: 0;
    height: auto;
  }

  .request::before {
    height: 100%;
  }

  .request__stage {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    height: auto;
    padding: 56px 16px 46px;
    transform: none;
  }

  .request__copy,
  .request__kicker,
  .request__title,
  .request__lead,
  .request__accent,
  .request__phone-prompt,
  .request__phone,
  .request-form,
  .request-field,
  .request-consent,
  .request-form__submit {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
  }

  .request__title {
    width: 100%;
    margin-top: 20px;
  }

  .request__lead {
    width: 100%;
    margin-top: 24px;
  }

  .request__accent {
    margin-top: 28px;
  }

  .request__phone-prompt {
    width: 100%;
    margin-top: 34px;
  }

  .request__phone {
    margin-top: 12px;
  }

  .request-form {
    display: grid;
    width: 100%;
    height: auto;
    margin-top: 38px;
    padding: 24px 16px;
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .request-field--object,
  .request-field--batch,
  .request-field--file,
  .request-field--name,
  .request-field--phone,
  .request-field--email {
    display: block;
    width: 100%;
    grid-column: 1;
    grid-row: auto;
  }

  .request-field--email {
    display: none;
  }

  .request-consent {
    width: 100%;
    grid-column: 1;
  }

  .request-form__submit {
    width: 100%;
    grid-column: 1;
  }

  .request-form__note {
    display: none;
  }
}

/* Content-driven about company section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .about-company,
  .about-company__stage {
    height: auto;
  }

  .about-company {
    min-width: 0;
  }

  .about-company__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 26px clamp(32px, 5vw, 64px) 68px;
    transform: none;
  }

  .about-company__heading {
    position: relative;
    inset: auto;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 32%);
    gap: 24px 36px;
  }

  .about-company__heading > p,
  .about-company__heading .heading-2,
  .about-company__heading > div,
  .about-company__photo,
  .about-company__overview,
  .about-company__narrative,
  .about-company__metric {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .about-company__heading .heading-2,
  .about-company__heading > div,
  .about-company__photo,
  .about-company__overview,
  .about-company__narrative,
  .about-company__metric {
    width: 100%;
  }

  .about-company__photo {
    height: clamp(270px, 24vw, 296px);
    margin-top: 40px;
  }

  .about-company__overview {
    height: auto;
    margin-top: 32px;
    grid-template-columns: minmax(0, 46%) repeat(3, minmax(0, 1fr));
    gap: 10px;
  }

  .about-company__narrative,
  .about-company__metric {
    min-height: 205px;
  }

  .about-company__metric {
    padding: 22px 18px;
  }

  .about-company__metric strong,
  .about-company__metric p,
  .about-company__metric span {
    position: relative;
    top: auto;
    left: auto;
  }

  .about-company__metric strong,
  .about-company__metric--third strong {
    font-size: clamp(38px, 4vw, 52px);
  }

  .about-company__metric p {
    width: 100%;
    margin-top: 24px;
  }

  .about-company__metric span {
    margin-top: 25px;
  }
}

@media (max-width: 992px) {
  .about-company,
  .about-company__stage {
    height: auto;
  }

  .about-company {
    min-width: 0;
  }

  .about-company__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 22px 16px 42px;
    transform: none;
  }

  .about-company__heading {
    position: relative;
    inset: auto;
    display: block;
  }

  .about-company__heading > p,
  .about-company__heading .heading-2,
  .about-company__heading > div,
  .about-company__photo,
  .about-company__overview,
  .about-company__narrative,
  .about-company__metric {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .about-company__heading > p,
  .about-company__heading .heading-2,
  .about-company__heading > div,
  .about-company__photo,
  .about-company__overview,
  .about-company__narrative,
  .about-company__metric {
    width: 100%;
  }

  .about-company__heading .heading-2 {
    margin-top: 12px;
  }

  .about-company__heading > div {
    margin-top: 28px;
    font-size: 15px;
    line-height: 1.42;
  }

  .about-company__lead-desktop {
    display: none;
  }

  .about-company__lead-mobile {
    display: inline;
  }

  .about-company__photo {
    height: 245px;
    margin-top: 36px;
  }

  .about-company__years {
    top: 18px;
    left: 24px;
    font-size: 70px;
  }

  .about-company__years-label {
    top: 98px;
    left: 26px;
    width: min(260px, calc(100% - 52px));
    font-size: 22px;
  }

  .about-company__years-label br {
    display: none;
  }

  .about-company__photo-note {
    top: 180px;
    left: 26px;
    width: min(300px, calc(100% - 52px));
    font-size: 13px;
  }

  .about-company__photo-note-desktop {
    display: none;
  }

  .about-company__photo-note-mobile {
    display: inline;
  }

  .about-company__timeline-axis,
  .about-company__timeline-item {
    display: none;
  }

  .about-company__overview {
    display: grid;
    height: auto;
    margin-top: 22px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
    gap: 20px;
  }

  .about-company__narrative {
    height: auto;
    min-height: 0;
    padding: 20px;
    grid-column: 1 / -1;
  }

  .about-company__narrative .about-company__narrative-desktop {
    display: block;
    margin: 0 0 12px;
  }

  .about-company__narrative .about-company__narrative-mobile {
    display: none;
  }

  .about-company__narrative p + p::before {
    content: none;
  }

  .about-company__narrative .about-company__narrative-desktop:last-of-type {
    margin-bottom: 0;
  }

  .about-company__metric {
    min-height: 150px;
    height: auto;
    padding: 18px;
    grid-column: auto;
  }

  .about-company__metric strong,
  .about-company__metric p,
  .about-company__metric span {
    position: relative;
    top: auto;
    left: auto;
  }

  .about-company__metric strong,
  .about-company__metric--third strong {
    font-size: 40px;
  }

  .about-company__metric p {
    width: 100%;
    margin-top: 22px;
    font-size: 14px;
  }

  .about-company__metric span {
    margin-top: 18px;
  }
}

@media (max-width: 600px) {
  .about-company__overview {
    grid-template-columns: 1fr;
  }

  .about-company__narrative {
    grid-column: 1;
  }
}

/* Consistent heading spacing in the awards section. */
.about-awards {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  min-width: 0;
  height: auto;
  margin-top: 0;
  padding: 0;
}

.about-awards__stage {
  position: relative;
  top: auto;
  left: auto;
  width: 1440px;
  height: auto;
  margin: 0 auto;
  padding: 76px 80px 70px;
  transform: none;
}

.about-awards__heading {
  position: relative;
  top: auto;
  left: auto;
  width: 760px;
  height: auto;
  margin: 0;
}

.about-awards__heading p,
.about-awards__heading .heading-2,
.about-awards__heading div {
  position: relative;
  top: auto;
  left: auto;
  margin: 0;
}

.about-awards__heading .heading-2 {
  width: 100%;
  margin-top: 22px;
}

.about-awards__heading div {
  width: 680px;
  margin-top: 24px;
}

.about-awards__documents {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  height: 862px;
  margin: 52px 0 0;
}

@media (min-width: 993px) and (max-width: 1200px) {
  .about-awards__stage {
    width: 100%;
    padding: 64px clamp(32px, 5vw, 60px) 60px;
  }

  .about-awards__heading {
    width: min(760px, 72%);
  }

  .about-awards__heading div {
    width: min(680px, 100%);
  }

  .about-awards__documents {
    width: 100%;
    height: clamp(484px, calc(38vw + 78px), 540px);
    margin-top: 44px;
  }

  .awards-main-carousel {
    --f-carousel-gap: 18px;
    --f-carousel-slide-width: calc((100% - 36px) / 3);
    --f-carousel-slide-height: clamp(400px, 38vw, 456px);
    top: 0;
    left: 0;
    width: 100%;
    height: var(--f-carousel-slide-height);
  }

  .awards-main-carousel .f-carousel__viewport,
  .awards-main-carousel .f-carousel__track {
    width: 100%;
    height: var(--f-carousel-slide-height);
  }

  .awards-main-carousel__slide {
    width: var(--f-carousel-slide-width);
    min-width: var(--f-carousel-slide-width);
    max-width: var(--f-carousel-slide-width);
    height: var(--f-carousel-slide-height);
    flex-basis: var(--f-carousel-slide-width);
  }

  .about-awards__thumbs {
    display: none;
  }

  .about-awards__arrows {
    top: clamp(424px, calc(38vw + 24px), 480px);
    right: 0;
    left: auto;
  }
}

@media (max-width: 992px) {
  .about-awards {
    height: auto;
  }

  .about-awards__stage {
    width: 100%;
    height: auto;
    padding: 54px 16px 50px;
  }

  .about-awards__heading {
    width: 100%;
  }

  .about-awards__heading .heading-2 {
    width: 100%;
    margin-top: 18px;
  }

  .about-awards__heading div {
    width: 100%;
    margin-top: 20px;
  }

  .about-awards__documents {
    width: 100%;
    height: 548px;
    margin: 36px 0 0;
  }
}

@media (max-width: 767px) {
  .about-awards__documents {
    width: 230px;
    height: 390px;
    margin-right: auto;
    margin-left: auto;
  }
}

/* Content-driven partners section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .partners,
  .partners__stage {
    height: auto;
  }

  .partners {
    min-width: 0;
  }

  .partners__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 60px clamp(32px, 5vw, 60px) 68px;
    grid-template-columns: minmax(0, 46%) minmax(0, 1fr);
    column-gap: clamp(44px, 6vw, 70px);
    transform: none;
  }

  .partners__kicker,
  .partners__title,
  .partners__industries,
  .partners__accent,
  .partners__proposition,
  .partners__all,
  .partners__logos,
  .partners__proof {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .partners__title,
  .partners__proposition,
  .partners__logos {
    width: 100%;
  }

  .partners__industries {
    width: calc(100% - 28px);
  }

  .partners__all {
    width: auto;
    justify-self: end;
  }

  .partners__logos {
    height: 339px;
    margin-top: 66px;
  }

  .partners__lane {
    width: 100%;
  }

  .partners__proof {
    width: min(372px, 90%);
    margin-top: 32px;
  }
}

@media (max-width: 992px) {
  .partners,
  .partners__stage {
    height: auto;
  }

  .partners {
    min-width: 0;
  }

  .partners__stage {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    padding: 56px 16px 44px;
    transform: none;
  }

  .partners__kicker,
  .partners__title,
  .partners__industries,
  .partners__accent,
  .partners__proposition,
  .partners__logos {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .partners__kicker,
  .partners__title,
  .partners__proposition,
  .partners__logos {
    width: 100%;
  }

  .partners__title {
    margin-top: 20px;
  }

  .partners__industries {
    width: calc(100% - 24px);
    margin: 30px 0 0 24px;
    font-size: 15px;
    line-height: 1.42;
  }

  .partners__accent {
    margin-top: 32px;
  }

  .partners__proposition {
    margin-top: 18px;
    font-size: 16px;
  }

  .partners__all,
  .partners__rule,
  .partners__proof {
    display: none;
  }

  .partners__logos {
    height: 339px;
    margin-top: 42px;
  }

  .partners__logos::before {
    display: none;
  }

  .partners__lane {
    width: 100%;
  }
}

/* Static partners grid on tablets and phones. */
@media (max-width: 992px) {
  .partners__logos {
    display: none;
  }

  .partners__mobile-grid {
    display: grid;
    width: 100%;
    margin-top: 42px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .partners__mobile-grid .partner-tile {
    display: block;
    width: 100%;
    min-width: 0;
    height: 108px;
    flex: none;
  }

  .partners__mobile-grid .partner-tile:nth-child(n + 3) {
    display: block;
  }

  .partners__mobile-grid .partner-tile__content {
    top: 12px;
    left: 12px;
    width: calc(100% - 24px);
    height: 82px;
  }

  .partners__mobile-grid .partner-tile__content img {
    max-height: 62px;
  }
}

@media (max-width: 767px) {
  .partners__mobile-grid {
    margin-top: 32px;
    gap: 10px;
  }

  .partners__mobile-grid .partner-tile {
    height: 112px;
  }

  .partners__mobile-grid .partner-tile__content {
    height: 86px;
  }

  .partners__mobile-grid .partner-tile__content strong {
    font-size: 11px;
    line-height: 1.15;
  }
}

/* Content-driven supply geography map section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .trust-map,
  .trust-map__stage {
    height: auto;
  }

  .trust-map {
    min-width: 0;
  }

  .trust-map__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 60px clamp(32px, 5vw, 60px) 62px;
    transform: none;
  }

  .trust-map__kicker,
  .trust-map__title,
  .trust-map__canvas {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .trust-map__title,
  .trust-map__canvas {
    width: 100%;
  }

  .trust-map__title {
    margin-top: 20px;
    font-size: clamp(36px, 3.8vw, 46px);
  }

  .trust-map__canvas {
    height: 430px;
    margin-top: 44px;
  }
}

@media (max-width: 992px) {
  .trust-map,
  .trust-map__stage {
    height: auto;
  }

  .trust-map {
    min-width: 0;
  }

  .trust-map__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 26px 16px 46px;
    transform: none;
  }

  .trust-map__kicker,
  .trust-map__title,
  .trust-map__canvas {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .trust-map__title,
  .trust-map__canvas {
    width: 100%;
  }

  .trust-map__title {
    margin-top: 20px;
    text-align: left;
  }

  .trust-map__title br {
    display: none;
  }

  .trust-map__canvas {
    height: 420px;
    margin-top: 36px;
  }
}

@media (max-width: 600px) {
  .trust-map__canvas {
    height: 315px;
    margin-top: 32px;
  }
}

/* Content-driven cases section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .cases,
  .cases__stage {
    height: auto;
  }

  .cases {
    min-width: 0;
  }

  .cases__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 60px clamp(32px, 5vw, 60px) 64px;
    transform: none;
  }

  .cases__kicker,
  .cases__title,
  .cases__all,
  .cases-carousel,
  .cases__arrows,
  .cases-consultation,
  .cases-consultation .heading-3,
  .cases-consultation > input,
  .cases-consultation > button,
  .cases-consultation > label {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .cases__title,
  .cases-carousel,
  .cases-consultation {
    width: 100%;
  }

  .cases__title {
    margin-top: 20px;
  }

  .cases__all {
    margin: 16px 0 0 auto;
  }

  .cases-carousel {
    height: 390px;
    margin-top: 32px;
  }

  .cases__arrows {
    margin: 22px 0 0 auto;
  }

  .cases-consultation {
    height: auto;
    min-height: 140px;
    margin-top: 24px;
    padding: 24px 28px;
    grid-template-columns: minmax(240px, 1.35fr) minmax(200px, 1fr) minmax(200px, 1fr);
    gap: 12px 20px;
  }

  .cases-consultation .heading-3,
  .cases-consultation > input,
  .cases-consultation > button,
  .cases-consultation > label {
    width: 100%;
  }
}

@media (min-width: 1201px) and (max-width: 1439px) {
  .cases-carousel {
    height: 448px;
  }
}

@media (max-width: 992px) {
  .cases,
  .cases__stage {
    height: auto;
  }

  .cases {
    min-width: 0;
  }

  .cases__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 26px 16px 50px;
    transform: none;
  }

  .cases__kicker,
  .cases__title,
  .cases-carousel,
  .cases__arrows,
  .cases-consultation,
  .cases-consultation .heading-3,
  .cases-consultation > input,
  .cases-consultation > button,
  .cases-consultation > label {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
  }

  .cases__title,
  .cases-carousel,
  .cases-consultation,
  .cases-consultation .heading-3,
  .cases-consultation > input,
  .cases-consultation > button,
  .cases-consultation > label {
    width: 100%;
  }

  .cases__title {
    margin-top: 20px;
    text-align: left;
  }

  .cases__all {
    display: none;
  }

  .cases-carousel {
    height: 390px;
    margin-top: 36px;
  }

  .cases__arrows {
    width: max-content;
    margin: 20px 0 0 auto;
  }

  .cases-consultation {
    display: grid;
    height: auto;
    min-height: 0;
    margin-top: 24px;
    padding: 24px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas:
      "title title"
      "phone submit"
      "consent consent";
    gap: 18px;
  }

  .cases-consultation > input {
    display: block;
  }

  .cases-consultation > label {
    display: flex;
  }
}

@media (max-width: 767px) {
  .cases-carousel {
    height: 746px;
  }

  .cases-carousel .f-carousel__viewport {
    height: 746px;
  }

  .cases-carousel .case-card:nth-child(n + 3) {
    display: none !important;
  }

  .cases__arrows {
    display: none;
  }
}

@media (max-width: 600px) {
  .cases-consultation {
    padding: 20px 18px;
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "phone"
      "submit"
      "consent";
  }
}

/* Content-driven news and materials section. */
@media (min-width: 993px) and (max-width: 1200px) {
  .news-materials,
  .news-materials__stage {
    height: auto;
  }

  .news-materials {
    min-width: 0;
  }

  .news-materials__stage {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 60px clamp(32px, 5vw, 60px) 60px;
    transform: none;
  }

  .news-materials__heading,
  .news-materials__heading > p,
  .news-materials__heading .heading-2,
  .news-materials__heading > div,
  .news-materials__tabs,
  .news-materials__all,
  .news-carousel,
  .news-materials__arrows {
    position: relative;
    inset: auto;
  }

  .news-materials__heading,
  .news-materials__heading .heading-2,
  .news-materials__tabs,
  .news-carousel {
    width: 100%;
  }

  .news-materials__heading .heading-2 {
    margin-top: 20px;
  }

  .news-materials__heading > div {
    width: min(720px, 72%);
    margin: 22px auto 0;
  }

  .news-materials__tabs {
    margin-top: 24px;
  }

  .news-materials__all {
    margin-top: 36px;
  }

  .news-carousel {
    height: 310px;
    margin-top: 24px;
  }

  .news-materials__arrows {
    margin: 20px 0 0 auto;
  }
}

@media (min-width: 1201px) and (max-width: 1439px) {
  .news-carousel {
    height: 340px;
  }
}

@media (max-width: 992px) {
  .news-materials,
  .news-materials__stage {
    height: auto;
  }

  .news-materials {
    min-width: 0;
    background: #f6fafc;
  }

  .news-materials__stage {
    position: relative;
    top: auto;
    left: auto;
    display: grid;
    width: 100%;
    padding: 26px 16px 48px;
    grid-template-columns: minmax(0, 1fr) auto;
    transform: none;
  }

  .news-materials__heading,
  .news-materials__heading > p,
  .news-materials__heading .heading-2,
  .news-materials__heading > div,
  .news-materials__tabs,
  .news-materials__all,
  .news-carousel,
  .news-materials__arrows {
    position: relative;
    inset: auto;
  }

  .news-materials__heading {
    display: block;
    width: 100%;
    grid-column: 1 / -1;
  }

  .news-materials__heading .heading-2 {
    width: 100%;
    margin-top: 20px;
    text-align: left;
  }

  .news-materials__heading > div {
    width: 100%;
    margin-top: 22px;
    text-align: left;
  }

  .news-materials__tabs {
    display: flex;
    width: 100%;
    height: auto;
    margin-top: 26px;
    padding: 8px 0 14px;
    grid-column: 1;
  }

  .news-materials__all {
    display: flex;
    width: auto;
    margin: 28px 0 0 20px;
    grid-column: 2;
  }

  .news-carousel {
    width: 100%;
    height: 310px;
    margin-top: 24px;
    overflow: hidden;
    grid-column: 1 / -1;
  }

  .news-materials__arrows {
    display: flex;
    width: max-content;
    margin: 20px 0 0 auto;
    grid-column: 1 / -1;
  }
}

@media (max-width: 767px) {

  .cases form h3{
    margin-top: 0;
    margin-bottom: 0;
  }

  .news-materials__stage {
    display: block;
  }

  .news-materials__tabs,
  .news-materials__all {
    display: none;
  }

  .news-carousel {
    height: 604px;
    margin-top: 26px;
    overflow: visible;
  }

  .news-carousel .f-carousel__viewport {
    position: static;
    display: block !important;
    height: 604px;
    overflow: visible !important;
  }

  .news-carousel .news-card,
  .news-carousel .news-card:nth-child(1),
  .news-carousel .news-card:nth-child(2) {
    position: absolute !important;
    left: 0 !important;
    width: 100% !important;
    max-width: 100%;
    height: 280px !important;
  }

  .news-carousel .news-card:nth-child(1) {
    top: 0 !important;
  }

  .news-carousel .news-card:nth-child(2) {
    top: 324px !important;
  }

  .news-carousel .news-card:nth-child(n + 3),
  .news-carousel .news-card[hidden] {
    display: none !important;
  }

  .news-card__inner {
    width: 100%;
    height: 280px;
  }

  .news-card__accent,
  .news-card__meta,
  .news-card__line {
    display: none;
  }

  .news-materials__arrows {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
  .hero__buttons {
    display: flex;
    gap: 16px;
  }

  .hero__buttons .button {
    width: calc((100% - 16px) / 2);
  }

  .hero__buttons .button + .button {
    margin-top: 0;
  }

  .news-carousel .news-card:nth-child(n + 4):not([hidden]) {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: block !important;
    width: var(--f-carousel-slide-width) !important;
    max-width: var(--f-carousel-slide-width);
    height: 310px !important;
    flex: 0 0 var(--f-carousel-slide-width);
  }

  .news-carousel .news-card[hidden] {
    display: none !important;
  }
}

/* Footer: content-driven layout. Absolute positioning is reserved for decor. */
.site-footer {
  display: grid;
  grid-template-columns: minmax(360px, 461px) minmax(0, 805px);
  justify-content: center;
  gap: 30px;
  width: 100%;
  min-width: 0;
  height: auto;
  padding: 42px clamp(24px, 4vw, 64px) 73px;
  overflow: hidden;
}

.footer-contact-panel,
.footer-navigation-panel {
  position: relative;
  top: auto;
  right: auto;
  left: auto;
  width: 100%;
  height: auto;
  min-width: 0;
  margin-left: 0;
}

.site-footer .footer-panel-reveal {
  transform: translateY(16px);
}

.site-footer .footer-panel-reveal.is-visible {
  transform: translateY(0);
}

.footer-contact-panel {
  display: grid;
  align-content: start;
  gap: 28px;
  padding: 44px 48px 48px;
}

.footer-contact-panel > .heading-2 {
  position: relative;
  top: auto;
  left: auto;
  z-index: 1;
  width: calc(100% - 45px);
}

.footer-contact-card,
.footer-contact-card--schedule,
.footer-contact-card--address {
  position: relative;
  top: auto;
  left: auto;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: auto;
  min-height: 116px;
  padding: 16px 20px 16px 36px;
  overflow: hidden;
}

.footer-contact-card__label,
.footer-contact-card__main,
.footer-contact-card__action,
.footer-contact-card--schedule .footer-contact-card__action,
.footer-contact-card--address .footer-contact-card__action {
  position: relative;
  top: auto;
  left: auto;
  width: auto;
}

.footer-contact-card__label {
  min-height: 16px;
}

.footer-contact-card__main {
  margin-top: 6px;
}

.footer-contact-card__action,
.footer-contact-card--schedule .footer-contact-card__action,
.footer-contact-card--address .footer-contact-card__action {
  margin-top: auto;
  padding-top: 7px;
}

.footer-navigation-panel {
  display: grid;
  grid-template-columns: minmax(110px, 120px) minmax(200px, 260px) minmax(220px, 249px);
  grid-template-areas:
    "navigation catalog details"
    "legal legal company";
  align-content: start;
  justify-content: space-between;
  gap: 54px 28px;
  padding: 50px 40px 44px 52px;
}

.footer-navigation-panel__watermark {
  top: auto;
  right: 0;
  bottom: 8px;
  left: 0;
  width: 100%;
  font-size: clamp(58px, 7vw, 100px);
  line-height: 1;
  text-align: center;
  pointer-events: none;
}

.footer-column,
.footer-column--navigation,
.footer-column--catalog,
.footer-details,
.footer-legal,
.footer-company {
  position: relative;
  top: auto;
  left: auto;
  width: auto;
  height: auto;
  min-width: 0;
  margin: 0;
}

.footer-column--navigation {
  grid-area: navigation;
}

.footer-column--catalog {
  grid-area: catalog;
}

.footer-details {
  display: flex;
  flex-direction: column;
  grid-area: details;
}

.footer-details__max,
.footer-details__callback {
  position: relative;
  top: auto;
  left: auto;
}

.footer-details__max {
  margin-top: 28px;
}

.footer-details__callback {
  width: 100%;
  max-width: 240px;
  margin-top: 16px;
}

.footer-legal {
  z-index: 1;
  grid-area: legal;
}

.footer-company {
  z-index: 1;
  grid-area: company;
}

@media (max-width: 1200px) {
  .site-footer {
    grid-template-columns: minmax(300px, 0.85fr) minmax(0, 1.65fr);
    gap: 24px;
    padding: 40px 24px 48px;
  }

  .footer-contact-panel {
    padding: 38px 30px 40px;
  }

  .footer-contact-panel > .heading-2 {
    font-size: clamp(28px, 3vw, 34px);
  }

  .footer-navigation-panel {
    grid-template-columns: minmax(105px, 0.8fr) minmax(180px, 1.35fr) minmax(205px, 1.15fr);
    gap: 42px 22px;
    padding: 42px 30px 40px;
  }

  .footer-details__phone {
    font-size: 22px;
  }

  .footer-details__email {
    font-size: 18px;
  }
}

@media (max-width: 992px) {
  .site-footer {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    height: auto;
    padding: 32px 16px 40px;
  }

  .footer-contact-panel,
  .footer-navigation-panel {
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
    height: auto;
    margin: 0;
  }

  .footer-contact-panel {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    padding: 32px;
  }

  .footer-contact-panel > .heading-2 {
    width: min(580px, 100%);
    grid-column: 1 / -1;
  }

  .footer-navigation-panel {
    grid-template-columns: minmax(110px, 0.8fr) minmax(220px, 1.35fr) minmax(210px, 1.1fr);
    padding: 36px 32px 34px;
  }
}

@media (max-width: 767px) {
  .site-footer {
    padding: 24px 12px 32px;
  }

  .footer-contact-panel {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    padding: 30px 20px 24px;
    border-radius: 24px;
  }

  .footer-contact-panel > .heading-2 {
    margin-bottom: 8px;
    font-size: clamp(27px, 8vw, 34px);
  }

  .footer-navigation-panel {
    grid-template-columns: minmax(100px, 0.8fr) minmax(0, 1.35fr);
    grid-template-areas:
      "navigation catalog"
      "details details"
      "legal legal"
      "company company";
    gap: 34px 20px;
    padding: 30px 20px;
    border-radius: 24px;
  }

  .footer-column .heading-2,
  .footer-details > .heading-2 {
    margin-bottom: 22px;
  }

  .footer-details {
    padding-top: 4px;
  }

  .footer-details > .heading-2,
  .footer-details__accent,
  .footer-company,
  .footer-column--catalog a:nth-of-type(3) {
    display: block;
  }

  .footer-details__callback {
    max-width: 100%;
  }

  .footer-company {
    margin-top: -16px;
  }
}

@media (max-width: 420px) {
  .footer-navigation-panel {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "navigation"
      "catalog"
      "details"
      "legal"
      "company";
  }
}

/* Inner "About" page sections share the breadcrumb content line. */
@media (min-width: 993px) and (max-width: 1200px) {
  body:not(.home) .about-page .about-company__stage,
  body:not(.home) .about-page .about-section-stage,
  body:not(.home) .about-page .about-awards__stage,
  body:not(.home) .about-page .partners__stage,
  body:not(.home) .about-page .trust-map__stage,
  body:not(.home) .about-page .cases__stage,
  body:not(.home) .about-page .news-materials__stage {
    width: calc(100% - 64px);
    margin-right: auto;
    margin-left: auto;
    padding-right: 0;
    padding-left: 0;
  }
}

@media (max-width: 992px) {
  body:not(.home) .about-page .about-company__stage,
  body:not(.home) .about-page .about-section-stage,
  body:not(.home) .about-page .about-awards__stage,
  body:not(.home) .about-page .partners__stage,
  body:not(.home) .about-page .trust-map__stage,
  body:not(.home) .about-page .cases__stage,
  body:not(.home) .about-page .news-materials__stage {
    width: calc(100% - 32px);
    margin-right: auto;
    margin-left: auto;
    padding-right: 0;
    padding-left: 0;
  }
}

/* Technology taxonomy archive. */
@media (max-width: 1200px) {
  .technology-taxonomy__stage,
  .technology-benefits__stage {
    width: calc(100% - 64px);
  }

  .technology-taxonomy__header h1 {
    font-size: 42px;
  }

  .technology-taxonomy__header > p {
    margin-top: 52px;
  }

  .technology-taxonomy__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
  }

  .technology-benefits__grid {
    gap: 22px;
  }
}

/* Single technology page. */
@media (max-width: 1200px) {
  .technology-single__stage {
    width: calc(100% - 64px);
  }

  .technology-single__header h1 {
    font-size: 42px;
  }

  .technology-single__content {
    margin-top: 76px;
  }

  .technology-sample {
    width: calc((100vw - 112px) / 3);
    height: auto;
    aspect-ratio: 302 / 500;
  }
}

@media (max-width: 992px) {
  .technology-single__stage {
    padding-top: 34px;
    padding-bottom: 58px;
  }

  .technology-single__header h1 {
    font-size: 36px;
  }

  .technology-single__content {
    margin-top: 52px;
    font-size: 16px;
  }

  .technology-samples {
    margin-top: 42px;
  }

  .technology-sample {
    width: calc((100vw - 84px) / 2);
    margin-right: 20px;
  }
}

@media (max-width: 767px) {
  .technology-single__stage {
    width: calc(100% - 32px);
    padding: 26px 0 46px;
  }

  .technology-single__header h1 {
    font-size: 30px;
    line-height: 1.12;
    text-align: left;
  }

  .technology-single__content {
    margin-top: 34px;
    font-size: 15px;
    line-height: 1.52;
  }

  .technology-single__content p {
    margin-bottom: 18px;
  }

  .technology-samples {
    margin-top: 32px;
  }

  .technology-sample {
    width: min(302px, calc(100vw - 64px));
    min-width: min(302px, calc(100vw - 64px));
    margin-right: 16px;
  }

  .technology-samples__arrows {
    margin-top: 18px;
    gap: 10px;
  }

  .technology-samples__arrow {
    width: 48px;
    height: 48px;
    font-size: 25px;
  }
}

@media (max-width: 992px) {
  .technology-taxonomy__stage {
    padding-top: 34px;
    padding-bottom: 72px;
  }

  .technology-taxonomy__header h1 {
    font-size: 36px;
  }

  .technology-taxonomy__header > p {
    margin-top: 38px;
    font-size: 16px;
  }

  .technology-taxonomy__grid {
    margin-top: 44px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .technology-benefits__stage {
    padding: 68px 0 82px;
  }

  .technology-benefits__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .technology-benefits__grid article:last-child {
    width: calc((100% - 22px) / 2);
    grid-column: 1 / -1;
    justify-self: center;
  }
}

@media (max-width: 767px) {
  .technology-taxonomy__stage,
  .technology-benefits__stage {
    width: calc(100% - 32px);
  }

  .technology-taxonomy__stage {
    padding: 26px 0 52px;
  }

  .technology-taxonomy__header h1 {
    font-size: 30px;
    line-height: 1.12;
    text-align: left;
  }

  .technology-taxonomy__header > p {
    margin-top: 28px;
    font-size: 15px;
    line-height: 1.52;
  }

  .technology-taxonomy__grid {
    margin-top: 32px;
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .technology-taxonomy-card {
    min-height: 210px;
  }

  .technology-benefits__stage {
    padding: 52px 0 62px;
  }

  .technology-benefits__stage > .heading-2 {
    font-size: 28px;
  }

  .technology-benefits__grid {
    margin-top: 28px;
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .technology-benefits__grid article,
  .technology-benefits__grid article:last-child {
    width: 100%;
    min-height: 0;
    grid-column: auto;
    justify-self: stretch;
  }
}

@media (min-width: 1440px) {
  .hero {
    height: auto;
    min-height: max(700px, 100svh);
  }

  .hero__content,
  .hero-benefits {
    bottom: 0;
    height: auto;
  }
}

@media (min-width: 1440px) and (max-height: 799px) {
  .hero > .site-header,
  .hero__content,
  .hero-benefits {
    transform: translateX(-50%);
  }
}

/* Modals must remain fully usable on 360px-wide screens. */
@media (max-width: 420px) {
  .fancybox__slide {
    padding: 8px;
  }

  .request-modal {
    display: block;
    width: calc(100vw - 16px);
    max-width: calc(100vw - 16px);
    max-height: calc(100dvh - 16px);
    min-width: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .request-modal__aside,
  .request-modal__content,
  .request-modal__form,
  .request-modal .wpcf7,
  .request-modal .wpcf7-form,
  .request-modal .product-request-form,
  .request-modal .product-request-form__field,
  .request-modal .wpcf7-form-control-wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .request-modal__aside {
    min-height: 0;
    padding: 24px 16px 20px;
  }

  .request-modal__kicker {
    margin-bottom: 10px;
  }

  .request-modal__aside .heading-2 {
    padding-right: 34px;
    font-size: 25px;
    line-height: 1.12;
  }

  .request-modal__lead {
    margin: 14px 0 16px;
    font-size: 13px;
    line-height: 1.45;
  }

  .request-modal__source {
    min-height: 0;
    padding: 12px 14px;
  }

  .request-modal__source strong {
    margin-top: 6px;
    overflow-wrap: anywhere;
    font-size: 15px;
  }

  .request-modal__phone {
    min-height: 0;
    margin-top: 18px;
  }

  .request-modal__phone a {
    overflow-wrap: anywhere;
    font-size: 16px;
  }

  .request-modal__content {
    padding: 24px 16px 20px;
  }

  .request-modal__content > .heading-2 {
    padding-right: 0;
    font-size: 25px;
    line-height: 1.15;
  }

  .request-modal__intro {
    margin: 5px 0 18px;
    font-size: 13px;
    line-height: 1.4;
  }

  .request-modal .wpcf7-form,
  .request-modal .product-request-form {
    gap: 14px;
  }

  .request-modal .product-request-form__field input,
  .request-modal .product-request-form__field select,
  .request-modal .product-request-form__field textarea,
  .request-modal .product-request-form__field .nice-select {
    min-width: 0;
    max-width: 100%;
  }

  .request-modal .product-request-form__field textarea {
    height: 92px;
    min-height: 92px;
  }

  .request-modal .product-request-form__field .nice-select .list {
    max-width: 100%;
  }

  .product-request-form__contacts {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .product-request-form__file-button {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .request-modal .wpcf7-acceptance label,
  .product-request-form__footer p {
    overflow-wrap: anywhere;
  }

  .product-request-form__footer {
    display: grid;
    gap: 10px;
  }

  .product-request-form__submit {
    width: 100%;
    min-width: 0;
    flex-basis: auto;
  }

  .lead-modal,
  .callback-modal,
  .consultation-modal,
  .popup__wrap {
    width: calc(100vw - 16px);
    max-width: calc(100vw - 16px);
    max-height: calc(100dvh - 16px);
    min-width: 0;
    padding: 28px 16px 20px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .popup__wrap {
    padding-top: 32px;
  }

  .callback-modal .callback-modal__close,
  .consultation-modal .consultation-modal__close,
  .popup__close {
    top: 10px;
    right: 10px;
  }

  .callback-modal__icon {
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
  }

  .callback-modal .heading-2,
  .consultation-modal .heading-2,
  .lead-modal .heading-2,
  .popup__title {
    padding-right: 30px;
    overflow-wrap: anywhere;
    font-size: 23px;
  }

  .callback-modal .lead-modal__intro {
    margin-bottom: 16px;
  }

  .callback-form,
  .callback-modal .wpcf7-form {
    gap: 12px;
  }

  .callback-modal .callback-form__field input,
  .consultation-modal .consultation-form__field input,
  .elan-ajax-modal input:not([type="hidden"], [type="submit"], [type="checkbox"]),
  .elan-ajax-modal textarea {
    min-width: 0;
  }

  .callback-modal .wpcf7-acceptance label,
  .consultation-modal .wpcf7-acceptance label {
    overflow-wrap: anywhere;
  }

  .consultation-form__footer {
    display: grid;
    gap: 10px;
  }

  .consultation-modal .consultation-form__submit {
    width: 100%;
  }

  .consultation-form__response-time {
    width: 100%;
    max-width: none;
    flex-basis: auto;
  }

  .request__stage {
    width: 100%;
    max-width: 100%;
    padding: 44px 12px 38px;
    overflow-x: hidden;
  }

  .request__copy,
  .request-form {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .request-form {
    margin-top: 30px;
    padding: 20px 12px;
    gap: 18px;
    overflow: visible;
  }

  .request-field,
  .request-field--object,
  .request-field--batch,
  .request-field--file,
  .request-field--name,
  .request-field--phone,
  .request-field--email,
  .request-file,
  .request-consent {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .request-field--email {
    display: block;
  }

  .request-field input:not([type="file"]),
  .request-field select,
  .request-field > .nice-select,
  .request-field .wpcf7-form-control-wrap > .nice-select,
  .request-file > label {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .request-field input:not([type="file"]),
  .request-field select,
  .request-file > label {
    padding-right: 14px;
    padding-left: 14px;
  }

  .request-field > .nice-select,
  .request-field .wpcf7-form-control-wrap > .nice-select {
    padding-right: 42px;
    padding-left: 14px;
  }

  .request-file span,
  .request-consent span {
    width: auto;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .request-consent input {
    margin-right: 10px;
  }

  .request-form__submit {
    width: 100%;
    max-width: 100%;
    padding-right: 24px;
    padding-left: 24px;
  }

  .popup-success {
    padding: 34px 20px 24px;
  }

  .popup-success .popup__icon {
    width: 62px;
    height: 62px;
    margin-bottom: 16px;
  }

  .popup-success .popup__icon svg {
    width: 40px;
    height: 24px;
  }

  .popup-success__kicker {
    margin-bottom: 7px;
    font-size: 11px;
  }

  .popup-success .popup__title {
    padding-right: 0;
    font-size: 25px;
  }

  .popup-success .popup__content {
    margin-top: 10px;
    font-size: 14px;
  }

  .popup-success__action {
    width: 100%;
    min-height: 50px;
    margin-top: 22px;
  }
}

@media (max-width: 992px) {
  .technology-samples__carousel {
    --f-carousel-gap: 20px;
  }
}

@media (max-width: 767px) {
  .technology-samples__carousel {
    --f-carousel-gap: 16px;
  }
}

/* 404 page: tablet and mobile layout. */
@media (max-width: 992px) {
  .not-found-page__stage {
    width: calc(100% - 48px);
    min-height: 0;
    padding: 40px 0 64px;
  }

  .not-found-page__code {
    position: relative;
    top: auto;
    right: auto;
    justify-content: center;
    font-size: 150px;
  }

  .not-found-page__code i {
    width: 86px;
    height: 86px;
    border-width: 12px;
  }

  .not-found-page__content {
    width: 100%;
    max-width: 680px;
    margin-top: 30px;
  }

  .not-found-page__content h1 {
    font-size: clamp(36px, 6vw, 46px);
  }

  .not-found-page__content > div:not(.not-found-page__actions) {
    max-width: 620px;
    margin-top: 22px;
    font-size: 17px;
  }

  .not-found-page__search {
    width: 100%;
    max-width: 590px;
    margin-top: 28px;
  }

  .not-found-page__links {
    margin-top: 48px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .not-found-page__links a {
    position: relative;
    min-height: 112px;
    padding: 20px 54px 20px 20px;
    grid-template-columns: minmax(0, 1fr);
  }

  .not-found-page__links strong {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .not-found-page__links b {
    position: absolute;
    right: 20px;
    bottom: 18px;
    grid-row: auto;
    grid-column: auto;
  }
}

@media (max-width: 560px) {
  .not-found-page__stage {
    width: calc(100% - 24px);
    padding: 24px 0 48px;
  }

  .not-found-page__code {
    font-size: 96px;
  }

  .not-found-page__code i {
    width: 56px;
    height: 56px;
    border-width: 8px;
  }

  .not-found-page__content {
    margin-top: 24px;
  }

  .not-found-page__content > p {
    margin-bottom: 14px;
    font-size: 13px;
  }

  .not-found-page__content h1 {
    font-size: clamp(28px, 9vw, 34px);
    line-height: 1.1;
  }

  .not-found-page__content > div:not(.not-found-page__actions) {
    margin-top: 18px;
    font-size: 15px;
  }

  .not-found-page__search {
    min-height: 56px;
    margin-top: 24px;
    padding: 5px 5px 5px 16px;
    grid-template-columns: minmax(0, 1fr) 46px;
  }

  .not-found-page__search input {
    font-size: 15px;
  }

  .not-found-page__search button {
    width: 46px;
    height: 46px;
  }

  .not-found-page__actions {
    margin-top: 24px;
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }

  .not-found-page__links {
    margin-top: 38px;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .not-found-page__links a {
    min-height: 96px;
    padding: 17px 52px 17px 18px;
  }

  .not-found-page__links b {
    right: 18px;
    bottom: 16px;
  }
   .services-page__features article img {
    height: 260px;
  }
}

/* Search results page: tablet and mobile layout. */
@media (max-width: 992px) {
  .site-search-page__stage {
    width: calc(100% - 48px);
    min-height: 0;
    padding: 40px 0 64px;
  }

  .site-search-page__heading h1 {
    font-size: clamp(36px, 6vw, 44px);
  }

  .site-search-page__form {
    width: 100%;
    max-width: none;
    margin-top: 30px;
  }

  .site-search-page__grid {
    margin-top: 34px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .site-search-card > a {
    min-height: 240px;
    padding: 24px;
  }

  .site-search-card .heading-2 {
    margin-top: 20px;
    font-size: 21px;
  }
}

@media (max-width: 767px) {
  .site-search-page__stage {
    width: calc(100% - 32px);
    padding: 30px 0 54px;
  }

  .site-search-page__heading h1 {
    font-size: clamp(30px, 8vw, 36px);
  }

  .site-search-page__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 560px) {
  .site-search-page__stage {
    width: calc(100% - 24px);
    padding: 24px 0 48px;
  }

  .site-search-page__heading > p {
    margin-bottom: 12px;
    font-size: 13px;
  }

  .site-search-page__heading h1 {
    font-size: clamp(28px, 9vw, 32px);
    line-height: 1.1;
  }

  .site-search-page__form {
    min-height: 0;
    margin-top: 26px;
    padding: 6px;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 8px;
    border-radius: 28px;
  }

  .site-search-page__form > span {
    margin-left: 10px;
  }

  .site-search-page__form input {
    width: 100%;
    height: 46px;
    font-size: 16px;
  }

  .site-search-page__form button {
    width: 100%;
    min-width: 0;
    height: 46px;
    margin-top: 2px;
    padding: 0 20px;
    grid-column: 1 / -1;
    justify-content: center;
    gap: 24px;
  }

  .site-search-page__summary {
    margin-top: 26px;
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
    font-size: 14px;
  }

  .site-search-page__grid {
    margin-top: 28px;
    gap: 14px;
  }

  .site-search-card > a {
    min-height: 0;
    padding: 22px 20px;
  }

  .site-search-card__meta {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 6px 14px;
    font-size: 12px;
  }

  .site-search-card .heading-2 {
    margin-top: 18px;
    font-size: 20px;
  }

  .site-search-card p {
    margin-top: 13px;
    font-size: 14px;
  }

  .site-search-card strong {
    padding-top: 20px;
  }

  .site-search-page__pagination {
    margin-top: 36px;
    flex-wrap: wrap;
  }
}
