body {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    max-width: 1900px;
    width: 100%;
}

html {
    justify-content: center;
    display: flex;
    background-repeat: repeat;
    background: url(../images/background.webp);
    /* Full height */
    height: 100%;
    width: 100%;
}

.language-dropdown {
    position: relative;
}

.language-dropdown ul{
    margin: 0;
    padding: 0;
    background-color: rgba(243, 243, 243, 0.8);
    border: 1px solid #f8f8f8;
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.2);
    border-radius: 5px;
    display: none;
    position: absolute;
    top: 30px;
    left: 0;
}

.language-dropdown ul li {
    list-style: none;
    display: flex;
    justify-content: space-between;
}

.language-dropdown ul li a{
    width: 100px;
    display: block;
    padding: 5px 10px;
    text-decoration: none;
    color: #000000;
}

.language-dropdown ul li a:before{ 
    content: '';
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    width: 32px;
    height: 32px;
}

.language-dropdown ul li a:hover{
    background-color: rgba(243, 243, 243, 0.8);
}

.selected-lang{
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    line-height: 2;
    width: 60px;
}

.selected-lang:before {
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    background-image: url(../images/flags/rs32.png);
}

/* JQuery class */
.selected-lang.change-en:before {
    background-image: url(../images/flags/en32.png);
}

.selected-lang.change-rs:before {
    background-image: url(../images/flags/rs32.png);
}
.selected-lang.change-me:before {
    background-image: url(../images/flags/me32.png);
}

.selected-lang.change-ru:before {
    background-image: url(../images/flags/ru32.png);
}

.en:before {
    background-image: url(../images/flags/en32.png);
}

.rs:before {
    background-image: url(../images/flags/rs32.png);
}

.me:before {
    background-image: url(../images/flags/me32.png);
}

.ru:before {
    background-image: url(../images/flags/ru32.png);
}


.container {
    margin: 0px 140px;
}

.header {
    background-image: url(../images/background-header.webp);
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    max-height: 800px;
    opacity: 1;
}

.header-line {
    top: 0px;
    padding-top: 5px;
    display: flex;
    align-items: center;

    height: 52px;
    background: rgba(243, 243, 243, 0.8);
    border-radius: 0px 0px 8px 8px;

    justify-content: space-around;
}

.nav-item {
    color: #000000;
    text-decoration: none;
    font-weight: 300;
    font-size: 18px;
    line-height: 24px;
    margin-right: 56px;

    transition: color 0.2s linear;
}

.nav-item:hover {
    color: #07358B;
}

