@import "https://fonts.googleapis.com/css2?family=Exo+2:wght@400;500;600;700&display=swap";

html {
    box-sizing: border-box
}

*,
::before,
::after {
    box-sizing: inherit
}

body {
    margin: 0;
    padding: 0;
    scrollbar-gutter: stable;
    min-height: 100vh;
    font-family: 'Exo 2', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: #2b2b2b;
    background: linear-gradient(165deg, #f8fafb 0%, #fefeff 45%, #f5f9fa 100%)
}

.brand-zone {
    background: linear-gradient(135deg, #18596408 0%, #7795f10a 100%);
    padding: 24px 48px;
    border-top: 2px solid #18596426;
    border-bottom: 2px solid #18596426;
    display: flex;
    align-items: center;
    box-shadow: 0 2px 6px -2px #18596414
}

.brand-zone img {
    width: 72px;
    height: 72px;
    object-fit: contain;
    filter: drop-shadow(0 2px 6px #1859641f)
}

.top-bar {
    background: linear-gradient(180deg, #fff 0%, #fdfeff 100%);
    padding: 8px 0;
    border-bottom: 1px solid #18596414
}

.top-bar__inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 48px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 24px
}

.contact-snippet {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    color: #185964;
    text-decoration: none;
    transition: color .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.contact-snippet:hover {
    color: #D58D0C
}

.contact-snippet i {
    font-size: 18px
}

.nav-bar {
    background: linear-gradient(90deg, #7795f10d 0%, #1859640a 100%);
    padding: 24px 0;
    box-shadow: 0 5px 14px -2px #1859641a
}

.nav-bar__inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 48px
}

.nav-primary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 48px;
    list-style: none;
    margin: 0;
    padding: 0
}

.nav-primary__item {
    position: relative
}

.nav-primary__link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 24px;
    font-size: 15px;
    font-weight: 600;
    color: #185964;
    text-decoration: none;
    border-radius: 20px;
    background: #fff9;
    border: 1px solid #1859641f;
    transition: background .26s cubic-bezier(0.4, 0, 0.2, 1), border-color .26s cubic-bezier(0.4, 0, 0.2, 1), color .26s cubic-bezier(0.4, 0, 0.2, 1), transform .22s cubic-bezier(0.0, 0, 0.2, 1);
    box-shadow: 0 2px 6px -2px #18596414
}

.nav-primary__link i {
    font-size: 18px;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.nav-primary__link:hover {
    background: #fff;
    border-color: #7795f14d;
    color: #7795F1;
    transform: translateY(-2px);
    box-shadow: 0 5px 14px -2px #7795f126
}

.nav-primary__link:hover i {
    transform: scale(1.15)
}

.nav-primary__link:focus {
    outline: 2px solid #7795F1;
    outline-offset: 3px
}

.nav-primary__item.dropdown {
    position: relative
}

.dropdown__trigger {
    cursor: pointer
}

.dropdown__panel {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 280px;
    background: #fff;
    border-radius: 20px;
    padding: 8px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity .24s cubic-bezier(0.4, 0, 0.2, 1), visibility .24s cubic-bezier(0.4, 0, 0.2, 1), transform .24s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 8px 36px -2px #1859641c;
    border: 1px solid #18596414;
    z-index: 100
}

.nav-primary__item.dropdown:hover .dropdown__panel,
.nav-primary__item.dropdown:focus-within .dropdown__panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0)
}

.dropdown__list {
    list-style: none;
    margin: 0;
    padding: 0
}

.dropdown__link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 24px;
    font-size: 15px;
    font-weight: 500;
    color: #185964;
    text-decoration: none;
    border-radius: 4px;
    transition: background .22s cubic-bezier(0.0, 0, 0.2, 1), color .22s cubic-bezier(0.0, 0, 0.2, 1)
}

.dropdown__link i {
    font-size: 16px
}

.dropdown__link:hover {
    background: linear-gradient(135deg, #7795f114 0%, #1859640f 100%);
    color: #7795F1
}

.dropdown__link:focus {
    outline: 2px solid #7795F1;
    outline-offset: 2px
}

.ftr-primary {
    background: linear-gradient(135deg, #185964 0%, #14474f 100%);
    padding: 96px 0 48px;
    color: #fff;
    position: relative;
    overflow: hidden
}

.ftr-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #D58D0C 0%, #7795F1 100%)
}

.ftr-primary__inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 48px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 96px;
    align-items: start
}

