@charset "UTF-8";
@media (max-width: 991px) {
    :root {
         --bs-body-font-size: 16px;
    }
    h1, .h1 {
        font-size: 36px;
    }
    h2, .h2 {
        font-size: 34px;
    }
    h3, .h4 {
        font-size: 20px;
    }

    .fsz-22 {
        font-size: 18px;
    }
    .br-50 {
        border-radius: 30px;
    }
    .navbar .container::after {
        top: 140px;
        right: unset;
        left: -200px;
    }

    .navbar .container::before {
        top: 0;
        left: unset;
        right: -480px;
    }
    .main-four-infos::before {
        top: -180px;
        left: -200px;
    }
    .main-four-infos::after {
        top: 95px;
        left: -760px;
    }
    .spot-7::before {
        top: -40px;
        left: -155px;
        opacity: 0.8;
    }
    .spot-9::after {
        bottom: -410px;
        left: -50px;
    }
    .spot-1-1::before {
        top: -60px;
        left: -180px;
    }
    .speedbar {
        margin-left: 0;
    }
    .navbar-brand img {
        height: 80px;
        width: auto;
    }
    .main-slider_img, .main-slider_txtbox, .MainSwiper {
        border-radius: 30px;
    }
    .main-slider_title {
        font-size: 24px;
    }
    .main-slider_txtbox {
        padding: 20px;
        padding-bottom: 60px;
    }
    .btn-link-more {
        font-size: 12px;
        height: 50px;
        padding-left: 20px;
        padding-right: 60px;
    }
    .btn-link-more::after {
        width: 50px;
        height: 50px;
        background-size: 14px;
        left: calc(100% - 48px);
    }
    .swiper-button-next, .swiper-button-prev {
        width: 50px;
        height: 50px;
    }
    .swiper-button-prev svg, .swiper-button-next svg {
        width: 14px;
        height: 14px;
        object-fit: contain;
    }
    .MainSwiper .swiper-button-container {
        bottom: 60px;
        right: 20px;
    }
    .swiper-pagination.swiper-pagination_main {
        display: flex;
        bottom: 50px;
        top: unset;
        left: 50%;
        transform: translatex(-50%);
    }
    .swiper-pagination.swiper-pagination_main > * {
        flex-shrink: 0;
    }
    .main-four-infos_center-logo {
        display: none;
    }
    .img-1 {
        width: 100%;
        height: auto;
        padding-left: 30px;
        padding-top: 30px;
    }
    .mission-heart {
        top: 20px;
        right: 20px;
    }
    .num-item {
        font-size: 80px;
    }
    .card-type-1_title {
        font-size: 18px;
        padding: 0 10px;
    }
    .card-type-1_descr {
        font-size: 12px;
        padding-right: 0;
        padding: 0 10px;
        padding-bottom: 20px;
    }
    .card-type-1 {
        border-radius: 20px;
        padding: 0;
        position: relative;
    }
    .card-type-1_link img {
        display: none;
    }
    .card-type-1_link {
        position: absolute;
        width: 100%;
        height: 100%;
        bottom: 0;
        right: unset;
    }
    .spot-2-2::after {
        top: unset;
        bottom: 70px;
        right: 0;
    }
    .PhotosSwiper .swiper-slide {
        padding: 5px;
    }
    .PhotosSwiper .swiper-slide {
        width: 190px !important;
    }
    .PhotosSwiper .swiper-slide img {
        border-radius: 20px;
    }
    .cat-link svg {
        width: 40px;
        height: 40px;
        flex-shrink: 0;
    }
    .mob-horizontal-scroll, .row.news-cat-list {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 20px;
        margin-left: -12px;
        margin-right: -12px;
    }
    .partners-list.mob-horizontal-scroll {
        gap: 20px;
        padding: 0 12px;
    }
    .partners-list.mob-horizontal-scroll > * {
        width: 70vw;
        flex-shrink: 0;
    }


    .row.news-cat-list > * {
        width:75vw;
        flex-shrink: 0;
    }
    .news-cat-list > div:nth-child(even) {
        margin-top: 0;
    }
    .news-card {
        aspect-ratio: 12 / 11;
    }
    .news-card::before {
        height: 100%;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 21.3%, #000 100%);
    }
    .news-card_body {
        padding: 12px;
    }
    .news-card_title {
        font-size: 14px;
    }
    .news-card_date {
        font-size: 12px;
    }
    .footer-nav {
        text-align: center;
    }
    .footer-logo {
        width: 100px;
        height: 100px;
        padding: 16px;
    }
    footer .slogan {
        font-size: 36px;
    }
    footer .container::before {
        top: -30px;
        left: 40px;
    }
    footer .container::after {
        top: unset;
        bottom: 0px;
        right: -50px;
    }
    /*hamburger */
    .hamburger-box {
        width: 60px;
        height: 60px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 100px;
        background: linear-gradient(90deg, #5391CD 0%, #323586 100%);
    }
	.hamburger-icon {
		display: flex;
        align-items: center;
        justify-content: center;
		position: relative;
		width: 24px;
        height: 14px;
		z-index: 1000;
		cursor: pointer;
		transition: all 0.2s ease-in-out;
	}

	.icon-1, .icon-2, .icon-3, .icon-4 {
	  position: absolute;
	  right: 0;
	  top: 0;
	  width: 24px;
	  height: 2px;
	  background-color: #fff;
	  transition: all 400ms cubic-bezier(0.84, 0.06, 0.52, 1.8);
	}

	.icon-1 {
		transform: translateY(0px);
		animation-delay: 100ms;
	}
	.icon-2 {

		transform: translateY(6px);
	}

	.icon-3 {
		transform: translateY(12px);
		animation-delay: 250ms;
	}

	

	.icon-1.a {
	  transform: rotate(45deg);
	  top:6px;
	}

	.icon-3.b {
	  transform: rotate(-45deg);
	  top:6px;
	}

	.icon-2.c {
	  opacity: 0;
	  width:0;
	}


	.clear {
	  clear: both;
	}

	body.menuopen {
		overflow: hidden;
	}
    body.menuopen .navbar .container::before {
        opacity: 0;
    }

	#mobnav {
		position: absolute;
		height: 0;
		opacity: 0;
		visibility: hidden;
		background: #fff;
        width: 100vw;
        left: 0;
        top: 80px;
		overflow-y: scroll;
		padding-bottom: 50px;
        padding-left: 15px;
        padding-right: 15px;
        z-index: 999;
		transition: all 0.2s ease-in-out;
	}
	#mobnav.show {
		height: 100vh;
		opacity: 1;
		visibility: visible;
	}
    .hambmenu {
        color: #262262;
    }
    .hambmenu {
        .navbar-nav {
            padding-left: 0;
            display: grid;
            gap: 30px;
        }
        .navbar-nav a {
            height: auto;
            color: #262262;
            font-size: 16px;
            padding: 0;
        }
        label {
            font-family: var(--font-unbounded);
            font-size: 14px;
            font-weight: 500;
            line-height: normal;
            display: block;
        }
    }
    /*hamburger*/
    .page-about {
        .main-four-infos::before {
            display: none;
        }
    }
    .swiper-container.plain-swiper {
        margin-left: -12px;
        margin-right: -12px;
    }
    .swiper-container.plain-swiper .swiper-wrapper {
        padding: 0 12px;
    }
    .swiper-container.plain-swiper .swiper-slide {
        width: 70vw !important;
        
    }
    .team-item {
        .h2 {
            font-size: 26px;
        }
        p {
            font-size: 14px;
        }
    }
    .team-img, .doc-img {
        border-radius: 20px !important;
    }
    .docs-item {
        .h2 {
            font-size: 26px;
        }
    }
    .partner-item .h2 {
        font-size: 24px;
    }
    .partner-item_descr {
        font-size: 14px;
    }
    .partner-item_img {
        height: 150px;
        padding: 15px;
        border-radius: 20px;
    }
    .full-img img {
        height: 320px;
        border-radius: 30px;
    }
    .article-body p {
        font-size: 16px;
        margin-bottom: 20px;
    }
    .article-body img {
        border-radius: 20px;
        margin: 20px 0;
        margin-bottom: 40px;
    }
    .project-img-container {
        border-radius: 20px;
        height: auto;
        padding-bottom: 0px;
    }
	.download-btn {
		font-size: 12px;
	}
    .project-shorts {
        margin-top: -110px;
    }
    .project-shorts_item .a-btn {
        font-size: 10px;
        height: 40px;
    }
    .project-shorts_item__title {
        font-size: 16px;
    }
    .atricle-gallery {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .atricle-gallery img { 
        border-radius: 10px;
    }
    .map {
        border-radius: 20px;
    }
    .modal-body {
        padding: 20px;
        padding-top: 30px;
    }
    .btn-close {
        width: 20px;
        height: 20px;
        top: 15px;
        right: 15px;
    }
    .form-title {
        font-size: 20px;
    }
    .a-form {
        input, textarea {
            height: 40px;
            border-radius: 30px;
        }
        textarea {
            height: 140px;
        }
    }

	article h1, article .h1 {
        font-size: 24px;
    }
	.full-img.news img {
		height: auto;
		aspect-ratio: 16 / 10;
	}



}
/* ] < 768  */
/* ] Mobile */

/* tablet MD [ */
@media (min-width: 768px) and (max-width: 992px) {


}

/* MD]  < 992 */


/* Laptop  [ */
@media (min-width: 992px) and (max-width: 1300px) {


}

@media (min-width: 992px) and (max-width: 1680px) {
    :root {
         --bs-body-font-size: 16px;
    }
    .navbar-nav {
        padding-left: 10px;
    }
    .navbar-nav a {
        font-size: 12px;
        height: 60px;
        padding: 0 20px;
        text-align: center;
    }
    .navbar-nav a.active::before {
        width: calc(100% + 20px);
        left: -10px;
    }
    .a-btn {
        height: 60px;
        font-size: 14px;
    }
    .main-slider_title {
        font-size: 26px;
    }
    .h1 {
        font-size: 48px;
    }
    .num-item {
        font-size: 80px;
    }
    footer .slogan {
        font-size: 30px;
    }
}
/*]  < 1680 */
