* {
    box-sizing: border-box;
    scroll-behavior: smooth;
}

.page {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.content {
    flex: 1 0 auto;
    width: 100% !important;
}

.footer {
    flex: 0 0 auto;
}

html {
    scroll-behavior: smooth;
}

li {

}

* {
    outline: none;
}


/*details > summary::marker {*/
/*    display: none;*/
/*    content: "";*/
/*}*/

/* -------------------------------------- */
.front-banner__custom {
    max-width: 550px;
}

.front-banner__relative {
    position: relative;
}

.front-banner__absolute {
    position: absolute;
    /*top: 0;*/
    right: -64px;
    bottom: -8px;
}

.front-banner__picture {
    max-width: 730px;
}

.mar-bottom-text {
    margin: 0 auto 40px;
}

.f-customer-stories {
    padding: 70px 0 20px 0;
}

.f-info {
    max-width: 1000px;
    margin: 0 auto 40px;
    text-align: center;
}

.f-decor {
    text-align: center;
    background-image: url("../img/child-custom/im-community.png");
    height: 195px;
    background-position: center center;
    background-repeat: no-repeat;
}

.f-about-duarte__quote {
    position: relative;
}

.f-test {
    padding: 90px 0;
}

.f-about-duarte__quote:before {
    content: "";
    width: 96px;
    height: 71px;
    background: url('../img/child-custom/element-icon-ic-reimagine.svg') center no-repeat;
    position: absolute;
    top: -31px;
    left: 50%;
    margin-left: -54.5px;
}


@media screen and (max-width: 1150px ) {
    .front-banner__absolute {
        display: none;
    }
    .front-banner__relative {
        padding: 100px 0;
    }
    .front-banner__custom {
        width: 100%;
    }

    .f-img {
        padding-top: 20px !important;
    }

    .f-customer-stories {
        padding: 50px 0 20px 0;
    }
}

/* -------------------------------------- */


details > summary::marker {
    display: none;
    content: "";
}

details > summary::-webkit-details-marker {
    display: none;
    content: "";
}

summary {
    position: relative;
    font-size: 23px;
    line-height: 35px;
    font-weight: 100;
    color: #37474f;
}

details[open] > summary {
    margin: 0 0 21px 0;
}

details[open] > summary::after {
    transform: rotate(180deg) translateY(-50%);
}

details a {
    display: block;
    padding: 8px 10px;
    color: #37474f;
    font-size: 16px;
}

details a:not(:last-child) {
    margin: 0 0 12px 0;
}

details a:hover {
    background-color: #e7eaec;
    border-radius: 4px;
    text-decoration: none;
}

summary::after {
    width: 20px;
    height: 20px;
    position: absolute;
    background: url(../img/test/1-foundation-glyph-gl-arrow-down.svg);
    right: 20px;
    bottom: 52%;
    transform: translateY(50%);
    content: '';
    display: block;
    transition: .2s ease-in;
}

details .active {
    background-color: #e7eaec;
    border-radius: 4px;
}


.select-nav {
    display: none;
    padding: 7px 0;
    border-top: 1px solid #c7c7c7;
    border-bottom: 1px solid #c7c7c7;
    margin: 0 0 40px 0;
}

.lang__check {
    position: relative;
}

.lang__check:before {
    content: '';
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    left: 11px;
    top: 8px;
    background-image: url("../translate/images/check_lang.svg");
}

.test__place {
    color: #37474f;
    font-size: 20px;
}

.test__wrap {
    display: flex;
}

.test__container {
    margin: 0 0 40px 22px;
}

.test__container a:not(:last-child) {
    margin: 0 18px 0 0;
}

.test__aside {
    width: 360px;
}
.test__content {
    width: calc(100% - 360px);
    padding: 0 42px;
}
.test__section {
    margin: 0 0 29px 0;
}
.test__section--awards {
    width: 100%;
}

.test__phone {
    display: flex;
    justify-content: space-evenly;
    margin: 60px 0;
}

.test__section h2 {
    font-size: 30px;
    line-height: 44px;
    color: #0b1004;
    font-weight: 100;
    margin: 0 0 20px 0;
}
.test__section h3 {
    color: #37474f;
    font-size: 24px;
    line-height: 36px;
    font-weight: 300;
    margin: 0 0 8px 0;
}
.test__section h4 {
    color: #37474f;
    font-size: 20px;
    line-height: 30px;
    font-weight: 300;
    margin: 0 0 8px 0;
}

.test__section ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.test__section ul li {
    padding-left: 27px;
    font-size: 20px;
    line-height: 30px;
    position: relative;
}

.test__section ul ul {
    padding-left: 23px;
    font-size: 20px;
    line-height: 30px;
    position: relative;
    margin-bottom: 10px;
}

.test__section ul li > a {
    text-decoration: none;
    color: #37474f;
}



.test__section ul ul li:before {
    border-radius: 50%;
    position: absolute;
    background-color: transparent;
    top: -1px;
    left: 0;
    content: "-";
}

.test__section ul li:not(:last-child) {
    margin: 0 0 10px 0;
}

.test__section ul li::before {
    width: 4px;
    height: 4px;
    background: #99ca41;
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: 0;
    content: "";
}


.test__section p {
    color: #37474f;
    line-height: 1.5;
    font-size: 20px;
    margin: 0 0 30px 0;
}
.test__section .fist {
    margin-bottom: 27px;
}
.test__section hr {
    height: 1px;
    opacity: 0.5;
    margin: 0;
    background-color: #c7c7c7;

}
.test__section--wrap {
    padding: 20px 0;
}
.test__section--wrap span {
    padding: 20px 0;
    color: #37474f;
    font-size: 20px;
    margin: 0 8px 0 0;
}
.test__section--wrap a {
    padding: 20px 0;
    font-size: 20px;
    font-weight: 500;
    color: #47a540;
}
.test__section__top {
    font-size: 20px;
    position: relative;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: normal;
    color: #37474f;
}
.test__section__top:hover {
    text-decoration: none ;
}
.test__section__top::after {
    width: 20px;
    content: '';
    height: 20px;
    display: block;
    right: -30px;
    transform: rotate(180deg);
    top: 21px;
    position: absolute;
    background: url("../img/test/1-foundation-glyph-gl-arrow-down.svg");
}

.wow {
    margin: 0 0 43px 0;
}

.wow-mt {
    margin-bottom: 80px;
}

.wow ol {
    padding: 0 0 0 40px;
    font-size: 20px;
}

.wow ol li {
    line-height: 30px;
    color: #37474f;
}

.wow ol li:not(:last-child) {
    margin: 0 0 8px 0;
}

.test-bottom {
    margin: 0 0 80px 0;
}

.language__img {
    opacity: 1 !important;
}

.select {
    position: relative;
    display: block;
    margin-bottom: 24px;
}
.select__item a {
    color: #37474f;
}

.select__head {
    position: relative;
    width: 100%;
    max-width: 100%;
    border-radius: 3px;
    padding: 10px 36px 9px 41px;
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 4px 0;
    color: #37474f;

    box-shadow: inset 1px 1px 1px 0 rgba(0, 0, 0, 0.22);
    border: solid 1px rgba(216, 216, 216, 0.45);
    cursor: pointer;
}
.mobile-select__head {
    padding: 10px 36px 9px 9px;
}
.mobile-select__head::before {
    display: none !important;
}
.select__head::before {
    content: '';
    position: absolute;
    display: block;
    width: 24px;
    left: 7px;
    top: 7px;
    height: 24px;
    background: url("../img/test/element-icon-ic-globe.svg");
}
.select__head::after {
    width: 20px;
    height: 20px;
    position: absolute;
    background: url("../img/test/1-foundation-glyph-gl-arrow-down.svg");

    right: 20px;
    bottom: 52%;
    transform: translateY(50%);
    content: '';
    display: block;
    transition: .2s ease-in;
}
.select__head.open::after {
    transform: translateY(50%) rotate(180deg);
}

.select__nav__item {
    color: #424348;
    text-decoration: none;
}

.select__nav__item:hover {
    text-decoration: none;
}

.select__list {
    display: none;
    position: absolute;
    top: 110%;
    left: 0;
    right: 0;
    background: #fff;
    border-radius: 2px;
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2);
    margin-top: 5px;
    max-height: 205px;
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 100;
    margin: 0;
    padding: 0;
    font-size: 14px;
    color: #424348;
    scrollbar-color: dark;
    scrollbar-width: thin;
    overscroll-behavior: contain;
}
.select__list::-webkit-scrollbar {
    width: 7px;
    background-color: #F8F9FA;
    padding: 5px;
}
.select__list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #D9D9D9;
}
.select__list .select__item {
    position: relative;
    /*border-top: 1px solid rgba(224, 229, 231, 0.5);*/
    padding: 10px 42px;
    cursor: pointer;
    list-style-type: none;
}
.select__list .select__item:hover {
    background-color: #f9f9f9;
    border-radius: 4px;
}