.ftr-brand {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.ftr-brand__logo-box {
    background: #ffffff14;
    padding: 24px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #ffffff26;
    box-shadow: 0 5px 14px -2px #00000026;
    width: fit-content
}

.ftr-brand__logo-box img {
    width: 72px;
    height: 72px;
    object-fit: contain
}

.ftr-brand__text {
    font-size: 15px;
    line-height: 1.75;
    color: #ffffffd9;
    max-width: 480px
}

.ftr-contacts {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.ftr-contacts__title {
    font-size: 31px;
    line-height: 1.1;
    font-weight: 700;
    color: #fff;
    margin: 0
}

.ftr-contacts__list {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.contact-card {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px;
    background: #ffffff0f;
    border-radius: 20px;
    border: 1px solid #ffffff1f;
    transition: background .26s cubic-bezier(0.4, 0, 0.2, 1), border-color .26s cubic-bezier(0.4, 0, 0.2, 1), transform .22s cubic-bezier(0.0, 0, 0.2, 1)
}

.contact-card:hover {
    background: #ffffff1a;
    border-color: #d58d0c66;
    transform: translateX(8px)
}

.contact-card__icon-box {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, #D58D0C 0%, #c97f0a 100%);
    border-radius: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 5px 14px -2px #d58d0c4d
}

.contact-card__icon-box i {
    font-size: 24px;
    color: #fff
}

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

.contact-card__label {
    font-size: 15px;
    font-weight: 600;
    color: #ffffffb3;
    text-transform: uppercase;
    letter-spacing: .5px
}

.contact-card__value {
    font-size: 15px;
    color: #fff;
    text-decoration: none;
    transition: color .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.contact-card__value:hover {
    color: #D58D0C
}

.contact-card__value:focus {
    outline: 2px solid #D58D0C;
    outline-offset: 2px
}

.ftr-secondary {
    background: linear-gradient(180deg, #0f3940 0%, #0a2b31 100%);
    padding: 48px 0;
    color: #ffffffb3
}

.ftr-secondary__inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 48px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 48px;
    flex-wrap: wrap
}

.ftr-legal {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap
}

.ftr-legal__copyright {
    font-size: 15px;
    color: #fff9
}

.ftr-legal__divider {
    width: 1px;
    height: 16px;
    background: #fff3
}

.ftr-legal__company {
    font-size: 15px;
    font-weight: 600;
    color: #ffffffd9
}

.ftr-nav {
    display: flex;
    gap: 48px;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-wrap: wrap
}

.ftr-nav__link {
    font-size: 15px;
    color: #ffffffb3;
    text-decoration: none;
    transition: color .24s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative
}

.ftr-nav__link::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 0;
    height: 2px;
    background: #D58D0C;
    transition: width .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.ftr-nav__link:hover {
    color: #fff
}

.ftr-nav__link:hover::after {
    width: 100%
}

.ftr-nav__link:focus {
    outline: 2px solid #D58D0C;
    outline-offset: 3px
}

.consent-popup {
    position: fixed;
    top: 24px;
    right: 24px;
    width: 420px;
    max-width: calc(100vw - 48px);
    background: #fff;
    border-radius: 20px;
    padding: 48px;
    box-shadow: 0 8px 36px -2px #1859641c;
    border: 2px solid #1859641f;
    z-index: 1200;
    display: none;
    transform: translateY(24px);
    opacity: 0;
    transition: transform .32s cubic-bezier(0.4, 0, 0.2, 1), opacity .32s cubic-bezier(0.4, 0, 0.2, 1)
}

.consent-popup.visible {
    transform: translateY(0);
    opacity: 1
}

.consent-popup__headline {
    font-size: 31px;
    line-height: 1.1;
    font-weight: 700;
    color: #185964;
    margin: 0 0 24px
}

.consent-popup__text {
    font-size: 15px;
    line-height: 1.75;
    color: #4a4a4a;
    margin: 0 0 24px
}

.consent-popup__actions {
    display: flex;
    gap: 24px;
    margin-bottom: 24px
}

.consent-popup__btn {
    flex: 1;
    padding: 8px 24px;
    font-size: 15px;
    font-weight: 600;
    font-family: 'Exo 2', sans-serif;
    border: none;
    border-radius: 20px;
    cursor: pointer;
    transition: transform .24s cubic-bezier(0.0, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1), background .26s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 6px -2px #18596414
}

.consent-popup__btn:focus {
    outline: 2px solid #7795F1;
    outline-offset: 3px
}

.consent-popup__btn--accept {
    background: linear-gradient(135deg, #185964 0%, #14474f 100%);
    color: #fff
}

.consent-popup__btn--accept:hover {
    transform: scale(1.05);
    box-shadow: 0 5px 14px -2px #1859642e
}

.consent-popup__btn--reject {
    background: linear-gradient(135deg, #18596414 0%, #7795f10f 100%);
    color: #185964;
    border: 1px solid #18596433
}

.consent-popup__btn--reject:hover {
    transform: scale(1.05);
    background: linear-gradient(135deg, #1859641f 0%, #7795f114 100%);
    box-shadow: 0 5px 14px -2px #1859641f
}

.consent-popup__toggle-link {
    font-size: 15px;
    color: #7795F1;
    text-decoration: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: color .24s cubic-bezier(0.4, 0, 0.2, 1);
    border: none;
    background: none;
    padding: 0;
    font-family: 'Exo 2', sans-serif;
    font-weight: 600
}

.consent-popup__toggle-link:hover {
    color: #D58D0C
}

.consent-popup__toggle-link:focus {
    outline: 2px solid #7795F1;
    outline-offset: 2px
}

.consent-popup__categories {
    display: none;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #1859641f
}

.consent-popup__categories.expanded {
    display: block
}

.consent-popup__category {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px;
    background: linear-gradient(135deg, #7795f10a 0%, #18596405 100%);
    border-radius: 4px;
    margin-bottom: 8px;
    border: 1px solid #18596414
}

.consent-popup__category-label {
    flex: 1;
    font-size: 15px;
    font-weight: 600;
    color: #185964;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px
}

.consent-popup__checkbox {
    width: 20px;
    height: 20px;
    cursor: pointer;
    accent-color: #185964
}

.consent-popup__checkbox:disabled {
    cursor: not-allowed;
    opacity: .5
}

.consent-popup__checkbox:focus {
    outline: 2px solid #7795F1;
    outline-offset: 2px
}

@media (max-width: 1024px) {

    .top-bar__inner,
    .nav-bar__inner,
    .ftr-primary__inner,
    .ftr-secondary__inner {
        padding: 0 24px
    }

    .brand-zone {
        padding: 24px
    }

    .ftr-primary__inner {
        grid-template-columns: 1fr;
        gap: 48px
    }

    .nav-primary {
        gap: 8px 24px
    }
}

@media (max-width: 768px) {
    .top-bar__inner {
        flex-direction: column;
        gap: 8px
    }

    .nav-primary {
        flex-direction: column;
        gap: 8px
    }

    .nav-primary__link {
        width: 100%;
        justify-content: center
    }

    .dropdown__panel {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        margin-top: 8px;
        display: none
    }

    .dropdown__panel.expanded {
        display: block
    }

    .ftr-secondary__inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px
    }

    .ftr-nav {
        flex-direction: column;
        gap: 24px
    }

    .consent-popup {
        top: auto;
        bottom: 24px;
        right: 24px;
        left: 24px;
        width: auto;
        max-width: none;
        padding: 24px
    }

    .consent-popup__headline {
        font-size: 31px
    }

    .consent-popup__actions {
        flex-direction: column;
        gap: 8px
    }

    .contact-card {
        flex-direction: column;
        text-align: center
    }

    .contact-card:hover {
        transform: translateY(-4px)
    }
}

@media (max-width: 360px) {

    .brand-zone,
    .top-bar__inner,
    .nav-bar__inner,
    .ftr-primary__inner,
    .ftr-secondary__inner {
        padding: 0 8px
    }

    .brand-zone {
        padding: 8px
    }

    .ftr-primary {
        padding: 48px 0 24px
    }

    .ftr-secondary {
        padding: 24px 0
    }

    .consent-popup {
        padding: 24px
    }

    .consent-popup__headline {
        font-size: 31px
    }
}

.policy-text {
    max-width: 1320px;
    margin: 0 auto;
    padding: 96px 24px;
    background: #fff
}

.policy-text h1 {
    font-size: 58px;
    line-height: 1.1;
    letter-spacing: -.02em;
    color: #185964;
    margin: 0 0 48px
}

.policy-text h2 {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 96px 0 24px
}

.policy-text h3 {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 48px 0 24px
}

.policy-text h4 {
    font-size: 31px;
    line-height: 1.1;
    color: #185964;
    margin: 48px 0 24px
}

.policy-text h5 {
    font-size: 15px;
    line-height: 1.75;
    font-weight: 700;
    color: #185964;
    margin: 24px 0 8px;
    text-transform: uppercase;
    letter-spacing: .05em
}

.policy-text h6 {
    font-size: 15px;
    line-height: 1.75;
    font-weight: 700;
    color: #185964;
    margin: 24px 0 8px
}

.policy-text p {
    font-size: 15px;
    line-height: 1.75;
    color: #1a1a1a;
    margin: 0 0 24px
}

.policy-text ul,
.policy-text ol {
    font-size: 15px;
    line-height: 1.75;
    color: #1a1a1a;
    margin: 0 0 24px;
    padding: 0 0 0 24px
}

.policy-text ul {
    list-style: none
}

.policy-text ul li {
    position: relative;
    margin: 0 0 8px;
    padding-left: 24px
}

.policy-text ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 11px;
    width: 6px;
    height: 6px;
    background: #185964;
    border-radius: 4px
}

.policy-text ol {
    list-style: none;
    counter-reset: policy-counter
}

.policy-text ol li {
    position: relative;
    margin: 0 0 8px;
    padding-left: 24px;
    counter-increment: policy-counter
}

.policy-text ol li::before {
    content: counter(policy-counter) '.';
    position: absolute;
    left: 0;
    top: 0;
    color: #185964;
    font-weight: 700
}

.policy-text em,
.policy-text i {
    font-style: italic
}

.policy-text a {
    color: #7795F1;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    transition: color .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.policy-text a:hover {
    color: #185964
}

.policy-text a:focus {
    outline: 2px solid #7795F1;
    outline-offset: 2px;
    border-radius: 4px
}

.policy-text hr {
    border: none;
    height: 1px;
    background: linear-gradient(90deg, #1859641a 0%, #1859644d 50%, #1859641a 100%);
    margin: 48px 0
}

@media (max-width: 768px) {
    .policy-text {
        padding: 48px 24px
    }

    .policy-text h1 {
        font-size: 43px;
        margin: 0 0 24px
    }

    .policy-text h2 {
        font-size: 31px;
        margin: 48px 0 24px
    }

    .policy-text h3 {
        font-size: 31px;
        margin: 24px 0
    }

    .policy-text h4 {
        font-size: 31px;
        margin: 24px 0
    }
}

@media (max-width: 360px) {
    .policy-text {
        padding: 24px
    }

    .policy-text h1 {
        font-size: 31px
    }

    .policy-text h2 {
        font-size: 31px
    }
}

.konsult {
    max-width: 1320px;
    margin: 0 auto;
    background: #fff
}

.konsult__title-area {
    padding: 96px 24px 48px;
    text-align: center;
    position: relative;
    overflow: hidden
}

.konsult__title-heading {
    font-size: 58px;
    line-height: 1.1;
    letter-spacing: -.02em;
    color: #185964;
    margin: 0 0 48px;
    font-weight: 700
}

.konsult__title-img-wrap {
    max-width: 920px;
    margin: 0 auto;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 36px -2px #1859641c
}

.konsult__title-img {
    width: 100%;
    height: auto;
    display: block;
    filter: saturate(0.6);
    transition: filter .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.konsult__title-img-wrap:hover .konsult__title-img {
    filter: saturate(1)
}

.konsult__intro-zone {
    padding: 96px 24px;
    background: linear-gradient(233deg, #18596408 0%, #7795f105 68%);
    position: relative
}

.konsult__intro-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    max-width: 1100px;
    margin: 0 auto
}

.konsult__intro-left {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.konsult__intro-title {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0;
    font-weight: 700;
    text-align: center
}

.konsult__intro-text {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    text-align: center
}

.konsult__intro-right {
    display: flex;
    flex-direction: column;
    gap: 24px;
    background: #fff;
    padding: 48px;
    border-radius: 20px;
    box-shadow: inset 0 2px 6px -2px #18596414;
    position: relative
}

.konsult__intro-right::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(233deg, #185964 0%, #7795F1 68%);
    border-radius: 4px 0 0 4px
}

.konsult__intro-right::after {
    content: '';
    position: absolute;
    top: 0;
    left: 8px;
    width: 4px;
    height: 100%;
    background: linear-gradient(233deg, #D58D0C 0%, #7795F1 68%);
    border-radius: 4px 0 0 4px
}

.konsult__intro-sub {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .08em
}

.konsult__intro-detail {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    text-align: center
}

.konsult__metrics-section {
    padding: 96px 24px;
    background: #fff;
    position: relative
}

.konsult__metrics-divider {
    width: 78%;
    height: 2px;
    background: linear-gradient(233deg, #185964 0%, transparent 68%);
    margin: 0 0 96px
}

.konsult__metrics-header {
    text-align: center;
    margin: 0 0 48px
}

.konsult__metrics-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0 0 24px;
    font-weight: 700;
    text-align: center
}

.konsult__metrics-lead {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    max-width: 740px;
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.konsult__metrics-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    max-width: 1100px;
    margin: 0 auto 48px
}

.konsult__metric-card {
    background: linear-gradient(233deg, #7795f10a 0%, #d58d0c05 68%);
    padding: 48px;
    border-radius: 20px;
    box-shadow: 0 2px 6px -2px #18596414;
    transition: box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1), transform .24s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden
}

.konsult__metric-card:hover {
    box-shadow: 0 8px 36px -2px #1859641c;
    transform: translateY(-4px)
}

.konsult__metric-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 24px;
    background: linear-gradient(233deg, #185964 0%, #7795F1 68%);
    border-radius: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: konsult-shake 4s cubic-bezier(0.4, 0, 0.2, 1) infinite
}

@keyframes konsult-shake {

    0%,
    90%,
    100% {
        transform: translateX(0)
    }

    92% {
        transform: translateX(-4px)
    }

    94% {
        transform: translateX(4px)
    }

    96% {
        transform: translateX(-4px)
    }

    98% {
        transform: translateX(4px)
    }
}

.konsult__metric-icon svg {
    width: 32px;
    height: 32px;
    fill: #fff
}

.konsult__metric-label {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0 0 24px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .08em
}

.konsult__metric-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    text-align: center
}

.konsult__chart-wrapper {
    max-width: 820px;
    margin: 0 auto;
    background: #fff;
    padding: 48px;
    border-radius: 20px;
    box-shadow: inset 0 2px 6px -2px #18596414
}

.konsult__chart-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0 0 48px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .08em
}

.konsult__chart-bars {
    display: flex;
    flex-direction: column;
    gap: 24px
}

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

.konsult__chart-row-label {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 700;
    text-align: center
}

.konsult__chart-bar-wrap {
    background: #18596414;
    height: 36px;
    border-radius: 4px;
    overflow: hidden;
    position: relative
}

.konsult__chart-bar-fill {
    height: 100%;
    background: linear-gradient(233deg, #185964 0%, #7795F1 68%);
    transition: width .28s cubic-bezier(0.0, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 8px;
    position: relative
}

.konsult__chart-bar-fill::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(233deg, #fff3 0%, transparent 68%);
    animation: konsult-pulse 2.4s cubic-bezier(0.4, 0, 0.2, 1) infinite
}

@keyframes konsult-pulse {

    0%,
    100% {
        opacity: .3
    }

    50% {
        opacity: .7
    }
}

.konsult__chart-bar-value {
    font-size: 15px;
    line-height: 1.75;
    color: #fff;
    font-weight: 700;
    position: relative;
    z-index: 1
}

.konsult__experts-zone {
    padding: 96px 24px;
    background: linear-gradient(233deg, #d58d0c0a 0%, #7795f105 68%);
    position: relative
}

.konsult__experts-zone::before {
    content: '';
    position: absolute;
    top: 0;
    right: 22%;
    width: 32%;
    height: 2px;
    background: linear-gradient(233deg, transparent 0%, #7795F1 68%)
}

.konsult__experts-header {
    text-align: center;
    margin: 0 0 48px
}

.konsult__experts-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0 0 24px;
    font-weight: 700;
    text-align: center
}

.konsult__experts-intro {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    max-width: 740px;
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.konsult__experts-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    max-width: 1100px;
    margin: 0 auto
}

.konsult__expert-card {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start
}

.konsult__expert-img-wrap {
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
    aspect-ratio: 2/3;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 5px 14px -2px #1859641a;
    position: relative
}

.konsult__expert-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    display: block;
    transition: transform .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.konsult__expert-img-wrap:hover .konsult__expert-img {
    transform: scale(1.05)
}

.konsult__expert-content {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.konsult__expert-name {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .08em
}

.konsult__expert-bio {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    text-align: center
}

.konsult__expert-specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0
}

.konsult__expert-specialty {
    background: #fff;
    padding: 8px 24px;
    border-radius: 36px;
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 700;
    box-shadow: 0 2px 6px -2px #18596414;
    transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.konsult__expert-specialty:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 14px -2px #1859641a
}

.konsult__process-section {
    padding: 96px 24px;
    background: #fff;
    position: relative;
    background-image: url(/uploads_gallery/POST-THUMBNAIL-2.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed
}

.konsult__process-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fffffff0;
    backdrop-filter: blur(8px);
    z-index: 0
}

.konsult__process-content {
    position: relative;
    z-index: 1
}

.konsult__process-header {
    text-align: center;
    margin: 0 0 48px
}

.konsult__process-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0 0 24px;
    font-weight: 700;
    text-align: center
}

.konsult__process-lead {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    max-width: 740px;
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.konsult__process-steps {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    max-width: 1100px;
    margin: 0 auto
}

.konsult__step-item {
    background: #ffffffe0;
    padding: 48px;
    border-radius: 20px;
    box-shadow: 0 5px 14px -2px #1859641a;
    display: flex;
    flex-direction: column;
    gap: 24px;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative
}

.konsult__step-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 36px -2px #1859641c
}

.konsult__step-number {
    width: 56px;
    height: 56px;
    background: linear-gradient(233deg, #D58D0C 0%, #7795F1 68%);
    border-radius: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 31px;
    line-height: 1.1;
    color: #fff;
    font-weight: 700;
    margin: 0 auto
}

.konsult__step-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #185964;
    margin: 0;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .08em
}

.konsult__step-text {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    text-align: center
}

.konsult__step-features {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0
}

.konsult__step-feature {
    background: #18596414;
    padding: 8px 24px;
    border-radius: 36px;
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 700
}

@media (min-width: 768px) {
    .konsult__intro-grid {
        grid-template-columns: 1fr 1fr
    }

    .konsult__metrics-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .konsult__expert-card {
        grid-template-columns: 280px 1fr;
        gap: 48px
    }

    .konsult__expert-img-wrap {
        margin: 0
    }

    .konsult__expert-name,
    .konsult__expert-bio {
        text-align: left
    }

    .konsult__expert-specialties {
        justify-content: flex-start
    }

    .konsult__process-steps {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width: 1024px) {
    .konsult__title-area {
        padding: 96px 48px 48px
    }

    .konsult__intro-zone {
        padding: 96px 48px
    }

    .konsult__metrics-section {
        padding: 96px 48px
    }

    .konsult__metrics-grid {
        grid-template-columns: repeat(3, 1fr)
    }

    .konsult__experts-zone {
        padding: 96px 48px
    }

    .konsult__process-section {
        padding: 96px 48px
    }

    .konsult__process-steps {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (min-width: 1440px) {
    .konsult__intro-grid {
        grid-template-columns: 1.2fr 1fr
    }

    .konsult__expert-card {
        grid-template-columns: 320px 1fr
    }
}

@media (max-width: 360px) {
    .konsult__title-heading {
        font-size: 43px
    }

    .konsult__intro-title,
    .konsult__metrics-heading,
    .konsult__experts-heading,
    .konsult__process-heading {
        font-size: 31px
    }

    .konsult__intro-sub,
    .konsult__metric-label,
    .konsult__chart-title,
    .konsult__expert-name,
    .konsult__step-title {
        font-size: 24px
    }

    .konsult__intro-right,
    .konsult__metric-card,
    .konsult__chart-wrapper,
    .konsult__step-item {
        padding: 24px
    }
}

.svc {
    max-width: 1320px;
    margin: 0 auto;
    background: #fff
}

.svc__intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 48px;
    padding: 48px 24px;
    position: relative;
    overflow: hidden;
    background: linear-gradient(233deg, #18596408 0%, #18596400 68%)
}

.svc__intro::before {
    content: '';
    position: absolute;
    top: -120px;
    right: -80px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    border: 1px solid #1859640f;
    pointer-events: none
}

.svc__intro::after {
    content: '';
    position: absolute;
    bottom: -160px;
    left: -100px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 1px solid #7795f10d;
    pointer-events: none
}

.svc__intro-txt {
    padding: 0 24px;
    position: relative;
    z-index: 1
}

.svc__intro-h {
    font-size: 58px;
    line-height: 1.1;
    color: #185964;
    margin: 0 0 24px;
    letter-spacing: -.02em;
    animation: svc-drop-in .26s cubic-bezier(0.0, 0, 0.2, 1) backwards
}

@keyframes svc-drop-in {
    from {
        opacity: 0;
        transform: translateY(-32px)
    }

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

.svc__intro-visual {
    position: relative;
    clip-path: polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);
    animation: svc-drop-in .28s cubic-bezier(0.4, 0, 0.2, 1) .08s backwards
}

.svc__intro-visual::before {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(0deg, transparent, transparent 2px, #18596405 2px, #18596405 4px);
    pointer-events: none;
    z-index: 2
}

.svc__intro-img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    display: block;
    filter: saturate(0.7)
}

.svc__method {
    padding: 96px 24px;
    background: linear-gradient(90deg, #7795f10a 0%, #fff0 45%);
    position: relative
}

.svc__method::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(233deg, #185964 0%, #7795F1 100%)
}

.svc__method-inner {
    max-width: 920px;
    margin: 0 auto
}

.svc__method-h {
    font-size: 43px;
    line-height: 1.1;
    color: #185964;
    text-align: center;
    margin: 0 0 48px;
    letter-spacing: -.01em;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .08em
}

.svc__method-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px
}

.svc__method-card {
    background: #fff;
    padding: 24px;
    border-radius: 20px;
    box-shadow: inset 0 2px 6px -2px #18596414;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.svc__method-card:hover {
    transform: translateY(-4px)
}

.svc__method-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: linear-gradient(233deg, #18596414 0%, #7795f114 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 24px
}

.svc__method-icon svg {
    width: 36px;
    height: 36px;
    fill: none;
    stroke: #185964;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round
}

.svc__method-title {
    font-size: 31px;
    line-height: 1.1;
    color: #185964;
    margin: 0 0 8px;
    font-weight: 700
}

.svc__method-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0
}

.svc__offer {
    padding: 48px 24px;
    position: relative
}

.svc__offer::before {
    content: '';
    position: absolute;
    top: 80px;
    right: -60px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    border: 1px solid #d58d0c0a;
    pointer-events: none
}

.svc__offer-inner {
    max-width: 1120px;
    margin: 0 auto
}

.svc__offer-h {
    font-size: 43px;
    line-height: 1.1;
    color: #185964;
    text-align: center;
    margin: 0 0 24px;
    letter-spacing: -.01em;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .08em
}

.svc__offer-lead {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    text-align: center;
    margin: 0 auto 48px;
    max-width: 720px
}

.svc__offer-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    margin: 0 0 48px
}

.svc__offer-item {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.svc__offer-media {
    width: 100%;
    height: 320px;
    border-radius: 36px;
    overflow: hidden;
    box-shadow: 0 5px 14px -2px #1859641a
}

.svc__offer-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

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

.svc__offer-label {
    font-size: 31px;
    line-height: 1.1;
    color: #185964;
    margin: 0;
    font-weight: 700
}

.svc__offer-txt {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0
}

.svc__offer-cta {
    text-align: center;
    padding: 24px 0 0
}

.svc__offer-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 48px;
    height: 56px;
    background: #185964;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: width .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 6px -2px #18596414;
    text-decoration: none
}

.svc__offer-btn:hover {
    width: 280px;
    box-shadow: 0 8px 36px -2px #1859641c
}

.svc__offer-btn:focus {
    outline: 2px solid #7795F1;
    outline-offset: 2px
}

.svc__proof {
    padding: 96px 24px;
    background: linear-gradient(90deg, #1859640d 0%, #fff0 72%);
    position: relative
}

.svc__proof::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(233deg, #D58D0C 0%, #7795F1 100%)
}

.svc__proof::after {
    content: '';
    position: absolute;
    bottom: -100px;
    left: 50%;
    transform: translateX(-50%);
    width: 360px;
    height: 360px;
    border-radius: 50%;
    border: 1px solid #7795f10a;
    pointer-events: none
}

.svc__proof-inner {
    max-width: 820px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center
}

.svc__proof-h {
    font-size: 43px;
    line-height: 1.1;
    color: #185964;
    text-align: center;
    margin: 0 0 48px;
    letter-spacing: -.01em;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .08em
}

.svc__proof-card {
    background: #fff;
    padding: 48px;
    border-radius: 20px;
    box-shadow: inset 0 5px 14px -2px #1859641a;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%
}

.svc__proof-avatar {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 0 24px;
    border: 4px solid #7795f11f
}

.svc__proof-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    display: block
}

.svc__proof-quote {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0 0 24px;
    font-style: italic
}

.svc__proof-author {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    margin: 0;
    font-weight: 700
}

.svc__proof-role {
    font-size: 15px;
    line-height: 1.75;
    color: #666;
    margin: 0
}

.svc__proof-metric {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 48px 0 0
}

.svc__proof-num {
    font-size: 58px;
    line-height: 1.1;
    color: #D58D0C;
    margin: 0 0 8px;
    font-weight: 700;
    letter-spacing: -.02em
}

.svc__proof-label {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 700
}

@media (max-width: 1024px) {
    .svc__intro {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 48px 24px
    }

    .svc__intro-h {
        font-size: 43px
    }

    .svc__intro-visual {
        order: -1
    }

    .svc__intro-img {
        height: 280px
    }

    .svc__method-grid {
        grid-template-columns: 1fr;
        gap: 24px
    }

    .svc__offer-grid {
        grid-template-columns: 1fr;
        gap: 24px
    }

    .svc__offer-media {
        height: 240px
    }
}

@media (max-width: 768px) {
    .svc__intro {
        padding: 24px
    }

    .svc__intro-h {
        font-size: 31px;
        margin: 0 0 24px
    }

    .svc__intro-txt {
        padding: 0
    }

    .svc__intro-img {
        height: 220px
    }

    .svc__method {
        padding: 48px 24px
    }

    .svc__method-h {
        font-size: 31px;
        margin: 0 0 24px
    }

    .svc__method-card {
        padding: 24px
    }

    .svc__method-title {
        font-size: 15px
    }

    .svc__offer {
        padding: 24px
    }

    .svc__offer-h {
        font-size: 31px;
        margin: 0 0 24px
    }

    .svc__offer-lead {
        margin: 0 0 24px
    }

    .svc__offer-grid {
        margin: 0 0 24px
    }

    .svc__offer-label {
        font-size: 15px
    }

    .svc__offer-btn {
        width: 100%;
        max-width: 320px
    }

    .svc__offer-btn:hover {
        width: 100%;
        max-width: 320px
    }

    .svc__proof {
        padding: 48px 24px
    }

    .svc__proof-h {
        font-size: 31px;
        margin: 0 0 24px
    }

    .svc__proof-card {
        padding: 24px
    }

    .svc__proof-metric {
        margin: 24px 0 0
    }

    .svc__proof-num {
        font-size: 43px
    }
}

@media (max-width: 360px) {
    .svc__intro-h {
        font-size: 31px
    }

    .svc__method-h {
        font-size: 31px
    }

    .svc__offer-h {
        font-size: 31px
    }

    .svc__proof-h {
        font-size: 31px
    }

    .svc__proof-num {
        font-size: 43px
    }
}

.first {
    background: #FAFCFD;
    overflow-x: clip
}

.first__hero {
    position: relative;
    padding: 48px 24px;
    max-width: 1320px;
    margin: 0 auto;
    overflow: visible
}

.first__hero-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    align-items: center
}

.first__hero-content {
    order: 2
}

.first__hero-title {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.02em;
    color: #0A1F24;
    margin: 0 0 24px
}

.first__hero-accent {
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent
}

.first__hero-visual {
    position: relative;
    order: 1;
    height: 280px
}

.first__hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 20px;
    box-shadow: 0 8px 36px -2px #1859641c
}

.first__hero-wave {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 48px;
    overflow: hidden
}

.first__hero-wave svg {
    width: 100%;
    height: 100%;
    display: block
}

.first__invest {
    position: relative;
    padding: 96px 24px;
    max-width: 1320px;
    margin: 0 auto;
    background: linear-gradient(233deg, #7795f10f 35%, #fff0 100%);
    border-radius: 36px
}

.first__invest-inner {
    max-width: 920px;
    margin: 0 auto;
    text-align: center
}

.first__invest-label {
    font-size: 15px;
    line-height: 1.75;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-weight: 700;
    color: #185964;
    margin: 0 0 24px
}

.first__invest-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 48px
}

.first__invest-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.first__invest-card {
    background: #FFF;
    padding: 48px 24px;
    border-radius: 20px;
    box-shadow: inset 0 2px 6px -2px #18596414;
    position: relative;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.first__invest-card:hover {
    transform: translateY(-4px)
}

.first__invest-number {
    position: absolute;
    top: 24px;
    left: 24px;
    width: 36px;
    height: 36px;
    border-radius: 4px;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    color: #FFF
}

.first__invest-card-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 24px;
    padding-top: 24px
}

.first__invest-card-text {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0
}

.first__voices {
    padding: 96px 24px;
    max-width: 1320px;
    margin: 0 auto;
    position: relative
}

.first__voices-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 48px;
    text-align: center
}

.first__voices-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px
}

.first__voice {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
    padding: 48px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0 5px 14px -2px #1859641a;
    position: relative;
    overflow: hidden
}

.first__voice::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%)
}

.first__voice-portrait {
    width: 140px;
    height: 175px;
    border-radius: 4px;
    overflow: hidden;
    margin: 0 auto
}

.first__voice-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top
}

.first__voice-content {
    text-align: center
}

.first__voice-name {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 8px
}

.first__voice-role {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    margin: 0 0 24px
}

.first__voice-quote {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0 0 24px
}

.first__voice-result {
    display: inline-block;
    padding: 8px 24px;
    background: #7795f114;
    border-radius: 20px;
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 700
}

.first__standing {
    padding: 96px 24px;
    max-width: 1320px;
    margin: 0 auto;
    background: linear-gradient(180deg, #F4F7FC 0%, #FFF 50%);
    border-radius: 36px
}

.first__standing-inner {
    max-width: 920px;
    margin: 0 auto;
    text-align: center
}

.first__standing-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 24px
}

.first__standing-intro {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0 0 48px
}

.first__standing-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.first__standing-item {
    padding: 24px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0 2px 6px -2px #18596414;
    text-align: center;
    transition: box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.first__standing-item:hover {
    box-shadow: 0 8px 36px -2px #1859641c
}

.first__standing-icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 24px;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center
}

.first__standing-icon svg {
    width: 28px;
    height: 28px;
    fill: #FFF
}

.first__standing-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 8px
}

.first__standing-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0
}

.first__scale {
    padding: 96px 24px;
    max-width: 1320px;
    margin: 0 auto;
    position: relative
}

.first__scale-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 48px;
    text-align: center
}

.first__scale-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px
}

