/*importing GoogleSans font*/
@font-face {
    font-family: 'GoogleSans';
    font-style: normal;
    font-weight: 400;
    src: local('GoogleSans'), local('GoogleSans'), 
        url('../Google-Sans/GoogleSans-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'GoogleSans';
    font-style: normal;
    font-weight: 500;
    src: local('GoogleSans Medium'), local('GoogleSans Medium'), 
        url('../Google-Sans/GoogleSans-Medium.ttf') format('truetype');
}
@font-face {
    font-family: 'GoogleSans';
    font-style: normal;
    font-weight: 700;
    src: local('GoogleSans Bold'), local('GoogleSans Bold'), 
        url('../Google-Sans/GoogleSans-Bold.ttf') format('truetype');
}

:root {
    --bs-body-color: #000;
    --bs-body-font-family: 'GoogleSans';
    --bs-body-line-height: 1.875rem;
    --bs-link-color-rgb: 52,71,134;
    --bs-primary-rgb: 52,71,134;
    --bs-secondary-rgb: 102,102,102;
    --bs-dark-text-emphasis: #999;
    --bs-primary: #344786;
}

a {
    text-decoration: none;
    transition: all .3s ease;
}

h1 {font-size: 3rem;}
h2 {font-size: 2.25rem;}
.h2 {font-size: 1.875rem;}
h3,
.h3 {font-size: 1.5rem;}
h4 {font-size: 1.125rem;}
.fs-4 {font-size: 1.125rem !important;}
.fs-5 {font-size: 1rem !important;}
.fs-6 {font-size: .875rem !important;}


/* NAVBAR & main menu */
.navbar {
    --bs-navbar-color: #344786;
    --bs-navbar-active-color: #000000;
    --bs-navbar-padding-y: 2.5rem;
    --bs-navbar-brand-padding-y: 0;
    --bs-navbar-nav-link-padding-x: 0.75rem;
    --bs-navbar-nav-link-padding-y: 0;
    font-weight: 500;
    transition: all .3s ease-in-out;
}
.navbar.scrolled {
    --bs-navbar-padding-y: 1.5rem;
}
.navbar-brand img {
    width: 143px;
    height: 49px;
    height: auto;
}
.navbar__contacts {
    font-size: .875rem;
    line-height: 1.125rem;
    margin-bottom: 0;
}
.navbar__contacts a.phone {
    font-size: 1.125rem;
    line-height: 1.375rem;
}

/* FOOTER */
.lp-footer__container {
    font-size: .875rem;
    margin-bottom: 35px;
    padding: 54px 20px 60px 55px;
}
.lp-footer__container a {
    color: var(--bs-white);
    text-decoration: underline;
}
.lp-footer__container h3 {margin-bottom: 21px;}
.lp-footer__container h5 {margin: 3px 0 5px;}
.lp-footer__container ul {margin-bottom: 50px;}
.lp-footer-logo {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 115px;
    gap: 13px;
    padding-top: 50px;
}
.lp-footer-logo::after,
.lp-footer-logo::before {
    content: "";
    background-color: var(--bs-white);
    height: 13px;
    opacity: 0;
}
.lp-footer-logo::after {
    width: 75px;
    align-self: flex-end;
}
.lp-footer-logo::before {width: 62px;}

/* headings */
.lp-heading {
    font-size: 1.125rem;
    margin-bottom: 51px;
}
.lp-heading h2 {
    font-weight: 700;
    line-height: 1;
    margin-bottom: 10px;
}
.lp-heading::after,
.lp-heading::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 24px;
    height: 15px;
    z-index: 9;
    opacity: 0;
}
.lp-heading::after {
    background-color: var(--bs-primary);
    width: 60px;
    margin-bottom: 28px;
    margin-right: 50px;
}
.lp-heading::before {
    background-color: #666;
    width: 70px;
}
.lp-heading.visible::after,
.lp-footer-logo.visible::before,
.showcase__intro::after {animation: fadeInLeft .5s cubic-bezier(0.175, 0.885, 0.32, 1.275) .5s forwards;}
.lp-heading.visible::before,
.lp-footer-logo.visible::after,
.showcase__intro::before {animation: fadeInRight .5s cubic-bezier(0.175, 0.885, 0.32, 1.275) .5s forwards;}