.mobile-select {
    display: none;
}

.handbook {}
.handbook hr {
    display: block;
    margin: 0 0 10px 0;
    height: 1px;
    background-color: #c7c7c7;
    border: none;
}
.handbook__title {
    display: block;
    margin: 0 0 8px 0;
    font-size: 24px;
    line-height: 36px;
    color: #37474f;
    font-weight: 100;
}
.handbook__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.handbook__item {
    padding: 10px;
    cursor: pointer;
}

.handbook__item a {
    color: #37474f;
}

.handbook__item:not(:last-child) {
    margin: 0 0 10px 0;
}
.handbook__item--active {
    border-radius: 4px;
    background-color: #e7eaec;
}

.mobile {
    display: none;
}

.decor {
    border: solid 1px #99ca41;
    box-shadow: none;
}

.ul-mb {
    display: block;
    margin-bottom: 30px !important;
}

.f-service-banner-title {
    max-width: 765px;
}

.f-service-banner-img {
    margin: 72px 0 72px 0;
    display: flex;
    justify-content: center;
}

.f-service-block {
    text-align: center;
}

.f-service-block h2 {
    font-size: 24px;
    line-height: 36px;
    color: #37474f;
    font-weight: 300;
    margin: 0 0 40px 0;
}

.f-service-grid {
    display: flex;
    max-width: 1200px;
    margin: 0 auto 39px;
}
.f-service-item {
    width: 33.33%;
    text-align: center;
}