.first__scale-visual {
    position: relative;
    padding: 48px;
    background: linear-gradient(233deg, #1859640a 35%, #7795f10a 100%);
    border-radius: 20px;
    animation: first__glow 6s ease-in-out infinite
}

@keyframes first__glow {

    0%,
    100% {
        box-shadow: inset 0 0 48px #7795f114
    }

    50% {
        box-shadow: inset 0 0 72px #7795f124
    }
}

.first__scale-stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.first__scale-stat {
    text-align: center
}

.first__scale-number {
    font-size: 58px;
    line-height: 1.1;
    letter-spacing: -.02em;
    font-weight: 700;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0 0 8px
}

.first__scale-label {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0
}

.first__scale-bar {
    margin-top: 48px;
    padding: 24px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0 2px 6px -2px #18596414
}

.first__scale-bar-label {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px
}

.first__scale-bar-text {
    font-size: 15px;
    line-height: 1.75;
    color: #0A1F24;
    font-weight: 700;
    margin: 0
}

.first__scale-bar-track {
    height: 24px;
    background: #F4F7FC;
    border-radius: 20px;
    overflow: hidden;
    position: relative
}

.first__scale-bar-fill {
    height: 100%;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%);
    border-radius: 20px;
    transition: width .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.first__scale-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.first__scale-block {
    padding: 48px 24px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: inset 0 2px 6px -2px #18596414
}

.first__scale-block-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 24px;
    text-align: center
}