/* ------------------------------------------------------------ */

/* showcase */
.showcase {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 975px;
    padding-bottom: 200px;
}
.showcase::before,
.showcase::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
}
.showcase::before {
    height: 100%;
    background-color: rgba(255,255,255, .3);
}
.showcase::after {
    height: 55%;
    background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 1%,rgba(255,255,255,1) 100%);
}
.showcase h3 {margin-bottom: 6px;}
.showcase h1 {margin-bottom: 0;}
.showcase__intro {margin-bottom: 76px;}
.showcase__intro::after,
.showcase__intro::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 40px;
    height: 15px;
    z-index: 9;
    opacity: 0;
}
.showcase__intro::after {
    background-color: var(--bs-primary);
    width: 60px;
    margin-bottom: 28px;
    margin-right: 50px;
}
.showcase__intro::before {
    background-color: #666;
    width: 70px;
}

/* about */
.lp-about {
    margin-bottom: 87px;
    margin-top: -200px;
}
.lp-about .row {
    --bs-gutter-x: 40px;
}
.lp-about__intro {
    padding: 45px 60px 51px;
}
.lp-about__intro h3 {
    line-height: 36px;
    margin-bottom: 0;
}
.lp-about__content {
    padding: 48px 60px 34px;
}
.lp-about__content img {
    height: 153px;
    margin-bottom: 34px;
}
.lp-about__content .h3 {line-height: 2.25rem;}
.lp-about__content h3 {margin-bottom: 21px;}

/* specializations */
.lp-specializations {margin-bottom: 87px;}
.lp-specializations__item {margin-bottom: 24px;}
.lp-specializations__item .item-description {padding: 57px 80px 51px 60px;}
.lp-specializations__item h3 {
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 37px;
}
.lp-specializations__item p {margin-bottom: 0;}
.lp-specializations__item p:not(:last-of-type) {margin-bottom: 32px;}
.lp-specializations__item .item-cover {
    background-size: cover;
    background-position: center;
}

/* varieties */
.card {
    --bs-card-spacer-y: 54px;
    --bs-card-spacer-x: 60px;
    --bs-card-title-spacer-y: 19px;
    height: calc(100% - 24px);
    margin-bottom: 24px;
}
.lp-varieties .card p {margin-bottom: 0;}
.lp-varieties .card p:not(:last-of-type) {margin-bottom: 17px;}