.f-service-item h3 {
    font-size: 20px;
    color: #37474f;
    font-weight: normal;
    margin: 0 0 30px 0;
}

.f-service-item a > h3 {
    color:  #47a540;
}

.f-service-item p {
    font-size: 17px;
    line-height: 26px;
    color: #7f7f7f;
    font-weight: normal;
    margin: 0 auto;

    max-width: 280px;
}


.f-service-item-title {
    margin: 0 0 8px 0 !important;
}

.f-service-link {
    color: #47a540 !important;
}

.f-service-decor {
    width: 140px;
    height: 1px;
    background-color: #47a540;
    margin: 0 auto 80px;
}


/* Location CSS */
.f-location-title {
    width: calc(100% - 489px);
}
.f-location-block {
    margin: 80px 0 0 0;
}

.f-location-description {
    max-width: 1200px;
    margin: 0 auto 60px;
    color: #37474f;
}

.f-location-description h2 {
    font-size: 24px;
    font-weight: 300;
    max-width: 1000px;
    line-height: 1.5;
    margin: 0 0 32px 0;
}

.f-location-description p {
    font-size: 20px;
    font-weight: normal;
    line-height: 1.5;
    margin: 0;
}

.f-location-description__wrap {
    display: flex;
    justify-content: space-between;
}

.f-location-description__item {
    max-width: 552px;
}

.f-location-intro {
    background-color: #f8f8fc;
    margin: 0 -17px;
    padding: 56px 0 42px 0;
}

.f-location-intro__container {

    text-align: center;


    padding: 0 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 1440px;
    margin: 0 auto;
    position: relative;
}

.f-location-intro__container h2 {
    max-width: 1180px;
    margin: 0 auto 16px;
    font-size: 24px;
    line-height: 36px;
    font-weight: 500;
    color: #37474f;
}

.f-location-col {
    margin: 0 0 86px 0;
}

.f-wrapper-img {

}

.f-wrapper-img img {
    position: relative;
    top: 160px;
}

/* 404 */
.page-404 {
    padding: 100px 0 224px 0;
    /*background-image: url("../img/404/decor.svg");*/
    background-position: center 83%;
    background-repeat: no-repeat;
    width: 100%;
}

.page-404__content {
    display: flex;
    justify-content: center;
    text-align: center;
    font-size: 18px;
    color: #363636;
    flex-direction: column;
    margin:  0 0 50px 0;
}

.page-404__home {
    color: #ffffff;
    background: #47a540;
    max-width: 160px;
    width: 100%;
    padding: 9px 30px 6px 30px;
    border-radius: 60px;
    font-size: 18px;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    border: none;
    box-shadow: none;
    outline: none;
    cursor: pointer;
    font-family: "Aktiv Grotesk", "Open Sans", "Helvetica Neue", sans-serif;
}

.page-404__back:hover {
    background-color: #47a540;
    color: white;
    text-decoration: none;
}