.first__scale-block-text {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0;
    text-align: center
}

.first__community {
    padding: 96px 24px;
    max-width: 1320px;
    margin: 0 auto;
    position: relative
}

.first__community-inner {
    max-width: 920px;
    margin: 0 auto
}

.first__community-heading {
    font-size: 43px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 24px;
    text-align: center
}

.first__community-intro {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0 0 48px;
    text-align: center
}

.first__community-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.first__community-featured {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.first__community-center {
    padding: 48px 24px;
    background: linear-gradient(233deg, #1859640f 35%, #7795f10f 100%);
    border-radius: 20px;
    text-align: center;
    position: relative;
    overflow: hidden
}

.first__community-center::after {
    content: '';
    position: absolute;
    bottom: -24px;
    right: -24px;
    width: 120px;
    height: 120px;
    background: #7795f114;
    border-radius: 50%
}

.first__community-center-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 24px;
    position: relative;
    z-index: 1
}

.first__community-center-text {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0;
    position: relative;
    z-index: 1
}

.first__community-side {
    padding: 48px 24px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0 5px 14px -2px #1859641a;
    text-align: center
}

.first__community-side-title {
    font-size: 31px;
    line-height: 1.1;
    letter-spacing: -.01em;
    color: #0A1F24;
    margin: 0 0 24px
}

.first__community-side-text {
    font-size: 15px;
    line-height: 1.75;
    color: #3A4F54;
    margin: 0
}

.first__community-dots {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 48px
}

.first__community-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #185964;
    opacity: .3;
    transition: opacity .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.first__community-dot:nth-child(1) {
    background: #185964;
    opacity: 1
}

.first__community-dot:nth-child(2) {
    background: #D58D0C;
    opacity: 1
}

.first__community-dot:nth-child(3) {
    background: #7795F1;
    opacity: 1
}

.first__community-img-wrapper {
    margin-top: 48px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 36px -2px #1859641c
}

.first__community-img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: center;
    display: block
}

