.introWrapper {
  display: flex;
  flex-direction: column;
  gap: 64px;
  align-items: center;
}
.introApplication {
  display: flex;
  align-items: flex-end;
  gap: 28px;
}
.introApplication-text {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.introApplication-image {
  border-radius: 20px;
  width: 50%;
  max-width: 600px;
  flex: 1;
}
.introApplication-text h1 {
  font-size: 72px;
}
.introButtonGroup {
  display: flex;
  gap: 24px;
  margin-top: 16px;
}
.introFacts {
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
  justify-content: space-between;
}
.introFact-item {
  display: flex;
  gap: 16px;
  flex-direction: column;
}
.introFact-item h2 {
  font-size: 32px;
}
 .separator {
  height: 1px;
  width: 100%;
  background-color: #fff;
}
.servicesWrapper {
  padding: 80px 0;
}
.servicesWrapper .orange-default-button {
  margin: 40px auto 0 auto;
  width: fit-content;
}
.servicesDashboard {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.servicesItem {
  display: flex;
  align-items: stretch;
  gap: 32px;
}
.servicesItemText {
  display: flex;
  flex-direction: column;
  gap: 8px;
  background-color: var(--graycards);
  border-radius: 20px;
  padding: 24px;
  flex: 3;
}
.servicesItemText button {
  width: fit-content;
  margin-top: 16px;
}
.serviceItemImage {
  position: relative;

  flex: 1;
  border-radius: 20px;
  overflow: hidden;
}
.serviceItemImage img {
  position: absolute;
  /* width: 100%; */
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.servicesItemText .title {
  color: var(--lightgrey);
}
.serviceItem-properties {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.serviceItem-properties p {
  font-size: 16px;
}
.serviceItem-properties p span {
  color: var(--lightgrey);
}
.menuSwiper {
  overflow: hidden;
  position: relative;
}
.menuSlide {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.menuSlideItem {
  position: relative;
  border-radius: 20px;
  overflow: hidden;

  aspect-ratio: 302/294;
}
.menuSlideItem img {
  position: absolute;
  top: 0;
  left: 50%;
  width:100%;
  transform: translateX(-50%);
}
.menuSlideItem-name {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 16px;
  background-color: var(--graycards);
}
.menuSlideItem-name h3 {
  font-weight: 700px;
  font-size: 20px;
}
.stepsTable {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}
.stepsItem {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px;
  border-radius: 20px;
  background-color: var(--graycards);
  flex: 1;
  min-width: 260px;
}
.stepsItem .number {
  font-size: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  width: 56px;
  border-radius: 50%;
  background-color: var(--orange);
  margin-bottom: 16px;
}
.photoGalleryWrapper {
  display: flex;
  flex-direction: column;
  padding: 80px 0;
}
.photoSwiper {
  width: 100%;
}
/* .photoSwiper .swiper-slide {
  width: fit-content;
} */
.photoSwiper .swiper-slide {
  width: 600px; /* или под твой размер */
}
.photoSlide {
  aspect-ratio: 1/1;
  width: 600px;
  overflow: hidden;
  border-radius: 20px;
}
.photoSlide img {
  width: 100%;
}
.videoGalleryWrapper {
  padding: 0 0 80px 0;
}
.videoSwiper .swiper-slide {
  width: fit-content;
}
.videoSwiper .swiper-wrapper {
  width: 100%;
}
.videoSlide {
  height: 561px; /* или любая нужная высота */
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  width: fit-content;
}

.videoSlide .video-js {
  height: 100%; /* растягивается по высоте */
  width: auto; /* ширина считается по пропорциям */
  max-width: none; /* не ограничивается родителем */
  aspect-ratio: unset; /* снимаем ограничение от Video.js */
  background: black;
  border-radius: 12px;
}
.videoSlide video {
  position: static !important;
}
/* NULLLLLLLLLLĻLLLLSLSLSDOEKFOWKEOKO */
.introBackground {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  border-radius: var(--big-border-radius);
}
.introDrone {
  position: absolute;
  left: 22.77%;
  top: 17.38%;
  width: 34%;

  transition: all 0.2s ease;
}

.introText1 {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  width: 100%;
  max-width: 720px;
  padding: 0 24px 24px 24px;
  background-color: var(--black);
  border-bottom-left-radius: var(--big-border-radius);
}
.arcv1 {
  position: absolute;
  right: 0;
  top: 100%;
  width: 40px;
  height: 40px;
}
.arcg1 {
  position: absolute;
  right: 100%;
  top: 0;
  width: 40px;
  height: 40px;
}
.arcv1 path {
  fill: var(--black);
}
.arcg1 path {
  fill: var(--black);
}
.introParagraph {
  position: absolute;
  left: 32px;
  top: 32px;
  width: 100%;
  max-width: 265px;
  color: var(--lightgrey);
}
.section1IntroCards {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 20px;
  display: flex;
  align-items: flex-end;
  width: 100%;
  justify-content: space-between;
}

.whiteItemCard {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px;
  border-radius: var(--small-border-radius);
  background-color: #fff;
  color: var(--graycards);
}
.introItemCard .itemCard-image {
  aspect-ratio: 181 / 99;
  width: 181px;
  position: relative;
  background-color: #58829c;
  border-radius: 8px;
}
.introItemCard .itemCard-image img {
  position: absolute;
  left: 4px;
  top: 50%;
  width: calc(100% - 8px);
  transform: translateY(-50%);
}
.whiteItemCardInfo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}
.introItemCard img {
  width: 40.49%;
}
.introPilotTeaching {
  width: 100%;
  max-width: 398px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
  color: var(--lightgrey);
  border-radius: var(--small-border-radius);
  background-color: var(--graycards);
}
.introPilotTeaching h3 {
  color: #fff;
}
.introPilotTeaching p {
  margin-bottom: 12px;
}
.aboutWrapper {
  padding-bottom: var(--block-padding);
}
.aboutTextContainer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}
.aboutTextContainer h2 {
  color: #fff;
  text-align: center;
}
.aboutTextContainer span {
  color: var(--green);
}
.aboutTextContainer img {
  vertical-align: middle;
  margin: 0 8px;
  max-height: 1em;
}
.aboutTextContainer svg {
  vertical-align: middle;
  margin: 0 8px;
  max-height: 1em;
  max-width: 1em;
  aspect-ratio: 1/1;
}
.textSeparator {
  padding-bottom: var(--chapter-padding);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
.textSeparator p {
  color: var(--lightgrey);
  max-width: 540px;
  padding-left: 110px;
}
.textSeparator img {
  max-height: 1em;
  vertical-align: middle;
}
.blogRecommendationWrapper {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
  padding-bottom: var(--block-padding);
}
.contentProductItem {
  width: 100%;

  border-radius: var(--big-border-radius);
  padding: 20px 20px 98px 20px;
  background-color: var(--graycards);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.blogRecommendationWrapper .contentProductItem {
  max-width: unset;
  flex: 1;
  height: 100%;
}
.contentProductItem .contentProductItem-image {
  width: 100%;
  aspect-ratio: 386/210;
  position: relative;
  margin-bottom: 12px;
}
.contentProductItem-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.contentProductItem p {
  color: var(--lightgrey);
}
.productItemButton-wrapper {
  position: absolute;
  bottom: 0;
  left: 0;
  border-top-right-radius: var(--big-border-radius);
  background-color: var(--black);
  padding: 24px 24px 0 0;
}
.productItemButton-wrapperFigure1 {
  position: absolute;
  left: 0;
  bottom: 100%;
  width: 40px;
  height: 40px;
  z-index: 3;
}
.productItemButton-wrapperFigure2 {
  position: absolute;
  left: 100%;
  bottom: 0;
  width: 40px;
  height: 40px;
  z-index: 3;
}
.productItemButton-wrapperFigure1 path {
  fill: var(--black);
}
.productItemButton-wrapperFigure2 path {
  fill: var(--black);
}
.aboutTextWrapper {
  display: flex;
  align-items: center;
  gap: 56px;
  height: fit-content;
  padding-bottom: var(--block-padding);
}
.aboutTextImage {
  position: relative;
  border-radius: var(--big-border-radius);
  overflow: hidden;
  width: 100%;
  height: 100%;
  max-height: 294px;
  max-width: 650px;
  min-width: 500px;
  aspect-ratio: 325/147;
}
.contactWrapper {
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 200px 0 180px 0;
  gap: 30px;
  position: relative;
  justify-content: space-between;
  overflow: hidden;

  text-align: center;
}
.contactWrapper h1 {
  font-size: 48px;
}
.contactWrapper p {
  color: #fff;
  margin-bottom: 12px;
}
.contactWrapper button {
  width: fit-content;
}
.contactBackground {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 100%;
  z-index: -2;
  filter: brightness(40%);
}
.backgroundMask {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 100%;
  height: 800px;
  z-index: -1;
}
.contactSection {
  padding: 0;
}
.contactBlockText {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
  max-width: 650px;
}
.contactBlockText p {
  color: var(--lightgrey);
  margin-bottom: 16px;
}
.contactBlockText .decorBig a {
  text-decoration: none;
  color: #fff;
}
.contactBlockForm {
  width: 100%;
  max-width: 426px;
}
.policyWrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.policyWrapper div h1,
.policyWrapper div h2 {
  margin-bottom: 20px;
}
@media (max-width: 1200px) {
  .introApplication-text h1 {
    font-size: 32px;
  }

  .introButtonGroup {
    gap: 8px;
  }
}
@media (max-width: 1100px) {
  .introApplication-image {
    width: 45%;
  }
  .servicesItem {
    background-color: var(--graycards);
    padding: 12px;
    border-radius: 20px;
    gap: 16px;
  }
  .servicesItemText {
    padding: none;
    flex: 2;
    padding: 0;
  }
  .servicesItem img {
    border-radius: 8px;
    flex: 1;
  }
  .servicesDashboard {
    gap: 16px;
  }
}
@media (max-width: 970px) {
  .introApplication-image {
    width: 30%;
  }
}

@media (max-width: 970px) {
  .introApplication-image {
    width: 30%;
  }
  .introApplication {
    flex-direction: column;
  }
  .introApplication-text {
    order: 2;
  }
  .introApplication-image {
    width: 100%;
    max-width: none;
    order: 1;
  }
  .introFacts {
    flex-direction: column;
  }
  .contactWrapper {
    padding: 200px 16px;
    gap: 20px;
    
  }
  .contactBackground {
    position: absolute;
    height: 100%;
    left: 50%;
    width: auto;
    top: 0;
    transform: translateX(-50%);
  }
}
@media (max-width: 700px) {
  .servicesItem {
    flex-direction: column;
  }
  .serviceItemImage {
    aspect-ratio: 360/270;
  }
  .serviceItemImage img {
    width: 100%;
  }
  .servicesWrapper .orange-default-button {
    margin: 24px auto 0 auto;
  }
  .introButtonGroup {
    flex-direction: column;
  }
  .introWrapper {
    gap: 48px;
  }
  .introFact-item h2 {
    font-size: 24px;
  }
  .introFact-item {
    width: 100%;
    gap: 8px;
  }
  .servicesWrapper {
    padding: 48px 0;
  }
  .serviceItemImage {
    border-radius: 8px;
  }
  .servicesItemText button {
    margin-top: 8px;
  }
  .photoSlide {
    height: 300px;
    aspect-ratio: 1/1;
    position: relative;
    width: fit-content;
  }
  .photoSlide img {
    width: 110%;
    position: absolute;
    
  }
  .menuSlideItem img {
    width: 125%;
    
  }
  .photoSwiper .swiper-slide {
    width: auto;
  }
  .videoSlide {
    height: 300px;
  }
}
@media (max-width: 480px) {
  .menuSlideItem {
    width: 300px;
    height: 354px;
  }
  .menuSwiper .swiper-slide {
    width: fit-content;
  }
  .servicesWrapper .orange-default-button {
    width: 100%;
  }
}
@keyframes livitation {
  0% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(-9px);
  }
  50% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(-9px);
  }
  100% {
    transform: translateY(0);
  }
}