.page-404__back {
    color: #47a540;
    background: white;
    max-width: 160px;
    width: 100%;
    padding: 9px 30px 6px 30px;
    border: 1px solid #47a540;
    border-radius: 60px;
    font-size: 18px;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
    box-shadow: none;
    outline: none;
    cursor: pointer;

    margin-left: 21px;
    font-family: "Aktiv Grotesk", "Open Sans", "Helvetica Neue", sans-serif;
}

.page-404__home:hover {
    background-color: #04b936;
    text-decoration: none;
}

.page-404__wrap {
    max-width: 500px;
    display: flex;
    margin: 0 auto;
    z-index: 10;
}

.page-404__content {
    margin: 50px 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.page-404__content img {
    max-width: 551px;
}

.f-wrap-customer-story {
    padding-top: 0;
}

@media screen and (max-width: 1100px ) {
    .f-location-block {
        margin: 144px 0 0 0;
    }
    .f-location-description p {
        font-size: 18px;
    }
    .f-location-description p:not(:last-child) {
        margin: 0 0 32px 0;
    }

    .f-location-first {
        margin: 0 0 32px 0 !important;
    }

    .f-location-description__wrap {
        flex-direction: column;
    }
    .f-service-banner-img {
        margin: 60px 0;
    }

    .f-service-item h3 {
        font-size: 18px;
        margin: 0 0 30px 0;
    }

    .f-service-item p {
        font-size: 14px;
        line-height: 20px;
    }

    .select-nav {
        display: block;
    }

    .test__wrap {
        display: block;
    }
    .test__aside {
        width: 100%;
    }
    .test__content {
        width: 100%;
        padding: 0;
    }
    .handbook {
        display: none;
    }
    .mobile-select {
        display: flex;
    }

    .test__section h2 {
        font-size: 23px;
        line-height: 35px;
        margin: 0 0 24px 0;
    }

    .test__section h3 {
        font-size: 23px;
        line-height: 35px;
        margin: 0 0 9px 0;
    }

    .test__section h4 {
        font-size: 23px;
        line-height: 35px;
        margin: 0 0 9px 0;
    }
    .test__section p {
        font-size: 18px;
        line-height: 26px;
    }
    .test__section--wrap span {
        font-size: 18px;
        line-height: 26px;
    }
    .test__section--wrap a {
        font-size: 18px;
        line-height: 26px;
    }

    .test__section ul li {
        font-size: 18px;
        line-height: 26px;
        padding-left: 15px;
    }

    .test__section ul ul li {

    }

    .test__section ul li::before {
        top: 9px;
    }


    .test__section h4 {
        font-size: 18px;
        line-height: 26px;
    }

    .wow ol li {
        font-size: 18px;
        line-height: 26px;
    }
}
@media screen and (max-width: 768px ) {

    .m-banner-bus {
        height: 450px;
    }

    .m-banner_careers__content {
        padding-bottom: 113px;
    }

    .f-wrapper-img {
        min-height: 300px;
        position: relative;
        display: flex;
        justify-content: center;
    }

    .f-img-title {
        text-align: center;
        margin-bottom: 40px;
    }

    .f-wrapper-img img {
        position: absolute;
        top: 0px;
    }

    .page-404__content img {
        max-width: 100%;
    }

    .page-404__content h1 {
        font-size: 170px;
    }

    .f-location-intro__container h2 {
        font-size: 18px;
        line-height: 28px;
    }
    .f-service-block h2 {
        font-size: 18px;
        line-height: 28px;
    }

    .f-service-grid {
        display: flex;
        flex-direction: column;
        margin: 0 auto;
    }

    .f-service-decor {
        margin: 0 auto 40px;
    }

    .f-service-item {
        width: 100%;
    }

    .f-service-item p {
        margin: 0 0 24px 0;
        max-width: 100%;
    }

    .f-service-banner-img {
        margin: 40px 0;
    }

    .mob-hidden {
        display: none !important;
    }
    .f-decor {
        transform: scale(1.2);
    }
    summary {
        font-size: 18px;
    }
    .select__nav {
        display: block;
    }

    .test__place {
        color: #37474f;
        font-size: 16px;
    }

    .test__section h2 {
        font-size: 20px;
        line-height: 28px;
        margin: 0 0 20px 0;
    }

    .test__section h3 {
        font-size: 18px;
        line-height: 28px;
        margin: 0 0 9px 0;
    }
    .test__section p {
        font-size: 16px;
        line-height: 24px;
    }
    .test__section--wrap span {
        font-size: 16px;
        line-height: 24px;
    }
    .test__section--wrap a {
        font-size: 18px;
        line-height: 26px;
    }
    .test__section--awards {
        display: none;
    }
    .mobile {
        display: block;
    }

    .test__phone {
        flex-direction: column;
        justify-content: center;
    }

    .test__section ul li {
        font-size: 16px;
        line-height: 24px;
        padding-left: 15px;
    }

    .test__section ul ul li {
        font-size: 16px;
        line-height: 24px;
        padding-left: 15px;
    }

    .test__phone {
        margin: 30px 0;
    }

    .test__phone div {
        display: flex;
        align-content: center;
        align-items: center;
        justify-content: center;
    }

    .test__phone div:not(:last-child) {
        margin: 0 0 13px 0 ;
    }

    .test__container {
        display: flex;
        margin: 0 0 40px 0px;
    }

    .wow-mt {
        margin: 0 0 61px 0;
    }

    .wow ol {
        padding: 0 0 0 22px;
        font-size: 16px;
    }

    .wow ol li {
        padding: 0 0 0 5px;
        font-size: 16px;
    }

    .test__section h4 {
        font-size: 16px;
        line-height: 26px;
    }
}


/* Reviews */
.f-customers-reviews__intro {
    background-color: #F8F8FC;
    text-align: center;
    padding: 136px 0;
}

.f-customers-reviews__intro h1 {
    font-weight: 700;
    font-size: 58px;
    color: #333333;
    margin:  0 0 35px 0;
}

.f-customers-reviews__intro p {
    font-size: 33px;
    line-height: 41px;
    color: #898989;
    font-weight: 400;
    max-width: 994px;
    margin: 0 auto;
}

.f-customers-reviews__container {
    max-width: 1228px;
    padding: 0 10px;
    margin: 0 auto;
}


.f-customers-reviews__stars {
    padding: 80px 0;
}

.f-customers-reviews__star {
    display: flex;
    justify-content: center;
    margin: 0 0 25px 0;
}

.f-customers-reviews__head {
    text-align: center;
    margin: 0 0 53px 0;
}

.f-customers-reviews__head h2 {
    font-size: 28px;
    font-weight: 400;
    color: #6B6B6B;
}
.f-customers-reviews__head span {
    font-weight: 500;
    font-size: 16px;
    color: #9B9B9B;
}

.f-customers-reviews__item {
    border: 3px solid #ECEDEE;
    padding: 28px 23px;
    border-radius: 10px;
}

.f-customers-reviews__item p {
    margin: 0;
    color: #4A585F;
}

.f-customers-reviews__block {
    display: flex;
}

.f-customers-reviews__avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    background-color: blue;
    border-radius: 50%;
}