@media (min-width: 768px) {
    .first__hero {
        padding: 96px 24px
    }

    .first__hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 48px
    }

    .first__hero-content {
        order: 1
    }

    .first__hero-visual {
        order: 2;
        height: 360px
    }

    .first__hero-title {
        font-size: 58px
    }

    .first__invest-grid {
        grid-template-columns: 1fr 1fr
    }

    .first__voices-grid {
        grid-template-columns: 1fr 1fr
    }

    .first__voice {
        grid-template-columns: 140px 1fr;
        gap: 24px
    }

    .first__voice-portrait {
        margin: 0
    }

    .first__voice-content {
        text-align: left
    }

    .first__standing-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .first__scale-wrapper {
        grid-template-columns: 1fr 1fr;
        gap: 48px
    }

    .first__scale-stats {
        grid-template-columns: 1fr 1fr
    }

    .first__community-layout {
        grid-template-columns: 1fr
    }

    .first__community-featured {
        grid-template-columns: 1fr 2fr 1fr
    }
}

@media (min-width: 1024px) {
    .first__hero {
        padding: 96px 48px
    }

    .first__hero-grid {
        gap: 96px
    }

    .first__hero-visual {
        height: 420px
    }

    .first__invest {
        padding: 96px 48px
    }

    .first__invest-grid {
        grid-template-columns: repeat(3, 1fr)
    }

    .first__voices {
        padding: 96px 48px
    }

    .first__standing {
        padding: 96px 48px
    }

    .first__standing-grid {
        grid-template-columns: repeat(3, 1fr)
    }

    .first__scale {
        padding: 96px 48px
    }

    .first__scale-content {
        grid-template-columns: 1fr 1fr
    }

    .first__community {
        padding: 96px 48px
    }
}

