

/* Start:/about/company/style.css?178480075412747*/
.about__container {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: normal;
    box-sizing: border-box;
    font-style: normal;
}

h1, h2, h3, p {
    margin: 0;
    padding: 0;
}

.about__banner {
    display: flex;
    flex-direction: row;
    gap: 24px;
    align-items: center;
    padding-bottom: 40px;
}

.banner__text {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.text__title,
.text__title-accent {
    font-size: 56px;
    font-style: normal;
    font-weight: 600;
}

.text__title-accent {
    color: #246A50;
}

.text__subtitle {
    font-style: normal;
    line-height: 130%;
    opacity: 0.8;
    max-width: 68%;
}

.banner__gallery {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.gallery__row {
    display: grid;
    grid-template-columns: 32% 68%;
    gap: 24px;
}

.gallery__row--reverse {
    grid-template-columns: 68% 32%;
}

.gallery__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    max-height: 222px;
}

.about__info {
    position: relative;
    display: flex;
    justify-content: space-between;
}

.info__cards {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 40px 0;
}

.cards__number {
    color: white;
    font-size: 56px;
    font-weight: 600;
}

.cards__text {
    color: white;
}

.about__info::before,
.about__info::after {
    content: '';
    position: absolute;
    right: -55px;
    bottom: 160px;
    width: 250px;
    height: 1.5px;
    background: white;
    transform-origin: right center;
    pointer-events: none;
    opacity: 0.5;
}

.about__info::before {
    bottom: 213px;
    transform: rotate(-76deg);
}

.about__info::after {
    right: -120px;
    transform: rotate(-40deg);
}

.about__quote {
    display: flex;
    position: relative;
    padding: 0 110px 80px 110px;
}

.quote__card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    background: #EFF7F1;
    padding: 40px 48px;
    justify-content: space-between;
    gap: 8px;
    width: 67%;
}

.quote__mark {
    position: absolute;
    top: -40px;
    width: 80px;
    height: 55px;
}

.quote__title {
    color: #3A3C3A;
    font-size: 32px;
    font-weight: 700;
}

.quote__subtitle {
    color: #3A3C3A;
    font-size: 32px;
    font-weight: 300;
}

.quote__photo {
    display: flex;
    align-items: center;
    gap: 20px;
    position: absolute;
    right: -36%;
    bottom: 24%;
}

.photo__founder {
    width: 140px;
    height: 140px;
    border-radius: 100px;
    border: 5px solid #FFF;
}

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

.photo__name {
    font-size: 24px;
    font-weight: 600;
}

.photo__post {
    font-size: 18px;
    font-weight: 400;
    line-height: 130%;
    opacity: 0.6;
}

.about__mistakes {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}

.mistakes__info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 32%;
}

.mistakes__title {
    font-size: 44px;
    font-weight: 600;
    margin-bottom: 32px;
}

.mistakes__subtitle {
    opacity: 0.8;
    margin-bottom: 20px;
}

.mistakes__cards {
    display: grid;
    width: 60%;
    grid-template-columns: 50% 50%;
    gap: 20px;
}

.mistakes__card {
    display: flex;
    padding: 20px 24px;
    flex-direction: column;
    border-radius: 12px;
    background: #F1F1F1;
}

.mistakes__svg {
    display: flex;
    width: 36px;
    height: 36px;
    padding: 6px;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    background: #9FC4AA;
    margin-bottom: 20px;

    use {
        fill: none;
        width: 24px;
        height: 24px;
    }
}

.mistakes__card-title {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 8px;
}

.mistakes__card-subtitle {
    font-size: 16px;
    line-height: 130%;
}