.f-customers-reviews__avatar span {
    color: white;
    font-size: 42px;
    height: 52px;
    font-weight: 400;
}

.f-customers-reviews__author {
    margin-left: 15px;
}

.f-customers-reviews__author h3 {
    font-size: 20px;
    margin: 0 0 10px 0;
    font-weight: 400;
    color: #ABABAD;
}

li {
    list-style: none !important;
}

.gap-item {
    margin: 15px;
}

.grid {
    display: flex;
    padding: 0;
}

.f-customers-reviews__hr {
    height: 2px;
    width: 100%;
    background-color: #C7C7C7;
    opacity: 0.5;
    margin: 80px 0 0px 0;
}

.f-customers-reviews__ooo {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 40px 0;
}

.f-customers-reviews__ooo p {
    color: #676767;
    font-weight: 300;
}

.f-reviews-padding {
    padding: 86px 0 !important;
}

.f-reviews-blockquote {
    text-align: center;
    color: #717171;
    font-size: 30px;
    font-weight: 700;
    margin: 0 0 20px 0;
}

.f-review__quote a {
    display: block;
    text-align: center;
    color: #009966;
    font-size: 18px;
}
.f-review__quote {
    position: relative;
}
.f-review__quote:before {
    content: "";
    width: 96px;
    height: 80px;
    background: url('../img/child-custom/home.svg') center no-repeat;
    position: absolute;
    top: -31px;
    left: 50%;
    margin-left: -54.5px;
}
.flexmasonry-item p {
    font-size: 20px;
}

.no-margin {
    padding: 40px 0 0 0 !important;
}

