* {
    padding: 0;
    margin: 0;
    outline: none;
    text-decoration: none;
    color: inherit;
    border: none;
    box-sizing: border-box;
}

.fb-form {
  display: none;
}

html {
    scroll-behavior: smooth;
}

.main {
    width: 100%;
    min-height: 110vh;
    background: url('../images/content/main.png') center no-repeat;
    background-size: cover;
    position: relative;
}

.main:after {
    content: "";
    width: 100%;
    height: 200px;
    display: block;
    position: absolute;
    bottom: -1px;
    background-color: #fff;
    animation: animate 4s ease-in-out infinite;
}

@keyframes animate {
	0%,
	100% {
		clip-path: polygon(
			0% 45%,
			16% 44%,
			33% 50%,
			54% 60%,
			70% 61%,
			84% 59%,
			100% 52%,
			100% 100%,
			0% 100%
		);
	}

	50% {
		clip-path: polygon(
			0% 60%,
			15% 65%,
			34% 66%,
			51% 62%,
			67% 50%,
			84% 45%,
			100% 46%,
			100% 100%,
			0% 100%
		);
	}
}


.wrapper {
    padding: 0 5vw;
}

.header {
    display: flex;
    flex-direction: column;
    padding: 100px 0;
}

.header__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.header .header__box:first-child {
    justify-content: flex-end;
    gap: 10px;
}

.header__contacts {
    display: flex;
    flex-direction: column;
    color: #fff;
    font-size: 25px;
    font-family: 'Concuro Italian', sans-serif;
}

.header .header__logo-box {
    display: flex;
    align-items: center;
    position: relative;
}

.header__logo-box .header__logo-text {
    width: 200px;
    position: absolute;
    left: 0;
    font-family: sans-serif;
    font-weight: 500;
}

.header__logo {
    margin-left: 120px;
}

.header__nav .header-nav__list {
    list-style-type: none;
    display: flex;
    align-items: center;
    font-family: sans-serif;
    text-transform: uppercase;
    color: #fff;
    gap: 60px;
    font-size: 17px;
}

.header-nav-list__el-active  {
    border-radius: 30px;
    border: 3px solid #fff;
    padding: 0 38px;
    line-height: 38px;
}

.header-nav__burger-btn {
    background: none;
    border-radius: 50%;
    display: none;
}

.header-nav__burger-btn svg {
    width: 40px;
    height: 40px;
    fill: #fff;
}

.header__icon-link-box {
    display: flex;
    align-items: center;
    gap: 20px;
}

.main__content {
    display: flex;
    flex-direction: column;
    color: #fff;
    font-family: sans-serif;
    gap: 20px;
    margin-top: 10vh;
}

.main-content__subtitle {
    color: #ffffff;
    font-family: 'Raleway', sans-serif;
    font-size: 72px;
    line-height: 70px;
    text-transform: uppercase;
    font-weight: 100;
}

.main-content__title {
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    align-items: flex-start;
    color: #ffffff;
    font-size: 119px;
    line-height: 110px;
    text-transform: uppercase;
}

.main-content__mini-gallery {
    display: flex;
    gap: 20px;
    align-items: center;
}

.main-content__text {
    width: 50%;
}

.green-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    background: linear-gradient(0deg, rgba(10, 191, 29, 1) 0%, rgba(63, 211, 6, 1) 50%, rgba(10, 191, 29, 1) 100%);
    border-radius: 40px;
    padding: 15px 30px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.green-btn img {
    width: 50px;
}