.shadow-text {
    filter: drop-shadow(0px 0px 66px #1D2D4B);
}

.header-center {
    position: relative;
}

.header-title {
    color: #FFFFFF;
    font-family: 'Montserrat Alternates', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 27px;
    line-height: 60px;

    text-align: center;
    margin-right: 80px;
    margin-top: 135px;
    position: absolute;
    left: 80px;
}

.header-description {
    font-family: 'Montserrat';
    margin-top: 20px;
    font-weight: 400;
    font-size: 18px;
    line-height: 28px; 
    margin-left: 180px;
    margin-right: 180px;
    margin-bottom: 72px;
    color: #FFFFFF;
}

.button {
    background-color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    padding: 18px 36px;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    transition: color 0.3s linear;
    border: 1px solid #07358B;
    border-radius: 30px;
    margin-top: 72px;
    color: #5430A5;
    cursor: pointer;
}

.button:hover {
    color: #07358B;
}

.aboutus {
    justify-content: center;
}

.about-name {
    margin-top: 30px;
    font-family: 'Noto Serif', serif;
    display:flex;
    justify-content: center;
    font-style: normal;
    font-weight: 700;
    font-size: 62px;
    line-height: 84px;
    color: #000000;
}

.red-button {
    color: #AA0000;
}

.about-description {
    text-align:left;
    margin-top: 31px;
    margin-left: 400px;
    margin-right: 400px;
}

.red-subtitle {
    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 26px;
    line-height: 32px;
    align-items: center;
    text-align: center;
    color: #AA0000;
}

.about-numbers {
    display: flex;
    margin-left: 400px;
    margin-right: 400px;
    justify-content: center;
}

.number-card {
    width: 202px;
    margin-right: 40px;
}

.our-numbers-text {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;

    color: #000000;
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
    text-align: center;
}

.our-numbers-number {
    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 49px;
    text-align: center;
    display: flex;
    justify-content: center;
    margin: 0;

    /* Red */
    color: #AA0000;
}

.our-services {
    margin: 0px, 240px;
    margin-top: 40px;
}

.service-group {
    display: flex;
    justify-content: center;
}

.service-item {
    width: 720px;
    height: 480px;
    position:relative;
    display: block;
    justify-content: center;
    box-sizing: border-box;
}

.service-item img {
    max-height:100%; 
    max-width:100%;
}

.service-item a {
    background-color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;

    text-decoration: none;
    padding: 18px 36px;
    
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    transition: color 0.3s linear;

    border: 1px solid #07358B;
    border-radius: 30px;
}

.service-item p {
    padding: 0px 34px;
}

.contact-button {
    display: flex;
    justify-content: center;
    margin-top: 32px;
}

.our-products {
    margin: 0px, 240px;
    margin-top: 40px;
    margin-bottom: 50px;
}

.our-products-title {
    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 49px;
    margin-bottom: 35px;

    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;

    color: #AA0000;
}

.product-group, .product-group2 {
    margin-top: 30px;
    display: flex;
    justify-content:center;
}

.product-item {
    width: 336px;
    height: 324px;
    margin: 0 16px;
    background-size: cover;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}

.product-item-name {
    background-color: rgba(243, 243, 243, 0.85);
    border-radius: 8px;

    padding: 10px 20px;

    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 26px;
    line-height: 34px;
   /* identical to box height, or 131% */

    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    margin-top: 248px;

    /* Blue */
    color: #07358B;
}

.product-item:nth-child(1) {
    background-image: url("../images/card-product1.webp");
}

.product-item:nth-child(2) {
    background-image: url("../images/card-product2.webp");
}

.product-item:nth-child(3) {
    background-image: url("../images/card-product3.jpeg");
}

.product-item:nth-child(4) {
    background-image: url("../images/card-product4.jpeg");
}

.product-group2 div.product-item:nth-child(1) {
    background-image: url("../images/card-product5.jpeg");
}

.product-group2 div.product-item:nth-child(2) {
    background-image: url("../images/card-product6.jpeg");
}

.product-group2 div.product-item:nth-child(3) {
    background-image: url("../images/card-product7.webp");
}

.product-group2 div.product-item:nth-child(4) {
    background-image: url("../images/card-product8.jpeg");
}


.how-we-work {
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin-bottom: 50px;
	position:relative;
}

.work-items-container {
    display: flex;
    justify-content: center;
    margin: 0px 280px;
}

.work-item {
    display: flex;
    box-sizing: border-box;
    margin-right: 25;
    flex-direction: column;
    align-items: center;
    width: 290px;
}

.image-container {
    display: flex;
    justify-content: center;
    width: inherit;
    height: 190px;
    margin-bottom: 25px;
    padding: 5px;
}

.work-item img {
    display: flex;
    justify-content: center;
}

.work-item-number {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;

    width: 40px;
    height: 40px;
    border-radius: 20px;
    background-color: #C7DAE6;

    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 26px;
    line-height: 34px;
    /* identical to box height, or 131% */

    z-index: 10;
    align-items: center;
    margin-bottom: 25px;

    /* Blue */

    color: #07358B;

}

.time-line{
    width: 80%;
    margin-left: 10%;
    background-color: #C7DAE6;
    position: absolute;
    z-index: 1;
    height: 3px;  
	top: 329px;
}

.item-title {
    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 10px;

    width: inherit;

    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 29px;
    display: flex;
    align-items: center;
    text-align: center;

    color: #000000;
}

.item-sub-title {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;

    gap: 10px;

    width: inherit;

    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    /* or 150% */

    display: flex;
    align-items: center;
    text-align: center;

    color: #000000;
}

.our-projects {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.projects-desc {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    /* or 144% */

    max-width: 680px;

    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;

    color: #000000;
}

.slide-content {
    overflow: hidden;
    padding: 0 40px 40px;
    margin: 0 auto;
    height: 700px;
}

.project-items-container {
    max-width: 1210px;
    display: flex;
    justify-content: center;
    margin: 10px;
    padding: 30px;
}

.project-item {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc((100% - 72px) / 3) !important;
}

.project-item img {
    transition: 1s;
    border-radius: 10px;

    height: calc(100% - 16px);
    /* width: 304px; */
    display: block;
}

.project-item img:last-child() {
    margin-bottom: 0px;
}

.project-item img:hover {
    filter: grayscale(30%);
    transform: scale(1.1)

}

.swiper-navBtn {
    color: #07358B;
    transition: color 0.3s ease;
}

.swiper-navBtn:hover {
    color: #2152ae;
}

.swiper-navBtn::before,
.swiper-navBtn::after {
    font-size: 40px;
}

.swiper-button-next {
    right: 0;
}

.swiper-button-prev {
    left: 0;
}

.swiper-pagination-bullet {
    background-color: #07358B;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    background-color : #2152ae;
}

.our-contacts {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 10px, 460px;
    position: relative;
}

.our-contacts-border {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    margin-top: 32px;
    padding: 20px;
    margin: 10px, 220px;

    background: #FFFFFF;
    /* Blue */

    border: 1px solid #07358B;
    box-shadow: 2px 2px 20px 1px #07358B;
}

/* .our-contacts-container {
   margin: 0, 170px;
    padding: 10px;
} */

.our-contacts-description {
    display: flex;
    flex-direction: column;
    align-items: center;

}

.our-contacts-desc-text {
    /* Menu text/TM */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    font-size: 18px;
    line-height: 24px;

    width: 50%;
    display: flex;
    align-items: center;
    text-align: center;

    color: #053C5E;
}

.our-phones {
    display: flex;
    justify-content: center;
    flex-direction: row;
    padding: 5px;
    margin-top: 30px;
}

.phone, .our-email {
    font-family: 'Montserrat Alternates';
    font-style: normal;
    font-weight: 700;
    font-size: 26px;
    line-height: 34px;
    /* identical to box height, or 131% */

    display: flex;
    align-items: center;
    text-align: center;

    color: #000000;

    margin-right: 20px;
}

.phone img {
    margin-right: 20px;
}

.our-email {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    margin-bottom: 40px;
}

.our-email img {
    margin-right: 20px;
}

.footer {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;

}

.footer-menu {
    position: absolute;
    left: 0%;
    right: 0%;
    margin-top: 140px;

    background: rgba(7, 53, 139, 0.5);

    display: flex;
    justify-content: center;
    flex-direction: row;
    padding: 20px;
}

.all-rights {
    position: absolute;
    height: 24px;
    margin-top: 320px;

    /* Menu text/TM */

    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    font-size: 14px;
    line-height: 24px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    padding: 10px;
}

/*------------------New styles from 18/04/2021------------------*/

.modal-image {
    display: none;
    position: fixed;
    z-index: 11;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.9);
  }
  
  .modal-image-content {
    display: block;
    width: 95vw;
  }
  
  .close-modal-img, 
  .close-callback {
    color: white;
    position: absolute;
    top: 10px;
    right: 25px;
    font-size: 35px;
    font-weight: bold;
  }
  
  .close-modal-img:hover,
  .close-modal-img:focus,
  .close-callback:hover,
  .close-callback:focus {
    color: #999;
    text-decoration: none;
    cursor: pointer;
  }

  .swiper-wrapper .project-item {
    margin-right: 10px;
    width: 315px !important;
  }

  .custom-swiper, swiper-container {
    padding-right: 56px !important;
  }

  .mobile-menu, mobile-hamburger {
    display: none;
  }
  
  
  .open {
    display: flex;
    opacity: 1 !important;
    transition: opacity 0.3s ease-in-out;
}

.language-dropdown ul {
    left: -44px;
    top: 44px;
	z-index:9;
}

.open-modal-images {
    display: flex;
    align-items: center;
    justify-content: center;
}

.callback-form {
    display: none;
    align-items: baseline;
    justify-content: center;
    position: fixed;
    padding: 40px 20px 0;
    background: #FFFFFF;
    border: 1px solid #07358B;
    box-shadow: 2px 2px 20px 1px #07358B;
    width: 600px;
    height: 710px;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 1rem;
}

.callback-form form {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 30vw;
}

.callback-form h3 {
    font-size: 30px;
    text-align: center;
    margin-bottom: 25px;
    margin-top: 0;
}

.callback-form label {
    margin-bottom: 5px;
}
.callback-form input, .callback-form textarea {
    background-color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    padding: 18px 20px;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    transition: color 0.3s linear;
    border: 1px solid #07358B;
    border-radius: 5px;
    margin-bottom: 17px;
}

.callback-form textarea {
    resize: none;
    padding: 10px 20px;
}

.callback-form .callback-btn {
    width: 15vw;
    margin: 15px auto 0;
    cursor: pointer;
}

.callback-form .callback-btn:hover {
    background-color: #07358B;
    color: #FFFFFF;
    transition: cubic-bezier(0.075, 0.82, 0.165, 1);
}

.callback-form .close-callback {
    color: black;
}

.callback-alert-phone {
    display: none;
}

.social-block a {
    margin: 0 5px;
}

.social-block img, .social-block-alt img, .social-block-footer img {
    width: 40px;
}

.social-block a, .social-block-alt a, .social-block-footer a {
    text-decoration: none;
}

.social-block-alt {
    display: none;
}

.social-block-footer img {
    width: 55px;
}

.social-block-footer a {
    margin: 0 9px;
}

.projects-history {
    height: 650px;
    overflow-y: auto;
    justify-content: flex-start;
    position: relative;
    border: 2px solid #7d7e90;
    margin-bottom: 50px;
}

.all-histories-block {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    overflow-x: hidden;
}

.common-history-wrp {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    align-items: center;
}

.img-history-wrp {
    width: 75%;
    height: 400px;
}

.img-history-wrp img {
    width: 100%;
    object-fit: cover;
    height: 100%;
    border-radius: 8px;
}

.projects-history .our-products-title {
    margin-bottom: 0;
}

.projects-history .projects-desc {
    max-width: 75%;
    display: block;
    text-align: left;
}

.read-more-history {
    float: right;
    font-weight: 600;
    color: #07358b;
    padding-bottom: 20px;
}

.history-title {
    margin-top: 30px;
    color: darkred;
    font-size: 25px;
}

.history-title h4 {
    margin: 0;
}

.history-slide-right, .history-slide-left {
    width: 60px;
    position: absolute;
    right: 100px;
    top: 200px;
    cursor: pointer;
    z-index: 5;
}

.history-slide-left {
    left: 100px;
    right: auto;
    transform: rotate(180deg);
}

.slick-initialized .slick-slide {
    display: flex;
}

.slick-list {
    overflow-y: auto;
}

.histories-header {
    background: none;
    height: auto;
}

.main-history-wrp {
    display: block;
    position: relative;
    margin-bottom: 50px;
}

.history-descr {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    max-width: 90%;
    text-align: center;
    color: #000000;
    text-align: left;
}

.history-title-main h3 {
    margin-bottom: 0;
}

.history-item-image {
    margin-bottom: 20px;
    position: relative;
}

.pages-linker-row {
    display: flex;
    justify-content: space-between;
    padding: 0 75px;
}

.page-link, .main-page-link {
    display: block;
    color: #0000ee;
    font-weight: bold;
    text-decoration: none;
}

.main-page-link {
    color: black;
}

.to-main-page {
    cursor: pointer;
}

.img-zoom-wrapper {
    border-radius: 30px;
    width: 26px;
    height: 26px;
    background: white;
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    padding: 9px;
}

.img-zoom-wrapper {
    width: 100%;
    height: 100%;
}

.certificats-images-wrp {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px;
}

.cert-image-wrp {
    width: 18%;
    padding: 0 10px;
    cursor: pointer;
}

.cert-image-wrp img {
    width: 100%;
}

.cert-hiddenimg-wrp {
    justify-content: center;
    height: 90vh;
}

.certificats-hidden-block {
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5;
    padding-top: 40px;
    background: rgba(0, 0, 0, 0.9);
    display: none;
}

.certificats-hidden-block .history-slide-right, 
.certificats-hidden-block .history-slide-left {
    display: block;
    background: white;
    border-radius: 6px;
    padding: 8px;
    width: 30px;
    top: 50%;
}

.certificates-title {
    margin-top: 50px;
}