.f-customers-reviews__read {
    display: none;
    text-align: center;
    cursor: pointer;
    color: #27AE60;
    font-size: 20px;
}
@media screen and (max-width: 1100px ) {
    .f-customers-reviews__intro {
        padding: 87px 0;
    }
    .f-customers-reviews__intro  h1 {
        font-size: 48px;
        line-height: 52px;
        margin: 0 0 10px 0;
    }
    .f-customers-reviews__intro p {
        font-size: 24px;
        line-height: 36px;
    }
    .f-customers-reviews__head h2 {
        font-size: 22px;
        line-height: 35px;
        margin: 0 0 21px 0;
    }
    .gap-item {
        margin: 8px;
    }
    .f-customers-reviews__head {
        margin: 0 0 30px 0;
    }
    .flexmasonry-item p {
        font-size: 18px;
    }
    .f-customers-reviews__hr {
        margin: 40px 0 0 0;
    }
    .f-reviews-blockquote {
        font-size: 22px;
        line-height: 45px;
    }
}
@media screen and (max-width: 768px ) {
    .f-location-block {
        margin: 232px 0 0 0;
    }
    .f-customers-reviews__read {
        display: block;
        margin: 0 0 20px 0;
    }
    .f-customers-reviews__intro {
        padding: 151px 0;
    }
    .f-customers-reviews__intro  h1 {
        font-size: 34px;
        line-height: 40px;
        margin: 0 0 20px 0;
    }
    .f-customers-reviews__intro p {
        font-size: 20px;
        line-height: 28px;
    }
    .f-customers-reviews__head h2 {
        font-size: 20px;
        line-height: 28px;
        margin: 0 0 21px 0;
    }
    .gap-item {
        margin: 8px;
    }
    .f-customers-reviews__head {
        margin: 0 0 30px 0;
    }
    .flexmasonry-item p {
        font-size: 16px;
        line-height: 27px;
    }
    .f-customers-reviews__hr {
        margin: 40px 0 0 0;
    }
    .f-reviews-blockquote {
        font-size: 20px;
        line-height: 35px;
    }
    .no-margin {
        padding: 20px 0 0 0 !important;
    }

    .f-customers-reviews__hr {
        display: none;
    }
}



/* City */

.f-city {
    min-height: 440px;
    margin: 0;
}

.f-city__wrap {
    display: flex;
    justify-content: space-around;
}

.f-city__text {
    display: flex;
    align-items: center;
    max-width: 830px;
    min-height: 440px;
    /*padding-left: 100px;*/

}

.f-city__text h1 {
    font-size: 65px;
    line-height: 72px;
    color: #333333;
    margin: 0;
    z-index: 9;
}

.f-city__img {
    display: flex;
    align-items: flex-end;
    z-index: 9;
}

.f-city__img img {
    margin: 0 0 -80px 0;
}

.main-menu__link {
    max-width: 120px;
}

._opened-menu .main-menu {
    overflow: auto;
}

/* f-commitment */
.f-hr {
    display: block;
    max-width: 180px;
    height: 3px;
    background-color: white;
    margin: 30px auto;
}
.f-commitment {
    background-color: rgba(147,201,14, 0.1);
    padding: 60px 0;
    width: calc(100% + 34px);
    margin-left: -17px;
}
.f-commitment__wrap {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
}

.f-commitment__title {
    margin: 0 0 53px 0;
}

.f-commitment__flex {
    display: flex;
    align-items: center;
    max-width: 700px;
    margin: 0 auto;
    justify-content: space-between;
}

.f-commitment__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 270px;
    text-align: center;
}

.f-commitment__item img {
    margin: 0 0 10px 0;
    width: 100%;
    height: 64px;
}

.f-commitment__item hr {
    background-color: #47a540 !important;
    height: 1px;
    border: none;
    margin: 12px 0;
    width: 100%;
}

.f-commitment__item h3 {
    margin: 0;
    display: block;
    /*border-bottom: solid 1px #47a540;*/
}

.f-commitment__item p {
    padding: 0;
    margin: 0;
}

@media screen and (max-width: 1140px ) {
    .f-city__text {
        max-width: 400px;
    }
    .f-city__text h1 {
        font-size: 48px;
        line-height: 52px;
    }
    .f-city__wrap {
        justify-content: space-between;
    }
    .main-menu__link {
        max-width: 100%;
    }
}

@media screen and (max-width: 768px ) {
    .f-commitment__flex {
        flex-direction: column;
    }

    .f-commitment__item:first-child {
        margin: 0 0 30px 0;
    }
    .f-commitment__item:last-child {
        margin: 30px 0 0 0;
    }

    .f-city-wrap {
        margin: -100px 0 0 0;
    }
    .f-city__wrap {
        flex-direction: column;
    }
    .f-city__text,
    .f-city__img {
        width: 100%;
        max-width: none;
    }

    .f-city__text {
        min-height: 200px;
        text-align: center;
        max-width: 430px;
        margin: 0 auto;

    }

    .f-city__text h1 {
        font-size: 34px;
        line-height: 40px;
    }

    .f-city__img {
        justify-content: center;
    }
}