@media (min-width: 1440px) {
    .first__hero-visual {
        height: 480px
    }
}

.abt {
    background: linear-gradient(233deg, #f8fafb 0%, #fff 68%);
    position: relative;
    overflow-x: clip
}

.abt__hero {
    position: relative;
    padding: 96px 24px 48px;
    background: linear-gradient(233deg, #7795f10f 0%, #18596408 68%);
    overflow: hidden
}

.abt__hero::before {
    content: '';
    position: absolute;
    top: -120px;
    right: -80px;
    width: 480px;
    height: 480px;
    background: radial-gradient(circle at 30% 30%, #7795f114, transparent 70%);
    pointer-events: none;
    z-index: 1
}

.abt__hero::after {
    content: '∫';
    position: absolute;
    top: 48px;
    left: 8%;
    font-size: 420px;
    line-height: 1;
    color: #18596408;
    font-weight: 700;
    pointer-events: none;
    z-index: 1
}

.abt__hero-inner {
    max-width: 1320px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    align-items: center
}

.abt__hero-content {
    text-align: center
}

.abt__hero-label {
    display: inline-block;
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    background: #7795f11f;
    padding: 8px 24px;
    border-radius: 20px;
    margin-bottom: 24px;
    letter-spacing: .02em;
    font-weight: 600
}

.abt__hero-title {
    font-size: 58px;
    line-height: 1.1;
    color: #1a2b3c;
    margin: 0 0 24px;
    letter-spacing: -.02em;
    font-weight: 700
}

.abt__hero-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #3d4f5c;
    max-width: 680px;
    margin: 0 auto 48px
}

.abt__hero-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    line-height: 1.75;
    color: #fff;
    background: #185964;
    padding: 8px 24px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: 600;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 6px -2px #18596414
}

.abt__hero-link:hover {
    transform: translateX(4px);
    box-shadow: 0 5px 14px -2px #1859641a
}

.abt__hero-link::after {
    content: '→';
    font-size: 18px;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt__hero-link:hover::after {
    transform: translateX(4px)
}

.abt__hero-visual {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 36px -2px #1859641c
}

.abt__hero-img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 16/10;
    object-fit: cover;
    object-position: center
}

.abt__hero-overlay {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(233deg, #185964b8 0%, transparent 100%);
    pointer-events: none
}

.abt__divider-one {
    width: 100%;
    height: 80px;
    display: block
}

.abt__story {
    padding: 96px 24px;
    background: #185964;
    position: relative;
    overflow: hidden
}

.abt__story::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(135deg, transparent 45%, #ffffff05 45%, #ffffff05 55%, transparent 55%), linear-gradient(-135deg, transparent 45%, #ffffff05 45%, #ffffff05 55%, transparent 55%);
    background-size: 48px 48px;
    background-position: 0 0, 24px 24px;
    pointer-events: none;
    opacity: .4;
    animation: abt-pattern-shift 28s linear infinite
}

@keyframes abt-pattern-shift {
    0% {
        background-position: 0 0, 24px 24px
    }

    100% {
        background-position: 48px 48px, 72px 72px
    }
}

.abt__story-inner {
    max-width: 1320px;
    margin: 0 auto;
    position: relative;
    z-index: 2
}

.abt__story-header {
    text-align: center;
    margin-bottom: 48px
}

.abt__story-heading {
    font-size: 43px;
    line-height: 1.1;
    color: #fff;
    margin: 0 0 24px;
    letter-spacing: -.01em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em
}

.abt__story-intro {
    font-size: 15px;
    line-height: 1.75;
    color: #ffffffe0;
    max-width: 760px;
    margin: 0 auto
}

.abt__story-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px
}

.abt__story-card {
    background: #ffffff14;
    border-radius: 20px;
    padding: 48px 24px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: transform .26s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .26s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: inset 0 2px 6px -2px #ffffff1f
}

.abt__story-card:hover {
    transform: translateY(-4px);
    box-shadow: inset 0 2px 6px -2px #ffffff1f 0 8px 36px -2px #0000002e
}

.abt__story-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(233deg, #7795F1 0%, #D58D0C 100%)
}

.abt__story-number {
    font-size: 58px;
    line-height: 1.1;
    color: #D58D0C;
    font-weight: 700;
    margin: 0 0 24px;
    letter-spacing: -.02em
}

.abt__story-label {
    font-size: 15px;
    line-height: 1.75;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin: 0 0 8px
}

.abt__story-text {
    font-size: 15px;
    line-height: 1.75;
    color: #ffffffc7;
    margin: 0
}

.abt__divider-two {
    width: 100%;
    height: 80px;
    display: block
}

.abt__approach {
    padding: 96px 24px;
    background: #fff;
    position: relative
}

.abt__approach-inner {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    align-items: start
}

.abt__approach-content {
    text-align: center
}

.abt__approach-heading {
    font-size: 43px;
    line-height: 1.1;
    color: #1a2b3c;
    margin: 0 0 24px;
    letter-spacing: -.01em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em
}

.abt__approach-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #3d4f5c;
    margin: 0 0 48px
}

.abt__approach-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 24px
}

.abt__approach-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: center
}

.abt__approach-marker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 36px;
    background: linear-gradient(233deg, #7795f11f 0%, #18596414 68%);
    color: #185964;
    font-size: 15px;
    font-weight: 700;
    margin: 0 auto 8px;
    transition: transform .22s cubic-bezier(0.0, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.0, 0, 0.2, 1)
}

.abt__approach-item:hover .abt__approach-marker {
    transform: scale(1.08);
    box-shadow: 0 5px 14px -2px #1859641a
}

.abt__approach-label {
    font-size: 15px;
    line-height: 1.75;
    color: #1a2b3c;
    font-weight: 600;
    margin: 0
}

.abt__approach-detail {
    font-size: 15px;
    line-height: 1.75;
    color: #3d4f5c;
    margin: 0
}

.abt__approach-visual {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px
}

.abt__approach-photo {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 5px 14px -2px #1859641a;
    transition: transform .28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt__approach-photo:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 36px -2px #1859641c
}

.abt__approach-img {
    width: 100%;
    height: 100%;
    display: block;
    aspect-ratio: 4/5;
    object-fit: cover;
    object-position: center
}

.abt__approach-profile {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    background: #7795f10f;
    padding: 48px 24px;
    border-radius: 20px;
    text-align: center
}

.abt__approach-avatar {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 5px 14px -2px #1859641a;
    flex-shrink: 0
}

.abt__approach-portrait {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: top
}

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

.abt__approach-name {
    font-size: 31px;
    line-height: 1.1;
    color: #1a2b3c;
    margin: 0;
    font-weight: 700;
    letter-spacing: -.01em
}