/* coverage */
.lp-coverage {
    background-size: contain;
    background-position: 125% center;
    background-repeat: no-repeat;
    margin-bottom: 87px;
    padding: 54px 60px;
}
.lp-coverage__heading {
    font-size: 1.125rem;
    margin-bottom: 43px;
    padding-right: 60px;
}
.lp-coverage__heading h2 {margin-bottom: 5px;}
.lp-coverage__destinations .intro {margin-bottom: 11px;}
.lp-coverage__destinations .intro-icon {
    min-width: 24px;
    height: 24px;
    margin-right: 16px;
}
.intro-icon--hight {background-color: #122770;}
.intro-icon--regular {background-color: #7c37a8;}
.intro-icon--demand {background-color: #344786;}
.lp-coverage__destinations .country-list {margin-bottom: 0;}
.lp-coverage__destinations .country-list:not(:last-of-type) {margin-bottom: 46px;}
.country-list li {
    display: flex;
    align-items: center;
    padding-left: 4px;
}
.country-list li .flag {
    background-size: 28px;
    background-position: center;
    background-repeat: no-repeat;
    min-width: 16px;
    height: 16px;
    margin-right: 20px;
}
.lp-coverage__destinations .hover-destination {
    cursor: progress;
    position: relative;
    z-index: 3;
}
.lp-coverage__destinations .hover-destination:not(:last-of-type) {margin-bottom: 45px;}
.lp-coverage__hover-map {
    background-size: contain;
    background-position: 125% center;
    background-repeat: no-repeat;
    opacity: 0;
    transition: all ease .4s;
}
.lp-coverage__hover-map.active {
    opacity: 1;
    transition: opacity ease .4s;
}

/* advantages */
.lp-advantages {margin-bottom: 60px;}
.lp-advantages__item {
    height: calc(100% - 24px);
    margin-bottom: 24px;
    padding: 35px 60px;
}
.lp-advantages__item.w-100 {padding-top: 49px;}
.lp-advantages__item .item-heading {margin-bottom: 13px;}
.lp-advantages__item h3 {
    font-weight: 700;
    line-height: 36px;
}
.lp-advantages__item.w-100 img {margin-top: -6px;}

/* experience */
.lp-experience {
    padding-top: 24px;
    margin-bottom: 63px;
}
.lp-experience__intro {margin-bottom: 51px;}
.lp-experience__intro h2,
.lp-experience__intro .h2 {margin-bottom: 35px;}
.lp-experience .card-img-top {
    height: 360px;
    object-fit: cover;
}
.lp-experience .card ul {
    margin-bottom: -3px;
}
.lp-experience .card ul li,
.lp-company__group ul li {
    position: relative;
    padding-left: 35px;
}
.lp-experience .card ul li:not(:last-child) {margin-bottom: 6px;}
.lp-experience .card ul li::before,
.lp-company__group ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background-color: #000;
    border-radius: 50px;
    width: 4px;
    height: 4px;
    margin-top: 12px;
}

/* bussiness */
.lp-bussiness {margin-bottom: 63px;}
.lp-bussiness .lp-heading {margin-bottom: 41px;}

.bussiness-progress {
    font-size: 1.875rem;
    line-height: 1;
    margin-bottom: 24px;
    padding: 57px 60px 55px;
}
.bussiness-progress .progress-heading {margin-bottom: 15px;}
.progress-bars__wrapp {
    justify-content: space-around;
    margin-bottom: 20px;
    padding-bottom: 1px;
}
.progress {
    --bs-progress-font-size: 1.875rem;
    --bs-progress-bg: transparent;
    --bs-progress-border-radius: 0;
    --bs-progress-box-shadow: none;
    --bs-progress-height: 175px;
    position: relative;
}
.progress-bar-vertical {
    width: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column-reverse;
    text-align: center;
    overflow: visible;
    row-gap: 4px;
}
.progress-bar-vertical .progress-bar {
    width: 100%;
    height: 0;
    -webkit-transition: height 0.6s ease;
    -o-transition: height 0.6s ease;
    transition: height 0.6s ease;
}

.progress-bars__years {
    color: #999;
    display: flex;
    justify-content: space-around;
}

/* company & team */
.lp-company .card-img-top {
    height: 280px;
    object-fit: cover;
}
.lp-company .card ul {margin-bottom: -3px;}
.lp-company .card p {margin-bottom: 17px;}
.lp-company .card p:last-of-type {margin-bottom: 28px;}

.lp-company__group {
    margin-bottom: 24px;
    padding: 56px 60px 51px;
}
.lp-company__group h3 {margin-bottom: 20px;}


/* --------- ANIMATIONS --------- */
@-webkit-keyframes fadeInLeft {
    from {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
    }
  
    to {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
  }
  @keyframes fadeInLeft {
    from {
      opacity: 0;
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
    }
  
    to {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes fadeInRight {
    from {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
    }
  
    to {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
  }
  @keyframes fadeInRight {
    from {
      opacity: 0;
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
    }
  
    to {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
    }
}