/* Our Vision */
.f-vision-intro {
    min-height: 630px;
    padding: 60px 0;
    margin: 0 0 59px 0;

    background: url("../img/vision/im-zum-vision-2025.png") no-repeat center bottom;
    /*background-size: cover;*/
}

.f-vision-intro__title {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.f-vision-intro__title h1 {
    font-size: 65px;
    line-height: 72px;
    color: #333333;
    margin: 0 0 12px 0;
}

.f-vision-intro__title p {
    font-size: 33px;
    line-height: 41px;
    margin: 0;
}



.f-vision-textarea {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto 55px auto;
}

.f-vision-textarea__title {
    margin: 0 0 40px 0;
}

.f-vision-textarea__title span {
    font-size: 24px;
    line-height: 36px;
    color: #37474f;
    display: block;
    margin: 0 0 4px 0;
}

.f-vision-textarea__title h2 {
    font-size: 60px;
    line-height: 65px;
    margin: 0;
    color: #333333;
    font-weight: lighter;
}

.f-vision-textarea__content {
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
}

.f-vision-textarea__content p {
    font-size: 24px;
    line-height: 40px;
    color: #37474f;
    font-weight: lighter;
    margin: 0;
}

.f-vision-textarea__content p a {
    text-decoration: underline;
    color: #37474f;
}

.f-vision-textarea__content p:not(:last-child) {
    margin: 0 0 40px 0;
}

.f-vision-textarea__wrap {
    display: flex;
    margin: 0 0 40px 0;
}

.f-vision-textarea__block {
    width: 50%;
}

.f-vision-textarea__block:not(:last-child) {
    margin: 0 38px 0 0;
}


.f-vision-textarea__quote {
    max-width: 1100px;
    text-align: center;
    width: 100%;
    margin: 40px auto;
}
.f-vision-textarea__quote-link {
    display: block;
    color: #7f7f7f !important;
    font-size: 17px;
    padding: 0 0 40px 0;
    margin: -30px 0 0 0;
}

.f-vision-textarea__quote-link a {
    color: #7f7f7f !important;
    text-decoration: underline;
}

.f-vision-textarea__quote p {
    color: #47a540;
    padding: 40px 0;
    font-size: 30px;
    line-height: 45px;
    margin: 0;
}

.f-line {
    width: 140px;
    height: 1px;
    margin: 0 auto;
    background-color: #000000;
}

.f-big-line {
    width: 360px;
    height: 2px;
    margin: 0 auto;
    background-color: #47a540;
}

.f-vision-two-img {
    display: flex;
    justify-content: center;
    margin: 0 0 40px 0;
}

.f-first-img {
    margin: 0 20px 0 0;
}

.f-vision-big-title {
    text-align: center;
    margin: 82px 0 50px 0;
    font-size: 55px;
    line-height: 65px;
    font-weight: lighter;
}

.f-vision-big-title h3 {
    font-weight: lighter;
}
.f-vision-subtitle {
    display: inline-flex;
    padding: 0 0 5px 0;
    border-bottom: solid 1px #000;
    align-items: center;
    margin: 0 0 20px 0;
}

.f-vision-subtitle .decor {
    width: 36px;
    height: 36px;
    margin: -15px 12px 0 0;
    padding: 3px;
    text-align: center;
    color: white;
    border-radius: 50%;
    background-color: #47a540;
}

.f-vision-textarea__float {
    float: right;
    padding: 30px;
}

.f-vision-decor {
    height: 460px;
}
.f-vision-textarea__ava {
    display: flex;
    align-items: center;
    margin: 0 0 22px 0;
}
.f-vision-textarea__ava > .ava__photo {
    margin-right: 30px;
}

.f-vision-banner {
    margin: 20px -17px 0 -17px;
    background-color: #f8f8fc;
    padding: 60px 0;
}

.f-vision-banner__icon {
    text-align: center;
    margin: 0 auto;
}

.f-vision-banner__text {
    text-align: center;
    margin: 0 auto;
    font-size: 60px;
    line-height: 65px;
    max-width: 1000px;
    font-weight: lighter;
}

.f-vision-banner__text p {
    margin: 20px 0 20px 0;
}

.front-banner__button {
    text-align: center;
}

.f-vision-show {
    display: none;
    font-weight: lighter;
    cursor: pointer;
    border: none;
    background: none;
    color: #37474f;
    font-size: 18px;
    margin: 0 0 20px 0;
    text-decoration: underline;
}
.f-vision-show.block {
    display: block !important;
}

@media(max-width: 768px) {
    .f-vision-intro {
        margin: 0 0 60px 0;
    }
    .f-vision-intro__title {
        margin: 0 0 32px 0;
    }
    .f-vision-intro__title h1 {
        font-size: 48px;
        line-height: 52px;
        margin: 0 0 12px 0;
    }

    .f-vision-intro__title p {
        font-size: 24px;
        line-height: 36px;
        margin: 0;
    }
    .f-vision-intro {
        min-height: 570px;
    }
    .f-vision-textarea__title span {
        font-size: 20px;
        margin: 0;
    }
    .f-vision-textarea__title h2{
        font-size: 40px;
    }

    .f-vision-textarea__title {
        margin: 0 0 17px 0;
    }

    .f-vision-textarea__title h2 {
        line-height: 47px;
    }

    .f-vision-textarea__content p {
        font-size: 20px;
        line-height: 34px;
        color: #37474f;
    }

    .f-vision-textarea__quote p {
        padding: 28px 0;
        font-size: 32px;
        line-height: 45px;
    }
    .f-vision-textarea  {
        margin: 0 auto 30px auto;
    }
    .f-vision-two-img {
        margin: 0 0 10px 0;
    }
    .f-vision-big-title {
        font-size: 40px;
        line-height: 44px;
        margin: 40px 0;
        text-align: center;
    }
    .f-vision-textarea__content p:not(:last-child) {
        margin: 0 0 20px 0;
    }
    .f-vision-textarea__wrap {
        align-items: center;
        margin: 0 0 20px 0;
    }
    .test-bg {
        background-position: bottom;
    }

    .f-vision-banner__text {
        font-size: 40px;
        line-height: 44px;
    }

    .f-vision-decor {
        height: 333px;
    }

    .f-vision-textarea__float {
        float: none;
        width: 100%;
        padding: 0;
        margin: 0 0 20px 0;
    }


}

@media (max-width: 487px) {
    .f-vision-show {
        margin: -20px 0 0 0;
        display: block;
        padding: 20px 0;
    }
    .first-mobile-hidden {
        display: none;
    }
    .first-mobile-hidden.block {
        display: block;
    }

    .second-mobile-hidden {
        display: none;
    }
    .second-mobile-hidden.block {
        display: block;
    }

    .third-mobile-hidden {
        display: none;
    }
    .third-mobile-hidden.block {
        display: block;
    }

    .f-vision-intro {
        margin: 0 0 60px 0;
    }
    .f-vision-intro__title {
        margin: 0 0 32px 0;
    }
    .f-vision-intro__title h1 {
        font-size: 34px;
        line-height: 40px;
        margin: 0 0 12px 0;
    }


    .f-vision-intro {
        min-height: 380px;
    }
    .f-vision-textarea__title span {
        font-size: 18px;
        margin: 0;
    }
    .f-vision-textarea__title h2{
        font-size: 28px;
        line-height: 36px;
    }

    .f-vision-textarea__title {
        margin: 0 0 17px 0;
    }

    .f-vision-textarea__content p {
        font-size: 18px;
        line-height: 32px;
        color: #37474f;
    }

    .f-vision-textarea__quote p {
        font-size: 28px;
        line-height: 34px;
    }


    .f-vision-two-img {
        flex-direction: column;
    }

    .f-first-img {
        margin: 0 0 12px 0;
    }

    .f-vision-big-title {
        font-size: 28px;
        line-height: 37px;
    }
    .f-vision-textarea__wrap {
        flex-direction: column;
    }

    .f-vision-textarea__block {
        width: 100%;
        margin: 0;
    }
    .f-vision-textarea__block:not(:last-child) {
        margin: 0 0 20px 0;
    }
    .f-vision-banner__text {
        font-size: 28px;
        line-height: 32px;
    }
    .f-vision-textarea__quote p {
        font-size: 28px;
    }

    .f-vision-intro {
        background-size: 150%;
    }

    .f-vision-textarea__quote-link {
        margin: 0;
    }
    .f-vision-banner {
        margin:  0 -18px;
        padding: 60px 10px;
    }
    .f-vision-intro__title p {
        font-size: 20px;
    }
}