.abt__approach-role {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    margin: 0;
    font-weight: 600
}

.abt__approach-quote {
    font-size: 15px;
    line-height: 1.75;
    color: #3d4f5c;
    margin: 0;
    font-style: italic
}

@media (min-width: 768px) {
    .abt__hero {
        padding: 96px 48px
    }

    .abt__hero::after {
        font-size: 520px;
        left: 5%
    }

    .abt__hero-inner {
        grid-template-columns: 1fr 1fr;
        gap: 96px
    }

    .abt__hero-content {
        text-align: left
    }

    .abt__hero-desc {
        margin: 0 0 48px
    }

    .abt__story {
        padding: 96px 48px
    }

    .abt__story-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 48px
    }

    .abt__approach {
        padding: 96px 48px
    }

    .abt__approach-inner {
        grid-template-columns: 1fr 1fr;
        gap: 96px
    }

    .abt__approach-content {
        text-align: left
    }

    .abt__approach-item {
        flex-direction: row;
        text-align: left
    }

    .abt__approach-marker {
        margin: 0
    }

    .abt__approach-profile {
        flex-direction: row;
        text-align: left
    }

    .abt__approach-avatar {
        width: 160px;
        height: 160px
    }
}

@media (min-width: 1024px) {
    .abt__hero {
        padding: 96px
    }

    .abt__hero::after {
        font-size: 640px;
        left: 3%
    }

    .abt__hero-title {
        font-size: 58px
    }

    .abt__story {
        padding: 96px
    }

    .abt__approach {
        padding: 96px
    }

    .abt__approach-visual {
        grid-template-columns: 1fr 1fr
    }
}

@media (min-width: 1440px) {
    .abt__hero::after {
        font-size: 720px
    }
}

@media (max-width: 767px) {
    .abt__hero-title {
        font-size: 43px
    }

    .abt__story-heading {
        font-size: 31px
    }

    .abt__approach-heading {
        font-size: 31px
    }

    .abt__approach-name {
        font-size: 31px
    }
}

@media (max-width: 359px) {
    .abt__hero {
        padding: 48px 24px
    }

    .abt__hero-title {
        font-size: 31px
    }

    .abt__story {
        padding: 48px 24px
    }

    .abt__story-heading {
        font-size: 31px
    }

    .abt__approach {
        padding: 48px 24px
    }

    .abt__approach-heading {
        font-size: 31px
    }
}

.kontakt {
    background: #fafcfd;
    overflow-x: clip
}

.kontakt__dek {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 420px;
    padding: 48px 24px;
    overflow: hidden
}

.kontakt__dek-split {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex
}

.kontakt__dek-zona--kaire {
    flex: 1;
    background: #185964;
    position: relative
}

.kontakt__dek-zona--desine {
    flex: 1;
    background: #D58D0C;
    position: relative
}

.kontakt__dek-stripe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 24px, #ffffff05 24px, #ffffff05 48px);
    pointer-events: none
}

.kontakt__dek-turinys {
    position: relative;
    z-index: 2;
    max-width: 1320px;
    margin: 0 auto;
    width: 100%;
    padding: 0 24px
}

.kontakt__dek-tekstas {
    background: #fffffff7;
    padding: 48px;
    max-width: 680px;
    border-radius: 4px;
    box-shadow: 0 8px 36px -2px #1859641c
}

.kontakt__dek-h {
    font-size: 58px;
    line-height: 1.1;
    color: #185964;
    margin: 0 0 24px;
    letter-spacing: -.02em
}

.kontakt__dek-h em {
    font-style: normal;
    position: relative;
    display: inline-block
}

.kontakt__dek-h em::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(233deg, #D58D0C 35%, #7795F1 100%)
}

.kontakt__dek-pav {
    position: absolute;
    top: 50%;
    right: 8%;
    transform: translateY(-50%);
    width: 280px;
    height: 280px;
    opacity: .18;
    pointer-events: none;
    z-index: 1
}

.kontakt__dek-pav img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 36px
}

.kontakt__forma-sekcija {
    padding: 96px 24px;
    position: relative;
    background: #fff
}

.kontakt__forma-sekcija::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(233deg, #18596408 35%, #7795f108 100%);
    pointer-events: none;
    opacity: 0;
    animation: kontakt-fade-overlay 8s cubic-bezier(0.4, 0, 0.2, 1) infinite
}

@keyframes kontakt-fade-overlay {

    0%,
    100% {
        opacity: 0
    }

    50% {
        opacity: 1
    }
}

.kontakt__forma-wrap {
    max-width: 1320px;
    margin: 0 auto
}

.kontakt__forma-antraste {
    text-align: center;
    margin: 0 0 48px;
    font-size: 43px;
    line-height: 1.1;
    color: #185964;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .08em
}

.kontakt__forma-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    align-items: start
}

.kontakt__forma-left {
    background: #f8fbfc;
    padding: 48px;
    border-radius: 20px;
    border: 2px solid #e8f1f3;
    box-shadow: inset 0 2px 6px -2px #18596414
}

.kontakt__forma-left form {
    display: flex;
    flex-direction: column;
    gap: 24px
}

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

.kontakt__forma-label {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 600
}

.kontakt__forma-input {
    padding: 16px 24px;
    border: 2px solid #d4e4e7;
    border-radius: 4px;
    font-size: 15px;
    line-height: 1.75;
    color: #2c3e50;
    background: #fff;
    transition: border-color .24s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__forma-input::placeholder {
    color: #95a5a6;
    opacity: 1;
    transition: opacity .22s cubic-bezier(0.0, 0, 0.2, 1)
}

.kontakt__forma-input:focus {
    outline: none;
    border-color: #185964;
    box-shadow: 0 2px 6px -2px #18596414
}

.kontakt__forma-input:focus::placeholder {
    opacity: 0
}

.kontakt__forma-checkbox-grupe {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.kontakt__forma-checkbox-grupe-antraste {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 600;
    margin: 0 0 8px
}

.kontakt__forma-checkbox-sarasas {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.kontakt__forma-checkbox-item {
    position: relative
}

.kontakt__forma-checkbox-item input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0
}

.kontakt__forma-checkbox-label {
    display: inline-block;
    padding: 8px 24px;
    background: #fff;
    border: 2px solid #d4e4e7;
    border-radius: 20px;
    font-size: 15px;
    line-height: 1.75;
    color: #2c3e50;
    cursor: pointer;
    transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), border-color .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.0, 0, 0.2, 1);
    user-select: none
}

.kontakt__forma-checkbox-item input[type="checkbox"]:checked+.kontakt__forma-checkbox-label {
    background: #185964;
    border-color: #185964;
    color: #fff
}

.kontakt__forma-checkbox-label:hover {
    border-color: #185964;
    transform: translateY(-2px)
}

.kontakt__forma-sutikimas {
    display: flex;
    align-items: start;
    gap: 8px
}

.kontakt__forma-sutikimas input[type="checkbox"] {
    margin-top: 4px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    flex-shrink: 0
}

.kontakt__forma-sutikimas-tekstas {
    font-size: 15px;
    line-height: 1.75;
    color: #2c3e50
}

.kontakt__forma-sutikimas-tekstas a {
    color: #185964;
    text-decoration: underline;
    transition: color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__forma-sutikimas-tekstas a:hover {
    color: #D58D0C
}

.kontakt__forma-siusti {
    padding: 16px 48px;
    background: #185964;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    line-height: 1.75;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    cursor: pointer;
    transition: background .24s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.0, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1), width .26s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 5px 14px -2px #1859641a
}

.kontakt__forma-siusti:hover {
    background: #0f3d45;
    transform: translateY(-2px);
    box-shadow: 0 8px 36px -2px #1859641c;
    width: calc(100% + 24px)
}

.kontakt__forma-siusti:active {
    transform: translateY(0)
}

.kontakt__forma-right {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.kontakt__info-korta {
    background: #fff;
    padding: 48px;
    border-radius: 20px;
    border: 4px solid transparent;
    background-clip: padding-box;
    position: relative;
    box-shadow: 0 5px 14px -2px #1859641a
}

.kontakt__info-korta::before {
    content: '';
    position: absolute;
    top: -6px;
    left: -6px;
    right: -6px;
    bottom: -6px;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%);
    border-radius: 20px;
    z-index: -1
}