.green-btn__text-box {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.main__button-box {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 100px;
    z-index: 10000;
}

.main__button-box .green-btn {
    min-width: 20%;
    margin-bottom: 200px;
}


.green-btn__text-box {
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.green-btn__subtext {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    font-weight: 100;
}

.green-btn__text {
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    font-size: 32px;
}

.green-btn img, div {
    z-index: 1000;
}

.green-btn:before,
.green-btn:after {
	content: '';
	height: calc(400px * 2);
	left: 50%;
	position: absolute;
	top: -85%;
	transform: translate(-50%, -85%);
	transition: top .5s;
	width: calc(400px * 2);
}

.green-btn:before {
	animation: liquid 8s linear infinite;
	background-color: #6BDF79ff;
	border-radius: 45%;
}

.green-btn:after {
	animation: liquid 10s linear infinite;
	background-color: #41DF54aa;
	border-radius: 40%;
}

.green-btn:hover::before,
.green-btn:hover::after { top: -120%; }


@keyframes liquid {
	0% { transform: translate(-50%, -85%) rotate(0deg); }
	100% { transform: translate(-50%, -85%) rotate(360deg); }
}

.features .wrapper {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.features .feature {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 20%;
    gap: 20px;
    font-size: 1vw;
}

.feature .feature__image-box {
    background-color: #40d306;
    border-radius: 50%;
    width: 200px;
    height: 200px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.feature__image-box img {
    object-fit: cover;
}

.feature__text {
    font-family: sans-serif;
    color: #005e9c;
    font-weight: 600;
    text-align: center;
}


.features .feature:nth-child(2n) {
    margin-top: 25vh;
}

.about {
    margin-top: 30vh;
}

.about .wrapper {
    display: flex;
}

.about__text-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #7c7c7c;
    font-size: 21px;
    font-family: sans-serif;
    gap: 40px;
    max-width: 60%;
    position: relative;
}


.about__text {
    line-height: 30px;
}

.about__image {
    width: 40%;
}

.about__image img {
    width: 80%;
}

.about__text-box:after {
    content: "О НАС";
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    color: #efefef;
    text-transform: uppercase;
    font-size: 173px;
    transform:rotate(90deg);
    position: absolute;
    top: 20vh;
    right: -15%;
    z-index: -1;
}

.services {
    margin-top: 30vh;
}

.services__title {
    text-align: center;
    color: #f0f0f0;
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    font-size: 167px;
    margin: 0px;
    padding: 0px;
    position: relative;
    text-transform: uppercase;
    position: relative;
}

.services__title:after {
    content: url("../images/content/decor.png");
    position: absolute;
    top: -10vh;
    right: 15%;
}

.services__box {
    display: flex;
    margin-top: 30vh;
    gap: 40px;
}

.service {
    background: #f0f0f0;
    border-radius: 45px;
    box-sizing: border-box;
    padding: 30px 25px;
    width: 33.3%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: auto;
    position: relative;
    font-family: sans-serif;
}

.service__image-box {
    width: 80%;
    border-radius: 50%;
    margin-top: -150px;
}

.service__image-box img {
    border-radius: inherit;
    object-fit: cover;
}

.service__title {
    color: #535353;
    font-size: 28px;
    margin: 20px 0;
}

.service__text {
    color: #b4b4b4;
    font-size: 18px;
    margin-bottom: 100px;
}

.bad-size {
    margin-top: -218px;
}

.license {
    margin-top: 30vh;
}

.license__title {
    text-align: left;
    color: #f0f0f0;
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    font-size: 167px;
    position: relative;
    text-transform: uppercase;
    position: relative;
}

.license__box {
    background: url("../images/content/layer1.png") center no-repeat;
    background-size: cover;
    margin-top: 10vh;
    min-width: 100%;
    color: #fff;
    font-family: sans-serif;
    position: relative;
    border-radius: 140px;
    padding: 100px 160px;
}

.license__info {
    width: 40%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 24px;
}

.license__box:after {
    content: url("../images/content/man.svg");
    position: absolute;
    right: 20%;
    bottom: -1%;
}

.gallery {
    background: url("../images/content/gallery_bg.png") center no-repeat;
    min-height: 100vh;
    width: 100%;
    margin-top: 30vh;
    position: relative;
}

.gallery:after {
    content: url("../images/content/crane.png");
    position: absolute;
    right: 0;
    top: 0;
}

.gallery:before {
    content: 'галерея';
    color: #fff;
    font-family: "a_BighausTitul ExtraBold";
    font-size: 167px;
    writing-mode: sideways-lr;
    position: absolute;
    right: 25%;
    top: 10%;
}

.gallery__slider-box {
    height: 100vh;
    padding-top: 200px;
}

.gallery__controls-box {
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: center;
    margin-left: 25%;
    margin-top: 5vh;
}

.gallery__control-btn {
    background: none;
    cursor: pointer;
}

.gallery-controls__info {
    display: flex;
    flex-direction: column;
    font-family: sans-serif;
    color:#40d306;
}

.gallery__quantity {
    font-weight: 600;
    font-size: 34px;
}

.gallery-controls__text {
    font-weight: 100;
}

.gallery__slides {
    display: flex;
    width: 60%;
    flex-wrap: wrap;
    gap: 20px;
}

.gallery__slide {
    width: 500px;
    height: 300px;
    border-radius: 140px;
    display: none;
}

.gallery-slide__active {
    display: block;
}

.gallery__slide img {
    width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
}

.clients {
    margin-top: 30vh;
}

.clients__title {
    text-align: center;
    color: #f0f0f0;
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    font-size: 167px;
    position: relative;
    text-transform: uppercase;
    position: relative;
}

.clients__box {
    display: flex;
    justify-content: space-between;
    margin-top: 20vh;
}

.footer {
    background: url("../images/content/footer_bg.png") center no-repeat;
    background-size: cover;
    height: 100vh;
    margin-top: 30vh;
    position: relative;
}

.footer .wrapper {
    display: flex;
    height: 100vh;
    flex-direction: column;
    justify-content: flex-end;
    padding: 50px 5vw;
}

.footer__contacts {
    display: flex;
    gap: 10px;
    color: #fff;
    align-items: center;
}

.footer-contacts__links {
    display: flex;
    flex-direction: column;
    gap: 10px;
}


.footer__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer .footer__logo-box {
    display: flex;
    align-items: center;
    position: relative;
}

.footer__logo-box .footer__logo-text {
    width: 200px;
    position: absolute;
    left: 0;
    font-family: sans-serif;
    font-weight: 500;
}

.footer__logo {
    margin-left: 120px;
}

.footer__info {
    color: #fff;
    font-size: 14px;
    text-align: right;
    font-family: sans-serif;
}

.modal {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: none;
    display: none;
    align-items: center;
    justify-content: center;
}

.modal__wrapper {
    background-color: #fff;
    padding: 10px 30px;
    border-radius: 20px;
    width: 30%;
}

.modal-wrapper__box {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: sans-serif;
    gap: 10px;
    padding: 30px 0;
}

.modal__title {
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    color: #f0f0f0;
    font-size: 32px;
    margin: 15px 0;
}

.modal__text {
    color:#535353;
    font-size: 14px;
    text-align: left;
    margin: 10px 0;
}

.modal__input {
    padding: 8px 10px;
    border: 1px solid #eee;
    margin-bottom: 10px;
}

.modal__form {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.modal-form__text {
    font-size: 12px;
    color: #535353;
}

.modal__submit-btn {
    background: #40d306;
    padding: 15px 30px;
    border-radius: 4px;
    color: #fff;
    font-family: sans-serif;
    cursor: pointer;
    margin-top: 20px;
}

.modal__exit-btn {
    background: #30a4d6;
    padding: 15px 30px;
    border-radius: 4px;
    color: #fff;
    font-family: sans-serif;
    cursor: pointer;
    width: 100%;
    margin-top: 20px;
}

.burger-menu {
    display: none;
    width: 100%;
    z-index: 1;
}

.burger-menu__wrapper {
    background-color: #fff;
    padding: 10px 15px;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    font-family: sans-serif;
    color:#7c7c7c;
    position: absolute;
    z-index: 10000;
}

.burger-menu__link {
    padding: 10px 15px;
}

.page__up-btn {
    width: 50px;
    height: 50px;
    background: url("../images/content/up-arrow.png") center no-repeat;
    background-size: cover;
    padding: 20px;
    cursor: pointer;
    position: fixed;
    right: 30px;
    bottom: 100px;
    z-index: 10000;
    display: none;
}

.footer > div {
  max-width: 100% !important;
  align-items: normal !important;
  font-family: sans-serif;
}

.footer:before {
  content: url("/../images/content/line-footer.png");
  position: absolute;
  left: 10vw;
}

.footer__seoprime-link {
  font-size: 8px;
}

.footer__info {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.adaptive-box {
  display: flex;
  justify-content: flex-end;
}

.notfound__wrapper {
  display: flex;
  min-height: 50vh;
  width: 100%;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #f0f0f0;
  font-family: "a_BighausTitul ExtraBold", sans-serif;
  font-size: 64px;
  text-transform: uppercase;
}

.base-box {
  display: block;
}

.success-box {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.success-box img {
  width: 100px;
  height: 100px;
  padding: 10px;
  background: #eee;
  border-radius: 50%;
}

.success-box .modal__text {
  color: #b4b4b4;
  margin: 20px 0;
}

.company__service {
  display: flex;
  flex-direction: column;
}

.company-service__title {
  color: #f0f0f0;
  font-family: "a_BighausTitul ExtraBold", sans-serif;
  font-size: 64px;
  text-transform: uppercase;
}

.grecaptcha-badge {
  opacity: 0;
}

.about-company {
  max-width: 100%;
  text-align: justify;
  align-items: flex-start;
  margin-top: 20vh;
}

.about__title {
    color: #f0f0f0;
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    font-size: 167px;
    position: relative;
    text-transform: uppercase;
    position: relative;
    text-align: center;
    margin-bottom: 20px;
    width: 100%;
}

.about__list {
  margin-left: 30px;
}

.about__text-box.about-company:after{
  display: none;
}

.contacts {
  margin-top: 20vh;
}

.contacts .wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-family: sans-serif;
  color: #535353;
}

.contacts__title {
    text-align: center;
    color: #f0f0f0;
    font-family: "a_BighausTitul ExtraBold", sans-serif;
    font-size: 167px;
    text-transform: uppercase;
    position: relative;
    margin-bottom: 60px;
}

.contacts__list {
  margin-left: 30px;
}

.company__service .about__list {
  font-family: sans-serif;
  color: #535353;
  margin-top: 80px;
  margin-left: 30px;
}

@media screen and (min-width: 2300px){
  .footer {
    background: url("../images/content/footer_bg.png") no-repeat;
    background-size: cover;
  }
}

@media screen and (min-width: 1681px) and (max-width: 1918px) {
     .gallery__slide {
        width: 400px;
        height: 200px;
        border-radius: 140px;
    }
}


@media screen and (max-width: 1680px) {
    .gallery__slide {
        width: 400px;
        height: 200px;
        border-radius: 140px;
    }
}

@media screen and (min-width: 1289px) and (max-width: 1700px){
  .services__title:after {
    display: none !important;
  }
}

@media screen and (min-width: 1282px) and (max-width: 1518px) {
     .gallery__slide {
        width: 300px;
        height: 150px;
        border-radius: 140px;
    }
}

@media screen and (max-width: 1281px) {
    .services__title:after {
        display: none;
    }

     .gallery__slide {
        width: 250px;
        height: 150px;
        border-radius: 140px;
    }

    .gallery__controls-box {
        margin-left: 15%;
    }

    .gallery:before {
        right: 30%;
    }
    
    .footer__line-decor {
      display: none;
    }
    
    .adaptive-box {
      display: flex;
      justify-content: flex-end;
    }
}

@media screen and (max-width: 1100px) {
    html, body {
        overflow-x: hidden !important;
    }

    .header-nav__list {
        display: none !important;
    }

    .header-nav__burger-btn {
        display: block;
    }

    .header__logo-link {
        display: none;
    }

    .header__box {
        margin-bottom: 50px;
    }

    .main-content__subtitle {
        font-size: 64px;
    }

    .main-content__title {
        font-size: 64px;
        margin-top: -40px;
    }

    .main-content__mini-gallery {
        display: none;
    }
    
    .features {
      margin-top: -200px;
    }

    .features .feature:nth-child(2n) {
        margin-top: 0;
    }

    .features .wrapper {
        flex-direction: row;
        flex-wrap: wrap;
        margin-top: 200px;
        justify-content: center;
    }

    .feature {
        width: 49% !important;
        margin-bottom: 20px;
    }

    .feature__image-box {
        width: 150px !important;
        height: 150px !important;
        padding: 5px;
    }

    .feature__image-box img {
        width: 100px;
        height: 100px;
        object-fit: contain;
    }

    .feature__text {
        font-size: 14px;
    }

    .about__text-box:after {
        display: none;
    }

    .about .wrapper {
        flex-direction: column;
        padding: 0;
    }

    .about__image {
        width: 100% !important;
        display: flex;
        justify-content: center;
        margin-bottom: 30px;
    }

    .about__text-box {
        font-size: 14px !important;
        width: 100% !important;
        max-width: 100%;
        text-align: justify;
        padding: 0 20px;
    }

    .about {
        margin-top: 80px !important;
    }

    .services {
        margin-top: 160px !important;
    }

    .services__title {
        font-size: 64px;
    }

    .services__box {
        flex-direction: column;
        margin-top: 50px;
    }

    .service {
        width: 100%;
    }

    .service__image-box {
        width: 80%;
        border-radius: 50%;
        margin-top: 0;
    }
    
    .service__image-box img {
      width: 100%;
    }

    .service__title {
        font-size: 24px;
    }

    .service__text {
        font-size: 16px;
    }

    .green-btn__subtext {
        font-size: 16px;
    }

    .green-btn__text {
        font-size: 24px;
    }

    .license {
        margin-top: 160px;
    }

    .license__title {
        font-size: 64px;
        text-align: center;
    }

    .license__box {
        width: 100%;
        border-radius: 0;
        padding: 0;
        padding: 20px;
    }

    .license .wrapper {
        padding: 0;
    }

    .license__box:after {
        display: none !important;
    }
    
    .license__info {
      width: 100%;
    }

    .license-info__title {
        font-size: 18px;
    }

    .license__text {
        font-size: 14px;
    }

    .license__info {
        padding: 20px;
    }
    
    .gallery {
      margin-top: 0;
    }

    .gallery:before, .gallery:after {
        display: none !important;
    }

    .gallery__slides {
        width: 100%;
        display: flex;
        align-items: center;
    }

    .gallery__slide {
        width: 150px;
        height: 150px;
        border-radius: 30px;
    }

    .gallery__control-btn img {
        width: 80%;
        height: 80%;
        object-fit: contain;
    }

    .clients {
        margin-top: 160px;
    }

    .clients__title {
        font-size: 64px;
        text-align: center;
    }

    .clients__box {
        flex-wrap: wrap;
        gap: 20px;
        margin-top: 100px;
    }

    .client-box__image-box {
        width: calc(50% - 20px);
    }

    .client-box__image-box img {
        width: 100%;
    }

    .footer__box {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        gap: 20px;
    }

    .footer__logo-box {
        display: none !important;
    }

    .footer__info {
        text-align: center;
    }

    .modal {
        margin: 0 auto;
    }
    
    .modal__wrapper {
      width: 100%;
    }

    .modal__title {
        font-size: 24px;
    }

    .modal__text {
        font-size: 14px;
        text-align: left;
    }

    .main {
        min-height: 100vh;
    }

    .main-content__text {
        width: 100%;
        text-align: justify;
    }
    
    .notfound__wrapper {
      font-size: 28px;
      line-height: 84px;
    }
    
    .footer__line-decor {
      display: none;
    }
    
    .adaptive-box img {
      width: 80%;
    }
    
    .footer:before {
      display: none;
    }
    
    .company-service__title {
      line-height: 34px;
      font-size: 24px;
      text-align: center;
    }
    
    .contacts__title, .about__title {
      font-size: 60px;
    }
}