.about__team {
    padding: 48px 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.team__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.team__info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.team__title {
    font-size: 44px;
    font-weight: 600;
    line-height: 120%;
}

.team__title-count {
    font-size: 44px;
    font-weight: 600;
    opacity: 0.3;
}

.team__subtitle {
    font-size: 24px;
}

.team__block {
    display: flex;
    gap: 24px;
    justify-content: space-between;
}

.team__card {
    display: flex;
    flex-direction: column;
    flex: 1;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    justify-content: flex-end;
    padding: 395px 8px 8px 8px;
}

.team__notes {
    display: flex;
    flex-direction: column;
    gap: 36px;
    background: white;
    border-radius: 8px;
    padding: 16px 12px;
}

.notes__head {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.notes__bottom {
    display: flex;
    justify-content: space-between;
}

.notes__mail {
    text-decoration: none;
    font-size: 14px;
    color: #246A50;
}

.notes__city {
    font-size: 14px;
    opacity: 0.7;
}

.about__our-way {
    display: flex;
    flex-direction: column;
    padding: 56px 0;
    gap: 60px;
}

.our-way__head {
    display: flex;
    justify-content: space-between;
}

.our-way__info {
    display: flex;
    flex-direction: column;
    width: 40%;
}

.our-way__title {
    font-size: 40px;
    font-weight: 600;
    opacity: 0.4;
}

.our-way__subtitle {
    font-size: 44px;
    font-weight: 600;
}

.our-way__button {
    display: flex;
    flex-direction: column;
    width: 50%;
    justify-content: space-between;
}

.our-way__slider {
    --our-way-duration: 5s;
    max-width: 100%;
    overflow-x: clip;
}

.our-way__card {
    border-radius: 12px;
    background: linear-gradient(0deg, rgba(152, 218, 179, 0.20) 0%, rgba(215, 215, 215, 0.20) 73.21%), #FFF;
    padding: 48px 48px 22px 48px;
    min-height: 343px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow-x: clip;
}

.our-way__slides {
    position: relative;
    display: grid;
    grid-template: 1fr / 1fr;
}

.our-way__slide {
    grid-area: 1 / 1;
    display: flex;
    align-items: flex-start;
    min-width: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(18px);
    transition:
        opacity 0.65s cubic-bezier(0.4, 0, 0.2, 1),
        transform 0.65s cubic-bezier(0.4, 0, 0.2, 1),
        visibility 0.65s;
    pointer-events: none;
    z-index: 0;
}

.our-way__slide--active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
    z-index: 1;
}

.our-way__slide--animate .our-way__slide-head {
    animation: our-way-content-in 0.75s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.our-way__slide--animate .our-way__slide-body {
    animation: our-way-content-in 0.75s cubic-bezier(0.22, 1, 0.36, 1) 0.12s both;
}

.our-way__slide--animate .our-way__slide-body-img {
    animation: our-way-content-in 0.75s cubic-bezier(0.22, 1, 0.36, 1) 0.24s both;
}

.our-way__slide--animate .our-way__img {
    animation: our-way-img-in 0.85s cubic-bezier(0.22, 1, 0.36, 1) 0.3s both;
}

@keyframes our-way-content-in {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes our-way-img-in {
    from {
        opacity: 0;
        transform: rotate(11deg) translateY(18px) scale(0.94);
    }

    to {
        opacity: 1;
        transform: rotate(11deg) translateY(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .our-way__slide {
        transition: none;
    }

    .our-way__slide--animate .our-way__slide-head,
    .our-way__slide--animate .our-way__slide-body,
    .our-way__slide--animate .our-way__slide-body-img,
    .our-way__slide--animate .our-way__img {
        animation: none;
    }
}

.our-way__slide-head {
    display: flex;
    flex-direction: column;
    gap: 14px;
    flex-shrink: 0;
    width: 50%;
    min-width: 0;
}

.our-way__card-year {
    font-size: 84px;
    font-weight: 600;
    line-height: 71%;
    color: #C8CCCB;
}

.our-way__card-title {
    font-weight: 600;
}

.our-way__slide-body {
    display: flex;
    flex: 1;
    width: 30%;
    min-width: 0;
}


.our-way__card-text {
    flex: 1;
    min-width: 0;
    opacity: 0.8;
    line-height: 130%;
    overflow-wrap: anywhere;
}

.our-way__slide-body-img {
    display: flex;
    width: 20%;
    min-width: 0;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
}

.our-way__img {
    margin-top: 10%;
    width: 180px;
    height: 130px;
    object-fit: cover;
    transform: rotate(11deg);
    flex-shrink: 0;
    border-radius: 12px;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}

.our-way__nav {
    display: flex;
    gap: 8px;
    min-width: 0;
    overflow-x: clip;
}

.our-way__nav-item {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0;
    border: none;
    background: none;
    cursor: pointer;
    text-align: center;
    font-family: inherit;
}

.our-way__nav-year {
    font-size: 18px;
    color: #386753;
    opacity: 0.5;
    transition: color 0.3s;
    white-space: nowrap;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
}

.our-way__nav-item--active .our-way__nav-year {
    opacity: 1;
}

.our-way__nav-progress {
    display: block;
    height: 3px;
    background: #a6ccb9;
    border-radius: 2px;
    overflow: hidden;
}

.our-way__nav-progress-bar {
    display: block;
    height: 100%;
    width: 0;
    background: #246A50;
    border-radius: 2px;
}

.our-way__nav-item--active .our-way__nav-progress-bar {
    animation: our-way-progress var(--our-way-duration) linear forwards;
}

@keyframes our-way-progress {
    from { width: 0; }
    to { width: 100%; }
}

.about__office {
    background-image: url('https://www.gwd.ru/upload/medialibrary/85b/85b260629b660a9d4d5b6511058b6654.png');
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    align-items: center;
}

.office {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 5%;
}

.office__block {
    display:flex;
    flex-direction: column;
    gap: 12px;
    width: 34%;
}

.office__title {
    font-size: 40px;
    font-weight: 600;
    padding-bottom: 8px;
}

.office__links {
    display: flex;
    background: white;
    padding: 16px 24px;
    gap: 6px;
    text-decoration: none;
    justify-content: space-between;
    border-radius: 12px;
}

.office__links:hover {
    box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.1);
}

.links__info {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.link__title {
    color: black;
    font-size: 24px;
    font-weight: 600;
}

.link__icon {
    display: flex;
    width: 34px;
    height: 34px;
    background: #246A50;
    border-radius: 100px;
    color: white;
    justify-content: center;
    align-items: center;

    svg {
        width: 20px;
        height: 20px;
    }
}

.office__info {
    display: flex;
    flex-direction: column;
    width: 22%;
    gap: 20px;
}

.office__info-title {
    font-size: 44px;
    font-weight: 600;
}

@media (max-width: 1600px) {
    * {
        font-size: 16px;
    }

    .text__title, .text__title-accent {
        font-size: 44px;
    }

    .cards__number {
        font-size: 44px;
    }


    .quote__card {
        padding: 24px 32px;
        width: 70%;
        gap: 42px;
    }

    .quote__mark {
        width: 50px;
        height: 30px;
        top: -20px;
    }

    .quote__title,
    .quote__subtitle {
        font-size: 24px;
    }

    .quote__photo {
        right: -40%;
    }

    .photo__name {
        font-size: 18px;
    }

    .photo__founder {
        width: 120px;
        height: 120px;
    }

    .mistakes__title,
    .team__title {
        font-size: 40px;
    }

    .team__title-count {
        font-size: 40px;
    }

    .mistakes__card-title,
    .mistakes__subtitle,
    .link__title {
        font-size: 18px;
    }

    .our-way__title {
        font-size: 32px;
    }

    .our-way__subtitle{
        font-size: 40px;
    }

    .our-way__card {
        padding: 32px 36px;
    }

    .office__title {
        font-size: 24px;
    }

    .links__info {
        width: 80%;
    }

    .office {
        padding-bottom: 4%;
    }

    .office__info {
        width: 23%;
    }

    .office__info-title {
        font-size: 32px;
    }



}
/* End */


/* Start:/local/css/elements/v2024/btn.light-green.css?1776330070124*/
.btn.btn-light-green{
    --button-color: white;
    --button-background: #386753;
    --button-hover-background: #2D5242;
}
/* End */


/* Start:/local/css/elements/overlay-appear.css?1760700064496*/
.overlay-appear{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background-color: inherit;
}
.overlay-appear:not(.--shown) {
    display: none!important;
}
@keyframes overlay_appear_animation{
    10%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}
.overlay-appear.--shown{
    opacity: 0;
    animation-name: overlay_appear_animation;
    animation-duration: 0.3s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}

/* End */


/* Start:/local/components/vue/form/validated-input/style.css?17791020571025*/
.validated-input{
    position: relative;
    display: block;

    --error-color: #B62326;
}
.form-group > label.validated-input,
.form-row > [class*=col-] > label.validated-input{
    margin-bottom: 0;
}
/*.validated-input .err-required{*/
    /*position: absolute;*/
    /*top: 0;*/
    /*left: 0;*/
    /*border-radius: var(--bs-input-border-radius);*/
    /*border: 1px solid var(--error-color);*/
    /*color: var(--error-color);*/
    /*display: flex;*/
    /*width: 100%;*/
    /*height: 100%;*/
    /*align-items: center;*/
    /*background: white;*/
    /*padding-left: 20px;*/
    /*font-size: 12px;*/
    /*margin-top: 5px;*/

    /*cursor: pointer;*/
/*}*/
/*.validated-input .err-invalid{*/
/*    color: var(--error-color);*/
/*    margin-top: 5px;*/
/*    font-size: 12px;*/
/*}*/

.validated-input__err{
    color: var(--error-color);
    margin-top: 4px;
    font-size: 12px;
}
.validated-input__err svg{
    color: var(--error-color);
    width: 17px;
    height: 17px;

    vertical-align: text-bottom;
}



/* End */


/* Start:/local/include-areas/main/callback/style.css?17848948863358*/
.old-callback-wrapper{
    background-color: #F1F1F1;
    margin-top: 62px;
}

.form__container {
    display: flex;
    gap: 24px;
    padding: 96px 0;
    font-family: Manrope;
}

.form__callback {
    display: flex;
    flex-direction: column;
    background: white;
    padding: 64px 40px;
    align-items: flex-start;
    gap: 24px;
    border-radius: 12px;
    width: 40%;
    overflow: hidden;
}

.form__callback--success {
    background-image: url(https://www.gwd.ru/upload/medialibrary/a80/a80b4c7b2068a3a01162aa2d32ec0365.jpg);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: auto 70%;
}

.main-callback__header {
    color: black;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    margin-bottom: 22px;
}

.main-callback__description {
    color: black;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-bottom: 40px;
    opacity: 0.8;
}
.main-callback__label{
    margin-bottom: 14px;
}
.main-callback__content {
    position: relative;
    width: 100%;
}

.main-callback__base--hidden {
    visibility: hidden;
    pointer-events: none;
}

.main-callback__success {
    overflow: hidden;
}

.main-callback__success > * {
    position: relative;
    z-index: 2;
}

.form__callback--success .main-callback__success .main-callback__description {
    margin-bottom: 170px;
}

.form-row {
    display: flex;
    flex-direction: column;
    width: 65%;
}

.col-auto {
    margin-top: 32px;
}

.form__image-block {
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(https://www.gwd.ru/upload/medialibrary/198/19877854bda9fbd55714d67f12d534f8.jpg);
    background-position: center;
    width: 60%;
    display: flex;
    flex-direction: column;
    padding: 64px 40px;
    justify-content: flex-end;
    border-radius: 12px;
    .main-callback__header,
    .main-callback__description {
        color: white;
    }
}

.form__button-block {
    display: flex;
    gap: 12px;
}

.form__button-block .btn {
    flex: 0 0 200px;
    justify-content: center;
}

.form__button-icon {
    stroke: none;
}

.form__button-text {
    color: #386753;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%;
    white-space: nowrap;
}

@media (max-width: 1600px) {
    .form__callback {
        width: 50%;
    }
    .form__image-block {
        width: 50%;
    }
}

@media (max-width: 768px) {
    .form__container {
        flex-direction: column;
        gap: 14px;
        padding: 64px 0;
    }
    .form__callback {
        padding: 42px 24px;
        width: 100%;
    }
    .main-callback__header {
        font-size: 28px;
        margin-bottom: 16px;
    }
    .main-callback__description {
        font-size: 16px;
        margin-bottom: 0px;
    }
    .form-row {
        width: 100%;
    }
    .btn.btn-light-green {
        width: 100%;
    }
    .form__image-block {
        width: 100%;
        padding: 120px 24px 40px 24px;
        background-image: url("https://www.gwd.ru/upload/medialibrary/e7a/e7adcb5bc3e1ef3f82bc52f8366d1c02.jpg");
    }

    .form__button-block {
        gap: 16px;
        margin-top: 16px;
        flex-direction: column;
    }

    .form__button-block .btn {
        flex: initial;
        width: 100%;
    }
}
/* End */
/* /about/company/style.css?178480075412747 */
/* /local/css/elements/v2024/btn.light-green.css?1776330070124 */
/* /local/css/elements/overlay-appear.css?1760700064496 */
/* /local/components/vue/form/validated-input/style.css?17791020571025 */
/* /local/include-areas/main/callback/style.css?17848948863358 */