.kontakt__info-h {
    font-size: 31px;
    line-height: 1.1;
    color: #185964;
    margin: 0 0 24px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .08em;
    text-align: center
}

.kontakt__info-sarasas {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 24px
}

.kontakt__info-elementas {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px;
    background: linear-gradient(233deg, #1859640a 35%, #7795f10a 100%);
    border-radius: 4px;
    position: relative
}

.kontakt__info-elementas::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(233deg, #D58D0C 35%, #7795F1 100%);
    border-radius: 4px 0 0 4px
}

.kontakt__info-pavadinimas {
    font-size: 15px;
    line-height: 1.75;
    color: #185964;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em
}

.kontakt__info-reiksme {
    font-size: 15px;
    line-height: 1.75;
    color: #2c3e50
}

.kontakt__info-reiksme a {
    color: inherit;
    text-decoration: none;
    transition: color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__info-reiksme a:hover {
    color: #185964
}

.kontakt__detalus-sekcija {
    padding: 96px 24px;
    background: #185964;
    position: relative
}

.kontakt__detalus-wrap {
    max-width: 1320px;
    margin: 0 auto
}

.kontakt__detalus-antraste {
    text-align: center;
    margin: 0 0 48px;
    font-size: 43px;
    line-height: 1.1;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .08em
}

.kontakt__detalus-sarasas {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px
}

.kontakt__detalus-item {
    background: #ffffff0d;
    border-radius: 4px;
    overflow: hidden;
    transition: background .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__detalus-item:hover {
    background: #ffffff14
}

.kontakt__detalus-trigger {
    width: 100%;
    padding: 24px 48px;
    background: transparent;
    border: none;
    color: #fff;
    font-size: 15px;
    line-height: 1.75;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
    transition: color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__detalus-trigger:hover {
    color: #D58D0C
}

.kontakt__detalus-ikona {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__detalus-ikona svg {
    width: 100%;
    height: 100%;
    fill: currentColor
}

.kontakt__detalus-item.aktyvus .kontakt__detalus-ikona {
    transform: rotate(180deg)
}

.kontakt__detalus-turinys {
    max-height: 0;
    overflow: hidden;
    transition: max-height .28s cubic-bezier(0.4, 0, 0.2, 1), padding .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.kontakt__detalus-item.aktyvus .kontakt__detalus-turinys {
    max-height: 800px;
    padding: 0 48px 24px
}

.kontakt__detalus-tekstas {
    font-size: 15px;
    line-height: 1.75;
    color: #ffffffd9
}

.kontakt__detalus-tekstas p {
    margin: 0 0 8px
}

.kontakt__detalus-tekstas p:last-child {
    margin: 0
}

.kontakt__skyrikliai {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    margin: 96px 0
}

.kontakt__skyrikliai-linija {
    width: 48px;
    height: 2px;
    background: linear-gradient(233deg, #185964 35%, #7795F1 100%)
}

.kontakt__skyrikliai-forma {
    width: 16px;
    height: 16px;
    background: #D58D0C;
    border-radius: 36px;
    position: relative;
    animation: kontakt-shift-pattern 6s cubic-bezier(0.4, 0, 0.2, 1) infinite
}

@keyframes kontakt-shift-pattern {

    0%,
    100% {
        transform: translateX(0) scale(1)
    }

    50% {
        transform: translateX(8px) scale(1.2)
    }
}

@media (min-width: 768px) {
    .kontakt__dek {
        min-height: 520px;
        padding: 96px 24px
    }

    .kontakt__dek-tekstas {
        padding: 48px;
        max-width: 720px
    }

    .kontakt__dek-h {
        font-size: 58px
    }

    .kontakt__dek-pav {
        width: 360px;
        height: 360px;
        right: 12%
    }

    .kontakt__forma-grid {
        grid-template-columns: 1fr 1fr
    }

    .kontakt__forma-checkbox-sarasas {
        gap: 8px
    }
}

@media (min-width: 1024px) {
    .kontakt__dek {
        min-height: 580px
    }

    .kontakt__dek-tekstas {
        max-width: 780px
    }

    .kontakt__dek-pav {
        width: 420px;
        height: 420px
    }

    .kontakt__forma-grid {
        grid-template-columns: 1.4fr 1fr
    }
}

@media (min-width: 1440px) {
    .kontakt__dek-tekstas {
        max-width: 840px
    }

    .kontakt__dek-pav {
        width: 480px;
        height: 480px
    }
}

.success-page {
    background: linear-gradient(233deg, #f0f9fa 0%, #fef9f0 62%);
    min-height: 100vh;
    padding: 96px 24px;
    display: flex;
    align-items: center;
    justify-content: center
}

.success-page__container {
    max-width: 640px;
    width: 100%;
    background: #fff;
    border-radius: 20px;
    padding: 48px;
    box-shadow: 0 5px 14px -2px #1859641a;
    text-align: center
}

.success-page__icon {
    width: 96px;
    height: 96px;
    margin: 0 auto 24px;
    background: linear-gradient(233deg, #185964 0%, #7795F1 62%);
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative
}

.success-page__icon::before {
    content: '';
    width: 44px;
    height: 24px;
    border-left: 5px solid #fff;
    border-bottom: 5px solid #fff;
    transform: rotate(-45deg) translateY(-4px)
}

.success-page__title {
    font-size: 43px;
    line-height: 1.1;
    color: #185964;
    margin: 0 0 24px;
    letter-spacing: -.02em;
    text-transform: uppercase;
    font-weight: 700
}

.success-page__message {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0 0 48px
}

.success-page__details {
    background: linear-gradient(233deg, #f8fcfd 0%, #fdfcfa 62%);
    border-radius: 4px;
    padding: 24px;
    margin: 0 0 48px
}

.success-page__details p {
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
    margin: 0
}

.success-page__details strong {
    color: #185964
}

.success-page__actions {
    display: flex;
    gap: 24px;
    justify-content: center;
    flex-wrap: wrap
}

.success-page__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 48px;
    height: 56px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    transition: width .24s cubic-bezier(0.4, 0, 0.2, 1), background .24s cubic-bezier(0.4, 0, 0.2, 1);
    text-transform: uppercase;
    letter-spacing: .08em
}

.success-page__btn--primary {
    background: linear-gradient(233deg, #185964 0%, #0d3c44 62%);
    color: #fff;
    min-width: 220px
}

.success-page__btn--primary:hover {
    min-width: 240px;
    background: linear-gradient(233deg, #0d3c44 0%, #185964 62%)
}

.success-page__btn--secondary {
    background: transparent;
    color: #185964;
    border: 2px solid #185964;
    min-width: 200px
}

.success-page__btn--secondary:hover {
    min-width: 220px;
    background: #1859640d
}

.success-page__info {
    margin: 48px 0 0;
    padding: 24px 0 0;
    border-top: 2px solid #f0f9fa
}

.success-page__info-text {
    font-size: 15px;
    line-height: 1.75;
    color: #5a5a5a;
    margin: 0
}

.success-page__contact {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 0;
    color: #D58D0C;
    text-decoration: none;
    font-size: 15px;
    font-weight: 700;
    transition: color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.success-page__contact:hover {
    color: #185964
}

.success-page__contact-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center
}

.success-page__contact-icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor
}

@media (max-width: 768px) {
    .success-page {
        padding: 48px 24px
    }

    .success-page__container {
        padding: 48px 24px
    }

    .success-page__title {
        font-size: 31px
    }

    .success-page__actions {
        flex-direction: column;
        align-items: stretch
    }

    .success-page__btn {
        width: 100%;
        min-width: auto
    }

    .success-page__btn--primary:hover,
    .success-page__btn--secondary:hover {
        min-width: auto
    }
}

@media (max-width: 360px) {
    .success-page__container {
        padding: 24px
    }

    .success-page__icon {
        width: 72px;
        height: 72px
    }

    .success-page__icon::before {
        width: 32px;
        height: 18px;
        border-left-width: 4px;
        border-bottom-width: 4px
    }
}