/* op-service5.css — purged service5 / notariusz stack (rebuild: _tmp-notariusz-css/build-op-service5-css.mjs) */
/* op-service5.css — purged service5 / notariusz stack */

/* === assets/css/style-old.min.css === */
/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

* {
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

::-webkit-scrollbar {
    width: 3px;
    height: 3px
}

::-webkit-scrollbar-track {
    background-color: #888
}

::-webkit-scrollbar-thumb {
    background-color: #2380eb
}

@-webkit-keyframes moveYear {
    0% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
}

@keyframes moveYear {
    0% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
}

body,html {
    overflow-x: hidden
}

body {
    margin: 0;
    padding: 0;
    font-family: Gilroy,sans-serif;
    color: #131313
}

.h1,h1 {
    font-size: 52px;
    line-height: 68px;
    font-weight: 700
}

.h2,h2 {
    font-size: 42px;
    line-height: 50px;
    font-weight: 700
}

h1,h2,h3,h4,h5,h6,li,ol,p,ul {
    margin: 0;
    padding: 0
}

img {
    max-width: 100%;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

a {
    text-decoration: none
}

.choices__inner,input,select {
    font-size: 18px;
    line-height: 34px;
    font-family: Gilroy,sans-serif;
    border-radius: 10px;
    border: solid 1px #d0d9e7;
    padding: 24px 30px;
    background: 0 0;
    background-color: #fff;
    display: block;
    width: 100%;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    color: #131313
}

.choices__inner::-webkit-input-placeholder,input::-webkit-input-placeholder,select::-webkit-input-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner::-moz-placeholder,input::-moz-placeholder,select::-moz-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner:-ms-input-placeholder,input:-ms-input-placeholder,select:-ms-input-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner::-ms-input-placeholder,input::-ms-input-placeholder,select::-ms-input-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner::-webkit-input-placeholder, input::-webkit-input-placeholder, select::-webkit-input-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner::-moz-placeholder, input::-moz-placeholder, select::-moz-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner:-ms-input-placeholder, input:-ms-input-placeholder, select:-ms-input-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner::-ms-input-placeholder, input::-ms-input-placeholder, select::-ms-input-placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner::placeholder,input::placeholder,select::placeholder {
    color: #878c94;
    opacity: 1
}

.choices__inner:focus,input:focus,select:focus {
    border-color: #2380eb
}

.bread {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    overflow-x: auto;
    list-style-type: none;
    font-size: 16px;
    line-height: 30px;
    color: #0a2f9a;
    margin-bottom: 30px
}

.bread li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.bread li::after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    margin: 0 10px;
    background: url(../img/main-old/bread.svg) no-repeat center center/cover
}

.bread li a {
    color: #131313;
    position: relative
}

.bread li a::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background-color: #131313;
    position: absolute;
    left: 0;
    bottom: -1px;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.bread li a:hover::after {
    width: 100%
}

.bread li a::after {
    bottom: 0
}

.bread li:last-child::after {
    display: none
}

.slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    list-style-type: none;
    margin-top: 40px
}

.slick-dots li {
    margin: 0 14px
}

.slick-dots li button {
    font-size: 0;
    border: none;
    background: 0 0;
    margin: 0;
    padding: 0;
    width: 13px;
    height: 13px;
    border: solid 3px #fff;
    border-radius: 50%;
    background-color: #fff;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    cursor: pointer
}

.slick-dots .slick-active button {
    background-color: #2380eb
}

.ttl {
    text-align: center
}

.slick-arrow {
    font-size: 0;
    border: none;
    background: 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    z-index: 2;
    width: 47px;
    height: 47px;
    border-radius: 50%;
    background-color: #fff;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.slick-arrow svg {
    -webkit-transform: translateX(-2px);
    -ms-transform: translateX(-2px);
    transform: translateX(-2px)
}

.slick-arrow svg * {
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.slick-arrow:hover {
    background-color: #2380eb
}

.slick-arrow:hover svg * {
    stroke: #fff
}

.slick-next {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    border: solid 1px #2380eb;
    background: 0 0;
    background-color: #2380eb;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    cursor: pointer;
    border-radius: 100px;
    padding: 20px;
    text-align: center;
    font-size: 18px;
    line-height: 21px;
    font-weight: 700;
    color: #fff;
    font-family: Gilroy,sans-serif
}

.btn:hover {
    background-color: #0a2f9a;
    border-color: #0a2f9a
}

.btn svg {
    margin-left: 10px
}

.btn-primary {
    background-color: #fff;
    color: #2380eb
}

.btn-primary:hover {
    background-color: #2380eb;
    border-color: #2380eb;
    color: #fff
}

.ttx {
    font-size: 18px;
    line-height: 30px
}

.ttx a {
    color: #0a2f9a;
    text-decoration: underline
}

.ttx a:hover {
    text-decoration: none
}

.ttx .btn,.ttx h1,.ttx h2,.ttx h3,.ttx h4,.ttx h5,.ttx h6,.ttx img,.ttx li,.ttx ul {
    margin-bottom: 30px
}

.ttx ol,.ttx ul {
    padding-left: 15px
}

.ttx ol li,.ttx ul li {
    margin-bottom: 5px
}

.ttx ol li:last-child,.ttx ul li:last-child {
    margin-bottom: 0
}

.ttx blockquote {
    margin: 40px 0;
    padding: 30px 20px;
    position: relative;
    background: url(../img/main-old/bg-blockquote.png) no-repeat center center/cover;
    border-radius: 20px
}

.ttx blockquote::after,.ttx blockquote::before {
    content: "";
    display: block;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 20px;
    top: -14px;
    background: url(../img/main-old/quote.svg) no-repeat center center/contain
}

.ttx blockquote::after {
    left: auto;
    top: auto;
    right: 14px;
    bottom: -14px;
    -webkit-transform: scale(-1,-1);
    -ms-transform: scale(-1,-1);
    transform: scale(-1,-1)
}

.ttx p {
    display: block;
    margin-bottom: 30px
}

.ttx p:last-child {
    margin-bottom: 0
}

.wrp {
    margin-bottom: 151px
}

.container {
    max-width: 1330px;
    margin: 0 auto;
    padding: 0 15px
}

.header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 100;
    background-color: #fff;
    border-radius: 0 0 50px 50px;
    -webkit-box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745);
    box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745);
    -webkit-box-shadow: 0 22.34px 17.87px 0 rgba(0,0,0,.0235294118);
    box-shadow: 0 22.34px 17.87px 0 rgba(0,0,0,.0235294118);
    -webkit-box-shadow: 0 100px 80px 0 rgba(0,0,0,.0392156863);
    box-shadow: 0 100px 80px 0 rgba(0,0,0,.0392156863);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.form {
    margin: 120px 0
}

.footer {
    background: url(../img/main-old/bg-footer.jpg) no-repeat center center/cover;
    color: #fff;
    border-radius: 50px 50px 0 0
}

.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.7);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.modal-active {
    opacity: 1;
    visibility: visible
}

.modal-wrap {
    max-width: 600px;
    background-color: #fff;
    padding: 50px;
    max-height: 90vh;
    overflow-y: auto;
    width: 100%;
    border-radius: 25px;
    position: relative;
}

.modal-wrap .op-header-wrap__icon {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        width: 44px;
        height: 44px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        border-radius: 50%;
        cursor: pointer;
        background-color: #faf7f7;
        z-index: 2;
    }

.modal-wrap .op-header-wrap__icon--active svg:nth-child(2) {
        scale: 1;
        opacity: 1;
        visibility: visible;
        -webkit-transform: translate(-50%, -50%) rotate(180deg);
        -ms-transform: translate(-50%, -50%) rotate(180deg);
        transform: translate(-50%, -50%) rotate(180deg);
    }

.modal-wrap .op-header-wrap__icon svg {
        position: absolute;
        left: 50%;
        top: 50%;
        margin-right: -50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
.modal-wrap .op-header-wrap__icon--active svg {
        opacity: 0;
        visibility: hidden;
        scale: 0;
    }
.modal-wrap .op-header-wrap__icon {
        border-radius: 12px;
        background-color: #f0f4f9;
        border: solid 1px #086cdc;
    }
.modal-wrap .op-header-wrap__icon--active {
        border-color: #828282;
    }
@media (max-width: 640px) {
	.modal-wrap {	
		padding: 25px;
	}
}

.modal-wrap__close {
    cursor: pointer;
    text-align: right;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    font-weight: 700;
    font-size: 50px;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    position: absolute;
    right: 45px;
    top: 42px;
    -webkit-transform: scale(0.8);
        -ms-transform: scale(0.8);
            transform: scale(0.8);
}

.modal-wrap__close:hover {
    color: #2380eb
}

.first {
    position: relative;
    z-index: 3
}

.main {
    border-radius: 0 0 50px 50px
}

.main-nav .slick-arrow {
    position: absolute;
    left: 0;
    top: 35%
}

.main-nav .slick-next {
    left: auto;
    right: 0
}

.list {
    position: relative;
    z-index: 2;
    position: absolute;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -100px
}

.services {
    background: url(../img/main-old/bg-services.png) no-repeat left top #fff;
    border-radius: 0 0 50px 50px;
    position: relative;
    z-index: 2;
    position: relative
}

.services-wrap {
    padding: 183px 0 120px
}

.services-wrap__text {
    font-size: 18px;
    line-height: 30px;
    max-width: 696px;
    text-align: center;
    margin: 30px auto 60px
}

.services-wrap__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.services-wrap__list .row {
    width: 33%
}

.services-wrap__list .row .item {
    width: 100%;
    -webkit-box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745),0 22.34px 17.87px 0 rgba(0,0,0,.0235294118),0 100px 80px 0 rgba(0,0,0,.0392156863),0 3px 0 0 #2483ed;
    box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745),0 22.34px 17.87px 0 rgba(0,0,0,.0235294118),0 100px 80px 0 rgba(0,0,0,.0392156863),0 3px 0 0 #2483ed;
    background-color: #fff;
    border-radius: 5px;
    margin-bottom: 15px;
    padding: 24px 20px
}

.services-wrap__list .row .item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer
}

.services-wrap__list .row .item-top__title {
    font-size: 18px;
    line-height: 25px;
    font-weight: 600;
    max-width: calc(100% - 15px)
}

.services-wrap__list .row .item-top__icon {
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.services-wrap__list .row .item-text {
    margin-top: 30px;
    font-size: 16px;
    line-height: 19px;
    font-weight: 600;
    display: none
}

.services-wrap__list .row .item-text a {
    color: #2380eb;
    text-decoration: underline
}

.services-wrap__list .row .item-text a:hover {
    text-decoration: none
}

.services-wrap__list .row .item-text ul {
    list-style-type: none
}

.services-wrap__list .row .item-text ul li {
    margin-bottom: 15px;
    padding-left: 24px;
    position: relative
}

.services-wrap__list .row .item-text ul li::after {
    content: "";
    display: block;
    width: 17px;
    height: 17px;
    position: absolute;
    left: 0;
    top: 1px;
    background: url(../img/main-old/li.svg) no-repeat center center/contain
}

.services-wrap__list .row .item-text ul li:last-child {
    margin-bottom: 0
}

.services-wrap__list .row .open .item-top__icon {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.for {
    background: url(../img/main-old/bg-for.jpg) no-repeat center center/cover;
    margin-top: -72px
}

.clients {
    background-color: #f8fafd;
    border-radius: 50px;
    overflow: hidden
}

.clients .container {
    max-width: 1460px
}

.clients-wrap {
    padding: 120px 0
}

.clients-wrap__text {
    font-size: 18px;
    line-height: 30px;
    margin: 30px auto 60px;
    text-align: center;
    max-width: 592px
}

.clients-wrap__list {
    background-color: #fff;
    position: relative;
    border-radius: 20px;
    padding: 35px 30px
}

.clients-wrap__list .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.clients-wrap__list img {
    max-height: 60px;
    width: auto;
    max-width: 150px
}

.clients-wrap__partners {
    position: relative;
    padding: 0 91px
}

.clients-wrap__subtitle {
    margin-top: 81px
}

.clients-wrap__nav .slick-arrow {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.clients-wrap__nav .slick-next {
    left: auto;
    right: 0;
    -webkit-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg)
}

.clients-wrap__bottom {
    max-width: 1330px;
    margin: 0 auto
}

.clients-wrap__top {
    margin: 22px 0 51px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.clients-wrap__top--tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 5px;
    overflow: hidden
}

.clients-wrap__top--tabs .item {
    padding: 8px 13px;
    font-size: 14px;
    line-height: 16px;
    color: #131313;
    cursor: pointer;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    background-color: #ebf1f9;
    min-height: 47px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.clients-wrap__top--tabs .active {
    background-color: #2380eb;
    color: #fff;
    font-weight: 600
}

.clients-wrap__top--title {
    font-size: 18px;
    line-height: 30px;
    text-align: center;
    margin-right: 10%
}

.clients-wrap__top--rating {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 5px;
    background-color: #ebf1f9;
    font-size: 16px;
    line-height: 30px;
    font-weight: 600;
    padding: 8px 10px
}

.clients-wrap__top--rating img {
    margin-right: 10px
}

.clients-wrap__top--rating span {
    color: #2380eb;
    text-decoration: underline;
    display: block;
    margin-right: 12px
}

.clients-wrap__reviews {
    margin: 0 auto;
    margin-right: -300px;
    margin-left: -15px;
    position: relative
}

.clients-wrap__reviews .slick-dots {
    margin-right: 275px
}

.clients-wrap__reviews--slider {
    display: none
}

.clients-wrap__reviews--slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.clients-wrap__reviews--slider:nth-child(1) {
    display: block
}

.clients-wrap__reviews--slider::after {
    display: none!important
}

.clients-wrap__reviews--slider .wrapper {
    padding: 15px
}

.clients-wrap__reviews--slider .wrapper .item {
    position: relative
}

.clients-wrap__reviews--slider .wrapper .item::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,.5);
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 20px;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px)
}

.clients-wrap__reviews--slider .slick-active .item::after {
    display: none!important
}

.clients-wrap__reviews--slider .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0025),0 22.34px 17.87px 0 rgba(0,0,0,.0025),0 100px 80px 0 rgba(0,0,0,.0025);
    box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0025),0 22.34px 17.87px 0 rgba(0,0,0,.0025),0 100px 80px 0 rgba(0,0,0,.0025);
    background-color: #fff;
    border-radius: 20px;
    padding: 20px
}

.clients-wrap__reviews--slider .item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.clients-wrap__reviews--slider .item-top img {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    -o-object-fit: cover;
    object-fit: cover
}

.clients-wrap__reviews--slider .item-top span {
    display: block;
    width: 100%;
    max-width: calc(100% - 45px);
    padding-left: 13px;
    font-size: 16px;
    line-height: 30px;
    font-weight: 600
}

.clients-wrap__reviews--slider .item-text {
    margin: 30px 0;
    font-size: 16px;
    line-height: 24px
}

.clients-wrap__reviews--slider .item-text p {
    display: block;
    margin-bottom: 30px
}

.clients-wrap__reviews--slider .item-text p:last-child {
    margin-bottom: 0
}

.clients-wrap__reviews--slider .item-text__video {
    display: block;
    position: relative;
    width: 100%;
    max-width: 217px;
    height: 234px;
    margin: 0 auto
}

.clients-wrap__reviews--slider .item-text__video svg {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%)
}

.clients-wrap__reviews--slider .item-text__video img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px
}

.clients-wrap__reviews--slider .item-date {
    font-size: 16px;
    line-height: 24px;
    color: #9b9b9b
}

.faq-wrap {
    margin: 120px 0
}

.faq-wrap__text {
    text-align: center;
    margin: 30px auto 60px;
    font-size: 18px;
    line-height: 30px
}

.faq-wrap__list {
    max-width: 956px;
    margin: 0 auto
}

.faq-wrap__list .item {
    margin-bottom: 10px;
    border-radius: 20px;
    border: solid 1px #f0f2f5;
    padding: 28px;
    position: relative;
    overflow: hidden
}

.faq-wrap__list .item::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/main-old/bg-faq.jpg) no-repeat center center/cover;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.faq-wrap__list .item-top {
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    z-index: 2
}

.faq-wrap__list .item-top__title {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    max-width: calc(100% - 30px)
}

.faq-wrap__list .item-top__icon {
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.faq-wrap__list .item-text {
    font-size: 16px;
    line-height: 24px;
    margin-top: 30px;
    display: none;
    position: relative;
    z-index: 2
}

.faq-wrap__list .item-text p {
    display: block;
    margin-bottom: 20px
}

.faq-wrap__list .item-text p:last-child {
    margin-bottom: 0
}

.faq-wrap__list .open::before {
    opacity: 1;
    visibility: visible
}

.faq-wrap__list .open .item-top__icon {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.top-wrap {
    padding: 30px 0 96px
}

.top-wrap__title {
    margin-bottom: 20px
}

.top-wrap__text {
    font-size: 18px;
    line-height: 30px
}

.blog-wrap__top {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding-bottom: 10px;
    margin-right: -15px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: -webkit-grab;
    cursor: grab
}

.blog-wrap__top::-webkit-scrollbar {
    display: none
}

.blog-wrap__top.is-dragging {
    cursor: -webkit-grabbing;
    cursor: grabbing;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.blog-wrap__top .op-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 8px
}

.blog-wrap__top .item {
    display: block;
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
    color: #131313;
    padding: 10px 20px;
    border: solid 1px #e6ecf4;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    border-radius: 5px
}

.blog-wrap__top .active {
    background-color: #2380eb;
    color: #fff;
    border-color: #2380eb
}

.article-wrap {
    margin: 80px 0 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.article-wrap__content {
    width: 100%;
    max-width: 956px;
    margin-right: 30px
}

.article-wrap__content--image {
    position: relative;
    width: 100%;
    height: 458px;
    margin-bottom: 40px
}

.article-wrap__content--image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px
}

.article-wrap__content--image-date {
    font-size: 16px;
    line-height: 20px;
    color: #777;
    padding: 5px 8px;
    border-radius: 5px;
    background-color: #f8fafd;
    position: absolute;
    right: 15px;
    top: 15px
}

.article-wrap__sidebar {
    position: sticky;
    top: 200px;
    width: 100%;
    max-width: 302px;
    background: url(../img/main-old/bg-article.png) no-repeat center center/cover;
    padding: 20px;
    border-radius: 20px
}

.article-wrap__sidebar--title {
    font-size: 20px;
    line-height: 30px;
    font-weight: 600;
    margin-bottom: 20px
}

.article-wrap__sidebar a {
    display: block;
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 30px;
    color: #000;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.article-wrap__sidebar a:hover {
    color: #2380eb;
    text-decoration: underline
}

.article-wrap__sidebar a:last-child {
    margin-bottom: 0
}

.article-wrap__list {
    width: 100%;
    max-width: 275px;
    position: sticky;
    top: 200px
}

.article-wrap__list--title {
    font-size: 20px;
    line-height: 30px;
    font-weight: 600;
    margin-bottom: 30px
}

.article-wrap__list .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 10px;
    background-color: #f6f8fb;
    border-radius: 5px;
    padding: 10px;
    border-radius: 5px;
    color: #131313
}

.article-wrap__list .item-counter {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #eaeff6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    line-height: 30px;
    font-weight: 600
}

.article-wrap__list .item-title {
    width: 100%;
    max-width: calc(100% - 32px);
    padding-left: 10px;
    font-size: 16px
}

.article-third .article-wrap__content {
    margin-right: 0;
    margin-left: 30px;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.adv {
    background: url(../img/main-old/bg-adv.jpg) no-repeat center top/cover;
    border-radius: 50px 50px 0 0
}

.adv-wrap {
    padding: 120px 0 100px;
    color: #fff
}

.adv-wrap__text {
    text-align: center;
    margin: 30px 0 60px;
    font-size: 18px;
    line-height: 30px
}

.adv-wrap__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.adv-wrap__list .item {
    width: 32.5%;
    margin-right: 1.25%;
    margin-bottom: 20px;
    -webkit-box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745),0 22.34px 17.87px 0 rgba(0,0,0,.0235294118),0 100px 80px 0 rgba(0,0,0,.0392156863),0 3px 0 0 #2483ed inset;
    box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745),0 22.34px 17.87px 0 rgba(0,0,0,.0235294118),0 100px 80px 0 rgba(0,0,0,.0392156863),0 3px 0 0 #2483ed inset;
    background-color: rgba(36,39,44,.8);
    border-radius: 20px;
    padding: 20px 20px 30px
}

.adv-wrap__list .item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.adv-wrap__list .item-top__image {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #303339
}

.adv-wrap__list .item-top__image img {
    max-height: 42px;
    width: auto;
    max-width: 42px
}

.adv-wrap__list .item-top__title {
    width: 100%;
    max-width: calc(100% - 66px);
    padding-left: 20px;
    font-size: 24px;
    line-height: 32px;
    font-weight: 600
}

.adv-wrap__list .item-text {
    margin-top: 20px;
    font-size: 16px;
    line-height: 24px
}

.adv-wrap__list .item:nth-child(3n+3) {
    margin-right: 0
}

.service {
    border-radius: 0 0 50px 50px
}

.service-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.service-wrap__content {
    width: 100%;
    max-width: 614px;
    margin-right: 30px;
    padding: 15px 0 80px
}

.service-wrap__content--title {
    margin: 74px 0 20px
}

.service-wrap__content--text {
    font-weight: 400
}

.service-wrap__content--text ul {
    padding-left: 20px
}

.service-wrap__content--tabs {
    margin-top: 30px
}

.service-wrap__content--tabs .item {
    background-color: #fff;
    border-radius: 5px;
    padding: 31px 20px;
    margin-bottom: 20px;
    -webkit-box-shadow: 0 4px 0 0 #2483ed inset;
    box-shadow: 0 4px 0 0 #2483ed inset
}

.service-wrap__content--tabs .item-top {
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.service-wrap__content--tabs .item-top__title {
    max-width: calc(100% - 20px);
    font-size: 20px;
    line-height: 24px;
    font-weight: 600
}

.service-wrap__content--tabs .item-top__icon {
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.service-wrap__content--tabs .item-text {
    display: none;
    font-size: 16px;
    line-height: 26px;
    margin-top: 25px
}

.service-wrap__content--tabs .item:nth-child(1) .item-text {
    display: block
}

.service-wrap__content--tabs .open .item-top__icon {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.service-wrap__image {
    width: 100%;
    max-width: 570px
}

.compensation-wrap__slider .slick-arrow {
    position: absolute;
    left: -65px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background-color: #f8fafd
}

.compensation-wrap__slider .slick-arrow:hover {
    background-color: #0a2f9a
}

.compensation-wrap__slider .slick-next {
    left: auto;
    right: -65px;
    -webkit-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
}

.expert {
    margin: 120px 0 0;
    background-color: #f8fafd;
    border-radius: 50px 50px 0 0
}

.expert-wrap {
    padding-top: 120px
}

.expert-wrap__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 60px
}

.expert-wrap__flex--image {
    max-width: 413px;
    margin-right: 30px
}

.expert-wrap__flex--image img {
	width: 100%;
}

.expert-wrap__flex--content {
    width: 100%;
    max-width: 857px;
    background: url(../img/main-old/bg-expert.svg) no-repeat center center/cover;
    border-radius: 20px;
    -webkit-box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745),0 22.34px 17.87px 0 rgba(0,0,0,.0235294118),0 100px 80px 0 rgba(0,0,0,.0392156863),0 3px 0 0 #2483ed inset;
    box-shadow: 0 6.65px 5.32px 0 rgba(0,0,0,.0156862745),0 22.34px 17.87px 0 rgba(0,0,0,.0235294118),0 100px 80px 0 rgba(0,0,0,.0392156863),0 3px 0 0 #2483ed inset;
    padding: 40px
}

.expert-wrap__flex--content-title {
    font-size: 28px;
    line-height: 32px;
    font-weight: 700;
    margin-bottom: 10px
}

.expert-wrap__flex--content-position {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 30px
}

.expert-wrap__flex--content-text {
    font-size: 16px
}

.expert-wrap__flex--content-text p {
    margin-bottom: 20px
}

.expert-wrap__flex--content-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 64px
}

.expert-wrap__flex--content-meta_link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px 20px;
    font-size: 18px;
    line-height: 30px;
    color: #fff;
    font-weight: 700;
    border-radius: 5px;
    background-color: #0077b5;
    margin-right: 30px;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.expert-wrap__flex--content-meta_link:hover {
    background-color: #005582
}

.expert-wrap__flex--content-meta_link svg {
    margin-right: 10px
}

.expert-wrap__flex--content-meta .btn {
    padding: 16px 36px
}

.year-wrap__list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.us {
    background: url(../img/main-old/bg-us.svg) no-repeat right top #f8fafd
}

.map {
    background-color: #f8fafd;
    border-radius: 0 0 50px 50px;
    margin: 120px 0;
    padding: 120px 0
}

.business {
    background: url(../img/main-old/bg-business.png) no-repeat right bottom #f6f7fb;
    border-radius: 0 0 50px 50px
}

.start {
    background: url(../img/main-old/bg-start.png) no-repeat right top #f6f7fb;
    padding: 120px 0 90px
}

.introduction-wrap__list .item-content__top--position {
    padding: 10px 15px;
    color: #fff;
    font-weight: 600;
    font-size: 18px;
    border-radius: 5px;
    background-color: #e62d5b
}

.help-wrap__flex--list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%
}

.help-wrap__flex--list .slick-list {
    height: 100%
}

.step {
    background-color: #f6f7fb;
    padding: 120px 0;
    margin-bottom: 120px
}

@media (max-width: 1800px) {
    .business {
        background-position-x:50%
    }
}

@media (max-width: 1550px) {
    .business {
        background-position-x:right;
        background-size: 100%
    }
}

@media (max-width: 1500px) {
    .main {
        border-radius:0
    }

    .main-wrap .slick-dots {
        position: absolute;
        left: 50%;
        margin-right: -50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: 50px
    }

    .list {
        position: relative;
        z-index: 3;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        left: auto;
        top: auto;
        bottom: auto;
        right: auto;
        margin: -30px 0 0;
        padding-top: 31px;
        background-color: #fff;
        border-radius: 50px 50px 0 0
    }

    .services-wrap {
        padding: 120px 0
    }

    .clients-wrap__top--title {
        margin-right: 0
    }

    .compensation-wrap__slider .slick-dots li button {
        background-color: #3f4349;
        border-color: #3f4349
    }

    .compensation-wrap__slider .slick-dots .slick-active button {
        background-color: #fff
    }
}

@media (max-width: 1300px) {
    .business {
        padding-bottom:300px;
        background-size: 1000px
    }
}

@media (max-width: 1250px) {

    .services-wrap__list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .services-wrap__list .row {
        width: 100%
    }
}

@media (max-width: 1200px) {

    .clients-wrap__top {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .clients-wrap__top--tabs {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .clients-wrap__top--rating {
        margin: 27px 0 20px
    }

    .clients-wrap__reviews {
        margin-right: -15px
    }

    .clients-wrap__reviews .slick-dots {
        margin-right: 0
    }
}

@media (max-width: 1100px) {
    .service-wrap {
        -webkit-box-orient:vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .service-wrap__content {
        max-width: 100%;
        margin: 0 0 30px;
        padding: 30px 0 0
    }

    .service-wrap__content--title {
        margin-top: 0;
    }

    .service-wrap__image {
        max-width: 500px
    }
}

@media (max-width: 1024px) {

    .clients-wrap__partners {
        padding: 0;
        position: relative;
        margin-bottom: 10 0
    }

    .clients-wrap__partners .slick-dots {
        position: absolute;
        left: 50%;
        margin-right: -50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: -50px;
        margin-top: 0
    }

    .clients-wrap__nav {
        display: none
    }

    .article-wrap__content {
        max-width: 100%;
        margin: 0
    }

    .article-wrap__list,.article-wrap__sidebar {
        display: none
    }

    .article-third .article-wrap__content {
        margin-left: 0
    }

    .adv-wrap__list {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .adv-wrap__list .item {
        width: 49%
    }

    .adv-wrap__list .item:nth-child(1n+1) {
        margin: 0 0 15px
    }
}

@media (max-width: 920px) {
    .expert-wrap__flex {
        -webkit-box-orient:vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .expert-wrap__flex--image {
        margin: 0;
        max-width: 100%;
        width: 100%;
    }
}

@media (max-width: 620px) {

    .blog-wrap__top .item {
        font-size: 16px;
        padding: 10px 30px
    }

    .adv-wrap__list .item {
        width: 100%
    }
}

@media (max-width: 550px) {
    input,select {
        padding:12px 15px;
        font-size: 14px;
        line-height: 34px
    }

    .h1,.h2,h1,h2 {
        font-size: 26px;
        line-height: 35px
    }

    .btn {
        font-size: 16px;
        line-height: 18px;
        padding: 20px
    }

    .wrp {
        margin-bottom: 123px
    }

    .header {
        border-radius: 0 0 20px 20px
    }

    .services {
        border-radius: 0 0 20px 20px
    }

    .services-wrap {
        padding: 60px 0 45px
    }

    .services-wrap__text {
        font-size: 14px;
        line-height: 20px;
        max-width: 100%;
        margin: 20px 0 40px
    }

    .services-wrap__list .row .item {
        padding: 18px 20px
    }

    .services-wrap__list .row .item-top__title {
        font-size: 16px;
        line-height: 25px
    }

    .services-wrap__list .row .item-top__icon svg {
        max-width: 15px;
        height: auto
    }

    .services-wrap__list .row .item-text {
        font-size: 16px
    }

    .for-wrap__list .slick-dots {
        margin-top: 30px;
        margin-right: 30px
    }

    .for-wrap__list .slick-dots li button {
        border-color: #3f4349;
        background-color: #3f4349
    }

    .for-wrap__list .slick-dots .slick-active button {
        background-color: #2380eb
    }

    .consultation-wrap__list .slick-track {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .clients {
        border-radius: 20px
    }

    .clients-wrap {
        padding: 60px 0;
        border-radius: 20px
    }

    .clients-wrap__text {
        font-size: 14px;
        line-height: 20px;
        margin: 20px auto 40px
    }

    .clients-wrap__list {
        padding: 25px 15px
    }

    .clients-wrap__list .item img {
        max-height: 35px
    }

    .clients-wrap__top--title {
        font-size: 14px;
        line-height: 20px;
        max-width: 328px;
        margin: 0 auto
    }

    .clients-wrap__top--rating {
        font-size: 14px;
        line-height: 20px
    }

    .clients-wrap__top--tabs {
        width: 100%
    }

    .clients-wrap__top--tabs .item {
        width: 100%;
        font-size: 12px;
        line-height: 30px;
        padding: 5px 3px
    }

    .clients-wrap__reviews {
        padding-left: 15px
    }

    .clients-wrap__reviews .wrapper {
        padding: 0
    }

    .clients-wrap__reviews .wrapper .item {
        margin-right: 10px
    }

    .clients-wrap__reviews .wrapper .item::after {
        display: none
    }

    .clients-wrap__reviews .wrapper .item-text {
        font-size: 14px;
        line-height: 22px
    }

    .clients-wrap__reviews .wrapper .item-text__video {
        height: 150px;
        max-width: 150px
    }

    .faq-wrap {
        margin: 60px 0
    }

    .faq-wrap__text {
        font-size: 14px;
        line-height: 20px;
        margin: 20px auto 40px
    }

    .faq-wrap__list .open {
        background-position: left top!important
    }

    .faq-wrap__list .item {
        padding: 15px;
        margin-bottom: 10px
    }

    .faq-wrap__list .item-top__title {
        font-size: 18px;
        line-height: 24px;
        max-width: 296px
    }

    .faq-wrap__list .item-top__icon {
        display: none
    }

    .faq-wrap__list .item-text {
        font-size: 14px;
        margin-top: 15px;
        line-height: 22px
    }

    .form {
        margin: 60px 0
    }

    .footer {
        border-radius: 20px 20px 0 0
    }

    .top-wrap {
        padding: 30px 0 60px
    }

    .top-wrap__text {
        font-size: 16px;
        line-height: 24px
    }

    .article-wrap {
        margin: 60px 0
    }

    .article-wrap__content--image {
        height: 300px
    }

    .article-wrap__content--text {
        font-size: 16px;
        line-height: 24px
    }

    .adv {
        border-radius: 0
    }

    .adv-wrap {
        padding: 60px 0
    }

    .adv-wrap__text {
        font-size: 14px;
        line-height: 20px;
        margin: 20px 0 40px
    }

    .adv-wrap__list .item:last-child {
        margin-bottom: 0
    }

    .adv-wrap__list .item-top__image {
        width: 40px;
        height: 40px
    }

    .adv-wrap__list .item-top__image img {
        max-height: 30px;
        max-width: 30px
    }

    .adv-wrap__list .item-top__title {
        max-width: calc(100% - 40px);
        font-size: 18px;
        line-height: 24px
    }

    .adv-wrap__list .item-text {
        font-size: 16px;
        line-height: 24px
    }

    .service {
        border-radius: 0 0 20px 20px
    }

    .service-wrap__content--text {
        font-size: 16px;
        line-height: 24px
    }

    .service-wrap__image {
        max-width: 300px
    }

    .expert-wrap {
        padding-top: 60px
    }

    .expert-wrap__flex {
        margin-top: 40px
    }

    .expert-wrap__flex--content {
        padding: 30px 15px
    }

    .expert-wrap__flex--content-title {
        font-size: 24px;
        line-height: 30px
    }

    .expert-wrap__flex--content-position {
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 20px
    }

    .expert-wrap__flex--content-text {
        font-size: 16px;
        line-height: 24px
    }

    .expert-wrap__flex--content-meta {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin-top: 30px
    }

    .expert-wrap__flex--content-meta .btn {
        margin-top: 10px;
        width: 100%
    }

    .expert-wrap__flex--content-meta_link {
        width: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .map {
        margin: 60px 0;
        padding: 60px 0
    }

    .business {
        background-size: 900px
    }

    .start {
        padding: 60px 0 50px
    }

    .introduction-wrap__list .item-content__top--position {
        font-size: 14px;
        line-height: 21px
    }

    .step {
        padding: 60px 0;
        margin-bottom: 60px
    }

    .modal-wrap {
        margin-left: 15px;
        margin-right: 15px
    }
}

#modalConsultation .op-cf7-submit,
#modalCallback .op-cf7-submit,
#modalTwo .op-cf7-submit,
#modalOne .op-cf7-submit,
#modalGift .op-cf7-submit
{
	width: 200px;
}



.choices__list--single, .choices__list--single .choices__item {
    width: var(--choices-width, 100%);
    white-space: nowrap;
    overflow: clip;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
	max-height: 28px!important;
}

@media (max-width: 640px) {
	#modalConsultation .op-cf7-submit,
	#modalCallback .op-cf7-submit,
	#modalTwo .op-cf7-submit,
	#modalOne .op-cf7-submit,
	#modalGift .op-cf7-submit
	{
		width: 100%;
	}
	.modal-wrap .wpcf7-list-item .wpcf7-list-item-label {
    	margin-top: 9px;
	}
	.service-wrap__content--title {
        font-size: 26px;
        line-height: 35px;
    }
}

/* === assets/css/style.min.css === */
/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

* {
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.z-sticky-button {
	display: none!important;
}
.top-wrap__title {
	font-weight: 700;
    font-size: 52px;
    line-height: 68px;
}
@media (max-width: 1100px) {
    .op-hero-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: stretch;
            -ms-flex-align: stretch;
                align-items: stretch;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        margin-right: 0;
        padding-bottom: 4px;
    }
    .op-hero-list::-webkit-scrollbar {
        display: none;
    }
    .op-hero-list .op-item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: clamp(250px, 44vw, 380px);
        margin-right: 12px;
    }
}
@media (max-width: 550px) {
    .op-hero-list .op-item {
        width: min(86vw, 360px);
        margin-right: 10px;
    }
}
html {
    overflow: initial;
    zoom: 1 !important;
}
body {
    overflow-x: hidden;
    /* zoom: 1 !important; */
}
body {
    margin: 0;
    padding: 0;
    font-family: Gilroy, sans-serif;
    color: #131313;
}
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
ul {
    margin: 0;
    padding: 0;
}

h1 {
    font-weight: 700;
    font-size: 52px;
    line-height: 68px;
}

h2 {
    font-weight: 700;
    font-size: clamp(1.75rem, calc(1.4071316614rem + 0.0146290491 * 100vw), 2.625rem);
}
img {
    max-width: 100%;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
a {
    text-decoration: none;
}
input,
select {
    font-family: Gilroy, sans-serif;
    padding: 24px 30px;
    background: 0 0;
    background-color: #fff;
    border: solid 1px #d0d9e7;
    border-radius: 10px;
    display: block;
    width: 100%;
    color: #131313;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    font-size: clamp(1rem, calc(0.9510188088rem + 0.0020898642 * 100vw), 1.125rem);
}
input::-webkit-input-placeholder,
select::-webkit-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-moz-placeholder,
select::-moz-placeholder {
    opacity: 1;
    color: #878c94;
}
input:-ms-input-placeholder,
select:-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-ms-input-placeholder,
select::-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-webkit-input-placeholder, select::-webkit-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-moz-placeholder, select::-moz-placeholder {
    opacity: 1;
    color: #878c94;
}
input:-ms-input-placeholder, select:-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-ms-input-placeholder, select::-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::placeholder,
select::placeholder {
    opacity: 1;
    color: #878c94;
}
input:focus,
select:focus {
    border-color: #2380eb;
}
.op-mob {
    display: none;
}
@-webkit-keyframes swipeHint {
    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    50% {
        -webkit-transform: translateX(8px);
        transform: translateX(8px);
    }
}
@keyframes swipeHint {
    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    50% {
        -webkit-transform: translateX(8px);
        transform: translateX(8px);
    }
}
@-webkit-keyframes phonePulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(8, 108, 220, 0.6);
        box-shadow: 0 0 0 0 rgba(8, 108, 220, 0.6);
    }
    70% {
        -webkit-box-shadow: 0 0 0 12px rgba(8, 108, 220, 0);
        box-shadow: 0 0 0 12px rgba(8, 108, 220, 0);
    }
    100% {
        -webkit-box-shadow: 0 0 0 0 rgba(8, 108, 220, 0);
        box-shadow: 0 0 0 0 rgba(8, 108, 220, 0);
    }
}
@keyframes phonePulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(8, 108, 220, 0.6);
        box-shadow: 0 0 0 0 rgba(8, 108, 220, 0.6);
    }
    70% {
        -webkit-box-shadow: 0 0 0 12px rgba(8, 108, 220, 0);
        box-shadow: 0 0 0 12px rgba(8, 108, 220, 0);
    }
    100% {
        -webkit-box-shadow: 0 0 0 0 rgba(8, 108, 220, 0);
        box-shadow: 0 0 0 0 rgba(8, 108, 220, 0);
    }
}
.slick-arrow {
    font-size: 0;
    border: none;
    background: 0 0;
    width: 35px;
    height: 35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 2;
    border-radius: 50%;
    background-color: #fff;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    cursor: pointer;
}
.slick-arrow svg * {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.slick-arrow:hover {
    background-color: #0a2f9a;
}
.slick-arrow:hover svg * {
    stroke: #fff;
}
.op-custom-input .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}
.op-custom-input label input:checked + .wpcf7-list-item-label::after {
    background: url(../img/main/check-active.svg) no-repeat center center/cover;
}
.op-custom-input label .wpcf7-list-item-label {
    padding-left: 46px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 26px;
    position: relative;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-custom-input label .wpcf7-list-item-label::after {
    content: "";
    display: block;
    width: 26px;
    height: 26px;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../img/main/check.svg) no-repeat center center/cover;
}
.op-custom-input label .wpcf7-list-item-label a {
    color: #e62d5b;
    text-decoration: underline;
}
.op-custom-input label .wpcf7-list-item-label a:hover {
    text-decoration: none;
}
.slick-next svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.clients-wrap__nav .slick-next svg {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}
.wpcf7-spinner {
    display: block;
}
.slick-dots {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
}
.op-wrp {
    margin-bottom: 100px;
}
.op-ttx {
    font-size: 18px;
    line-height: 30px;
}
.op-ttx a:not(.op-btn) {
    color: #2380eb;
    text-decoration: underline;
}
.op-ttx a:not(.op-btn):hover {
    text-decoration: none;
}
.op-ttx p {
    display: block;
    margin-bottom: 20px;
    line-height: 24px;
    font-size: 18px;
}
.op-ttx p:last-child {
    margin-bottom: 0;
}
.op-ttx ul {
    list-style-type: none;
}
.op-ttx ul li {
    padding-left: 21px;
    position: relative;
    margin-bottom: 8px;
}
.op-ttx ul li::after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #2380eb;
    position: absolute;
    left: 0;
    top: 10px;
}
.op-ttx ul li:last-child {
    margin-bottom: 0;
}
.op-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    cursor: pointer;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    font-family: Gilroy, sans-serif;
    border: none;
    background: 0 0;
    padding: 4px 7px 4px 20px;
    font-size: 16px;
    line-height: 1.5em;
    font-weight: 700;
    gap: 10px;
    border-radius: 50px;
    color: #fff;
    position: relative;
    z-index: 2;
    text-transform: uppercase;
    min-height: 56px;
}
.op-btn::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    z-index: -1;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border-radius: 50px;
}
.op-btn svg {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-btn svg * {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-btn:hover::after,
.op-btn:focus-visible::after,
.op-btn:active::after {
    opacity: 0.8;
}
.op-btn:hover svg,
.op-btn:focus-visible svg,
.op-btn:active svg {
    rotate: 90deg;
}
.op-container {
    max-width: 1332px;
    margin: 0 auto;
    padding: 0 15px;
}
.op-header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 100;
    background-color: #fff;
    border-radius: 0 0 20px 20px;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
}
.op-header-wrap {
    padding: 19px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 15px;
    position: relative;
}
.op-header-wrap__icon {
    display: none;
}
.op-header-wrap__logo {
    display: block;
    max-width: 242px;
}
.op-header-wrap__nav--socials,
.op-header-wrap__nav--top {
    display: none;
}
.op-header-wrap__nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 40px;
    list-style-type: none;
}
.op-header-wrap__nav ul .menu-item-has-children {
    position: relative;
}
.op-header-wrap__nav ul .menu-item-has-children a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
}
.op-header-wrap__nav ul .menu-item-has-children .op-dropdown {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 0;
    color: #8b95a8;
    -webkit-text-fill-color: #8b95a8;
    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
}
.op-header-wrap__nav ul .menu-item-has-children .op-dropdown svg,
.op-header-wrap__nav ul .menu-item-has-children svg {
    display: block;
    width: 12px;
    height: 12px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transition: -webkit-transform 0.2s ease;
    transition: -webkit-transform 0.2s ease;
    -o-transition: -o-transform 0.2s ease;
    transition: transform 0.2s ease;
    transition: transform 0.2s ease, -webkit-transform 0.2s ease, -o-transform 0.2s ease;
}
.op-header-wrap__nav ul .menu-item-has-children .op-dropdown svg *,
.op-header-wrap__nav ul .menu-item-has-children > a > .op-dropdown svg * {
    fill: none !important;
    stroke: #8b95a8;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.2s ease;
    -o-transition: stroke 0.2s ease;
    transition: stroke 0.2s ease;
}
.op-header-wrap__nav ul li {
    padding: 0 4px;
    position: relative;
}
.op-header-wrap__nav ul li::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: -1px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-header-wrap__nav ul li:hover::after {
    width: 100%;
}
.op-header-wrap__nav ul li a {
    color: #131313;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-header-wrap__nav ul li::after {
    height: 1px;
    bottom: -8px;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    max-width: calc(100% - 8px);
    left: 4px;
}
.op-header-wrap__nav ul li:hover a {
    background: -o-linear-gradient(bottom, #597BE6 0%, #030E30 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(#597BE6), to(#030E30));
    background: linear-gradient(360deg, #597BE6 0%, #030E30 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.op-header-wrap__nav ul li:hover .op-dropdown,
.op-header-wrap__nav ul li.open > a .op-dropdown,
.op-header-wrap__nav ul li.is-mm-open > a .op-dropdown,
.op-header-wrap__nav ul li.oprmm-root.is-mm-open > a .op-dropdown {
    color: #2380eb;
    -webkit-text-fill-color: #2380eb;
}
.op-header-wrap__nav ul li:hover > a .op-dropdown svg *,
.op-header-wrap__nav ul li:hover .op-dropdown svg *,
.op-header-wrap__nav ul li.open > a .op-dropdown svg *,
.op-header-wrap__nav ul li.is-mm-open > a .op-dropdown svg *,
.op-header-wrap__nav ul li.oprmm-root.is-mm-open > a .op-dropdown svg * {
    stroke: #2380eb;
}
.op-header-wrap__nav ul li.open > a .op-dropdown svg,
.op-header-wrap__nav ul li.is-mm-open > a .op-dropdown svg,
.op-header-wrap__nav ul li.oprmm-root.is-mm-open > a .op-dropdown svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
/* oneplus-submenu-scroll */@media (min-width: 1101px){.op-header-wrap__nav > ul > .menu-item-has-children > .sub-menu{max-height:calc(100vh - 120px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}.op-header-wrap__nav ul .sub-menu {
    padding: 25px;
    width: 368px;
    background-color: #fff;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    border-radius: 10px;
    display: block;
    left: -50px;
    top: 50px;
    position: absolute;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    z-index: -1;
}
.op-header-wrap__nav ul .sub-menu .menu-item-has-children {
    padding-right: 15px;
    position: relative;
}
.op-header-wrap__nav ul .sub-menu .menu-item-has-children .op-dropdown {
    display: none;
}
.op-header-wrap__nav ul .sub-menu li {
    margin-bottom: 13px;
    padding-left: 25px;
    position: relative;
}
.op-header-wrap__nav .sub-menu .sub-menu li {
	padding-left: 15px;
}
.op-header-wrap__nav ul .sub-menu li::after {
    display: none;
}
.op-header-wrap__nav ul .sub-menu li::before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background: url(/wp-content/uploads/2026/03/menu-icon-blue.svg) no-repeat center center/contain;
    position: absolute;
    left: 0;
    top: 3px;
}
.op-header-wrap__nav ul .sub-menu li.open-sub::before {
    background-image: url(/wp-content/uploads/2026/03/menu-icon-red.svg);
}
.op-header-wrap__nav ul .sub-menu li:last-child {
    margin-bottom: 0;
}
.op-header-wrap__nav ul .sub-menu li a {
    background: 0 0;
    -webkit-background-clip: inherit;
    -webkit-text-fill-color: inherit;
    color: #131313;
    text-shadow: none;
}
.op-header-wrap__nav ul .sub-menu li a:hover {
    color: #0a2f9a;
}
.op-header-wrap__nav ul .sub-menu .sub-menu {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: 0 0;
    border-radius: 0;
    padding: 0 0 0 15px;
    max-height: 0;
    overflow: hidden;
    opacity: 1;
    visibility: visible;
    z-index: auto;
    -webkit-transition:
        max-height 0.3s,
        padding 0.3s;
    -o-transition:
        max-height 0.3s,
        padding 0.3s;
    transition:
        max-height 0.3s,
        padding 0.3s;
}
.op-header-wrap__nav ul .sub-menu .sub-menu li {
    padding-left: 0;
}
.op-header-wrap__nav ul .sub-menu .sub-menu li::before {
    display: none;
}
.op-header-wrap__nav ul .sub-menu .sub-menu .sub-menu {
    display: none;
}
.op-header-wrap__nav ul .open .sub-menu {
    z-index: 2;
    opacity: 1;
    visibility: visible;
}
.op-header-wrap__nav ul .open-sub .sub-menu {
    padding-top: 5px;
}
.op-header-wrap__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
}
.op-header-wrap__meta--languages {
    width: 44px;
    height: 44px;
    position: relative;
    z-index: 50;
    overflow: visible;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    border-radius: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding-left: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    cursor: pointer;
}
.op-header-wrap__meta--languages::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    background: url(../img/main/lang.svg) no-repeat center center/contain;
    position: absolute;
    right: 6px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.op-header-wrap__meta--languages ul {
    list-style-type: none;
}
.op-header-wrap__meta--languages ul ul {
    opacity: 1;
    visibility: visible;
    display: none;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    position: absolute;
    left: 0;
    top: 34px;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    border-radius: 0 0 10px 10px;
    padding: 14px 10px 6px;
    width: 100%;
    z-index: 51;
    pointer-events: auto;
}
.op-header-wrap__meta--languages ul ul li {
    margin-bottom: 5px;
}
.op-header-wrap__meta--languages ul ul li:last-child {
    margin-bottom: 0;
}
.op-header-wrap__meta--languages ul ul a {
    color: #fff;
    position: relative;
    z-index: 1;
    display: block;
    pointer-events: auto;
}
.op-header-wrap__meta .open ul ul,
.op-header-wrap__meta--languages.open ul ul {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
.op-header-wrap__meta--callback {
    width: 262px;
    position: relative;
    font-family: Gilroy, sans-serif;
}
.op-header-wrap__meta--callback-btn {
    width: 100%;
    padding: 11px 5px;
    min-height: 44px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: auto;
    white-space: nowrap;
    gap: 12px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    cursor: pointer;
    border-radius: 12px;
    position: relative;
    z-index: 2;
    overflow: hidden;
    animation: phonePulse 1.5s ease-in-out infinite;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
}
.op-header-wrap__meta--callback-btn::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    z-index: -1;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-header-wrap__meta--callback-btn:hover::after {
    opacity: 0.85;
}
.op-header-wrap__meta--callback-list {
    width: 100%;
    min-width: 262px;
    position: absolute;
    left: 0;
    top: 44px;
    border: solid 2px #f0f4f9;
    background-color: #fff;
    border-radius: 0 0 12px 12px;
    margin-top: -5px;
    padding: 15px 10px 10px;
    font-family: Gilroy, sans-serif;
    display: none;
}
.op-header-wrap__meta--callback-list .op-current {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 3px;
    width: calc(100% + 6px);
}
.op-header-wrap__meta--callback-list .op-current svg {
    display: none;
}
.op-header-wrap__meta--callback-list a {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    color: #131313;
}
.op-header-wrap__meta--callback-list a:hover {
    color: #092b96;
}
.op-header-wrap__meta--callback-list ul {
    list-style-type: none;
    max-height: 500px;
    opacity: 1;
    padding-top: 10px;
    overflow: hidden;
}
.op-header-wrap__meta--callback-list ul li {
    margin-bottom: 10px;
}
.op-header-wrap__meta--callback-list ul li svg {
    display: none;
}
.op-header-wrap__meta--callback-list ul li:last-child {
    display: none;
    margin-bottom: 0;
}
/* .op-header-wrap__meta--callback:hover .op-header-wrap__meta--callback-list {
    display: block;
} */
.op-header-wrap__meta--search {
    min-width: 44px;
    min-height: 44px;
    height: 44px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    background-color: #f0f4f9;
    position: relative;
    border-radius: 10px;
	border: 1px solid #086CDC;
}
/* .op-header-wrap__meta--search::after {
    content: "";
    display: block;
    width: 46px;
    height: 46px;
    left: -1px;
    top: -1px;
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    z-index: -1;
    border-radius: 10px;
    position: absolute;
} */
.op-header-wrap__meta--form {
    position: absolute;
    right: 55px;
    width: 0;
    max-width: calc(100% - 330px);
    z-index: 3;
    top: 25px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    opacity: 0;
    visibility: hidden;
}
.op-header-wrap__meta--form-open {
    opacity: 1;
    visibility: visible;
    width: 100%;
}
.op-header-wrap__meta--form svg {
    position: absolute;
    left: 14px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.op-header-wrap__meta--form input {
    padding: 5px 44px;
    background-color: #f0f4f9;
    border-radius: 10px;
    border: none;
    -webkit-box-shadow: 0 2px 0 0 #092b96;
    box-shadow: 0 2px 0 0 #092b96;
}
.op-hero {
	border-radius: 0 0 50px 50px;
	position: relative;
	--op-pl1x: 0px;
	--op-pl1y: 0px;
	--op-pl2x: 0px;
	--op-pl2y: 0px;
	--op-pfx: 0px;
	--op-pfy: 0px;
	background-color: #fff;
	padding-bottom: 180px;
	max-height: 750px;
	/* overflow: hidden; */
}
.op-hero::before,
.op-hero::after {
    content: "";
    position: absolute;
    left: -8%;
    width: 116%;
    top: -9%;
    bottom: 10%;
    pointer-events: none;
    background: url(../img/main/bg-main.png) no-repeat center bottom/100%;
    z-index: 0;
    will-change: transform;
}
.op-hero::before {
    opacity: 1;
    -webkit-transform: translate3d(var(--op-pl1x), var(--op-pl1y), 0);
    transform: translate3d(var(--op-pl1x), var(--op-pl1y), 0);
}
.op-hero::after {
    opacity: 0.4;
    background-size: 112% auto;
    background-position: center bottom;
    -webkit-transform: translate3d(var(--op-pl2x), var(--op-pl2y), 0);
    transform: translate3d(var(--op-pl2x), var(--op-pl2y), 0);
}
@media (prefers-reduced-motion: reduce) {
    .op-hero::before,
    .op-hero::after {
        -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    }
    .op-hero-list .op-item {
        background: url(../img/main/hero-bg.svg) no-repeat 40% 8%/125% #f0f4f9;
    }
}
.op-hero > .op-container {
    position: relative;
    z-index: 1;
}
/* .op-hero-wrap__content--title br {
    display: none;
} */
.op-hero-list {
    margin-right: -30px;
    margin-top: 28px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: -webkit-grab;
    cursor: grab;
}
@media (max-width: 768px) {
	.op-hero-list {
		overflow-x: auto;
		overflow-y: hidden;
	}
}
.op-hero-list::-webkit-scrollbar {
    display: none;
}
.op-hero-list.is-dragging {
    cursor: -webkit-grabbing;
    cursor: grabbing;
    -webkit-user-select: none;
    -moz-user-select: none;
     -ms-user-select: none;
         user-select: none;
}
@media  (max-width: 1100px) {
	.op-header-wrap__nav ul li:hover a {
		font-weight: 400;
	}
    .op-services-wrap__list {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
    }
    .op-services-wrap__list::-webkit-scrollbar {
        display: none;
    }
    .op-services-wrap__list.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
}
.op-hero-list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-hero-list .op-item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: clamp(320px, 37vw, 414px);
    min-height: 185px;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-right: 30px;
    padding: 20px 19px;
    border-radius: 15px;
    background: url(../img/main/hero-bg.svg) no-repeat calc(40% + var(--op-pfx, 0px)) calc(8% + var(--op-pfy, 0px)) / 125% #f0f4f9;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 5px 8px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 5px 8px 0 rgba(0, 0, 0, 0.0392156863);
}
.op-hero-list .op-item-text {
    margin-top: 12px;
    line-height: 150%;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-services {
	margin-top: 185px;
	padding-bottom: 125px;
	border-radius: 0 0 50px 50px;
	z-index: 2;
	position: relative;
	background: url(../img/main/bg-services.png) no-repeat left top #fff;
}
.op-services-wrap__move {
    display: none;
}
.op-services-wrap__title {
	line-height: 44px;
    text-align: center;
}
.op-services-wrap__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 55px;
}
.op-services-wrap__list .op-item {
    width: calc((100% - 60px) / 3);
    border-radius: 20px;
    background: -o-linear-gradient(left, #0b2f9a 0, #2481eb 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #0b2f9a), to(#2481eb));
    background: linear-gradient(90deg, #0b2f9a 0, #2481eb 100%);
    padding: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    /* overflow: hidden; */
    color: #fff;
    position: relative;
    z-index: 2;
	overflow: hidden!important;
}
.op-services-wrap__list .op-item-content {
    width: 100%;
}
.op-services-wrap__list .op-item-image {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    opacity: 0.22;
    transition: 0.3s;
    width: auto;
	    max-height: 298.5px;
    overflow: hidden;
}

.op-services-wrap__list .op-item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 5px;
    width: 100%;
}
.op-services-wrap__list .op-item-top__title {
    font-size: 22px;
    line-height: 30px;
    font-weight: 700;
}
.op-services-wrap__list .op-item-top__icon {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-services-wrap__list .op-item-top__icon svg {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-services-wrap__list .op-item-text {
    line-height: 26px;
    margin-top: 11px;
    max-width: 312px;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-services-wrap__list .op-item-price {
    padding: 4px 15px;
    font-size: 20px;
    font-weight: 700;
    color: #2483ed;
    border-radius: 29px;
    text-align: center;
    background-color: #fff;
    margin-top: 83px;
}
.op-services-wrap__list .op-item:hover::before {
    background-color: transparent;
}
.op-services-wrap__list .op-item:hover .op-item-top__icon svg {
        rotate: 90deg;
}
.op-services-wrap__list .op-item:hover .op-item-image {
    opacity: 1;
}
.op-services-wrap__more {
    margin-top: 65px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.op-services-wrap__more .op-btn {
    min-width: 209px;
    padding-left: 35px;
}
.op-for-wrap__list {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 30px;
}
.op-for-wrap__list .op-item {
    width: calc((100% - 90px) / 4);
    border: solid 1px #48525e;
    border-radius: 20px;
    padding: 40px 17px 18px;
    text-align: center;
    cursor: pointer;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.page-id-238 .op-cf7-submit input.wpcf7-submit.has-spinner.btn {
	padding: 12px 0 12px 20px;
}
.op-for-wrap__list .op-item-text {
    line-height: 26px;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-for-wrap__list .op-item:hover {
    background-color: #2483ed;
    border-color: #2483ed;
}

/* Убираем старые псевдо-элементы */

/* Новые реальные элементы */

.op-consultation-wrap {
    padding: 65px 0 120px;
}
.op-consultation-wrap__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.op-consultation-wrap__list .slick-dots {
    margin-top: 0;
}
.op-consultation-wrap__list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-consultation-wrap__list .op-wrapper {
    padding: 60px 30px;
    height: inherit;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
}
.op-consultation-wrap__list .op-wrapper:nth-child(even) .op-item {
    background: url(../img/main/consultation-second.svg) no-repeat left 70px/100% rgba(255, 255, 255, 0.8980392157);
}
.op-consultation-wrap__list .op-item {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 40px;
    background: url(../img/main/consultation.svg) no-repeat right 50px/100% rgba(255, 255, 255, 0.8980392157);
    border-radius: 20px;
    background-size: cover!important;
    position: relative;
    z-index: 2;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 10px 10px 0 rgba(0, 0, 0, 0.0392156863),
        0 4px 0 0 #2483ed inset;
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 10px 10px 0 rgba(0, 0, 0, 0.0392156863),
        0 4px 0 0 #2483ed inset;
}
.op-consultation-wrap__list .op-item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 5px;
    margin-bottom: 44px;
}
.op-consultation-wrap__list .op-item-text {
    margin-bottom: 50px;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-consultation-wrap__list .op-item .op-btn {
    margin-top: 43px;
    width: 100%;
    padding: 18px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
/* .op-clients-wrap .op-container {
    max-width: 1460px;
} */
.op-clients-wrap__list {
    margin-top: 30px;
    position: relative;
}
.op-clients-wrap__list .slick-arrow {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.op-clients-wrap__list .slick-next {
    left: auto;
    right: 0;
}
.op-clients-wrap__list .slick-next svg {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
}
.op-clients-wrap__list--slider {
    margin: 0 92px;
    background-color: #fff;
    border-radius: 20px;
    padding: 35px 10px;
}
.op-clients-wrap__list--slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.op-clients-wrap__list--slider .op-wrapper {
    padding: 0 20px;
}
.op-clients-wrap__list--slider .op-wrapper .op-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 64px;
}
.op-clients-wrap__list--slider .op-wrapper img {
    max-height: 64px;
    width: auto;
    height: auto;
}
.op-clients-reviews {
    overflow: visible;
    margin-top: 81px;
}
.op-clients-reviews__move {
    display: none;
}
.op-clients-reviews__title {
    text-align: center;
    margin-bottom: 22px;
}
.op-clients-reviews__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 15px;
}
.op-clients-reviews__top--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 25px;
}
.op-clients-reviews__top--flex-tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 31px;
    overflow: hidden;
    background-color: #ebf1f9;
}
.op-clients-reviews__top--flex-tabs span {
    border-radius: 50px;
    padding: 8px 12px;
    line-height: 30px;
    cursor: pointer;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    font-size: clamp(0.75rem, calc(0.7010188088rem + 0.0020898642 * 100vw), 0.875rem);
}
.op-clients-reviews__top--flex-tabs .active {
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    color: #fff;
    text-shadow:
        0.02em 0 #fff,
        -0.02em 0 #fff;
}
.op-clients-reviews__top--flex-title {
    font-size: clamp(0.875rem, calc(0.7770376176rem + 0.0041797283 * 100vw), 1.125rem);
}
.op-clients-reviews__fake {
    display: none;
}
.op-clients-reviews__list {
    overflow: visible;
}
@media (min-width: 1100px) {
	.op-clients-reviews__list {
		margin: 0 auto;
		margin-right: -100px;
		margin-left: -15px;
		position: relative;
	}
}
.op-clients-reviews__list--wrapper {
    overflow: visible;
    display: none;
    width: 100%;
}
.op-clients-reviews__list--wrapper:first-child {
    display: block;
}
.op-clients-reviews__list--slider {
    margin: 0 -15px;
}
.op-clients-reviews__list--slider .slick-slide {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    opacity: 0.2;
}
.op-clients-reviews__list--slider .slick-active {
    opacity: 1;
}
.op-clients-reviews__list--slider .slick-list {
    overflow: visible !important;
}
.op-clients-reviews__list--slider .slick-dots {
    margin-top: 0;
}
.op-clients-reviews__list--slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-clients-reviews__list--slider .op-wrapper {
    height: inherit;
    padding: 51px 15px 40px;
}
.op-clients-reviews__list--slider .op-item {
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-radius: 20px;
    background-color: #fff;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 5px 2px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 5px 2px 0 rgba(0, 0, 0, 0.0392156863);
    padding: 20px;
}
.op-clients-reviews__list--slider .op-ttx p {
	font-size: 16px;
}
.op-clients-reviews__list--slider .op-item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 13px;
    margin-bottom: 29px;
}
.op-clients-reviews__list--slider .op-item-top__logo {
    width: 45px;
    height: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    text-align: center;
    overflow: hidden;
    font-size: 24px;
    font-weight: 900;
}
.op-clients-reviews__list--slider .op-item-top__name {
    font-size: 16px;
    font-weight: 700;
}.op-clients-reviews__list--slider .op-item-top__name a{color:#000;text-decoration:none}.op-clients-reviews__list--slider .op-item-top__name a:hover,.op-clients-reviews__list--slider .op-item-top__name a:focus{color:#000;text-decoration:underline}
.op-clients-reviews__list--slider .op-item-text {
    line-height: 24px;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-clients-reviews__list--slider .op-item-text__image {
    position: relative;
    cursor: pointer;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
}
.op-clients-reviews__list--slider .op-item-text__image svg {
    position: absolute;
    left: 50%;
    margin-right: -50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.op-clients-reviews__list--slider .op-item-text__image img {
    border-radius: 20px;
    margin: 0;
}
.op-clients-reviews__list--slider .op-item-text p {
    display: block;
    margin-bottom: 20px;
}
.op-clients-reviews__list--slider .op-item-text p:last-child {
    margin-bottom: 0;
}
.op-clients-reviews__list--slider .op-item-date {
    margin-top: 21px;
    font-size: 16px;
    color: #9b9b9b;
}
.op-why-wrap__list {
    max-width: 1011px;
    margin: 60px auto 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px;
}
.op-why-wrap__list .op-item {
    width: calc((100% - 15px) / 2);
    -webkit-box-shadow: 0 4px 0 0 #2483ed inset;
    box-shadow: 0 4px 0 0 #2483ed inset;
    background-color: rgba(255, 255, 255, 0.8980392157);
    border-radius: 20px;
    padding: 30px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    cursor: pointer;
}
.op-why-wrap__list .op-item-content {
    width: 100%;
    max-width: calc(100% - 61px);
    padding-left: 15px;
    line-height: 24px;
    font-weight: 400;
    font-size: clamp(0.75rem, calc(0.6520376176rem + 0.0041797283 * 100vw), 1rem);
}
.op-why-wrap__list .op-item:hover,
.op-why-wrap__list .op-item:focus-within {
    -webkit-box-shadow: 0 4px 0 0 #e72d5c inset;
    box-shadow: 0 4px 0 0 #e72d5c inset;
    background-color: rgba(255, 255, 255, 0.8980392157);
    color: inherit;
}
.op-history-wrap__flex--content {
    width: 100%;
    max-width: 705px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.op-history-wrap__flex--content-read {
    display: none;
}
.op-history-wrap__flex--content .op-ttx {
    line-height: 150%;
    font-family: Gilroy, sans-serif;
}
.op-history-wrap__flex--content-slider {
    margin: 60px 0 40px;
    position: relative;
}
.op-history-wrap__flex--content-slider::before {
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    background-color: #000;
    opacity: 0.2;
    position: absolute;
    left: 0;
    top: 64%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.op-history-wrap__flex--content-slider::after {
    content: "";
    display: block;
    width: 50px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #fff;
    z-index: 2;
}
.op-history-wrap__flex--content-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-history-wrap__flex--content-slider .op-wrapper {
    height: inherit;
}
.op-history-wrap__flex--content-slider .op-item {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
    font-size: 18px;
    line-height: 24px;
    font-weight: 700;
}
.op-faq {
	position: relative;
    background: #fff;
}

.op-faq .op-container {
	z-index: 2;
	position:relative;
}

@media (max-width: 1100px) {
	.op-faq:after,
	.op-faq:before {
		display: none;
	}
}
.op-faq-wrap__list {
    max-width: 956px;
    width: 100%;
    margin: 60px auto 0;
}

.op-faq-wrap__list .op-ttx p {
	font-size: 18px;
}
.op-faq-wrap__list .op-item {
    background-color: #fff;
    border: solid 1px #f0f2f5;
    border-radius: 20px;
    margin-bottom: 10px;
    padding: 28px 30px;
    position: relative;
    overflow: hidden;
}
.op-faq-wrap__list .op-item::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/main/faq.svg) no-repeat left top #f6f8fb;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-faq-wrap__list .op-item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    cursor: pointer;
    position: relative;
    z-index: 3;
}
.op-faq-wrap__list .op-item-text {
    position: relative;
    z-index: 3;
    margin-top: 30px;
    line-height: 24px;
    display: none;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-faq-wrap__list .op-item:last-child {
    margin-bottom: 0;
}
.op-faq-wrap__list .open::after {
    opacity: 1;
    visibility: visible;
}
.op-form-second {
    margin-bottom: 150px;
}
.op-form-wrap {
    border-radius: 50px;
    margin-top: 120px;
    background: url(../img/main/bg-form.png) no-repeat left top/cover #f6f8fb;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 30px;
    padding: 60px;
}
.op-form-wrap__content {
    width: 100%;
    max-width: 600px;
    margin-top: -10px;
}
.op-form-wrap__content--title {
    line-height: 100%;
    margin-bottom: 15px;
}
.op-form-wrap__content--text {
    line-height: 24px;
    margin-bottom: 38px;
    font-weight: 700;
    font-size: clamp(1rem, calc(0.8530564263rem + 0.0062695925 * 100vw), 1.375rem);
}
.op-form-wrap__content--subtitle {
    font-weight: 700;
    font-size: clamp(1rem, calc(0.8530564263rem + 0.0062695925 * 100vw), 1.375rem);
}
.op-form-wrap__content--phone {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 700;
    color: #2380eb;
    gap: 12px;
    margin: 30px 0 38px;
    font-size: clamp(1.25rem, calc(0.8581504702rem + 0.0167189133 * 100vw), 2.25rem);
}
.op-form-wrap__content--phone span {
    max-width: calc(100% - 34px);
    position: relative;
}
.op-form-wrap__content--phone span::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background-color: #2380eb;
    position: absolute;
    left: 0;
    bottom: -1px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-form-wrap__content--phone span:hover::after {
    width: 100%;
}
.op-form-wrap__content--phone span::after {
    height: 3px;
}
.op-form-wrap__content--phone span:hover::after {
    width: 0;
}
.op-form-wrap__content--phone:hover span::after {
    width: 100%;
}
.op-form-wrap__content--socials {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
}
.op-form-wrap__content--socials a {
    display: block;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-form-wrap__content--socials a:hover {
    opacity: 0.75;
}
.op-form-wrap__data {
    width: 100%;
    max-width: 550px;
}
.op-form-wrap__data .wpcf7-spinner {
    position: static;
    margin-top: 0;
}
.op-form-wrap__data--title {
    font-weight: 700;
    margin-bottom: 17px;
    font-size: clamp(1.5rem, calc(1.4020376176rem + 0.0041797283 * 100vw), 1.75rem);
}
.op-form-wrap__data--list {
    margin-bottom: 25px;
}
.op-form-wrap__data--list ul {
    list-style-type: none;
}
.op-form-wrap__data--list ul li {
	padding-top: 2px;
    position: relative;
    padding-left: 28px;
    margin-bottom: 10px;
    font-weight: 700;
    font-size: clamp(0.875rem, calc(0.7770376176rem + 0.0041797283 * 100vw), 1.125rem);
}
.op-form-wrap__data--list ul li:last-child {
    margin-bottom: 0;
}
.op-form-wrap__data--list ul li::after {
    content: "";
    display: block;
    width: 19px;
    height: 19px;
    position: absolute;
    left: 0;
    top: 2px;
    background: url(../img/main/li.svg) no-repeat center center/cover;
}
.op-form-wrap__data--row .op-btn {
    margin: 20px 0 28px;
    padding-left: 28px;
    gap: 21px;
}
.op-list-wrap__more {
    display: none;
}
.op-list-wrap__flex {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px;
}
.op-list-wrap__flex .op-item {
    position: relative;
    z-index: 0;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    background-color: transparent;
    border-radius: 5px;
    padding: 24px 20px;
    margin-bottom: 15px;
}
/* Same geometry as old `0 3px 0 0 #2483ed` shadow: rounded plate peeking 3px under the card */
.op-list-wrap__flex .op-item::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 5px;
    background: linear-gradient(90deg, #092b96 0%, #086cdc 45%, #2380eb 100%);
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    z-index: 0;
    pointer-events: none;
}
.op-list-wrap__flex .op-item::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 5px;
    background-color: #fff;
    z-index: 0;
    pointer-events: none;
}
.op-list-wrap__flex .op-item > * {
    position: relative;
    z-index: 1;
}
.op-list-wrap__flex .op-item-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 5px;
    cursor: pointer;
}
.op-list-wrap__flex .op-item-text {
    margin-top: 30px;
    font-size: 16px;
    padding-bottom: 5px;
    font-weight: 700;
    display: none;
}
.op-list-wrap__flex .op-item-text ul li {
    padding-left: 24px;
}
.op-list-wrap__flex .op-item-text ul li::after {
    content: "";
    display: block;
    width: 17px;
    height: 17px;
    background: url(../img/main/li-second.svg) no-repeat center center/cover;
    top: 5px;
}
.op-price-wrap__list {
    margin-top: 60px;
}
.op-price-wrap__list .op-item {
    margin-bottom: 10px;
    border-radius: 5px;
    background-color: #fff;
    border: solid 1px #f8fafd;
    overflow: hidden;
}
.op-price-wrap__list .op-item-top {
    padding: 24px 30px 24px 20px;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 5px;
    background-color: #f8fafd;
}
.op-price-wrap__list .op-item-text {
    padding: 26px 30px;
    display: none;
}
.op-price-wrap__list .op-item:last-child {
    margin-bottom: 0;
}
.op-price-wrap__list .op-item:nth-child(1) .op-item-text {
    display: block;
}
.op-contacts-wrap__content--map {
    display: none;
}
.op-contacts-wrap__content--form .wpcf7-spinner {
    position: static;
    margin-top: 0;
}
.op-contacts-wrap__map {
    max-width: 635px;
    width: 100%;
}
.op-contacts-wrap__map iframe {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px;
}
.op-about-list {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 30px;
}
.op-about-list .op-item {
    width: calc((100% - 90px) / 4);
    position: relative;
    border: solid 1px #e6ecf4;
    border-radius: 20px;
    background-color: #fff;
    padding: 40px 13px;
    text-align: center;
    cursor: pointer;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    overflow: hidden;
}
.op-about-list .op-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 4px;
    background: -o-linear-gradient(left, #092B96 0%, #086CDC 100%);
    background: -webkit-gradient(linear, left top, right top, from(#092B96), to(#086CDC));
    background: linear-gradient(90deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
    opacity: 0;
    pointer-events: none;
    z-index: 2;
    -webkit-transition: opacity .3s ease;
    -o-transition: opacity .3s ease;
    transition: opacity .3s ease;
}
.op-about-list .op-item:hover {
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
}
.op-about-list .op-item:hover::before {
    opacity: 1;
}
.op-team-wrap__list {
    width: 100%;
    max-width: 857px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 30px;
}
.op-team-wrap__list .op-item {
    width: calc((100% - 30px) / 2);
    border-radius: 20px;
    overflow: hidden;
    background-color: #fff;
    -webkit-box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    box-shadow:
        0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
        0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
        0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
}
.op-team-wrap__list .op-item-image__info {
    width: 45px;
    height: 45px;
    padding: 0;
    border: none;
    background: transparent;
    position: absolute;
    right: 20px;
    top: 20px;
    cursor: pointer;
}
.op-team-wrap__list .op-item-image__info:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}
.op-team-wrap__list .op-item-content {
    padding: 20px;
}
.op-team-wrap__list .op-item-content__top--position {
    padding: 6px 8px;
    text-align: center;
    color: #092b96;
    border: solid 1px rgba(36, 131, 237, 0.4);
    border-radius: 5px;
}
.op-team-popup {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 16px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0.25s ease;
    -o-transition: opacity 0.25s ease, visibility 0.25s ease;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}
.op-team-popup.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.op-team-popup__overlay {
    position: absolute;
    inset: 0;
    background: rgba(8, 20, 40, 0.66);
}
.op-team-popup__close {
    position: absolute;
    right: 30px;
    top: 30px;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid #d0d7e2;
    border-radius: 12px;
    background: #f6f8fc;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: auto;
}
.op-team-popup__media img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    max-height: 420px;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px;
}
.op-team-popup__name {
    color: #133088;
    font-size: clamp(1.75rem, 2.2vw, 2.625rem);
    font-weight: 700;
    line-height: 1.1;
}
.op-team-popup__position {
    margin-top: 10px;
    color: #0b1220;
    font-size: 20px;
    font-weight: 700;
    text-transform: lowercase;
    font-family: 'Gilroy';
}
.op-team-popup__text {
    font-size: 16px;
    margin-top: 22px;
    color: #323e4f;
    line-height: 1.5;
    font-size: 16px;
}
.op-team-popup__text p {
    margin-bottom: 14px;
}
.op-team-popup__text p:last-child {
    margin-bottom: 0;
}
.op-team-popup__list {
    margin-top: 24px;
}
.op-team-popup__list ul {
    margin: 0;
    padding: 16px 18px 16px 34px;
    border: 1px solid rgba(27, 121, 223, 0.5);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.55);
}
.op-team-popup__list li {
    margin-bottom: 10px;
    color: #3e4960;
    line-height: 1.35;
    font-size: clamp(1rem, 1.6vw, 1.5rem);
}
.op-team-popup__list li:last-child {
    margin-bottom: 0;
}
body.op-team-popup-open {
    overflow: hidden;
}
.op-company-wrap__list {
    margin-top: 60px;
    position: relative;
}
.op-company-wrap__list::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0, #fff 25%, #fff 75%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, #fff), color-stop(75%, #fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0, #fff 25%, #fff 75%, rgba(255, 255, 255, 0) 100%);
}
.op-company-wrap__list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-company-wrap__list .op-wrapper {
    height: inherit;
}
.op-company-wrap__list .op-wrapper:nth-child(even) .op-item-text {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    margin: 0 0 24px;
}
.op-company-wrap__list .op-wrapper:nth-child(even) .op-item-top {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin: 20px 0 0;
}
.op-company-wrap__list .op-item {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}
.op-company-wrap__list .op-item-top {
    height: 66px;
    overflow: hidden;
    font-size: 16px;
    font-weight: 700;
    color: #2380eb;
    margin-bottom: 18px;
}
.op-company-wrap__list .op-item-top strong {
    font-size: 36px;
    font-weight: 900;
    color: #fff;
    display: block;
}
.op-company-wrap__list .op-item-text {
    margin-top: 26px;
    line-height: 22px;
    height: 88px;
    overflow: hidden;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}

@media (max-width: 1300px) {
    .op-header-wrap__nav ul {
        gap: 20px;
    }
    .op-header-wrap__meta--form {
        max-width: calc(100% - 320px);
    }
}
@media (max-width: 1200px) {
    .op-header-wrap__logo {
        max-width: 175px;
    }
    .op-header-wrap__meta--form {
        top: 15px;
        max-width: calc(100% - 250px);
    }
    .op-for-wrap__list .op-item {
        width: calc((100% - 60px) / 3);
    }
    .op-clients-wrap__list {
        margin-left: -15px;
        margin-right: -15px;
    }
    .op-clients-wrap__list--slider {
        margin: 0 15px;
    }
    .op-history-wrap__flex--content {
        max-width: 100%;
    }
    
    .op-team-wrap__list {
        width: 100%;
        max-width: 100%;
    }
}
@media (min-width:1100px) {
	.op-header-wrap__nav ul .sub-menu .sub-menu{
		width: 102%;
		left: -10px;
	}
	.op-header-wrap__nav ul .sub-menu.open .sub-menu {
		margin-top: 15px;
	}
	.op-header-wrap__nav ul .sub-menu .sub-menu li {
		position: relative;
        margin-bottom: 10px;
        border-bottom: 1px solid;
        padding-bottom: 5px;
	}
	.op-header-wrap__nav ul .open-sub .sub-menu {
		margin-top: 10px;
	}
	.op-header-wrap__nav ul .sub-menu .sub-menu li::before {
			content: "";
			display: block;
			position: absolute;
			top: 8px;
			left: 10px;
			width: 15px;
			height: 15px;
    }
	
	.op-header-wrap__nav ul .sub-menu .sub-menu li::before {
		background: url(/wp-content/uploads/2026/03/menu-icon-blue.svg) no-repeat center center / contain;
		left: -14px;
		width: 10px;
		height: 10px;
		top: 4px;
	}
	.current-menu-item::before {
		background-image: url(/wp-content/uploads/2026/03/menu-icon-red.svg)!important;
	}
	
}

@media (max-width: 1100px) {
	#menu-header-menu {
		padding: 0;
	}
    .op-container {
        padding: 0 40px;
    }
    .op-header {
        -webkit-box-shadow:
            0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
            0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
            0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
        box-shadow:
            0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
            0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
            0 100px 80px 0 rgba(0, 0, 0, 0.0392156863);
    }
    .op-header-wrap {
        padding: 13px 0;
    }
    .op-header-wrap__icon {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        width: 44px;
        height: 44px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        border-radius: 50%;
        cursor: pointer;
        background-color: #faf7f7;
        z-index: 2;
    }
    .op-header-wrap__icon svg {
        position: absolute;
        left: 50%;
        top: 50%;
        margin-right: -50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .op-header-wrap__icon svg:nth-child(2) {
        opacity: 0;
        visibility: hidden;
        scale: 0;
    }
    .op-header-wrap__icon--active svg {
        opacity: 0;
        visibility: hidden;
        scale: 0;
    }
    .op-header-wrap__icon--active svg:nth-child(2) {
        scale: 1;
        opacity: 1;
        visibility: visible;
        -webkit-transform: translate(-50%, -50%) rotate(180deg);
        -ms-transform: translate(-50%, -50%) rotate(180deg);
        transform: translate(-50%, -50%) rotate(180deg);
    }
    .op-header-wrap__nav {
        position: fixed;
        right: -100%;
        top: 0;
        width: 100%;
        height: 100vh;
        overflow: hidden;
        padding: 60px 40px;
        background: url(../img/main/bg-nav__tab.png) no-repeat center center/cover red;
        z-index: -1;
        font-size: 22px;
        line-height: 130%;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .op-header-wrap__nav .op-btn {
        width: 100%;
        text-transform: none;
        padding: 5px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        border-radius: 12px;
        min-height: 44px;
    }
    .op-header-wrap__nav .op-btn::after {
        border-radius: 12px;
    }
    .op-header-wrap__nav--top {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 12px;
        padding-top: 14px;
        margin-top: 14px;
        border-top: solid 1px #d6dde7;
        margin-bottom: 30px;
    }
    .op-header-wrap__nav--top .op-open-search {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .op-header-wrap__nav--top .open {
        border-color: #fff !important;
    }
    .op-header-wrap__nav--top .open ul {
        opacity: 1;
        visibility: visible;
    }
    .op-header-wrap__nav--top .op-header-wrap__meta--languages {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding-left: 5px;
        position: relative;
        z-index: 2;
        background: 0 0;
        border: solid 1px #828282;
        color: #131313;
    }
    .op-header-wrap__nav--top .op-header-wrap__meta--languages::after {
        background: url(../img/main/lang2.svg) no-repeat center center/contain;
    }
    .op-header-wrap__nav--top .op-header-wrap__meta--languages ul {
        overflow: inherit;
    }
    .op-header-wrap__nav--top .op-header-wrap__meta--languages ul ul {
        position: absolute;
        left: -5px;
        width: 44px;
        padding: 0;
        padding-top: 35px;
        background: 0 0;
        border: solid 1px #828282;
        top: -8px;
        border-radius: 10px;
		overflow: hidden;
    }
	.op-header-wrap__meta--form svg {
		position: absolute;
    left: 12px;
    top: 55.5%;
    -webkit-transform: translateY(-50%) scale(1.15);
        -ms-transform: translateY(-50%) scale(1.15);
            transform: translateY(-50%) scale(1.15);
	}
    .op-header-wrap__nav--top .op-header-wrap__meta--languages ul ul li {
        padding: 0 10px 5px;
        margin-bottom: 0;
        background: #fff;
    }
    .op-header-wrap__nav--top .op-header-wrap__meta--languages ul ul li a {
        color: #131313;
        padding: 0;
    }
    .op-header-wrap__nav--active {
        right: 0;
        opacity: 1;
        visibility: visible;
    }
    .op-header-wrap__nav ul {
        display: block;
        max-height: 70vh;
        overflow-y: auto;
    }
    .op-header-wrap__nav ul ul {
        max-height: inherit;
    }
    .op-header-wrap__nav ul li {
        width: 100%;
        margin-bottom: 10px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .op-header-wrap__nav ul li::after {
        display: none;
    }
    .op-header-wrap__nav ul li .op-dropdown {
        color: #8b95a8;
        -webkit-text-fill-color: #8b95a8;
    }
    .op-header-wrap__nav ul li .op-dropdown svg {
        width: 14px;
        height: 14px;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
    .op-header-wrap__nav ul li .op-dropdown svg * {
        stroke: #8b95a8;
    }
    .op-header-wrap__nav ul li.open1 > a .op-dropdown,
    .op-header-wrap__nav ul li.open > a .op-dropdown {
        color: #2380eb;
        -webkit-text-fill-color: #2380eb;
    }
    .op-header-wrap__nav ul li.open1 .op-dropdown svg,
    .op-header-wrap__nav ul li.open1 > a .op-dropdown svg,
    .op-header-wrap__nav ul li.open > a .op-dropdown svg {
        -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg);
    }
    .op-header-wrap__nav ul li.open1 > a .op-dropdown svg *,
    .op-header-wrap__nav ul li.open > a .op-dropdown svg * {
        stroke: #2380eb;
    }
	.op-current-lang {
		top: 1px;
	}
	.op-header-wrap__nav .op-current-lang ul li a {
		background-color: #fff !important;
	}
	.op-header-wrap__nav ul li:hover a {
		    background: inherit;
	}
    .op-header-wrap__nav ul li a {
                background-color: #f0f4f9 !important;
        border-radius: 12px;
        display: block;
        padding: 11px 16px;
        line-height: 100%;
        width: 100%;
        -webkit-background-clip: inherit !important;
        -webkit-text-fill-color: inherit !important;
        text-shadow: none !important;
    }
    .op-header-wrap__nav ul li:last-child {
        margin-bottom: 0;
    }
    .op-header-wrap__nav ul .sub-menu {
        width: 100%;
        position: static;
        opacity: 1;
        visibility: visible;
        padding: 0;
        background: 0 0;
        -webkit-box-shadow: none;
        box-shadow: none;
        display: none;
        border-radius: 0;
        font-size: 16px;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .op-header-wrap__nav ul .sub-menu li {
        border-bottom: solid 1px #d6dde7;
        padding-left: 36px;
        margin-bottom: 0;
    }
    .op-header-wrap__nav ul .sub-menu li::after {
        display: none !important;
    }
    .op-header-wrap__nav ul .sub-menu li::before,
	.op-header-wrap__nav ul .open1 .sub-menu .sub-menu li::before {
        content: "";
        display: block;
        position: absolute;
        top: 8px;
        left: 10px;
        width: 15px;
        height: 15px;
    }
	.op-header-wrap__nav ul .open1 .sub-menu .sub-menu li a {
		padding-left: 18px;
	}
	.op-header-wrap__nav ul .open1 .sub-menu .sub-menu li::before {
		background: url(/wp-content/uploads/2026/03/menu-icon-blue.svg) no-repeat center center / contain;
        left: 0;
        width: 10px;
        height: 10px;
        top: 11px;
	}
	.current-menu-item::before {
		    background-image: url(/wp-content/uploads/2026/03/menu-icon-red.svg)!important;
	}
    .op-header-wrap__nav ul .sub-menu li a {
        background: 0 0 !important;
        padding: 8px 0;
        color: #131313 !important;
    }
    .op-header-wrap__nav ul .sub-menu .sub-menu {
        display: none;
        border-top: solid 1px #d6dde7;
        padding-top: 5px;
    }
    .op-header-wrap__nav ul .sub-menu .sub-menu li::before {
        display: none;
    }
    .op-header-wrap__nav ul .sub-menu .sub-menu li:last-child {
        border-bottom: none;
    }
    .op-header-wrap__nav ul .open1 .op-dropdown {
        color: #2380eb !important;
        -webkit-text-fill-color: #2380eb !important;
    }
    .op-header-wrap__nav ul .open1 .op-dropdown svg * {
        stroke: #2380eb !important;
        fill: none !important;
    }
    .op-header-wrap__nav ul .open1::before {
/*         background: url(../img/main/sub2.png) no-repeat center center/cover !important; */
    }
    .op-header-wrap__nav ul .open1 .sub-menu {
        display: block;
    }
	#menu-item-639>.sub-menu {
        padding-top: 10px;
    }
    .op-header-wrap__nav ul .open1 .sub-menu .sub-menu {
        display: none;
    }
    .op-header-wrap__nav ul .open1 .open1 .sub-menu {
        display: block;
		max-height: 100%!important;
    }
    .op-header-wrap__nav--socials {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 16px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 30px;
        padding-top: 30px;
        border-top: solid 1px #d6dde7;
    }
    .op-header-wrap__meta--languages ul {
        gap: 4px;
    }
    .op-header-wrap__meta--form {
        top: 10px;
    }
    .op-header-wrap__meta--languages,
    .op-header-wrap__meta--search {
        display: none;
    }
    .op-header-wrap__meta--callback {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }
    .op-header-wrap__meta--callback-list {
        width: 252px;
        right: -56px;
        left: auto;
    }
    .op-header-wrap__meta--callback-btn {
        width: 44px;
        height: 44px;
        padding: 0;
        gpa: 0;
        display: block;
        font-size: 0;
        position: relative;
        border-radius: 50%;
        -webkit-animation: phonePulse 1.5s ease-in-out infinite;
        animation: phonePulse 1.5s ease-in-out infinite;
    }
    .op-header-wrap__meta--callback-btn svg {
        position: absolute;
        left: 50%;
        top: 50%;
        margin-right: -50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    .op-header-wrap__meta--callback-list {
        margin-top: 30px;
        border: solid 1px #086cdc;
        padding: 6px 20px 12px;
        border-radius: 12px;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
        display: none;
    }
    .op-header-wrap__meta--callback-list .op-current {
        gap: 0;
    }
    .op-header-wrap__meta--callback-list .op-current svg {
        display: none;
    }
    .op-header-wrap__meta--callback-list ul {
        padding-top: 0;
        opacity: 1;
        visibility: visible;
        max-height: 500px;
    }
    .op-header-wrap__meta--callback-list ul a {
        background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
        background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
        padding: 9px 4px;
        color: #fff;
        border-radius: 12px;
        padding-left: 50px;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        min-height: 42px;
        font-size: 0;
    }
    .op-header-wrap__meta--callback-phone {
        background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
        background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
        padding: 9px 4px;
        color: #fff!important;
        border-radius: 12px;
        padding-left: 50px;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        min-height: 42px;
        font-size: 16px;
        margin-bottom: 10px;
    }
    .op-header-wrap__meta--callback-phone svg {
        position: absolute;
        left: 4px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .op-header-wrap__meta--callback-phone:hover {
        color: #fff;
        opacity: 0.92;
    }
    .op-header-wrap__meta--callback-list ul a span {
        font-size: 16px;
    }
    .op-header-wrap__meta--callback-list ul a svg {
        position: absolute;
        left: 4px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .op-header-wrap__meta--callback-list ul li:last-child {
        display: block;
    }
    .op-header-wrap__meta--callback .open {
        opacity: 1;
        visibility: visible;
        display: block;
    }
    .op-hero-list {
        margin-right: -40px;
		padding-bottom: 35px;
    }
    .op-services {
        margin-top: 97px;
    }
	.op-services-wrap__title {
		line-height: 36px;
	}
    .op-services-wrap__list {
        margin-top: 27px;
        gap: 30px;
    }
    .op-services-wrap__list .op-item {
        width: calc((100% - 30px) / 2);
    }
    .op-for-wrap__list .op-item {
        width: calc((100% - 30px) / 2);
    }
    .op-consultation-wrap {
        padding: 90px 0;
    }
    .op-consultation-wrap__list .op-wrapper {
        padding: 30px 30px 0 0;
    }
    .op-clients-reviews__top {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 24px;
    }
    .op-clients-reviews__top--flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
        gap: 25px;
    }
    .op-clients-reviews__top--flex-title {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
    }
    .op-why-wrap__list {
        margin-top: 19px;
        display: block;
        margin-right: -40px;
    }
    .op-why-wrap__list .op-item {
        margin-right: 15px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .op-why-wrap__list .op-item-content {
        max-width: 100%;
        padding-left: 0;
        text-align: center;
    }
    .op-faq-wrap__list {
        margin-top: 28px;
    }
    .op-form-wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        gap: 47px;
        margin-top: 75px;
        border-radius: 50px;
    }
    .op-form-wrap__content,
    .op-form-wrap__data {
        width: 100%;
        max-width: 100%;
    }
    .op-list-wrap__flex {
        margin-top: 27px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 0 30px;
    }
    .op-list-wrap__more {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 86px;
    }
    .op-price-wrap__list {
        margin-top: 54px;
    }
    .op-contacts-wrap__content--map {
        display: block;
        margin-bottom: 0px;
        height: 629px;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }
    .op-contacts-wrap__content--map iframe {
        width: 100%;
        height: 100%;
        border-radius: 20px;
        -o-object-fit: cover;
        object-fit: cover;
    }
    .op-contacts-wrap__map {
        display: none;
    }
    .op-about-list {
        gap: 32px;
    }
    .op-about-list .op-item {
        width: calc((100% - 32px) / 2);
    }
    .op-company-wrap__list {
        margin-right: -40px;
    }
}
@media (max-width: 720px) {
    .op-history-wrap__flex--content-slider::after {
        display: none;
    }
    .op-history-wrap__flex--content-slider .op-item {
        margin: 0 auto;
    }
    
    
    
    
    
    
    
}

.mobile-show {
	display: none;
}

.compensation-wrap__slider--list.slick-initialized.slick-slider {
	padding-bottom: 80px;
}

.postid-328 .compensation-wrap__slider--list.slick-initialized.slick-slider {
	padding-bottom: 0px;
}

.postid-328 .slick-track .slick-slide {
	height: 100%;
}

@media (max-width: 1100px) {
	.mobile-show {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.mobile-hide {
		display: none!important;
	}
	.op-clients-reviews__list--slider .op-wrapper {
		    padding: 27px 15px;
	}
}
@media (max-width: 668px) {
    .op-container {
        padding: 0 15px;
    }
    .op-clients-wrap__list {
        position: relative;
    }
    .op-clients-wrap__list .slick-dots {
        position: absolute;
        left: 50%;
        margin-right: -50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: -40px;
    }
}

@media (max-width: 1100px) {
	.op-history-wrap__flex--content-slider {
		margin: 60px auto 40px;
	}
}

@media (max-width: 1100px) and (min-width: 640px) {
	.op-history-wrap__flex--content-slider::after {
		right: 0!important;
	}
	.op-form form {
		max-width: 50%;
	}
}

@media (max-width: 550px) {
    input,
    select {
        padding: 8px 20px;
        min-height: 50px;
    }
    .slick-dots {
        margin-top: 23px;
    }
    .op-header-wrap__nav {
        padding-left: 15px;
        padding-right: 15px;
    }
    .op-header-wrap__icon {
        border-radius: 12px;
        background-color: #f0f4f9;
        border: solid 1px #086cdc;
    }
    .op-header-wrap__icon--active {
        border-color: #828282;
    }
    .op-header-wrap__logo {
        max-width: 167px;
    }
    .op-header-wrap__meta {
        gap: 12px;
    }
    .op-header-wrap__meta--form {
        max-width: calc(100% + 2px);
        top: 85px;
        right: auto;
        left: 0;
    }
    .op-header-wrap__meta--form input {
        min-height: 46px;
    }
    .op-hero-list {
        margin-right: -15px;
    }
    .op-services {
        margin-top: 58px;
        padding-bottom: 75px;
        border-radius: 0 0 50px 50px;
    }
    .op-services-wrap__list {
        display: block;
        margin-top: 16px;
    }
    .op-services-wrap__list .slick-track {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .op-services-wrap__list .op-item {
        height: inherit;
        padding-top: 17px;
    }
    .op-services-wrap__list .op-item-top__title {
        max-width: 191px;
    }
    .op-services-wrap__list .op-item-text {
        margin-top: 7px;
    }
    .op-services-wrap__list .op-item-price {
        margin-top: 31px;
    }
    .op-services-wrap__move {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-top: 16px;
        width: 41px;
        height: 26px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        background-color: #f9f9f9;
        border-radius: 5px;
    }
    .op-services-wrap__more {
        margin-top: 40px;
    }
    .op-for-wrap__list {
        margin-top: 25px;
        display: block;
    }
    .op-for-wrap__list .slick-track {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .op-for-wrap__list .slick-dots li button {
        background: 0 0;
    }
    .op-for-wrap__list .op-item {
        height: inherit;
        padding: 26px;
    }
    .op-consultation-wrap {
        padding: 45px 0 65px;
    }
    .op-consultation-wrap__list {
        margin-left: 0;
        margin-right: -15px;
    }
    .op-consultation-wrap__list .op-wrapper {
        padding: 26px 0;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        margin-right: 0;
    }
    .op-consultation-wrap__list .op-item {
        padding: 25px 20px;
    }
    .op-consultation-wrap__list .op-item-top {
        margin-bottom: 42px;
    }
    .op-consultation-wrap__list .op-item .op-btn {
        text-align: center;
        text-transform: none;
        margin-top: 24px;
    }
    .op-clients-wrap__list {
        margin-top: 25px;
        margin-left: auto;
        margin-right: auto;
    }
    .op-clients-wrap__list--slider {
        padding: 0;
        border-radius: 20px;
    }
    .op-clients-wrap__list--slider .op-item {
        padding: 28px 7px;
        min-height: 30px;
    }
    .op-clients-wrap__list--slider .op-item img {
        max-height: 30px;
        width: auto;
        height: auto;
    }
    .op-clients-reviews__title {
        margin-bottom: 20px;
    }
    .op-clients-reviews__top--flex {
        width: 100%;
    }
    .op-clients-reviews__top--flex-tabs {
        width: 100%;
    }
    .op-clients-reviews__top--flex-tabs span {
        padding: 5px 1px;
        width: 100%;
    }
    .op-clients-reviews__list {
        padding-left: 15px;
    }
    .op-clients-reviews__list .op-wrapper {
        opacity: 1;
        padding: 28px 10px 28px 0;
    }
    .op-clients-reviews__move {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        display: block;
        margin-top: 18px;
    }
    .op-why-wrap__list {
        margin-right: 0;
    }
    .op-why-wrap__list .op-item {
        border-radius: 10px;
        padding: 20px 15px;
        margin-right: 0;
    }
    .op-why-wrap__list .op-item-content {
        max-width: 100%;
        padding: 0;
    }
    .op-history-wrap__flex--content .op-ttx {
        font-size: 14px;
        line-height: 21px;
        height: 150px;
        overflow: hidden;
    }
    .op-history-wrap__flex--content-read {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        font-size: 14px;
        color: #2483ed;
        text-decoration: underline;
        font-weight: 700;
    }
    .op-history-wrap__flex--content-slider {
        margin-left: 5%;
    }
    .op-history-wrap__flex--content-slider::after {
        display: block;
        width: 30px;
    }
    .op-history-wrap__flex--content-slider .op-item {
        margin: 0;
    }
    .op-faq-wrap__list {
        margin-top: 36px;
    }
    .op-faq-wrap__list .op-item {
        border-radius: 20px;
        padding: 15px;
    }
    .op-faq-wrap__list .op-item-text {
        margin-top: 15px;
    }
    .op-form-wrap {
        padding: 35px 18px;
        border-radius: 20px;
        gap: 25px;
    }
    .op-form-wrap__content--title {
        margin-bottom: 12px;
    }
    .op-form-wrap__content--text {
        margin-bottom: 20px;
    }
    .op-form-wrap__content--phone {
        margin: 18px 0 28px;
    }
    .op-form-wrap__content--socials .op-item svg {
        max-width: 43px;
        max-height: 43px;
    }
    .op-form-wrap__data--title {
        margin-bottom: 17px;
    }
    .op-form-wrap__data .op-btn {
        text-align: left;
        font-size: 14px;
    }
    .op-list-wrap__more {
        margin-top: 47px;
    }
/*     .op-top-wrap .op-bread {
        display: none;
    } */
    .op-form-second {
        margin-bottom: 50px;
    }
    .op-price-wrap__list {
        margin-top: 31px;
    }
    .op-contacts-wrap__content--map {
        height: 301px;
        margin-bottom: 55px;
    }
    .op-about-list {
        margin-top: 12px;
        display: block;
        margin-right: -15px;
    }
    .op-about-list .op-item {
        margin-right: 10px;
        padding: 16px;
    }
    .op-team-wrap__list {
        display: block;
        margin: 0 -15px;
        width: calc(100% + 30px);
        max-width: calc(100% + 30px);
    }
    .op-team-wrap__list .op-item {
        -webkit-box-shadow:
            0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
            0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
            0 10px 8px 0 rgba(0, 0, 0, 0.0392156863);
        box-shadow:
            0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
            0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
            0 10px 8px 0 rgba(0, 0, 0, 0.0392156863);
        margin: 23px 15px 20px;
    }
	.op-about-list .op-item {
		height: 265px;
	}
	.services-template-template-parts .compensation-wrap__slider--list.slick-initialized.slick-slider {
		padding-bottom: 0;
	}
	.expert {
		margin-top: 20px;
	}
    .op-company-wrap__list {
        margin-right: 0;
    }
}

.ttx ol, .ttx ul {
  list-style: none; 
}

.ttx ol {
	padding-left: 0;
	margin-bottom: 30px;
}

.ttx ul li::before {
  position: absolute;
  content: "•"; 
  color: #09339f; 
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}

.ttx ol li::before {
  counter-increment: item;
  content: counter(item) ". ";
  color: #09339f;
  font-weight: bold;
}

.ttx ol {
  counter-reset: item;
}
@media (min-width: 993px) and (max-width: 1100px) {
    .op-consultation-wrap__list {
        overflow: visible;
        -ms-scroll-snap-type: none;
            scroll-snap-type: none;
        cursor: default;
        margin-left: 0;
        margin-right: -30px;
    }
    .op-consultation-wrap__list .op-wrapper {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        margin-right: 0;
    }
}
@media (max-width: 992px) {
    .op-consultation-wrap__list {
        overflow-x: auto !important;
        overflow-y: hidden;
        -ms-scroll-snap-type: x mandatory;
            scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        scrollbar-width: none;
    }
    .op-consultation-wrap__list .op-wrapper {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% - 40px);
        flex: 0 0 calc(100% - 40px);
        margin-right: 15px;
    }
    .op-consultation-wrap__toggle-btn {
        border: none;
        border-radius: 24px;
        padding: 8px 16px;
        font-family: Gilroy, sans-serif;
        font-size: 14px;
        font-weight: 700;
        color: #0a2f9a;
        background: #eaf2ff;
        white-space: nowrap;
        cursor: pointer;
        -webkit-transition: 0.25s;
        -o-transition: 0.25s;
        transition: 0.25s;
    }
    .op-consultation-wrap__toggle-btn.is-active {
        color: #fff;
        background: -o-linear-gradient(left, #092b96 0, #086cdc 100%);
        background: -webkit-gradient(linear, left top, right top, color-stop(0, #092b96), to(#086cdc));
        background: linear-gradient(90deg, #092b96 0, #086cdc 100%);
    }
}
/* Services list: explicit split between tablet and mobile to prevent overrides */
@media  (max-width: 1100px) {
    .op-services-wrap__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
        margin-right: -40px;
    }
    .op-services-wrap__list::-webkit-scrollbar {
        display: none;
    }
    .op-services-wrap__list .op-item {
        width: calc((100% - 30px) / 2);
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% - 30px) / 2);
        flex: 0 0 calc((100% - 88px) / 2);
    }
    .op-services-wrap__list.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
}
@media (max-width: 550px) {
    .op-services-wrap__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        overflow: scroll;
        cursor: default;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    }
    .op-services-wrap__list .op-item {
        -webkit-box-flex: initial;
        -ms-flex: initial;
        flex: initial;
        min-width: 320px;
        overflow: visible;
    }
}
@media (max-width: 1100px) {
	.op-mob {
		display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-top: 27px;
	}
    .op-why-wrap__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        gap: 15px;
        margin-right: 0;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
    }
    .op-why-wrap__list::-webkit-scrollbar {
        display: none;
    }
    .op-why-wrap__list .op-item {
        margin-right: 0;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% - 15px) / 2);
        flex: 0 0 calc((100% - 15px) / 2);
        width: calc((100% - 15px) / 2);
		min-width: 320px;
    }
    .op-why-wrap__list.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
}
@media (max-width: 1100px) {
	.op-hero {
		padding-bottom: 0;
	}
    .op-for-wrap__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        gap: 30px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
        margin-right: -40px;
    }
    .op-for-wrap__list::-webkit-scrollbar {
        display: none;
    }
    .op-for-wrap__list .op-item {
        -ms-flex: 0 0 calc((100% - 30px) / 2);
        width: calc((100% - 30px) / 2);
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% - 30px) / 2);
        flex: 0 0 calc((100% - 88px) / 2);
    }
    .op-for-wrap__list.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
}
@media (max-width: 550px) {
	.op-form-wrap__data .op-form-wrap__data--title {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
	}
	.op-for-wrap__list .op-item {
		margin-right: 0;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% - 15px) / 2);
        flex: 0 0 calc((100% - 15px) / 2);
        width: calc((100% - 15px) / 2);
		min-width: 320px;
	}
	.op-for-wrap__list,
	.op-why-wrap__list,
	.op-services-wrap__list {
		margin-right: -15px;
	}
}

.op-clients-wrap__list--slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: -webkit-grab;
    cursor: grab;
}
.op-clients-wrap__list--slider::-webkit-scrollbar {
    display: none;
}
.op-clients-wrap__list--slider .op-wrapper {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}
.op-clients-wrap__list--slider.is-dragging {
    cursor: -webkit-grabbing;
    cursor: grabbing;
    -webkit-user-select: none;
    -moz-user-select: none;
     -ms-user-select: none;
         user-select: none;
}
/* History slider: native smooth horizontal scroll */
.op-history-wrap__flex--content-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: -webkit-grab;
    cursor: grab;
}
.op-history-wrap__flex--content-slider::-webkit-scrollbar {
    display: none;
}
.op-history-wrap__flex--content-slider .op-wrapper {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 172px;
    flex: 0 0 172px;
    width: 172px;
}
.op-history-wrap__flex--content-slider .op-item {
    width: 100%;
}
.op-history-wrap__flex--content-slider::after {
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    background-color: #000;
    opacity: 0.2;
    position: absolute;
    right: 20px;
    top: 64%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
}
.op-history-wrap__flex--content-slider.is-dragging {
    cursor: -webkit-grabbing;
    cursor: grabbing;
    -webkit-user-select: none;
    -moz-user-select: none;
     -ms-user-select: none;
         user-select: none;
}
/* Reviews: Slick на десктопе (≥1101px); нативный скролл ≤1100px */
@media (max-width: 1100px) {
    .op-clients-reviews__list--slider {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
    }
    .op-clients-reviews__list--slider::-webkit-scrollbar {
        display: none;
    }
    .op-clients-reviews__list--slider .op-wrapper {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    }
    .op-clients-reviews__list--slider.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
}
@media (max-width: 1100px) and (max-width: 1200px) {
    .op-clients-reviews__list--slider .op-wrapper {
        -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    }
}
@media (max-width: 1100px) {
    .op-clients-reviews__list--slider .op-wrapper {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }
}
@media (max-width: 550px) {
    .op-clients-reviews__list--slider .op-wrapper {
        -ms-flex-preferred-size: 85%;
        flex-basis: 85%;
    }
}
@media (max-width: 640px) {
	.op-history-wrap__flex--content-slider {
		margin: 40px 0;
	}
	.op-history-wrap__flex--content-slider::after {
		right: -325px;
	}
}
/* CF7 submit: как .op-btn — градиент ::before, иконка ::after + rotate(90deg); без смены background у input (не прыгает) */
.op-cf7-submit {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    position: relative;
    z-index: 2;
    max-width: 100%;
    vertical-align: middle;
    border-radius: 50px;
}
.op-cf7-submit::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 50px;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    z-index: 0;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
}
.op-cf7-submit:hover:not(:has(input:disabled))::before {
    opacity: 0.8;
}
.op-cf7-submit::after {
    content: "";
    position: absolute;
    right: 8px;
    top: 50%;
    width: 48px;
    height: 48px;
    z-index: 2;
    pointer-events: none;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' fill='none' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='21' fill='%23fff'/%3E%3Ccircle cx='24' cy='24' r='22.5' stroke='%23fff' stroke-opacity='0.31' stroke-width='3'/%3E%3Cpath stroke='%23092B96' d='M19.1568 28.8432L28.098 19.902M28.098 19.902H21.0728M28.098 19.902V26.2885'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
}
.op-cf7-submit:hover:not(:has(input:disabled))::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}
.op-cf7-submit:has(input:disabled) {
    opacity: 0.55;
}
.op-cf7-submit input#submit-consultation.wpcf7-submit,
.op-cf7-submit input.wpcf7-submit.has-spinner.btn {
    display: inline-block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    cursor: pointer;
    font-family: Gilroy, sans-serif;
    font-size: 16px;
    line-height: 1.5em;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    border: none;
    border-radius: 50px;
    min-height: 56px;
    padding: 12px 0px 12px 28px;
    gap: 20px;
    background: none !important;
    background-image: none !important;
    position: relative;
    z-index: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
}
.op-cf7-submit input#submit-consultation.wpcf7-submit:disabled,
.op-cf7-submit input.wpcf7-submit.has-spinner.btn:disabled {
    cursor: not-allowed;
}
@media (max-width: 550px) {
    .op-cf7-submit::after {
        right: 6px;
        width: 44px;
        height: 44px;
    }
    .op-cf7-submit input#submit-consultation.wpcf7-submit,
    .op-cf7-submit input.wpcf7-submit.has-spinner.btn {
        font-size: 14px;
        padding-right: 56px;
    }
}
/* Team + About: native horizontal swipe (tablet only; ≤550 Slick + display:block) */
@media (max-width: 1100px) {
    .op-team-wrap__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        gap: 15px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
        margin-right: -15px;
        width: unset!important;
    }
    .op-team-wrap__list::-webkit-scrollbar {
        display: none;
    }
    .op-team-wrap__list .op-item {
       margin-right: 0;
       -webkit-box-flex: 0;
       -ms-flex: 0 0 calc((100% - 15px) / 2);
       flex: 0 0 calc((100% - 15px) / 2);
       width: calc((100% - 15px) / 2);
       min-width: 320px;
       -webkit-box-shadow: none;
               box-shadow: none;
       border: solid 1px rgba(36, 131, 237, 0.4);
    }
    .op-team-wrap__list.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
    .op-about-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        gap: 30px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: -webkit-grab;
        cursor: grab;
        margin-right: -15px;
    }
    .op-about-list::-webkit-scrollbar {
        display: none;
    }
    .op-about-list .op-item {
        margin-right: 0;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% - 15px) / 2);
        flex: 0 0 calc((100% - 15px) / 2);
        width: calc((100% - 15px) / 2);
		min-width: 320px;
    }
    .op-about-list.is-dragging {
        cursor: -webkit-grabbing;
        cursor: grabbing;
        -webkit-user-select: none;
        -moz-user-select: none;
         -ms-user-select: none;
             user-select: none;
    }
}

.wpcf7-list-item label {
    margin-top: 20px;
}

.op-form-wrap .wpcf7-list-item label {
	margin-top: 18px;
}

.op-clients-reviews__list--wrapper:nth-child(2) .op-item-top {
	display: none!important;
}

.op-header-wrap__meta--callback-hours {
	margin-top: 8px;
}

@media (max-width: 1100px) {
	.op-header-wrap__meta--callback.is-open #op-header-callback-panel {
        margin-top: 30px;
        border: solid 1px #086cdc;
        padding: 6px 20px 12px;
        border-radius: 12px;
        opacity: 1;
        visibility: visible;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
        display: block;
	}
}

@media (max-width: 640px) {
	.faq-wrap__list .item-top__title {
        font-size: 18px;
        line-height: 24px;
        max-width: 85%!important;
    }
	.op-faq-wrap__list .op-ttx p {
		font-size: 16px;
	}
	.faq-wrap__list .item-top__icon {
		display: block!important;
	}
	.modal-wrap__form .cf7-buttons .btn {
		max-width: 100%!important;
  	}
	.op-hero .op-container {
		background: #fff;
	}
	.wpcf7-list-item .wpcf7-list-item-label::after {
		    top: 7px!important;
	}
}

@media (max-width: 1100px) {
	.op-hero {
		max-height: -webkit-fit-content;
		max-height: -moz-fit-content;
		max-height: fit-content;
	}
	.op-consultation-wrap__list .op-item-text {
		margin-bottom: 24px;
	}
	.op-hero::before, .op-hero::after {
		display: none;
	}
    .op-team-popup__media img {
        min-height: 320px;
    }
    .op-team-popup__position {
        font-size: 22px;
    }
}

.reason .op-cf7-submit input#submit-consultation.wpcf7-submit, 
.reason .op-cf7-submit input.wpcf7-submit.has-spinner.btn {
	padding: 12px 70px 12px 28px;
}

.op-header-wrap__meta--callback-phone svg {
	width: 34px;
	height: 34px;
}

@media (max-width: 767px) {
	.services-template-template-parts .op-clients-reviews {
		margin-top: 0px;
	}
	.top-wrap__title {
		        font-size: 26px;
        line-height: 35px;
	}
    .op-team-popup {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding: 8px;
    }
    .op-team-popup__close {
        width: 40px;
        height: 40px;
        border-radius: 10px;
    }
    .op-team-popup__media img {
        min-height: 260px;
        max-height: 360px;
        border-radius: 14px;
    }
    .op-team-popup__position {
        margin-top: 8px;
        font-size: 16px;
    }
    .op-team-popup__text {
        margin-top: 14px;
        font-size: 14px;
    }
    .op-team-popup__list {
        margin-top: 14px;
    }
    .op-team-popup__list ul {
        padding: 12px 12px 12px 24px;
        border-radius: 12px;
    }
    .op-team-popup__list li {
        font-size: 14px;
        margin-bottom: 8px;
    }
}
@media (max-width: 640px) {
	.op-services-wrap__more .op-btn {
		min-width: auto;
		padding-left: 20px;
	}
	/* Match hero .op-btn: no SVG padding (it offset transform-origin / looked like a jump on tap+rotate) */
	.op-cf7-submit input#submit-consultation.wpcf7-submit, .op-cf7-submit input.wpcf7-submit.has-spinner.btn {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		padding-right: 0;
	}
	.modal-wrap .iti--allow-dropdown input.iti__tel-input, .iti--allow-dropdown input.iti__tel-input[type=tel] {
		    padding-left: 52px!important;
	}
	.modal-wrap .cf7-title {
		max-width: 85%;
	}
	.modal-wrap__form .choices__inner {
		font-size: 16px;
		padding: 15px 10px!important;
		margin-bottom: 15px;
	}
	.modal-wrap__form input, .modal-wrap__form select, .modal-wrap__form textarea {
		font-size: 16px;
		padding: 15px 10px!important;
	}
	    .op-cf7-submit {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin: 0 auto;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
	.modal-wrap__form .cf7-buttons {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		margin-top: 30px;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		position: relative;
		width: 100%;
		gap: 16px;
	}
	.article-wrap__content--text h4 {
		margin-bottom: 12px;
	}
}

@media (min-width: 640px) and (max-width: 1024px) {
	.op-form-wrap__content--title {
		margin: 0 auto;
		text-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		width: 88%;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 0 10px;
	}
	.op-form-wrap__content {
		    display: -webkit-box;
		    display: -ms-flexbox;
		    display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.op-form-wrap__data {
		width: 100%;
		max-width: 54%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin: 0 auto;
	}
	.op-form form {
        max-width: 100%!important;
    }
	.wpcf7-list-item-label p {
		font-size: 15px;
	}
	.op-cf7-submit {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		position: relative;
		z-index: 2;
		max-width: 100%;
		vertical-align: middle;
		border-radius: 50px;
		margin: 0 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
	}
}

@media (max-width: 640px) {
	.op-consultation-wrap {
		padding-bottom: 0;
	}
}

/* .article-wrap__content--text li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
} */

/* op-single-hero-natural-height-20260909 */
.article-wrap__content--image{height:auto!important}
.article-wrap__content--image img{display:block;width:100%;height:auto;max-width:100%;object-fit:initial;-o-object-fit:initial;border-radius:20px}

/* Business registration cards already use a custom check icon via ::after. */

/* op-mobile-header-lock-20260910 */@media (max-width:1100px){.op-wrp{margin-bottom:70px}.op-header-wrap__logo img,.op-header-logo{display:block;width:100%;height:auto;max-width:100%;aspect-ratio:300/77}}@media (max-width:550px){.op-header-wrap__logo{max-width:167px}}

/* === assets/css/footer.css === */
/**
 * ONE PLUS footer — single stylesheet (desktop + tablet + mobile).
 * Stage 2: all footer CSS lives here; removed from style.css / style.min.css.
 * Rollback: see _backup-footer-stage2-* / STAGE2.md
 *
 * Load order inside this file:
 *   1) Shell (bg, back-to-top, funding plaques, bottom bar, legacy base)
 *   2) Unified cards + mobile/tablet overrides (wins by cascade)
 */

/* ==========================================================================
   1) Footer shell (from former style.css / style.min.css)
   ========================================================================== */

:root {
    --ft-mnav-grad-from: #092B96;
    --ft-mnav-grad-to: #086CDC;
    /* Desktop menu plaques: floor = RU content width (measured), other langs match RU */
    --ft-menu-card-min: 322px;
}

.op-footer {
    max-width: 1920px;
    margin: 88px auto 0;
    background: url(../img/main/bg-footer.png) no-repeat right top/100%;
    border-radius: 50px 0 50px 50px;
    position: relative;
}

.op-footer-top {
    position: absolute;
    right: 15px;
    top: 3px;
    width: 16%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    padding: 26px;
    font-size: 18px;
    color: #000;
    font-weight: 700;
    border-radius: 14px;
    background: #F6F8FB;
}

.op-footer-top svg {
    -webkit-animation: bounceArrow 2s ease-in-out infinite;
    animation: bounceArrow 2s ease-in-out infinite;
}

@-webkit-keyframes bounceArrow {
    0%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    50% {
        -webkit-transform: translateY(-5px);
        transform: translateY(-5px);
        background-color: #f6f8fb;
    }
}

@keyframes bounceArrow {
    0%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    50% {
        -webkit-transform: translateY(-5px);
        transform: translateY(-5px);
        background-color: #f6f8fb;
    }
}

.op-footer-top span {
    position: relative;
}

.op-footer-top span::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background-color: #000;
    position: absolute;
    left: 0;
    bottom: -1px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.op-footer-top span:hover::after {
    width: 100%;
}

.op-footer-top span:hover::after {
    width: 0;
}

.op-footer-top:hover span::after {
    width: 100%;
}

.op-footer::after {
    content: "";
    display: block;
    width: 100%;
    height: 70%;
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #f6f8fb;
    border-radius: 0 0 50px 50px;
}

.op-footer-wrap {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1300px;
    padding: 20px 0 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.op-footer-wrap__top {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.op-footer-wrap__nav {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
}

.op-footer-wrap__nav--legal {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
    max-width: 100%;
    width: 100%;
}

.op-footer-wrap__nav--legal .op-footer-wrap__nav--menu-title {
    display: none;
}

.op-footer-wrap__bottom {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
}

.op-footer-wrap__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 5px;
    padding-right: 10%;
    margin-bottom: 45px;
}

.op-footer-wrap__top--logo {
    display: block;
    max-width: 176px;
    padding-top: 3px;
}

.op-footer-wrap__top--logo img {
    width: 176px;
    max-width: 100%;
    height: auto;
    display: block;
}

.op-footer-wrap__top--gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7px;
}

.op-footer-wrap__top--gallery .op-item {
    width: 100%;
    max-width: 173px;
    height: 58px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border-radius: 10px;
    padding: 15px;
	-webkit-filter: saturate(0);
	        filter: saturate(0);
	-webkit-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	transition: all ease 0.3s;
}

.op-footer-wrap__top--gallery .op-item:first-child img,
.op-footer-wrap__top--gallery .op-item:nth-child(2) img,
.op-footer-wrap__top--gallery .op-item:nth-child(3) img {
	-webkit-transform: scale(1.3);
	    -ms-transform: scale(1.3);
	        transform: scale(1.3);
}

.op-footer-wrap__top--gallery .op-item:hover {
	-webkit-filter: saturate(1);
	        filter: saturate(1);
	cursor: pointer;
}

.op-footer-wrap__top--gallery .op-item img {
    max-height: 35px;
    width: auto;
}

.op-footer-wrap__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 15px;
    padding-right: 10%;
    margin-bottom: 36px;
}

.op-footer-wrap__nav--contacts {
    width: 100%;
    max-width: 250px;
}

.op-footer-wrap__nav--contacts .op-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    color: #667085;
    margin-bottom: 20px;
}

.op-footer-wrap__nav--contacts .op-item svg {
    min-width: 22px;
}

.op-footer-wrap__nav--contacts .op-item-text {
    font-weight: 700;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
    max-width: calc(100% - 22px);
}

.op-footer-wrap__nav--contacts .op-item:first-child {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.op-footer-wrap__nav--contacts .op-item:first-child .op-item-text {
    font-weight: 400;
}

.op-footer-wrap__nav--contacts .op-item:first-child .op-item-text strong {
    font-weight: 700;
}

.op-footer-wrap__nav--contacts a.op-item .op-item-text {
    position: relative;
}

.op-footer-wrap__nav--contacts a.op-item .op-item-text::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background-color: #667085;
    position: absolute;
    left: 0;
    bottom: 1px;
    -webkit-transition: width 0.28s ease;
    -o-transition: width 0.28s ease;
    transition: width 0.28s ease;
}

.op-footer-wrap__nav--contacts a.op-item .op-item-text:hover::after {
    width: 100%;
}

.op-footer-wrap__nav--contacts a.op-item .op-item-text:hover::after {
    width: 0;
}

.op-footer-wrap__nav--contacts a.op-item:hover .op-item-text::after {
    width: 100%;
}

.op-footer-wrap__nav--contacts-title {
    margin: 48px 0 14px;
    font-weight: 700;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}

.op-footer-wrap__nav--contacts-socials {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}

.op-footer-wrap__nav--contacts-socials .op-item {
    display: block;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    margin-bottom: 0;
}

.op-footer-wrap__nav--contacts-socials .op-item:hover {
    opacity: 0.75;
}

.op-footer-wrap__nav--menu {
    max-width: 241px;
}

.op-footer-wrap__nav--menu.op-footer-wrap__nav--legal {
    max-width: 100%;
    width: 100%;
}

.op-footer-wrap__nav--menu-icon {
    display: none;
}

.op-footer-mnav-icon,
.op-footer-mnav-chevron {
    display: none;
}

.op-footer-wrap__nav--menu-title {
    font-weight: 700;
    margin-bottom: 28px;
    font-size: clamp(1rem, calc(0.9510188088rem + 0.0020898642 * 100vw), 1.125rem);
}

.op-footer-wrap__nav--menu ul {
    list-style-type: none;
}

.op-footer-wrap__nav--menu ul li {
    margin-bottom: 13px;
}

.op-footer-wrap__nav--menu ul li:last-child {
    margin-bottom: 0;
}

.op-footer-wrap__nav--menu ul li a {
    color: #667085;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.op-footer-wrap__nav--menu ul li a:hover {
    color: #2483ed;
}

.op-footer-wrap__bottom {
    padding: 13px 0;
    border-top: solid 1px #dfdfdf;
    border-bottom: solid 1px #dfdfdf;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 15px;
    font-size: 12px;
}

.op-footer-wrap__bottom ul {
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.op-footer-wrap__bottom ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.op-footer-wrap__bottom ul li::after {
    content: "";
    display: block;
    width: 1px;
    height: 24px;
    margin: 0 18px;
    background-color: #30343a;
}

.op-footer-wrap__bottom ul li a {
    color: #000;
    position: relative;
}

.op-footer-wrap__bottom ul li a::after {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background-color: #000;
    position: absolute;
    left: 0;
    bottom: -1px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.op-footer-wrap__bottom ul li a:hover::after {
    width: 100%;
}

.op-footer-wrap__bottom ul li a::after {
    width: 100%;
}

.op-footer-wrap__bottom ul li a:hover::after {
    width: 0;
}

.op-footer-wrap__bottom ul li:last-child::after {
    display: none;
}

.op-footer-wrap__notice {
    margin-top: 10px;
    font-size: 11px;
    line-height: 16px;
    color: #667085;
    padding-bottom: 5px;
}

.op-footer-wrap__nav--legal .op-footer-wrap__notice {
    margin-top: 10px;
}

@media (max-width: 1700px) {
.op-footer-wrap__top {
        padding-right: 20%;
    }
}

@media (max-width: 1500px) {
.op-footer-top {
        padding: 20px;
    }
}

@media (max-width: 1400px) {
.op-footer-top {
        padding: 15px;
    }
}

@media (max-width: 1200px) {
.op-footer {
        background: #f6f8fb;
        border-radius: 20px;
    }

.op-footer-top {
        display: none;
    }

.op-footer-wrap {
        padding-top: 32px;
    }

.op-footer-wrap__top {
        padding-right: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 25px;
    }

.op-footer-wrap__nav {
        display: block;
        margin-bottom: 0;
        padding-right: 0;
    }

.op-footer-wrap__nav--contacts {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 15px;
        max-width: 100%;
        width: 100%;
        padding-bottom: 51px;
        border-bottom: solid 1px #d6d6d6;
        margin-bottom: 20px;
    }

.op-footer-wrap__nav--contacts-title {
        margin-top: 0;
    }
}

@media (max-width: 1100px) {
.op-footer-wrap__nav--menu {
        width: 100%;
        max-width: 100%;
        margin-bottom: 12px;
        padding: 14px 16px;
        border: 1px solid #d7e6f7;
        border-radius: 20px;
        background: #fff;
        -webkit-box-shadow: 0 6px 18px rgba(10, 47, 154, 0.07);
        box-shadow: 0 6px 18px rgba(10, 47, 154, 0.07);
    }

.op-footer-wrap__nav--menu ul {
        display: none;
        margin-top: 14px;
        padding-top: 4px;
        overflow: hidden;
        list-style: none;
    }

.op-footer-wrap__nav--menu ul li {
        margin-bottom: 0;
        border-top: 1px solid #e6eef8;
    }

.op-footer-wrap__nav--menu ul li:first-child {
        border-top: none;
    }

.op-footer-wrap__nav--menu ul li a,
    .op-footer-wrap__nav--menu ul li a.op-footer-mnav-link {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 12px;
        min-height: 56px;
        padding: 8px 4px 8px 0;
        color: #475467;
        font-size: 16px;
        font-weight: 600;
        line-height: 1.3;
        text-decoration: none;
        position: relative;
        -webkit-transition: color 0.2s ease;
        -o-transition: color 0.2s ease;
        transition: color 0.2s ease;
    }

.op-footer-wrap__nav--menu ul li a:hover,
    .op-footer-wrap__nav--menu ul li a:focus-visible {
        color: #0a2f9a;
    }

.op-footer-mnav-icon {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        min-width: 40px;
        border-radius: 50%;
        color: #667085;
        background: #eef1f6;
        background-image: none;
        -webkit-transition: background 0.2s ease, color 0.2s ease;
        -o-transition: background 0.2s ease, color 0.2s ease;
        transition: background 0.2s ease, color 0.2s ease;
    }

.op-footer-mnav-icon svg {
        display: block;
        width: 20px;
        height: 20px;
        color: inherit;
    }

/* Default: muted gray strokes (same as desktop); blue gradient on hover */
.op-footer-mnav-icon svg * {
        stroke: #667085 !important;
        -webkit-transition: stroke 0.2s ease;
        -o-transition: stroke 0.2s ease;
        transition: stroke 0.2s ease;
    }

.op-footer-mnav-icon[data-op-icon="ukraine"] svg * {
        stroke: none !important;
    }

.op-footer-wrap__nav--menu ul li a:hover .op-footer-mnav-icon,
    .op-footer-wrap__nav--menu ul li a:focus-visible .op-footer-mnav-icon {
        background: #e7f1fb;
        background-image: linear-gradient(145deg, #f3f8fd 0%, #e0edfa 100%);
        color: #086cdc;
    }

.op-footer-wrap__nav--menu ul li a:hover .op-footer-mnav-icon svg *,
    .op-footer-wrap__nav--menu ul li a:focus-visible .op-footer-mnav-icon svg * {
        stroke: url(#ft_mnav_grad) !important;
    }

.op-footer-wrap__nav--menu ul li a:hover .op-footer-mnav-icon[data-op-icon="ukraine"] svg *,
    .op-footer-wrap__nav--menu ul li a:focus-visible .op-footer-mnav-icon[data-op-icon="ukraine"] svg * {
        stroke: none !important;
    }

.op-footer-mnav-label {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        min-width: 0;
        color: #475467;
        -webkit-text-fill-color: #475467;
        background: none;
        -webkit-background-clip: border-box;
        background-clip: border-box;
        -webkit-transition: color 0.2s ease, -webkit-text-fill-color 0.2s ease;
        -o-transition: color 0.2s ease;
        transition: color 0.2s ease, -webkit-text-fill-color 0.2s ease;
    }

.op-footer-wrap__nav--menu ul li a:hover .op-footer-mnav-label,
    .op-footer-wrap__nav--menu ul li a:focus-visible .op-footer-mnav-label {
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

.op-footer-mnav-chevron {
        display: block;
        width: 10px;
        height: 10px;
        min-width: 10px;
        margin-left: auto;
        border-right: 2px solid #98a2b3;
        border-bottom: 2px solid #98a2b3;
        border-image: none;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0.95;
        -webkit-transition: border-color 0.2s ease;
        -o-transition: border-color 0.2s ease;
        transition: border-color 0.2s ease;
    }

.op-footer-wrap__nav--menu ul li a:hover .op-footer-mnav-chevron,
    .op-footer-wrap__nav--menu ul li a:focus-visible .op-footer-mnav-chevron {
        border-right-color: transparent;
        border-bottom-color: transparent;
        border-image: linear-gradient(135deg, var(--ft-mnav-grad-from, #092B96), var(--ft-mnav-grad-to, #086CDC)) 1;
        opacity: 0.95;
    }

.op-footer-wrap__nav--menu-title {
        margin-bottom: 0;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 12px;
        min-height: 46px;
        padding-right: 36px;
        cursor: pointer;
        -webkit-user-select: none;
        -ms-user-select: none;
        user-select: none;
        font-weight: 700;
        font-size: 18px;
        line-height: 1.25;
        color: inherit;
        -webkit-text-fill-color: inherit;
        background: none;
        -webkit-background-clip: border-box;
        background-clip: border-box;
    }

.op-footer-wrap__nav--menu-icon {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 46px;
        height: 46px;
        min-width: 46px;
        border-radius: 50%;
        background: #e7f1fb;
    }

.op-footer-wrap__nav--menu-icon svg {
        display: block;
        width: 22px;
        height: 22px;
    }

/* Section titles (Навигация / Услуги / Другие услуги): keep blue gradient */
.op-footer-wrap__nav--menu-text {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        min-width: 0;
        display: inline-block;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

.op-footer-wrap__nav--menu-title::after {
        content: "";
        display: block;
        width: 20px;
        height: 12px;
        background: linear-gradient(90deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-mask: url(../img/main/arrow-footer.svg) no-repeat center center / contain;
        mask: url(../img/main/arrow-footer.svg) no-repeat center center / contain;
        position: absolute;
        right: 2px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        -webkit-transition: -webkit-transform 0.3s;
        transition: -webkit-transform 0.3s;
        -o-transition: transform 0.3s;
        transition: transform 0.3s;
        transition: transform 0.3s, -webkit-transform 0.3s;
    }

.op-footer-wrap__nav .open .op-footer-wrap__nav--menu-title::after,
    .op-footer-wrap__nav--menu.open .op-footer-wrap__nav--menu-title::after {
        -webkit-transform: translateY(-50%) rotate(180deg);
        -ms-transform: translateY(-50%) rotate(180deg);
        transform: translateY(-50%) rotate(180deg);
    }

.op-footer-wrap__nav--legal {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
        margin-bottom: 12px;
        padding: 14px 16px;
        border: 1px solid #d7e6f7;
        border-radius: 20px;
        background: #fff;
        -webkit-box-shadow: 0 6px 18px rgba(10, 47, 154, 0.07);
        box-shadow: 0 6px 18px rgba(10, 47, 154, 0.07);
    }

.op-footer-wrap__nav--legal .op-footer-wrap__nav--menu-title {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

.op-footer-wrap__nav--legal .op-footer-wrap__notice {
        display: none;
        margin-top: 14px;
        overflow: hidden;
        font-size: 12px;
        line-height: 1.45;
        color: #667085;
        font-weight: 400;
    }

.op-footer-wrap__bottom {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
        border-top: none;
        padding-top: 8px;
    }

.op-footer-wrap__bottom--nav {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: 100%;
    }

.op-footer-wrap__bottom--copyright {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
}

@media (max-width: 720px) {
.op-footer-wrap__nav--contacts {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 21px 15px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

.op-footer-wrap__nav--contacts .op-item:first-child {
        width: calc((100% - 15px) / 2);
    }

.op-footer-wrap__nav--contacts-row {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        max-width: calc((100% - 15px) / 2);
    }

.op-footer-wrap__nav--contacts-row:last-child {
        text-align: center;
    }

.op-footer-wrap__nav--contacts-row .op-item:nth-child(1n + 1) {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }

.op-footer-wrap__nav--contacts-socials {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

.op-footer-wrap__nav--contacts-socials .op-item:nth-child(1n + 1) {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }
}

@media (max-width: 668px) {
.op-footer-wrap__bottom {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

.op-footer-wrap__bottom--nav {
        width: 100%;
        padding-bottom: 13px;
        border-bottom: solid 1px #d6d6d6;
    }

.op-footer-wrap__bottom--copyright {
        width: 100%;
        max-width: 100%;
        border-bottom: none;
        padding-bottom: 0;
        padding-top: 0;
    }
}

@media (max-width: 550px) {
.op-footer {
        margin-top: 50px;
    }

.op-footer-wrap {
        padding: 34px 6px;
    }

.op-footer-wrap__top {
        gap: 24px;
    }

.op-footer-wrap__top--logo {
        max-width: 176px;
    }

.op-footer-wrap__top--gallery {
        gap: 5px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

.op-footer-wrap__top--gallery .op-item {
        width: calc((100% - 5px) / 2);
    }

.op-footer-wrap__nav--menu {
        padding: 14px 16px;
        margin-bottom: 12px;
    }

.op-footer-wrap__nav--contacts {
        padding-bottom: 33px;
    }

.op-footer-wrap__nav--contacts-row:last-child {
        margin-top: -20px;
    }

.op-footer-wrap__bottom--nav {
        width: 100%;
    }

.op-footer-wrap__bottom--nav ul {
        gap: 5px;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

.op-footer-wrap__bottom--nav ul li::after {
        display: none;
    }
}

/* ==========================================================================
   2) Unified cards + mobile/tablet (active layout)
   ========================================================================== */

/* --- Desktop defaults: wrappers transparent; hide mobile-only chrome --- */
.footer-mobile-brand,
.footer-mobile-funding {
    display: contents;
}

.footer-mobile-brand__tagline,
.footer-mobile-funding__label,
.footer-mobile-divider,
.footer-mobile-contact-card__hours,
.footer-mobile-company-card,
.footer-mobile-contact-card {
    display: none !important;
}

.footer-desktop-contact-card {
    display: flex;
    flex-direction: column;
}

.footer-mobile-icon {
    display: contents;
}

.footer-mobile-icon > svg {
    display: block;
    min-width: 22px;
}

/* Email reveal — keep readable on desktop too (matches pre-redesign button look) */
.op-footer-email-reveal {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    font: inherit;
    font-weight: 700;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
    color: #667085;
    cursor: pointer;
    text-align: left;
    position: relative;
}

.op-footer-email-reveal:focus-visible {
    outline: 2px solid #086cdc;
    outline-offset: 3px;
    border-radius: 4px;
}

.op-footer-email-link {
    font-weight: 700;
    color: #0a2f9a;
    word-break: break-all;
}

/* --- Mobile / tablet upper footer --- */
@media (max-width: 1024px) {
    .footer-desktop-contact-card {
        display: none !important;
    }

    .footer-mobile-company-card {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .footer-mobile-contact-card {
        display: flex !important;
    }
    .op-footer-wrap {
        max-width: 900px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 28px;
        padding-bottom: 24px;
    }

    .op-footer-wrap__top {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 24px;
        padding-right: 0;
        margin-bottom: 24px;
        width: 100%;
    }

    .footer-mobile-brand {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
        width: 100%;
        text-align: center;
    }

    .footer-mobile-brand .op-footer-wrap__top--logo {
        max-width: 260px;
        padding-top: 0;
    }

    .footer-mobile-brand .op-footer-wrap__top--logo img {
        width: 240px;
        max-width: 100%;
        height: auto;
        margin: 0 auto;
    }

    .footer-mobile-brand__tagline {
        display: block;
        margin: 0;
        max-width: 28rem;
        color: #5b6b8c;
        font-size: 15px;
        line-height: 1.4;
        font-weight: 500;
    }

    .footer-mobile-funding {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 12px;
        width: 100%;
        padding: 14px 16px 16px;
        border-radius: 20px;
        border: 1px solid #e4eef8;
        background: #f7fafc;
        box-sizing: border-box;
    }

    .footer-mobile-funding__label {
        display: block;
        margin: 0;
        width: 100%;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        font-size: 12px;
        font-weight: 700;
        color: #6b7a99;
        line-height: 1.3;
    }

    .op-footer-wrap__top--gallery.footer-mobile-funding__grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100%;
        max-width: none;
    }

    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item {
        max-width: none !important;
        width: 100% !important;
        height: 58px;
        padding: 10px 12px;
        border-radius: 16px;
        border: 1px solid #d7e6f7;
        background: #fff;
        box-shadow: 0 4px 12px rgba(10, 47, 154, 0.05);
        /* Same muted → full-color interaction as desktop gallery */
        -webkit-filter: saturate(0);
        filter: saturate(0);
        -webkit-transition: filter 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
        -o-transition: filter 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
        transition: filter 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
        box-sizing: border-box;
        cursor: pointer;
    }

    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item:hover,
    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item:focus-visible,
    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item:active {
        -webkit-filter: saturate(1);
        filter: saturate(1);
        border-color: #b8d4f0;
        box-shadow: 0 6px 16px rgba(10, 47, 154, 0.12);
    }

    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item:first-child img,
    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item:nth-child(2) img,
    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item:nth-child(3) img {
        transform: none;
        -webkit-transform: none;
        -ms-transform: none;
    }

    .op-footer-wrap__top--gallery.footer-mobile-funding__grid .op-item img {
        max-height: 34px;
        max-width: 100%;
        width: auto;
        object-fit: contain;
    }

    .op-footer-wrap__nav {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding-right: 0;
        margin-bottom: 0;
        width: 100%;
    }

    /*
     * Kill legacy ≤720px half-width rules from style.min.css:
     *   .op-item:first-child { width: calc((100%-15px)/2) }
     *   .contacts-row { max-width: calc((100%-15px)/2) }
     */
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100% !important;
        max-width: 100% !important;
        padding-bottom: 0 !important;
        border-bottom: 0 !important;
        /* Match Navigation ↔ Services plaque gap (.op-footer-wrap__nav--menu { margin-bottom: 12px }) */
        margin-bottom: 12px !important;
        align-items: stretch;
        justify-content: stretch;
        flex-wrap: nowrap;
        box-sizing: border-box;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-company-card,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-contact-card,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .op-item:first-child,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .op-footer-wrap__nav--contacts-row {
        width: 100% !important;
        max-width: none !important;
        min-width: 0;
        min-height: 0;
        height: auto;
        box-sizing: border-box;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-company-card,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-contact-card {
        margin: 0;
        padding: 12px 10px;
        border-radius: 18px;
        border: 1px solid #d7e6f7;
        background: #fff;
        box-shadow: 0 6px 18px rgba(10, 47, 154, 0.07);
        color: #667085;
    }

    /*
     * Office card: [icon] text — icon top-aligned with first text line
     * (not centered against full card height when grid stretches cards).
     */
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-company-card.op-item {
        display: flex !important;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        gap: 8px;
    }

    .footer-mobile-company-card__body,
    .footer-mobile-company-card .op-item-text {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        min-width: 0;
        max-width: none !important;
        width: auto;
        font-size: 12px;
        line-height: 1.35;
    }

    /* Name sits on the same vertical centerline as the location icon badge */
    .footer-mobile-company-card__name {
        position: relative;
        display: flex;
        align-items: center;
        min-height: 34px;
        padding-bottom: 2px;
        box-sizing: border-box;
        font-size: 11.5px;
        font-weight: 700;
        color: #0a2f9a;
        line-height: 1.15;
        letter-spacing: -0.035em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
        text-decoration: none !important;
        cursor: pointer;
    }

    /* L→R underline — thin 1px, close to text (width anim keeps thickness stable) */
    a.footer-mobile-company-card__name::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 0 !important;
        right: auto !important;
        bottom: 1px !important;
        width: 0 !important;
        max-width: none !important;
        height: 1px !important;
        background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
        background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
        -webkit-background-clip: border-box !important;
        background-clip: border-box !important;
        -webkit-transform: none !important;
        transform: none !important;
        -webkit-transition: width 0.28s ease !important;
        -o-transition: width 0.28s ease !important;
        transition: width 0.28s ease !important;
        pointer-events: none;
    }

    a.footer-mobile-company-card__name:hover,
    a.footer-mobile-company-card__name:focus-visible {
        color: #086cdc;
        text-decoration: none !important;
    }

    a.footer-mobile-company-card__name:hover::after,
    a.footer-mobile-company-card__name:focus-visible::after {
        width: 100% !important;
        -webkit-transform: none !important;
        transform: none !important;
    }

    .footer-mobile-company-card__line {
        color: #667085;
        font-weight: 400;
        font-size: 12px;
        line-height: 1.35;
    }

    .footer-mobile-company-card__regs {
        display: block;
        width: 100%;
        margin-top: 8px;
        padding-top: 8px;
        border-top: 1px solid #e6eef8;
        font-size: 11px;
        line-height: 1.4;
        color: #5b6b8c;
    }

    .footer-mobile-company-card__regs b {
        font-weight: 700;
        color: #0a2f9a;
    }

    .footer-mobile-icon {
        display: inline-flex !important;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        align-items: center;
        justify-content: center;
        width: 34px;
        height: 34px;
        min-width: 34px;
        border-radius: 50%;
        background: #e7f1fb;
    }

    .footer-mobile-icon > svg {
        width: 17px;
        height: 17px;
        min-width: 17px;
    }

    /* Contact card: stretch rows to fill equal-height card (space between phone / email / hours) */
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-contact-card {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        justify-content: space-between;
        gap: 0;
        height: 100%;
        min-height: 100%;
        box-sizing: border-box;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid .footer-mobile-contact-card .op-item {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        margin-bottom: 0;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        color: #667085;
    }

    .footer-mobile-contact-card .op-item-text {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        min-width: 0;
        max-width: 100%;
        width: auto;
        font-size: 12px;
        line-height: 1.35;
    }

    .footer-mobile-contact-card__phone {
        align-items: center !important;
        text-decoration: none !important;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item
    .op-item-text {
        position: relative;
        flex: 0 0 auto !important;
        width: max-content;
        max-width: 100%;
        font-size: 12.5px !important;
        font-weight: 700 !important;
        color: #092b96 !important;
        white-space: nowrap;
        letter-spacing: -0.015em;
        -webkit-font-smoothing: antialiased;
        text-rendering: geometricPrecision;
        text-decoration: none !important;
    }

    /* L→R underline via width (stable 1px; scaleX looked thicker mid-animation) */
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item
    .op-item-text::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 0 !important;
        right: auto !important;
        bottom: 1px !important;
        width: 0 !important;
        max-width: none !important;
        height: 1px !important;
        background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
        background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
        -webkit-background-clip: border-box !important;
        background-clip: border-box !important;
        -webkit-transform: none !important;
        transform: none !important;
        -webkit-transition: width 0.28s ease !important;
        -o-transition: width 0.28s ease !important;
        transition: width 0.28s ease !important;
        pointer-events: none;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item:hover
    .op-item-text,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item:focus-visible
    .op-item-text {
        text-decoration: none !important;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item:hover
    .op-item-text::after,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item:focus-visible
    .op-item-text::after {
        width: 100% !important;
        -webkit-transform: none !important;
        transform: none !important;
    }

    .footer-mobile-contact-card__email {
        align-items: center !important;
    }

    .footer-mobile-contact-card__email .op-footer-email-reveal {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: auto;
        max-width: 100%;
        min-width: 0;
        min-height: 28px;
        padding: 3px 10px;
        border: 1.5px solid #0a2f9a;
        border-radius: 999px;
        color: #0a2f9a;
        font-size: 10.5px;
        font-weight: 700;
        line-height: 1.1;
        background: #fff;
        white-space: nowrap;
        text-align: center;
        box-sizing: border-box;
        text-decoration: none !important;
    }

    .footer-mobile-contact-card__email .op-footer-email-reveal:hover,
    .footer-mobile-contact-card__email .op-footer-email-reveal:focus-visible {
        background: #f3f8fd;
    }

    .footer-mobile-contact-card__email .op-footer-email-link {
        position: relative;
        display: inline-block;
        flex: 0 0 auto !important;
        width: max-content;
        max-width: 100%;
        min-width: 0;
        font-size: 12px;
        font-weight: 700;
        color: #0a2f9a;
        overflow-wrap: anywhere;
        word-break: break-word;
        text-decoration: none !important;
    }

    .footer-mobile-contact-card__email .op-footer-email-link::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 0 !important;
        right: auto !important;
        bottom: 1px !important;
        width: 0 !important;
        max-width: none !important;
        height: 1px !important;
        background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
        -webkit-background-clip: border-box !important;
        background-clip: border-box !important;
        -webkit-transform: none !important;
        transform: none !important;
        -webkit-transition: width 0.28s ease !important;
        transition: width 0.28s ease !important;
        pointer-events: none;
    }

    .footer-mobile-contact-card__email .op-footer-email-link:hover,
    .footer-mobile-contact-card__email .op-footer-email-link:focus-visible {
        text-decoration: none !important;
    }

    .footer-mobile-contact-card__email .op-footer-email-link:hover::after,
    .footer-mobile-contact-card__email .op-footer-email-link:focus-visible::after {
        width: 100% !important;
        -webkit-transform: none !important;
        transform: none !important;
    }

    .footer-mobile-contact-card__hours {
        display: flex !important;
        align-items: flex-start !important;
    }

    .footer-mobile-contact-card__hours-text {
        display: flex;
        flex-direction: column;
        gap: 1px;
        min-width: 0;
        max-width: 100%;
        line-height: 1.25;
    }

    .footer-mobile-contact-card__hours-days {
        display: block;
        font-size: 13px;
        font-weight: 700;
        color: #0a2f9a;
        line-height: 1.25;
    }

    .footer-mobile-contact-card__hours-time {
        display: block;
        font-size: 12px;
        font-weight: 500;
        color: #667085;
        line-height: 1.3;
    }

    /*
     * Socials card (full-width under office/contact cards):
     * same white plaque language as company/contact cards.
     * Title hidden — icons only (matches desktop).
     */
    .footer-mobile-socials,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-socials {
        grid-column: 1 / -1;
        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 14px 12px;
        border-radius: 18px;
        border: 1px solid #d7e6f7;
        background: #fff;
        box-shadow: 0 6px 18px rgba(10, 47, 154, 0.07);
        box-sizing: border-box;
        text-align: center;
        color: #667085;
    }

    .footer-mobile-socials__title,
    .op-footer-wrap__nav--contacts-title.footer-mobile-socials__title {
        display: none !important;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: nowrap;
        gap: 10px;
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item {
        width: 42px !important;
        height: 42px;
        min-width: 42px;
        max-width: 42px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0;
        padding: 0;
        border-radius: 50%;
        flex: 0 0 auto;
        transition: transform 0.2s ease, opacity 0.2s ease;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item:hover,
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item:focus-visible {
        opacity: 1;
        transform: translateY(-1px);
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item svg {
        width: 42px;
        height: 42px;
        display: block;
    }

    /* Spacer kept in markup; base rule has display:none !important — leave hidden */
    .footer-mobile-divider {
        display: none !important;
        margin: 0 !important;
        height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    .op-footer-wrap__nav > .op-footer-wrap__nav--menu:first-of-type {
        margin-top: 0 !important;
    }
}

/* Keep two columns on all mobile widths; tighten density on very narrow screens */
@media (max-width: 375px) {
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-company-card,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-contact-card {
        padding: 10px 8px;
    }

    .footer-mobile-company-card__name {
        font-size: 10.5px;
        letter-spacing: -0.04em;
        min-height: 32px;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item
    .op-item-text {
        font-size: 11.5px !important;
        letter-spacing: -0.02em;
    }

    .footer-mobile-icon {
        width: 32px;
        height: 32px;
        min-width: 32px;
    }

    .footer-mobile-icon > svg {
        width: 16px;
        height: 16px;
        min-width: 16px;
    }

    .footer-mobile-contact-card__email .op-footer-email-reveal {
        min-height: 26px;
        padding: 2px 9px;
        font-size: 10px;
    }

    .footer-mobile-brand .op-footer-wrap__top--logo img {
        width: 200px;
    }

    .footer-mobile-socials,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-socials {
        padding: 12px 10px;
        gap: 0;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials {
        gap: 8px;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item,
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item svg {
        width: 38px;
        height: 38px;
        min-width: 38px;
        max-width: 38px;
    }
}

@media (min-width: 376px) and (max-width: 430px) {
    .footer-mobile-brand .op-footer-wrap__top--logo img {
        width: 220px;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item,
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item svg {
        width: 40px;
        height: 40px;
        min-width: 40px;
        max-width: 40px;
    }
}

/* Tablet: roomier 2-col — card type ~+3px vs previous tablet sizes */
@media (min-width: 768px) and (max-width: 1024px) {
    .footer-mobile-brand .op-footer-wrap__top--logo img {
        width: 280px;
    }

    .footer-mobile-funding {
        max-width: 560px;
        padding: 16px 18px 18px;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid {
        gap: 14px;
        /* Same 12px as menu plaques — not larger than Navigation ↔ Services */
        margin-bottom: 12px !important;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-company-card,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-contact-card {
        padding: 16px 14px;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-company-card {
        gap: 12px;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-contact-card {
        gap: 0;
        justify-content: space-between;
    }

    .footer-mobile-company-card__name {
        font-size: 21px;
        letter-spacing: -0.02em;
        min-height: 44px;
    }

    .footer-mobile-company-card__line,
    .footer-mobile-company-card .op-item-text {
        font-size: 16px;
        line-height: 1.4;
    }

    .footer-mobile-company-card__regs {
        font-size: 14px;
        line-height: 1.45;
        margin-top: 10px;
        padding-top: 10px;
    }

    .footer-mobile-contact-card .op-item-text {
        font-size: 15px;
        line-height: 1.4;
    }

    .op-footer-wrap__nav--contacts.footer-mobile-company-grid
    .footer-mobile-contact-card__phone.op-item
    .op-item-text {
        font-size: 22px !important;
        font-weight: 700 !important;
        letter-spacing: -0.01em;
    }

    .footer-mobile-contact-card__hours-days {
        font-size: 17px;
    }

    .footer-mobile-contact-card__hours-time {
        font-size: 16px;
    }

    .footer-mobile-contact-card__email .op-footer-email-reveal {
        font-size: 19.5px;
        min-height: 40px;
        padding: 7px 16px;
    }

    .footer-mobile-contact-card__email .op-footer-email-link {
        font-size: 20px;
    }

    .footer-mobile-icon {
        width: 44px;
        height: 44px;
        min-width: 44px;
    }

    .footer-mobile-icon > svg {
        width: 22px;
        height: 22px;
        min-width: 22px;
    }

    .footer-mobile-socials,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-socials {
        padding: 16px 14px;
        gap: 0;
        border-radius: 20px;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials {
        gap: 16px;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item,
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item svg {
        width: 48px;
        height: 48px;
        min-width: 48px;
        max-width: 48px;
    }
}

/* 721–1024: same row as Privacy/Terms (not under them), copyright stays one line */
@media (min-width: 721px) and (max-width: 1024px) {
    .op-footer-wrap__bottom {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
        gap: 10px;
    }

    .op-footer-wrap__bottom--copyright {
        -webkit-box-ordinal-group: 2 !important;
        -ms-flex-order: 1 !important;
        order: 1 !important;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto !important;
        max-width: none !important;
        white-space: nowrap !important;
        font-size: 11px;
        line-height: 1.3;
        letter-spacing: -0.015em;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        border-bottom: none !important;
    }

    .op-footer-wrap__bottom--nav {
        -webkit-box-ordinal-group: 3 !important;
        -ms-flex-order: 2 !important;
        order: 2 !important;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        width: auto !important;
        min-width: 0;
        padding-bottom: 0 !important;
        border-bottom: none !important;
    }

    .op-footer-wrap__bottom--nav ul {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
        gap: 0;
    }

    .op-footer-wrap__bottom--nav ul li::after {
        margin: 0 10px;
    }
}

/* ==========================================================================
   Desktop ≥1025 — card layout (contact / menus / socials)
   Funding logos + back-to-top + bottom legal bar: keep existing style.css look.
   ========================================================================== */
@media (min-width: 1025px) {
    /* Logo in its own white card (funding + back-to-top untouched) */
    .footer-mobile-brand {
        display: inline-flex !important;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: 0;
        padding: 16px 20px;
        margin: 0;
        background: #fff !important;
        border: 0;
        border-radius: 18px;
        box-shadow: none;
        box-sizing: border-box;
    }

    .footer-mobile-brand .op-footer-wrap__top--logo {
        display: block;
        max-width: 176px;
        padding: 0;
    }

    .footer-mobile-brand .op-footer-wrap__top--logo img {
        width: 160px;
        max-width: 100%;
        height: auto;
        display: block;
    }

    .footer-mobile-brand__tagline {
        display: none !important;
    }

    /* Keep cards clear of the footer's top-left radius */
    .op-footer-wrap {
        padding-top: 28px;
        padding-bottom: 14px; /* tighter under privacy notice */
    }

    .op-footer-wrap__top {
        margin-bottom: 20px;
    }

    /* Contact = content width; 3 menu cards equal, floor = RU width (--ft-menu-card-min) */
    .op-footer-wrap__nav {
        display: grid;
        grid-template-columns: max-content repeat(3, minmax(var(--ft-menu-card-min), 1fr));
        gap: 16px;
        align-items: start;
        width: max-content;
        max-width: 100%;
        padding-right: 0;
        margin-top: 22px;
        margin-bottom: 0; /* legal/bottom are inside nav — no extra gap under privacy */
        justify-content: start;
    }

    .op-footer-wrap__nav--contacts,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid {
        width: max-content;
        max-width: 100%;
        display: grid;
        grid-template-columns: max-content;
        justify-content: start;
        justify-items: stretch;
        gap: 14px;
    }

    /* Shared card surface — flat like funding plaques (no glow / no edge line) */
    .footer-desktop-contact-card,
    .footer-mobile-socials,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) {
        background: #fff;
        border: 0;
        border-radius: 18px;
        box-shadow: none;
        box-sizing: border-box;
    }

    /* --- Contact card: shrink to content width --- */
    .footer-desktop-contact-card {
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 18px 65px 16px 18px;
        width: max-content;
        max-width: 100%;
        margin: 0;
        box-sizing: border-box;
    }

    .footer-desktop-contact-card__title {
        display: none !important;
    }

    .footer-desktop-contact-card__row {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        margin: 0;
        text-decoration: none;
        color: inherit;
    }

    .footer-desktop-contact-card__row--phone {
        align-items: center;
    }

    .footer-desktop-contact-card__row--email {
        align-items: center;
    }

    .footer-desktop-contact-card__icon {
        display: inline-flex;
        flex: 0 0 auto;
        align-items: center;
        justify-content: center;
        width: 34px;
        height: 34px;
        min-width: 34px;
        border-radius: 50%;
        background: #e7f1fb;
    }

    .footer-desktop-contact-card__icon svg {
        width: 17px;
        height: 17px;
        display: block;
    }

    .footer-desktop-contact-card__body {
        display: flex;
        flex-direction: column;
        gap: 3px;
        min-width: 0;
        font-size: 15.5px;
        line-height: 1.4;
        color: #667085;
    }

    .footer-desktop-contact-card__company {
        position: relative;
        display: inline-block;
        width: max-content;
        max-width: 100%;
        font-size: 16px;
        font-weight: 700;
        text-decoration: none;
        line-height: 1.3;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    /* Underline as separate layer — background-clip:text would hide a painted ::after otherwise */
    .footer-desktop-contact-card__company::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 1px;
        width: 0;
        height: 1px;
        background-color: #086CDC;
        background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
        -webkit-background-clip: border-box !important;
        background-clip: border-box !important;
        -webkit-text-fill-color: initial;
        -webkit-transition: width 0.28s ease;
        transition: width 0.28s ease;
        pointer-events: none;
        z-index: 1;
    }

    .footer-desktop-contact-card__company:hover,
    .footer-desktop-contact-card__company:focus-visible {
        text-decoration: none;
    }

    .footer-desktop-contact-card__company:hover::after,
    .footer-desktop-contact-card__company:focus-visible::after {
        width: 100%;
    }

    .footer-desktop-contact-card__line {
        display: block;
        font-size: 15px;
        font-weight: 400;
        color: #667085;
        line-height: 1.4;
    }

    .footer-desktop-contact-card__phone {
        position: relative;
        display: inline-block;
        font-size: 17px;
        font-weight: 700;
        letter-spacing: -0.01em;
        white-space: nowrap;
        text-decoration: none;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    /* Underline as separate layer — background-clip:text on parent would hide a painted ::after otherwise */
    .footer-desktop-contact-card__phone::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 1px;
        width: 0;
        height: 1px;
        background-color: #086CDC;
        background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
        -webkit-background-clip: border-box !important;
        background-clip: border-box !important;
        -webkit-text-fill-color: initial;
        -webkit-transition: width 0.28s ease;
        transition: width 0.28s ease;
        pointer-events: none;
        z-index: 1;
    }

    .footer-desktop-contact-card__row--phone:hover .footer-desktop-contact-card__phone,
    .footer-desktop-contact-card__row--phone:focus-visible .footer-desktop-contact-card__phone {
        text-decoration: none;
    }

    .footer-desktop-contact-card__row--phone:hover .footer-desktop-contact-card__phone::after,
    .footer-desktop-contact-card__row--phone:focus-visible .footer-desktop-contact-card__phone::after {
        width: 100%;
    }

    .footer-desktop-contact-card .op-footer-email-link {
        position: relative;
        display: inline-block;
        font-size: 15.5px;
        font-weight: 700;
        word-break: break-word;
        text-decoration: none !important;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    .footer-desktop-contact-card .op-footer-email-link::after {
        content: "" !important;
        display: block !important;
        position: absolute;
        left: 0;
        bottom: 1px;
        width: 0 !important;
        height: 1px;
        background-color: #086CDC;
        background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
        -webkit-background-clip: border-box !important;
        background-clip: border-box !important;
        -webkit-transition: width 0.28s ease;
        transition: width 0.28s ease;
        pointer-events: none;
        z-index: 1;
    }

    .footer-desktop-contact-card .op-footer-email-link:hover::after,
    .footer-desktop-contact-card .op-footer-email-link:focus-visible::after {
        width: 100% !important;
    }

    .footer-desktop-contact-card .op-footer-email-reveal {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 30px;
        padding: 3px 15px;
        border: 1.5px solid transparent;
        border-radius: 999px;
        font-size: 14.5px;
        font-weight: 700;
        line-height: 1.1;
        white-space: nowrap;
        text-decoration: none !important;
        color: transparent;
        -webkit-text-fill-color: transparent;
        background-image:
            linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%),
            linear-gradient(#fff, #fff),
            linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        background-origin: border-box;
        background-clip: text, padding-box, border-box;
    }

    .footer-desktop-contact-card .op-footer-email-reveal:hover,
    .footer-desktop-contact-card .op-footer-email-reveal:focus-visible {
        filter: brightness(1.06);
    }

    .footer-desktop-contact-card__hours {
        display: flex;
        flex-direction: column;
        gap: 2px;
        min-width: 0;
    }

    .footer-desktop-contact-card__hours-days {
        font-size: 15.5px;
        font-weight: 700;
        line-height: 1.25;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    .footer-desktop-contact-card__hours-time {
        font-size: 15px;
        font-weight: 500;
        color: #667085;
        line-height: 1.3;
    }

    .footer-desktop-contact-card__regs {
        display: flex;
        flex-direction: column;
        gap: 4px;
        margin-top: 4px;
        padding-top: 12px;
        border-top: 1px solid #e6eef8;
        font-size: 13px;
        line-height: 1.35;
        color: #5b6b8c;
    }

    .footer-desktop-contact-card__regs b {
        font-weight: 700;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    /* --- Social card: same width as contact card --- */
    .footer-mobile-socials,
    .op-footer-wrap__nav--contacts.footer-mobile-company-grid > .footer-mobile-socials {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0;
        /* Match contact width: don't expand the column beyond contact */
        width: 0 !important;
        min-width: 100%;
        max-width: none !important;
        margin: 0;
        padding: 14px 12px;
        text-align: center;
        grid-column: auto;
        justify-self: stretch;
        box-sizing: border-box;
    }

    .footer-mobile-socials__title,
    .op-footer-wrap__nav--contacts-title.footer-mobile-socials__title {
        display: none !important;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials {
        display: flex;
        justify-content: center;
        flex-wrap: nowrap;
        gap: 8px;
        width: 100%;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item,
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item svg {
        width: 30px;
        height: 30px;
        min-width: 30px;
        max-width: 30px;
    }

    /* Same as funding logos: muted gray idle → full color on hover (desktop only) */
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item {
        -webkit-filter: saturate(0);
        filter: saturate(0);
        opacity: 1;
        -webkit-transition: -webkit-filter 0.3s ease, filter 0.3s ease, -webkit-transform 0.2s ease;
        transition: filter 0.3s ease, transform 0.2s ease;
    }

    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item:hover,
    .footer-mobile-socials .op-footer-wrap__nav--contacts-socials .op-item:focus-visible {
        -webkit-filter: saturate(1);
        filter: saturate(1);
        opacity: 1;
        cursor: pointer;
    }

    /* --- Menu cards: equal width; min = RU plaque width, grow if lang text is longer --- */
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) {
        max-width: none;
        width: 100%;
        min-width: var(--ft-menu-card-min);
        padding: 18px 24px 16px 18px;
        margin: 0;
        box-sizing: border-box;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-wrap__nav--menu-title {
        display: block;
        margin: 0 0 14px;
        font-size: 17px;
        font-weight: 700;
        letter-spacing: -0.01em;
        line-height: 1.25;
        color: inherit;
        -webkit-text-fill-color: inherit;
        background: none;
        -webkit-background-clip: border-box;
        background-clip: border-box;
    }

    /* Gradient on the text node itself (clip on the wrapper does not paint through the span) */
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-wrap__nav--menu-text {
        display: inline-block;
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    /* Title plaque icons stay hidden on desktop (screenshot: text-only card titles) */
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-wrap__nav--menu-icon {
        display: none !important;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li {
        margin: 0;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a.op-footer-mnav-link {
        display: flex;
        align-items: center;
        gap: 9px;
        min-height: 34px;
        padding: 4px 0;
        color: #475467;
        font-size: 14.5px;
        font-weight: 600;
        line-height: 1.25;
        text-decoration: none;
        transition: color 0.2s ease;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:hover,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:focus-visible {
        color: #0a2f9a;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-mnav-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        min-width: 28px;
        border-radius: 50%;
        background: #eef1f6;
        background-image: none;
        color: #667085;
        transition: background 0.2s ease, color 0.2s ease;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-mnav-icon svg {
        display: block;
        width: 14px;
        height: 14px;
    }

    /* Default: muted gray strokes; blue gradient on hover */
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-mnav-icon svg * {
        stroke: #667085 !important;
        transition: stroke 0.2s ease;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-mnav-icon[data-op-icon="ukraine"] svg * {
        stroke: none !important;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:hover .op-footer-mnav-icon,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:focus-visible .op-footer-mnav-icon {
        background: #e7f1fb;
        background-image: linear-gradient(145deg, #f3f8fd 0%, #e0edfa 100%);
        color: #086cdc;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:hover .op-footer-mnav-icon svg *,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:focus-visible .op-footer-mnav-icon svg * {
        stroke: url(#ft_mnav_grad) !important;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:hover .op-footer-mnav-icon[data-op-icon="ukraine"] svg *,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:focus-visible .op-footer-mnav-icon[data-op-icon="ukraine"] svg * {
        stroke: none !important;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-mnav-label {
        flex: 1 1 auto;
        min-width: 0;
        margin-right: 40px; /* space text → chevron; chevron stays at card edge */
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        color: #475467;
        -webkit-text-fill-color: #475467;
        background: none;
        -webkit-background-clip: border-box;
        background-clip: border-box;
        transition: color 0.2s ease, -webkit-text-fill-color 0.2s ease;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:hover .op-footer-mnav-label,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:focus-visible .op-footer-mnav-label {
        background: linear-gradient(91.91deg, var(--ft-mnav-grad-from, #092B96) 0%, var(--ft-mnav-grad-to, #086CDC) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) .op-footer-mnav-chevron {
        display: inline-block;
        flex: 0 0 auto;
        width: 7px;
        height: 7px;
        margin-left: 0;
        margin-right: 0;
        border-right: 2px solid #98a2b3;
        border-bottom: 2px solid #98a2b3;
        border-image: none;
        transform: rotate(-45deg);
        opacity: 0.95;
        transition: border-color 0.2s ease;
    }

    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:hover .op-footer-mnav-chevron,
    .op-footer-wrap__nav--menu:not(.op-footer-wrap__nav--legal) ul li a:focus-visible .op-footer-mnav-chevron {
        border-right-color: transparent;
        border-bottom-color: transparent;
        border-image: linear-gradient(135deg, var(--ft-mnav-grad-from, #092B96), var(--ft-mnav-grad-to, #086CDC)) 1;
        opacity: 0.95;
    }

    /* Legal notice + bottom bar: same width as plaques row.
       width:0 + min-width:100% so spanning text does NOT expand max-content grid. */
    .op-footer-wrap__nav--menu.op-footer-wrap__nav--legal,
    .op-footer-wrap__bottom {
        grid-column: 1 / -1;
        width: 0;
        min-width: 100%;
        max-width: 100%;
        justify-self: stretch;
        box-sizing: border-box;
    }

    .op-footer-wrap__nav--menu.op-footer-wrap__nav--legal {
        background: transparent;
        border: 0;
        box-shadow: none;
        padding: 0;
    }

    .op-footer-wrap__nav--legal .op-footer-wrap__notice {
        margin-top: 10px;
        padding-bottom: 0;
    }

    .op-footer-wrap__bottom {
        margin-top: 12px; /* with grid gap 16px ≈ previous 28px nav margin */
    }
}

/* === assets/css/footer-form.css === */
/* Footer form — brand gradient accents (blue elements only) */

.op-form-wrap__content--title span,
.op-form-wrap__data--title span {
  background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

.op-form-wrap__content--phone {
  color: #131313;
  transition: color 0.3s ease;
}

.op-form-wrap__content--phone svg {
  flex-shrink: 0;
  transition: transform 0.3s ease, filter 0.3s ease;
}

.op-form-wrap__content--phone span {
  background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.op-form-wrap__content--phone span::after {
  background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
  background-color: transparent !important;
}

.op-form-wrap__content--phone:hover svg,
.op-form-wrap__content--phone:focus-visible svg {
  transform: rotate(8deg) scale(1.06);
  filter: drop-shadow(0 6px 12px rgba(8, 108, 220, 0.28));
}

/* Footer contact email UI lives in assets/css/footer.css (stage 2).
   This file keeps CF7 / modal form validation styles only. */

/* -------------------------------------------------------------------------- */
/* CF7 visual errors — footer (.op-form) + #notariusz modal                   */
/* -------------------------------------------------------------------------- */

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .visually-hidden,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-not-valid-tip,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .screen-reader-response {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  box-shadow: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) form.wpcf7-form.invalid .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) form.wpcf7-form.unaccepted .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) form.wpcf7-form.failed .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) form.wpcf7-form.spam .wpcf7-response-output {
  display: block !important;
  border: 0 !important;
  background: transparent !important;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap {
  position: relative;
  display: block;
}

/* Generic text / email / date / textarea */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error > input.wpcf7-form-control:not(.real-phone):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="hidden"]),
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error > textarea.wpcf7-form-control,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.wpcf7-not-valid) > input.wpcf7-form-control:not(.real-phone):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="hidden"]),
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.wpcf7-not-valid) > textarea.wpcf7-form-control {
  border-color: #e62d5b !important;
  border-width: 1.5px !important;
  border-style: solid !important;
  background-color: #fff !important;
  box-shadow: none !important;
  outline: none;
  padding-right: 44px !important;
  transition: border-color 0.2s ease;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:not(:has(.iti)):not(:has(.choices)):not(:has(.wpcf7-checkbox)):not(:has(.wpcf7-acceptance)):not(:has(.wpcf7-radio))::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(> .wpcf7-not-valid):not(:has(.iti)):not(:has(.choices)):not(:has(.wpcf7-checkbox)):not(:has(.wpcf7-acceptance)):not(:has(.wpcf7-radio))::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(input:not([type="checkbox"]):not([type="radio"]):not(.real-phone)):not(:has(textarea)):not(:has(.iti))::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(input.wpcf7-not-valid):not(:has(textarea)):not(:has(.iti))::before {
  content: "!";
  position: absolute;
  right: 14px;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e62d5b;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  pointer-events: none;
  transform: translateY(-50%);
}

/* Phone / intl-tel-input */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti::after,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti):has(.wpcf7-not-valid) .iti::after {
  content: "!";
  position: absolute;
  right: 14px;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e62d5b;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  pointer-events: none;
  transform: translateY(-50%);
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti):has(.wpcf7-not-valid) .iti {
  border: 1.5px solid #e62d5b;
  border-radius: 10px;
  background: #fff;
  box-shadow: none;
  box-sizing: border-box;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti .iti__tel-input,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti):has(.wpcf7-not-valid) .iti .iti__tel-input {
  border-color: transparent !important;
  border-width: 0 !important;
  box-shadow: none !important;
  background-color: transparent !important;
  outline: none;
  padding-right: 44px !important;
}

/* Choices selects */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error .choices__inner,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(select.wpcf7-not-valid) .choices__inner {
  border: 1.5px solid #e62d5b !important;
  box-shadow: none !important;
  background: #fff !important;
  padding-right: 52px !important;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.choices)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(select.wpcf7-not-valid):has(.choices)::before {
  content: "!";
  position: absolute;
  right: 36px;
  top: 50%;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e62d5b;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
  transform: translateY(-50%);
}

/* Checkbox / acceptance / radio groups */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-checkbox) .wpcf7-list-item-label::after,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-acceptance) .wpcf7-list-item-label::after,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.wpcf7-checkbox .wpcf7-not-valid) .wpcf7-list-item-label::after,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.wpcf7-acceptance .wpcf7-not-valid) .wpcf7-list-item-label::after {
  border-color: #e62d5b;
  border-width: 1.5px;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-checkbox)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-acceptance)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.wpcf7-checkbox .wpcf7-not-valid)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.wpcf7-acceptance .wpcf7-not-valid)::before {
  content: "!";
  position: absolute;
  right: 0;
  top: 12px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e62d5b;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  pointer-events: none;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap[data-name="checkbox-626"].op-form-field--error::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap[data-name="checkbox-626"]:has(.wpcf7-not-valid)::before {
  top: 50%;
  transform: translateY(-50%);
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-checkbox) .wpcf7-list-item-label,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-acceptance) .wpcf7-list-item-label {
  padding-right: 28px;
}

/* Notariusz: scrollable modal (do NOT use overflow:visible — hides Next) */
#modalNotariusz.modal,
.service5-notariusz-modal.modal {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  align-items: flex-start;
  padding: 24px 12px;
  box-sizing: border-box;
}

#modalNotariusz .modal-wrap,
.service5-notariusz-modal .modal-wrap {
  overflow-x: hidden;
  overflow-y: auto;
  max-height: min(90vh, 972px);
  margin: auto;
}

#modalNotariusz .choices,
.service5-notariusz-modal .choices {
  overflow: visible;
}

#modalNotariusz .choices__list--dropdown,
.service5-notariusz-modal .choices__list--dropdown {
  z-index: 1400;
}

@media (max-width: 767px) {
  :is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error::before,
  :is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti::after {
    width: 18px;
    height: 18px;
    font-size: 11px;
  }
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap.op-form-field--error:has(> textarea)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .wpcf7-form-control-wrap:has(> textarea.wpcf7-not-valid)::before {
  top: 18px;
  transform: none;
}

/* Phone: readable spacing after dial code while typing */
.op-form .iti--allow-dropdown input.iti__tel-input,
.op-form input.phone,
.modal .iti--allow-dropdown input.iti__tel-input,
.modal input.phone,
#modalNotariusz .iti--allow-dropdown input.iti__tel-input,
#modalNotariusz input.phone,
.op-contacts-wrap__content--form .iti--allow-dropdown input.iti__tel-input {
  letter-spacing: 0.01em;
}

/* Button spacing: do NOT force 20/28 on .op-cf7-submit — that made
   gaps above/below the CTA larger than the pre-2026-09-10 footer form.
   Keep theme/CF7 defaults (as in form-space-mask backup). */

/* -------------------------------------------------------------------------- */
/* Durable CF7 / modal field chrome                                           */
/*                                                                            */
/* Slim stacks (op-karta / op-service-lite / op-single) go through PurgeCSS.  */
/* That repeatedly drops `textarea` from `.choices__inner,input,select,…`    */
/* and Choices CDN is lazy-loaded AFTER the theme CSS, so it overrides       */
/* `.choices__inner`. Keep the chrome here — footer-form.css is always        */
/* enqueued and never purged.                                                 */
/* -------------------------------------------------------------------------- */

/* intl-tel-input: keep flag/dropdown clear of +48 / +43 text.
   Generic input padding above must NEVER hit .iti__tel-input — it overrides
   the library’s dynamic padding-left and makes dial code sit on the flag. */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .wpcf7-form-control-wrap:has(.iti) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: 15px;
  box-sizing: border-box !important;
}

/* Shared phone chrome (width/font/border). Padding differs: contacts + footer
   match theme `input,textarea { padding: 24px 30px }`; modals keep 15px. */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti .iti__tel-input,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti input.phone,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti input[type="tel"],
.modal-wrap__form .iti .iti__tel-input,
.modal-wrap__form .iti input[type="tel"] {
  font-size: 18px !important;
  line-height: 34px !important;
  font-family: Gilroy, sans-serif !important;
  border-radius: 10px !important;
  border: solid 1px #d0d9e7 !important;
  background-color: #fff !important;
  color: #131313 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin-bottom: 0 !important;
}

/* Contacts + footer: same outer size as name/email (24px 30px theme inputs).
   Do NOT set padding-left with !important — ITI writes it inline from flag width. */
:is(.op-form)
  .iti .iti__tel-input,
:is(.op-form)
  .iti input.phone,
:is(.op-form)
  .iti input[type="tel"] {
  padding-top: 24px !important;
  padding-right: 30px !important;
  padding-bottom: 24px !important;
  padding-left: 56px;
}

/* Modals: match durable modal chrome (15px 25px). */
:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti .iti__tel-input,
:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti input.phone,
:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti input[type="tel"],
.modal-wrap__form .iti .iti__tel-input,
.modal-wrap__form .iti input[type="tel"] {
  padding-top: 15px !important;
  padding-right: 25px !important;
  padding-bottom: 15px !important;
  padding-left: 56px;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti__country-container,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti__flag-container {
  z-index: 2;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti__selected-country,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti__selected-flag {
  padding: 0 6px 0 10px !important;
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .iti__flag {
  width: 20px !important;
  height: 14px !important;
  /* do NOT override background-image — CDN intlTelInput.css owns the flag sprite */
}

:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
  .real-phone {
  position: absolute !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* Beat slim-stack `.modal-wrap__form input { padding: 15px 10px !important }`
   which resets ALL sides and would put +48 under the flag again. */
@media (max-width: 767px) {
  :is(.op-form)
    .wpcf7-form-control-wrap:has(.iti),
  :is(.op-form)
    .iti {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  /* Tablet / large phone: keep desktop-like 24px until theme shrinks inputs. */
  :is(.op-form)
    .iti .iti__tel-input,
  :is(.op-form)
    .iti input.phone,
  :is(.op-form)
    .iti input[type="tel"] {
    font-size: 16px !important;
    padding-top: 24px !important;
    padding-right: 16px !important;
    padding-bottom: 24px !important;
    padding-left: 52px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  :is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
    .iti .iti__tel-input,
  :is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
    .iti input.phone,
  :is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal)
    .iti input[type="tel"],
  .modal-wrap__form .iti .iti__tel-input,
  .modal-wrap__form .iti input[type="tel"] {
    font-size: 16px !important;
    padding-top: 15px !important;
    padding-right: 10px !important;
    padding-bottom: 15px !important;
    padding-left: 52px !important;
  }
}

/* Theme mobile inputs: `input,textarea { padding: 8px 20px; min-height: 50px }`
   at ≤550px (op-contacts / op-home). Phone must match that outer size. */
@media (max-width: 550px) {
  :is(.op-form)
    .wpcf7-form-control-wrap:has(.iti),
  :is(.op-form)
    .iti {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin-bottom: 10px;
  }

  :is(.op-form)
    .iti .iti__tel-input,
  :is(.op-form)
    .iti input.phone,
  :is(.op-form)
    .iti input[type="tel"] {
    font-size: 14px !important;
    line-height: 34px !important;
    padding-top: 8px !important;
    padding-right: 20px !important;
    padding-bottom: 8px !important;
    padding-left: 52px !important;
    min-height: 50px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .choices {
  margin-bottom: 15px;
}

:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .choices[data-type*="select-one"]::after {
  top: 45%;
}

:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .choices.is-open {
  position: relative;
  z-index: 10;
}

:is(.modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo, .service5-notariusz-modal) .choices__list--dropdown .choices__item {
  font-size: 18px !important;
  line-height: 24px;
}

.modal-wrap__title,
.modal-wrap .cf7-title {
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 15px;
  font-weight: 700;
  max-width: 85%;
}

.modal-wrap__form .cf7-buttons {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 30px;
  position: relative;
}

.modal-wrap__form .cf7-buttons .btn {
  width: 100%;
  max-width: 200px;
  margin: 0 !important;
  height: 60px !important;
}

.modal-wrap__form input,
.modal-wrap__form select,
.modal-wrap__form textarea {
  margin-bottom: 15px;
}

.cf7-step {
  display: none;
}

.cf7-step.active {
  display: block;
}

.cf7-step p {
  margin-bottom: 10px;
  display: block;
}

/* op-form-errors-20260910-btn-space-revert */
/* op-form-durable-chrome-20261003 */

/* === assets/css/op-home-reveal.css === */
/* Homepage / site-wide scroll reveal — GPU-friendly (transform/opacity only). */
@media (prefers-reduced-motion: no-preference) {
  .op-reveal:not(.is-in) {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
  }

  .op-reveal {
    transition: opacity 0.55s ease, transform 0.55s ease;
  }

  .op-reveal.is-in {
    opacity: 1;
    transform: none;
  }

  /* Service article body (text2 / text3): paragraph cascade */
  .op-reveal--block:not(.is-in) {
    opacity: 0;
    transform: translate3d(0, 16px, 0);
  }

  .op-reveal--block {
    transition:
      opacity 0.58s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.62s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--op-reveal-delay, 0ms);
  }

  .op-reveal--block.is-in {
    opacity: 1;
    transform: none;
  }

  .article-wrap__content--text.ttx > .op-reveal--block,
  .service-article-content.article-wrap__content--text > .op-reveal--block {
    will-change: opacity, transform;
  }

  .article-wrap__content--text.ttx > .op-reveal--block.is-in,
  .service-article-content.article-wrap__content--text > .op-reveal--block.is-in {
    will-change: auto;
  }
}

/* === assets/scroll-spy/op-scroll-spy.css === */
/* ONE PLUS — right-side section scroll spy (desktop + mobile) */

.op-scroll-spy {
  --op-spy-grad: linear-gradient(91.91deg, #092b96 0%, #086cdc 100%);
  --op-spy-blue: #086cdc;
  --op-spy-navy: #092b96;
  position: fixed;
  right: max(14px, env(safe-area-inset-right, 0px));
  top: 50%;
  transform: translateY(-50%);
  z-index: 998;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 12px 7px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(8, 108, 220, 0.16);
  box-shadow: 0 8px 28px rgba(9, 43, 150, 0.1);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.op-scroll-spy.is-hidden {
  opacity: 0;
  transform: translateY(-50%) translateX(14px);
  pointer-events: none;
}

/* Instantly hide when the mobile header menu is open. */
.op-scroll-spy.is-menu-open,
body:has(.op-header-wrap__nav--active) .op-scroll-spy {
  opacity: 0 !important;
  visibility: hidden;
  pointer-events: none !important;
  transform: translateY(-50%) translateX(14px);
  transition: none;
}

.op-scroll-spy__dot {
  position: relative;
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  border: none;
  padding: 0;
  border-radius: 50%;
  background: rgba(9, 43, 150, 0.18);
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.op-scroll-spy__dot.is-active {
  background: var(--op-spy-grad);
  transform: scale(1.2);
  box-shadow: 0 0 0 3px rgba(8, 108, 220, 0.22);
}

.op-scroll-spy__dot::after {
  content: attr(data-label);
  position: absolute;
  right: calc(100% + 12px);
  top: 50%;
  transform: translateY(-50%) translateX(6px);
  white-space: nowrap;
  font-family: Gilroy, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.2;
  color: #131313;
  background: #fff;
  padding: 6px 12px;
  border-radius: 10px;
  border: 1px solid rgba(8, 108, 220, 0.14);
  box-shadow: 0 8px 22px rgba(9, 43, 150, 0.12);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.op-scroll-spy__dot:hover::after,
.op-scroll-spy__dot:focus-visible::after,
.op-scroll-spy__dot.is-active.is-label-shown::after {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

.op-scroll-spy__dot:focus-visible {
  outline: 2px solid var(--op-spy-blue);
  outline-offset: 3px;
}

/* Anchor offset under sticky header */

@media (max-width: 1024px) {
  .op-scroll-spy {
    right: max(8px, env(safe-area-inset-right, 0px));
    gap: 8px;
    padding: 10px 6px;
    background: rgba(255, 255, 255, 0.9);
  }

  .op-scroll-spy__dot {
    width: 9px;
    height: 9px;
  }

  .op-scroll-spy__dot.is-active {
    transform: scale(1.15);
  }

  /* Touch: only the active section label (no hover). Keep it short. */
  .op-scroll-spy__dot::after {
    right: calc(100% + 8px);
    max-width: min(46vw, 148px);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 11px;
    padding: 5px 9px;
    border-radius: 8px;
  }

  .op-scroll-spy__dot:hover::after {
    opacity: 0;
    transform: translateY(-50%) translateX(6px);
  }

  .op-scroll-spy__dot.is-active.is-label-shown::after,
  .op-scroll-spy__dot:focus-visible::after {
    opacity: 1;
    transform: translateY(-50%) translateX(0);
  }
}

@media (max-width: 480px) {
  .op-scroll-spy {
    right: max(6px, env(safe-area-inset-right, 0px));
    gap: 7px;
    padding: 9px 5px;
  }

  .op-scroll-spy__dot::after {
    max-width: min(42vw, 128px);
    font-size: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .op-scroll-spy,
  .op-scroll-spy__dot,
  .op-scroll-spy__dot::after {
    transition: none;
  }
}

/* === style.css === */
/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/*!
Theme Name: one-plus v2
Theme URI: https://www.one-plus.pl/
Description: ONE PLUS WordPress theme v2
Author: ONE PLUS
Text Domain: onepluswp
Version: 2.0.0
*/

/* =========================================
 * ONE PLUS — TOC heading highlight START
 * Подсветка заголовков при клике по содержанию
 * ========================================= */

html {
    scroll-behavior: smooth;
}

.ttx h2,
.ttx h3,
h2[id],
h3[id] {
    scroll-margin-top: 140px;
}

@media (max-width: 768px) {
    .ttx h2,
    .ttx h3,
    h2[id],
    h3[id] {
        scroll-margin-top: 230px;
    }
}

@keyframes opHeadingFlash {

    0% {
        background: rgba(20, 55, 183, 0);
        box-shadow: 0 0 0 0 rgba(35, 128, 235, 0);
    }

    18% {
        background: rgba(35, 128, 235, 0.10);
        box-shadow: 0 0 0 8px rgba(35, 128, 235, 0.08);
    }

    55% {
        background: rgba(35, 128, 235, 0.07);
        box-shadow: 0 0 0 12px rgba(35, 128, 235, 0.04);
    }

    100% {
        background: rgba(20, 55, 183, 0);
        box-shadow: 0 0 0 0 rgba(35, 128, 235, 0);
    }
}

/* =========================================
 * ONE PLUS — TOC heading highlight END
 * ========================================= */



/* =========================================
 * ONE PLUS — TOC design START
 * Стили блока содержания
 * ========================================= */

.op-toc {
    /* Fallback before JS measures: ~3 items peek, ~6–7 items nudge */
    --op-toc-peek: 7.25rem;
    --op-toc-nudge: 16.5rem;
    background: #f8fafd;
    border: 1px solid #dce7f5;
    border-radius: 16px;
    padding: 18px 18px 16px;
    margin: 24px 0;
    position: relative;
}

.op-toc__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 40px;
    cursor: pointer;
    user-select: none;
}

.op-toc:not(.is-collapsed) .op-toc__head {
    cursor: default;
}

.op-toc__title,
.ttx .op-toc__title {
    margin: 0;
    padding: 0;
    flex: 1 1 auto;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    color: #131313;
}

.op-toc__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid #cfe0f5;
    border-radius: 50%;
    background: #fff;
    color: #2380eb;
    font-family: inherit;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(9, 43, 150, .06);
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.op-toc.is-collapsed .op-toc__toggle {
    animation: op-toc-plus-pulse 2.4s ease-in-out infinite;
}

.op-toc:not(.is-collapsed) .op-toc__toggle {
    border-color: #e53935;
    background: #fff3f3;
    color: #e53935;
    box-shadow: 0 0 0 3px rgba(229, 57, 53, .14);
    animation: none;
}

.op-toc__toggle:hover,
.op-toc__toggle:focus-visible {
    outline: none;
    transform: translateY(-1px);
}

.op-toc:not(.is-collapsed) .op-toc__toggle:hover,
.op-toc:not(.is-collapsed) .op-toc__toggle:focus-visible {
    border-color: #d32f2f;
    background: #e53935;
    color: #fff;
    box-shadow: 0 4px 14px rgba(229, 57, 53, .34);
}

.op-toc.is-collapsed .op-toc__toggle:hover,
.op-toc.is-collapsed .op-toc__toggle:focus-visible {
    border-color: #2380eb;
    color: #2380eb;
    background: #eef5ff;
    box-shadow: 0 0 0 4px rgba(35, 128, 235, .14);
    animation: none;
}

.op-toc__toggle-icon {
    display: none;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.op-toc__toggle-svg {
    display: block;
    width: 14px;
    height: 14px;
}

.op-toc:not(.is-collapsed) .op-toc__toggle-icon--close {
    display: inline-flex;
}

.op-toc.is-collapsed .op-toc__toggle-icon--open {
    display: inline-flex;
}

.op-toc__panel {
    position: relative;
    overflow: hidden;
    max-height: none;
    opacity: 1;
    margin-top: 12px;
    margin-bottom: 0;
    transition: max-height .36s ease, opacity .24s ease, margin-top .24s ease;
}

/* Collapsed: clip only the panel (~3 items). Never lock .op-toc__list itself —
   otherwise JS peek→nudge animation cannot reveal items 4–5. */
.op-toc.is-collapsed .op-toc__panel,
.ttx .op-toc.is-collapsed .op-toc__panel {
    max-height: var(--op-toc-peek);
    opacity: 1;
    margin-top: 12px;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
    visibility: visible;
    pointer-events: auto;
}

.op-toc.is-collapsed .op-toc__list,
.ttx .op-toc.is-collapsed .op-toc__list,
.op-toc.is-collapsed > .op-toc__list {
    max-height: none !important;
    overflow: visible !important;
}

.op-toc.is-collapsed .op-toc__panel::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    /* Thin edge fade only — must not wash out the 3rd visible item */
    height: 28px;
    background: linear-gradient(180deg, rgba(248, 250, 253, 0) 0%, #f8fafd 88%);
    pointer-events: none;
    z-index: 1;
}

.op-toc.is-collapsed.is-nudging .op-toc__panel {
    /* Height tease is driven by JS (inline max-height) — do not run CSS keyframes here */
    animation: none;
}

.op-toc:not(.is-collapsed) .op-toc__panel::after {
    display: none;
}

.op-toc__hint {
    display: none;
    width: 100%;
    margin: 10px 0 0;
    padding: 10px 12px;
    border: 0;
    border-radius: 12px;
    background: rgba(35, 128, 235, .08);
    color: #1a5fbc;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    text-align: left;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.op-toc.is-collapsed .op-toc__hint {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.op-toc__hint:hover,
.op-toc__hint:focus-visible {
    outline: none;
    background: rgba(35, 128, 235, .14);
    color: #0f4ea3;
}

.op-toc__hint-chevron {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    color: #2380eb;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(9, 43, 150, .08);
}

.op-toc__hint-chevron svg {
    display: block;
    width: 10px;
    height: 10px;
}

.op-toc__list,
.ttx .op-toc__list,
.ttx ol.op-toc__list {
    list-style: none !important;
    margin: 0 !important;
    margin-bottom: 0 !important;
    padding-left: 0 !important;
    counter-reset: op-toc-item;
}

.op-toc__item,
.ttx .op-toc__item,
.ttx ol.op-toc__list > li.op-toc__item {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 0.35em;
    margin: 7px 0;
    padding-left: 0 !important;
    margin-left: 0 !important;
    line-height: 1.4;
    counter-increment: op-toc-item;
}

/* Fixed-width markers: digits start under title «С…», same font as list text */
.op-toc__item::before,
.ttx .op-toc__item::before,
.ttx ol.op-toc__list > li.op-toc__item::before {
    content: counter(op-toc-item) ".";
    flex: 0 0 1.85em;
    box-sizing: border-box;
    width: 1.85em;
    min-width: 1.85em;
    max-width: 1.85em;
    margin: 0;
    padding: 0;
    color: #09339f;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
    line-height: inherit;
    text-align: left;
    white-space: nowrap;
    letter-spacing: inherit;
}

.op-toc__item a {
    flex: 1 1 auto;
    min-width: 0;
    color: #09339f;
    text-decoration: none;
}

.op-toc__item a:hover,
.op-toc__item a:focus-visible {
    color: #2380eb;
    text-decoration: underline;
}

.op-toc__item--h3 {
    font-size: .96em;
    opacity: .92;
}

.op-toc__item--h3 a {
    padding-left: 0.15em;
}

.op-toc__item:last-child,
.op-toc__list li:last-child {
    margin-bottom: 0;
}

.op-toc ol {
    margin-bottom: 0 !important;
}

/* Expand clearly from item 3 down to item 5, then ease back */
@keyframes op-toc-peek-nudge {
    0%,
    100% {
        max-height: var(--op-toc-peek);
    }
    12% {
        max-height: calc(var(--op-toc-peek) * 0.55 + var(--op-toc-nudge) * 0.45);
    }
    28%,
    48% {
        max-height: var(--op-toc-nudge);
    }
    62% {
        max-height: calc(var(--op-toc-peek) * 0.35 + var(--op-toc-nudge) * 0.65);
    }
    78% {
        max-height: var(--op-toc-nudge);
    }
}

@keyframes op-toc-plus-pulse {
    0%,
    100% {
        box-shadow: 0 0 0 0 rgba(35, 128, 235, .22);
        transform: scale(1);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(35, 128, 235, 0);
        transform: scale(1.05);
    }
}

@media (max-width: 640px) {
    .op-toc {
        --op-toc-peek: 6.75rem;
        --op-toc-nudge: 16.75rem;
        padding: 14px 14px 12px;
        border-radius: 14px;
        margin: 20px 0;
    }

    .op-toc__item,
    .ttx .op-toc__item {
        gap: 0.35em;
        margin: 6px 0;
        font-size: 15px;
    }

    .op-toc__item::before,
    .ttx .op-toc__item::before,
    .ttx ol.op-toc__list > li.op-toc__item::before {
        flex: 0 0 1.9em;
        flex-basis: 1.9em;
        width: 1.9em;
        min-width: 1.9em;
        max-width: 1.9em;
    }

    .op-toc__head {
        min-height: 36px;
        gap: 10px;
    }

    .op-toc__title,
    .ttx .op-toc__title {
        font-size: 18px;
        line-height: 1.3;
    }

    .op-toc__toggle {
        width: 40px;
        height: 40px;
        min-width: 40px;
        min-height: 40px;
    }

    .op-toc__toggle-svg {
        width: 13px;
        height: 13px;
    }

    .op-toc__hint {
        font-size: 13px;
        padding: 12px 12px;
        min-height: 44px;
    }

    .op-toc.is-collapsed .op-toc__panel::after {
        height: 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .op-toc__panel,
    .op-toc__toggle,
    .op-toc__hint {
        transition: none;
    }

    .op-toc.is-collapsed .op-toc__toggle,
    .op-toc.is-collapsed.is-nudging .op-toc__panel {
        animation: none;
    }
}

/* =========================================
 * ONE PLUS — TOC design END
 * ========================================= */

/* =========================================
 * Content CTA .btn — same as services hero .op-btn
 * Blog articles do not load service4.css, so keep this in theme style.css.
 * ========================================= */
.article-wrap__content--text .btn,
.service-article-content .btn,
.service.service3 .service-wrap__content--text .btn,
.service.service3 .service-wrap__content--text.ttx .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 56px !important;
    padding: 4px 7px 4px 22px !important;
    border: 0 !important;
    border-radius: 50px !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    font-family: Gilroy, sans-serif !important;
    text-decoration: none !important;
    position: relative !important;
    z-index: 2 !important;
    overflow: visible !important;
    transition: transform .3s ease, opacity .3s ease !important;
    cursor: pointer !important;
    margin-bottom: 4px !important;
}

.article-wrap__content--text .btn::before,
.service-article-content .btn::before,
.service.service3 .service-wrap__content--text .btn::before,
.service.service3 .service-wrap__content--text.ttx .btn::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    border-radius: 50px !important;
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%) !important;
    z-index: -1 !important;
    transition: opacity .3s ease !important;
    pointer-events: none !important;
}

.article-wrap__content--text .btn::after,
.service-article-content .btn::after,
.service.service3 .service-wrap__content--text .btn::after,
.service.service3 .service-wrap__content--text.ttx .btn::after {
    content: "" !important;
    display: block !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    flex-shrink: 0 !important;
    background-image: url("data:image/svg+xml,<svg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'><circle cx='24' cy='24' r='21' fill='white'/><circle cx='24' cy='24' r='22.5' stroke='white' stroke-opacity='.31' stroke-width='3'/><path d='M19.1568 28.8432L28.098 19.902M28.098 19.902H21.0728M28.098 19.902V26.2885' stroke='%23092B96'/></svg>") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transition: transform .3s ease !important;
}

.article-wrap__content--text .btn:hover,
.service-article-content .btn:hover,
.service.service3 .service-wrap__content--text .btn:hover,
.service.service3 .service-wrap__content--text.ttx .btn:hover,
.article-wrap__content--text .btn:focus-visible,
.service-article-content .btn:focus-visible,
.service.service3 .service-wrap__content--text .btn:focus-visible,
.service.service3 .service-wrap__content--text.ttx .btn:focus-visible {
    color: #fff !important;
    transform: none !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

.article-wrap__content--text .btn:hover::before,
.service-article-content .btn:hover::before,
.service.service3 .service-wrap__content--text .btn:hover::before,
.service.service3 .service-wrap__content--text.ttx .btn:hover::before,
.article-wrap__content--text .btn:focus-visible::before,
.service-article-content .btn:focus-visible::before,
.service.service3 .service-wrap__content--text .btn:focus-visible::before,
.service.service3 .service-wrap__content--text.ttx .btn:focus-visible::before {
    opacity: .82 !important;
}

.article-wrap__content--text .btn:hover::after,
.service-article-content .btn:hover::after,
.service.service3 .service-wrap__content--text .btn:hover::after,
.service.service3 .service-wrap__content--text.ttx .btn:hover::after,
.article-wrap__content--text .btn:focus-visible::after,
.service-article-content .btn:focus-visible::after,
.service.service3 .service-wrap__content--text .btn:focus-visible::after,
.service.service3 .service-wrap__content--text.ttx .btn:focus-visible::after {
    transform: rotate(90deg) !important;
}

@media (max-width: 767px) {
    .article-wrap__content--text .btn,
    .service-article-content .btn,
    .service.service3 .service-wrap__content--text .btn,
    .service.service3 .service-wrap__content--text.ttx .btn {
        display: inline-flex !important;
        justify-content: space-between !important;
        width: auto !important;
        max-width: 100% !important;
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: 0 !important;
        border-radius: 50px !important;
        color: #fff !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;
        padding: 4px 6px 4px 18px !important;
        min-height: 52px !important;
        margin-top: 8px !important;
    }

    .article-wrap__content--text .btn::before,
    .service-article-content .btn::before,
    .service.service3 .service-wrap__content--text .btn::before,
    .service.service3 .service-wrap__content--text.ttx .btn::before {
        background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%) !important;
    }

    .article-wrap__content--text .btn::after,
    .service-article-content .btn::after,
    .service.service3 .service-wrap__content--text .btn::after,
    .service.service3 .service-wrap__content--text.ttx .btn::after {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
    }
}

@media (max-width: 640px) {
    .article-wrap__content--text .btn,
    .service-article-content .btn,
    .service.service3 .service-wrap__content--text .btn,
    .service.service3 .service-wrap__content--text.ttx .btn {
        font-size: 14px !important;
        padding: 3px 5px 3px 16px !important;
        min-height: 48px !important;
    }

    .article-wrap__content--text .btn::after,
    .service-article-content .btn::after,
    .service.service3 .service-wrap__content--text .btn::after,
    .service.service3 .service-wrap__content--text.ttx .btn::after {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .article-wrap__content--text .btn,
    .service-article-content .btn,
    .service.service3 .service-wrap__content--text .btn,
    .service.service3 .service-wrap__content--text.ttx .btn,
    .article-wrap__content--text .btn::before,
    .service-article-content .btn::before,
    .article-wrap__content--text .btn::after,
    .service-article-content .btn::after {
        transition: none !important;
    }
}


/* List padding handled by unified FAQ block at end of file (blue dots) */
.faq-wrap__list ol {
	padding-left: 15px;
}

/* YouTube full width fix — kill UA figure side margins (40px) */
.article-wrap__content--text figure.wp-block-embed,
.article-wrap__content--text figure.op-yt-embed {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 1.25em 0;
  box-sizing: border-box;
}

.grecaptcha-badge {
    display: none !important;
}

/* Только для этого чекбокса CF7 */
.choices__list--single, .choices__list--single .choices__item {
	max-height: 28px!important;
}
.op-list-wrap__flex .op-item-text ul li::after {
	top: 5px!important;
}
@media (min-width: 1100px) {
	.page-id-1677 .op-contacts-wrap__content--form .op-cf7-submit {
	margin-top: 15px;
	  width: 280px;
	  -webkit-box-pack: center;
	      -ms-flex-pack: center;
	          justify-content: center;
	}
	.page-id-1677 .op-contacts-wrap__content--form .op-cf7-submit input.wpcf7-submit.has-spinner.btn {
		padding: 12px 20px 12px 0;
    	text-align: center;
	}
	.page-id-1677 .op-contacts-wrap__content--form .wpcf7-spinner {
		display: none;
	}
}

@media (max-width: 640px) {
	.page-id-1677 .op-contacts-wrap__content--form .wpcf7-spinner {
		display: none;
	}
}
.slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.slick-track .slick-slide {
    height: 100%;
}

.slick-track .slick-slide .item {
    height: 100%;
}

@media (min-width: 768px) {
	.fancybox-slide:not(.fancybox-slide--iframe):not(.fancybox-slide--video) {
		margin-left: 5%!important;
	}
}

.fancybox-slide:not(.fancybox-slide--iframe):not(.fancybox-slide--video) {
    margin-left: 0%;
    margin-top: 2.5%;
}

.fancybox-slide--video,
.fancybox-slide--iframe {
    margin: 0 !important;
    padding: 0;
}

.fancybox-slide--iframe .fancybox-content {
    overflow: hidden;
    background: #000;
}

.fancybox-slide--iframe .fancybox-iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.iti__flag {
    width: 20px;
    height: 14px;
}

.for-wrap__list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

/* Hero .top — как у прайслиста: закругление снизу + типографика H1 */
.top {
	border-radius: 0 0 50px 50px;
	overflow: hidden;
}

.top-wrap__title {
    max-width: 70%;
	font-family: Gilroy, sans-serif;
	font-weight: 700;
	font-size: 52px;
	line-height: 68px;
	margin: 0 0 20px;
	color: #131313;
}

/* Single post H1 sits below the Blog hero — keep equal vertical air
   above/below the title card (style.min .title-single-post margin). */

.top-wrap__title p {
	margin: 0;
	font: inherit;
	color: inherit;
}

@media (max-width: 767px) {
	.top {
		border-radius: 0 0 20px 20px;
	}

	.top-wrap__title {
		font-size: 26px;
		line-height: 35px;
		max-width: 100%;
	}
}

.choices.is-open {
    position: relative;
    z-index: 10;
}

.choices__inner {
    padding: 15px 25px !important;
    margin-bottom: 15px;
}

.choices__list--dropdown .choices__item {
    font-size: 18px !important;
    line-height: 24px;
}

.choices[data-type*=select-one]::after {
    top: 45%;
}

.iti {
    width: 100%;
    margin-bottom: 15px;
}

.real-phone {
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    position: absolute;
}

.clients-wrap__list .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.iti--inline-dropdown .iti__dropdown-content {
    top: auto !important;
    bottom: 100% !important;
    margin-bottom: 4px;
}

.clients-wrap__reviews--slider .item-top {
    margin-bottom: 20px;
}

.wpcf7-list-item {
    margin: 0;
}

.wpcf7-list-item label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: relative;
}

.wpcf7-list-item input {
    width: 26px;
    height: 26px;
    margin: 0;
    padding: 0;
    opacity: 0;
}

.wpcf7-list-item .wpcf7-list-item-label {
    display: block;
    width: 100%;
    max-width: calc(100% - 26px);
    padding-left: 20px;
    font-size: 16px;
    line-height: 24px;
    color: #131313;
}

.wpcf7-list-item .wpcf7-list-item-label::after {
    content: '';
    display: block;
    width: 26px;
    height: 26px;
    border: solid 1px #D0D9E7;
    border-radius: 5px;
    position: absolute;
    left: 0;
    top: -3px;
}

.wpcf7-list-item input:checked+.wpcf7-list-item-label::after {
    background: url('../../assets/img/main-old/check.svg') no-repeat center center / contain;
}

.wpcf7-list-item .wpcf7-list-item-label a {
    color: #E62D5B;
    text-decoration: underline;
}

.wpcf7-list-item .wpcf7-list-item-label a:hover {
    text-decoration: none;
}

.wpcf7-not-valid-tip {
    font-size: 14px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.wpcf7-spinner {
    position: absolute;
    margin-top: -60px;
}

.ttx .btn {
    text-decoration: none;
    color: #fff;
}

.scroll {
    position: absolute;
    display: block;
    margin-top: -250px;
    overflow: hidden;
    visibility: hidden;
}

.clients-bg .clients-wrap__list {
    background-color: #F8FAFD;
}

/* .help-wrap__flex {
    align-items: flex-start;
} */

/* Ð›Ð¸Ð½Ð¸Ñ Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾Ð³Ð¾ Ð¿ÑƒÐ½ÐºÑ‚Ð° â€” ÐºÑ€Ð°ÑÐ½Ð°Ñ */

/* Ð›Ð¸Ð½Ð¸Ñ Ð¿Ñ€Ð¸ Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ð¸Ð¸ â€” ÑÐ¸Ð½ÑÑ */

.main-nav .slick-arrow {
    left: 15px;
}

.main-nav .slick-next {
    left: auto;
    right: 15px;
}

.service-wrap {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
}


.article-wrap__content--image img {
    -o-object-position: top;
       object-position: top;
}

/* Original theme override: style-old sets 458px, root style.css unlocks natural height */
.article-wrap__content--image {
    height: auto;
}

.article-wrap__content--image img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    -o-object-fit: initial;
       object-fit: initial;
    border-radius: 20px;
}

.top-wrap__text {
    max-width: 800px;
}

.service-def .service-wrap {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}

.slick-carousel .slick-dots {
    display: none !important;
}

.slick-carousel.slick-single .slick-dots {
    display: block !important;
}

.clients-zero .clients-wrap__subtitle {
    margin-top: 0;
}

.service-wrap {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
}

@media (min-width: 1101px) {
    .service.service3 .service-wrap__content {
        -webkit-align-self: flex-start;
            -ms-flex-item-align: start;
                align-self: flex-start;
    }
}

.service-wrap__image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}

.map {
    padding-bottom: 0;
}

.cf7-step {
    display: none;
}

.cf7-step.active {
    display: block;
}

.cf7-invalid input,
.cf7-invalid textarea {
    border: 2px solid red;
}

.cf7-invalid input:focus,
.cf7-invalid textarea:focus {
    border-color: darkred;
}

.cf7-invalid label {
    color: red;
}

.modal-wrap__title {
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 15px;
    font-weight: 700;
}

.modal-wrap__form .wpcf7-list-item {
    display: block;
    margin-bottom: 10px;
}

.modal-wrap__form .cf7-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 30px;
    position: relative;
}

.modal-wrap__form .cf7-buttons .wpcf7-spinner {
    right: 0;
}

.modal-wrap__form .cf7-buttons .btn {
    width: 100%;
    max-width: 200px;
    margin: 0 !important;
    height: 60px !important;
}

.modal-wrap__form input,
.modal-wrap__form select,
.modal-wrap__form textarea {
    margin-bottom: 15px;
    padding: 15px 25px;
}

.modal-wrap__form .wpcf7-list-item input {
    margin: 0;
    padding: 0;
}

.cf7-step p {
    margin-bottom: 10px;
    display: block;
}

.clients-wrap__reviews--slider .item-text {
    margin-top: 0;
}

.clients-wrap__reviews .slick-dots {
    margin-top: 0;
}

.clients-wrap {
    padding-bottom: 70px;
}

.loadMoreBtn {
    margin: 40px auto 0;
    color: #fff !important;
    opacity: 0;
}

/* Service heroes — translucent breadcrumb plaque (like blog single date badge) */
.top .top-wrap > .bread,
.service-wrap__content > .bread {
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    box-sizing: border-box;
    padding: 5px 12px;
    border-radius: 5px;
    background-color: rgba(248, 250, 253, 0.4);
}

/* Breadcrumbs site-wide: swipe to see full path on mobile (no … truncation) */
.bread,
.top-wrap .bread {
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.bread::-webkit-scrollbar,
.top-wrap .bread::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.bread li,
.top-wrap .bread li {
    flex-shrink: 0;
    min-width: auto;
    max-width: none;
}

.bread li:last-child,
.top-wrap .bread li:last-child,
.bread li:last-child a,
.bread li:last-child span,
.top-wrap .bread li:last-child a,
.top-wrap .bread li:last-child span {
    min-width: auto;
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.article-wrap__content--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 30px;
}

.article-wrap__content--flex-count {
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
}

/* Blog single — centered interactive rating plaque */

/* ===== BLOG ===== */

@media (max-width: 1500px) {
    .list {
        padding-top: 0;
    }
}

@media (max-width: 1024px) {

    .top-wrap__text {
        max-width: 75%;
    }

    .service3 .reason-wrap,
    .service4 .reason-wrap {
        margin-top: 60px;
    }

}

@media (max-width: 550px) {

    .list {
        padding-top: 30px;
    }

    .top-wrap__text {
        max-width: 83%;
    }

    .clients-zero .clients-wrap {
        padding-top: 40px;
    }

    .slick-dots {
        margin-top: 20px;
    }

    .slick-dots li {
        margin: 0 5px;
    }

    .slick-dots li button {
        width: 10px;
        height: 10px;
    }

    .service3 .bread,
    .service4 .bread {
        display: none;
    }

    select {
        height: 66px;
        padding: 0 1rem;
        line-height: 66px;
    }

}

.op-team-wrap__list {
    width: 100%;
}

.compensation-wrap__slider--nav .slick-prev {
    margin-left: -65px;
}

.compensation-wrap__slider--nav .slick-next {
    margin-right: -65px;
}

@media (max-width: 1100px) {

    .compensation-wrap__slider .slick-dots li button {
        background-color: #3F4349;
        border-color: #3F4349;
    }

    .compensation-wrap__slider .slick-dots .slick-active button {
        background-color: #fff;
    }
}

/* ===== SEARCH ===== */

/* =========================================================
   Header language switcher (desktop ≥1101px)
   Restore top:34px spacing (UA below RU) + positive z-index.
   Use display (not opacity/visibility) — opacity was stuck at 0
   in some browsers despite .open rules, so clicks hit .op-header.
   Mobile: untouched (.op-header-wrap__nav--top rules).
   ========================================================= */
@media (min-width: 1101px) {
    .op-header-wrap__meta--languages {
        position: relative;
        z-index: 50;
        overflow: visible;
    }

    .op-header-wrap__meta--languages ul ul {
        display: none;
        position: absolute;
        left: 0;
        top: 34px;
        width: 100%;
        margin: 0;
        padding: 14px 10px 6px;
        border-radius: 0 0 10px 10px;
        background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        z-index: 51;
        transition: none;
    }

    .op-header-wrap__meta--languages ul ul li {
        margin: 0 0 5px;
        line-height: 1.35;
    }

    .op-header-wrap__meta--languages ul ul li:last-child {
        margin-bottom: 0;
    }

    .op-header-wrap__meta--languages ul ul a {
        display: block;
        position: relative;
        z-index: 1;
        padding: 2px 0;
        line-height: 1.35;
        color: #fff;
        pointer-events: auto;
    }

    .op-header-wrap__meta .open ul ul,
    .op-header-wrap__meta--languages.open ul ul {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}

@media (max-width: 640px) {
	.modal-wrap .wpcf7-list-item label input {
		min-height: -webkit-fit-content;
		min-height: -moz-fit-content;
		min-height: fit-content;
	}
	.modal-wrap__close {
		cursor: pointer;
		text-align: right;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin-left: auto;
		font-weight: 700;
		font-size: 50px;
		-webkit-transition: .3s;
		-o-transition: .3s;
		transition: .3s;
		position: absolute;
		right: 25px;
		top: 25px;
		-webkit-transform: scale(0.8);
		    -ms-transform: scale(0.8);
		        transform: scale(0.8);
	}
}

/* Отзывы: свёрнутый текст + «Читать больше» (~4 строки / ~160 символов) */
.op-clients-reviews__list .op-item-text.op-ttx .op-item-text__main {
	max-height: 96px;
	overflow: hidden;
}

.op-clients-reviews__list .op-item-text.op-ttx .op-item-text__main p {
	margin-bottom: 8px;
}

.op-clients-reviews__list .op-item-text.op-ttx .op-item-text__main p:last-child {
	margin-bottom: 0;
}

.op-clients-reviews__list .op-item-text.op-ttx.is-expanded .op-item-text__main {
	max-height: none;
}

/* После раскрытия — небольшой зазор перед датой / следующим рядом */
.op-clients-reviews__list .op-item-text.op-ttx.is-expanded .op-item-text__read-more {
	margin-bottom: 4px;
}

/* Высота карточки = контент: при «Свернуть» белый блок снова сжимается */
.op-clients-reviews__list--slider .slick-track {
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.op-clients-reviews__list--slider .slick-list {
	height: auto !important;
}

.op-clients-reviews__list--slider .slick-slide {
	height: auto !important;
}

.op-clients-reviews__list--slider .op-wrapper,
.op-clients-reviews__list--slider .op-item {
	height: auto;
}

.op-clients-reviews__list--slider .op-item.is-animating-height {
	overflow: hidden;
}

/* Только если текст длиннее лимита: мягкое затухание края без многоточия */
.op-clients-reviews__list .op-item-text.op-ttx.op-review-text--clamped:not(.is-expanded) .op-item-text__main {
	position: relative;
}

.op-clients-reviews__list .op-item-text.op-ttx.op-review-text--clamped:not(.is-expanded) .op-item-text__main::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	width: 3.25rem;
	height: 1.35em;
	pointer-events: none;
	background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(#fff));
	background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, #fff 100%);
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #fff 100%);
}

.op-clients-reviews__list .op-item-text__read-more {
	display: block;
	margin-top: 10px;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	color: #2483ed;
	text-decoration: underline;
	text-align: left;
}

.op-clients-reviews__list .op-item-text__read-more:hover {
	color: #1a6fd0;
}

.op-clients-reviews__list .op-item-text__read-more[hidden] {
	display: none;
}

/* Главная: «Как мы работаем» — semantic h3 without changing card title look */

/* Главная: «Как мы работаем» — фото на ширину сетки карточек (mobile) */

/* Главная: «Как мы работаем» — отступ снизу перед «Почему мы» */

/* Контакты — плашка «Как нас найти» */

/* «Как нас найти» keeps margin from .op-contacts-bottom--card (56/48/40px). */

/* template-reviews.php — меньше отступ снизу */
.clients .clients-wrap:has(.op-clients-reviews) {
	padding-bottom: 48px;
}

@media (max-width: 767px) {
	.clients .clients-wrap:has(.op-clients-reviews) {
		padding-bottom: 36px;
	}
}

/* CF7 submit: клик по всей кнопке через JS, отступы как раньше */
.op-cf7-submit {
	cursor: pointer;
}

/* =========================================================
   FAQ — open card: original faq.svg stretched full card
   ========================================================= */

.faq-wrap__list .item,
.op-faq-wrap__list .op-item {
	position: relative;
	background-color: #fff;
	border: solid 1px #f0f2f5;
	border-radius: 20px;
	overflow: hidden;
	-webkit-transition: border-color 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
	-o-transition: border-color 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
	transition: border-color 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

/* Decorative curve: original faq.svg, stretched to full open card */
.faq-wrap__list .item::before,
.op-faq-wrap__list .op-item::after {
	content: "";
	display: block;
	position: absolute;
	inset: 0;
	width: auto !important;
	height: auto !important;
	border-radius: inherit;
	background-color: #f6f8fb !important;
	background-image: url("../../assets/img/main/faq.svg?v=20260909") !important;
	background-repeat: no-repeat !important;
	background-position: left top !important;
	background-size: 100% 100% !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 1;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.faq-wrap__list .item.open::before,
.op-faq-wrap__list .op-item.open::after,
.op-faq-wrap__list .open::after {
	opacity: 1;
	visibility: visible;
}

.faq-wrap__list .item-top,
.faq-wrap__list .item-text,
.op-faq-wrap__list .op-item-top,
.op-faq-wrap__list .op-item-text {
	position: relative;
	z-index: 2;
}

/* Open card: single blue outline (no outer ring / no white gap) */
.faq-wrap__list .item.open,
.op-faq-wrap__list .op-item.open {
	background-color: #f6f8fb !important;
	background-image: url("../../assets/img/main/faq.svg?v=20260909") !important;
	background-repeat: no-repeat !important;
	background-position: left top !important;
	background-size: 100% 100% !important;
	background-clip: border-box !important;
	border: 2px solid #2380eb !important;
	-webkit-box-shadow: 0 12px 30px rgba(9, 43, 150, 0.08);
	box-shadow: 0 12px 30px rgba(9, 43, 150, 0.08);
}

.faq-wrap__list .item.open .item-text,
.op-faq-wrap__list .op-item.open .op-item-text {
	position: relative;
	padding-left: 0;
	border-left: 0 !important;
}

/* No extra blue vertical rail inside answers */
.faq-wrap__list .item.open .item-text::before,
.op-faq-wrap__list .op-item.open .op-item-text::before {
	content: none !important;
	display: none !important;
}

.faq-wrap__list .item.open .item-top__title {
	color: inherit;
}

.faq-wrap__list .item.open .item-top__icon svg path {
	stroke: #2380eb !important;
}

/* Blue dots in answer lists (keep) */
.faq-wrap__list .item-text ul,
.faq-wrap__list ul,
.op-faq-wrap__list .op-item-text ul {
	list-style: none !important;
	padding-left: 0 !important;
	margin: 0 0 16px;
}

.faq-wrap__list .item-text ul li,
.faq-wrap__list ul li,
.op-faq-wrap__list .op-item-text ul li {
	position: relative;
	padding-left: 21px !important;
	margin-bottom: 12px;
	list-style: none !important;
}

.faq-wrap__list .item-text ul li:last-child,
.faq-wrap__list ul li:last-child,
.op-faq-wrap__list .op-item-text ul li:last-child {
	margin-bottom: 0;
}

.faq-wrap__list .item-text ul li::before,
.faq-wrap__list ul li::before,
.op-faq-wrap__list .op-item-text ul li::before {
	content: none !important;
	display: none !important;
}

.faq-wrap__list .item-text ul li::after,
.faq-wrap__list ul li::after,
.op-faq-wrap__list .op-item-text ul li::after {
	content: "" !important;
	display: block !important;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: #2380eb;
	position: absolute;
	left: 0;
	top: 0.55em;
}

.faq-wrap__list .item-text p {
	margin-bottom: 16px;
}

.faq-wrap__list .item-text p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   Homepage mobile polish (Jak pracujemy / Dlaczego my / Nasza historia)
   Backup: wp-content/uploads/op-backups/homepage-mobile-20260908_152855
   Desktop unchanged — rules scoped to max-width: 640px
   ========================================================================== */
@media (max-width: 640px) {
	/* 1) Jak pracujemy — photo matches step cards width + soft frame */

	/* 2) Nasza historia — photo inset matches text card; buttons */

	/* Typografia: ближе к Historie klientów; expand fixes max-height clip */

	/* Expand — style like blog "Zobacz wszystkie" (.blog-wrap__see-all.btn) */

	/* 3) Dlaczego my — card body +1–2px, lighter line-height; titles stay black */

	/* Active/hover: red top line only — keep readable gray body text */

	/* 5) Local vertical rhythm — modest only */
}

/* ==========================================================================
   Nasza historia — DESKTOP redesign only (theme breakpoint ≥ 1101px)
   Mobile / tablet: visual parity below; swipe milestones preserved ≤1100
   ACF: title10, subtitle10, img10, text10, more10, list10, btn_text10, link10
   ========================================================================== */

/* --------------------------------------------------------------------------
   Mobile + tablet (≤1100): same visual language as desktop,
   keep original swipe timeline (2 items + hand hint)
   -------------------------------------------------------------------------- */
@media (max-width: 1100px) {

	/* Keep old swipe milestone look — hide desktop icon circles */

	/* Kim jesteśmy — same as hero .op-btn (gradient ::after + circle arrow), fit-content */
}

@media (min-width: 1101px) {

	/* LEFT — premium photo */

	/* Floating badge on photo — year + label from list10 / subtitle10 */

	/* RIGHT — light content card */

	/* Hide mobile-only read-more on desktop */

	/* Timeline: 4 equal stages, 20px side inset */

	/* One continuous rail through all dots (incl. outer halves) */

	.op-history .op-history-wrap__flex--content-slider .slick-list,
	.op-history .op-history-wrap__flex--content-slider .slick-track {
		display: block !important;
		width: 100% !important;
		transform: none !important;
		position: static !important;
	}

	/* Equal gaps between dot centers, 20px side inset — all centered the same way */

	/* Hide redesign icons — use original history.svg dots */

	/* Same fixed title box + centered for every stage */

	/* Vertical tick from title down to the dot */

	/* No per-item connectors — one continuous ::before on slider */

	/* CTA — hero .op-btn look */
}

/* History + hero .op-btn: stable mobile tap (no sticky-hover rotate jump) */
@media (max-width: 1100px) {

	/* Same as hero .op-btn: arrow points down on press */
}

@media (hover: none), (pointer: coarse) {
	/* Kill sticky iOS :hover so the arrow does not stay rotated after tap */
	.op-btn:hover svg {
		rotate: none;
		transform: none;
	}

	/* Press / keyboard still rotate like desktop hover / hero */
	.op-btn:active svg,
	.op-btn:focus-visible svg {
		rotate: 90deg !important;
	}

	.op-btn:active::after {
		opacity: 0.88;
	}
}

/* =========================================
 * ONE PLUS — mobile header first-screen lock
 * Keep menu + hero aligned; avoid spacer CLS jump.
 * ========================================= */
.op-header-wrap__logo img,
.op-header-logo {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	aspect-ratio: 300 / 77;
}

@media (max-width: 1100px) {
	.op-wrp {
		margin-bottom: 70px !important;
	}
}

@media (max-width: 550px) {
	.op-header-wrap__logo {
		max-width: 167px;
	}

	.op-wrp {
		margin-bottom: 70px !important;
	}
}

/* About: semantic h3 in «Why choose us» / «Company history» — keep existing look */

/* Home (and shared blocks): solid blue H2 accents → same gradient as home hero.
   Note: body.home is often missing on live (oprmm), so selectors are section-based. */
.op-services-wrap__title span[style*="color"],
.op-services-wrap__title span[style*="Color"] {
	background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
	background-color: transparent !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	color: transparent !important;
}

/* Специализация: keep solid blue accent (not gradient) on dark section */

/* Consultation H2: only accent span is brand-colored (parent was solid blue) */

/* About page: solid blue title accents → same gradient as home hero */

.op-about-page .op-team-wrap__list .op-item-content__top--position {
	background-image: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) !important;
	background-color: transparent !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	color: transparent !important;
}

/* Services page: solid blue title accents → brand gradient (desktop + mobile) */
.op-services-page h2 span[style*="color"],
.op-services-page h2 span[style*="Color"],
.op-services-page h3 span[style*="color"],
.op-services-page h3 span[style*="Color"],
.op-services-page .op-list-wrap__title span,
.op-services-page .op-how-wrap__title span,
.op-services-page .op-clients-wrap__title span,
.op-services-page .op-clients-reviews__title span,
.op-services-page .op-form-wrap__content--title span,
.op-services-page .map-title span,
.op-services-page .recommend-wrap__title span,
.op-services-page .op-how-wrap__flex--list .op-item-content__title,
.op-services-page .op-how-wrap__flex--list h3.op-item-content__title {
	background-image: linear-gradient(91.91deg, #4dabf7 0%, #2380eb 42%, #092b96 100%) !important;
	background-color: transparent !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	color: transparent !important;
}

/* Services plaques: keep old rounded under-line geometry (was box-shadow 0 3px 0 0),
   but fill with brand gradient instead of flat #2483ed */
.op-list-wrap__flex .op-item {
	position: relative;
	z-index: 0;
	background-color: transparent !important;
	-webkit-box-shadow:
		0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
		0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
		0 100px 80px 0 rgba(0, 0, 0, 0.0392156863) !important;
	box-shadow:
		0 6.65px 5.32px 0 rgba(0, 0, 0, 0.0156862745),
		0 22.34px 17.87px 0 rgba(0, 0, 0, 0.0235294118),
		0 100px 80px 0 rgba(0, 0, 0, 0.0392156863) !important;
}
.op-list-wrap__flex .op-item::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 5px;
	background: linear-gradient(90deg, #092b96 0%, #086cdc 45%, #2380eb 100%);
	-webkit-transform: translateY(3px);
	transform: translateY(3px);
	z-index: 0;
	pointer-events: none;
}
.op-list-wrap__flex .op-item::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 5px;
	background-color: #fff;
	z-index: 0;
	pointer-events: none;
}
.op-list-wrap__flex .op-item > * {
	position: relative;
	z-index: 1;
}

/* Clients slider: Slick clone lane uses CSS background (no duplicate <img> for SEO) */
.op-clients-wrap__list--slider .op-wrapper .op-clients-logo-photo {
  display: block;
  max-height: 64px;
  height: 64px;
  width: 160px;
  max-width: 100%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

/* Home consultation cards: semantic h3 — keep existing card title look */

/* Mobile menu: keep logo + burger above drawer; hide cookie FAB (z-index ~2147483000) */
@media (max-width: 1100px) {
	/* Lift whole header stacking context above cookie FAB while drawer is open */
	body.op-mobile-menu-open .op-header,
	body:has(.op-header-wrap__nav--active) .op-header {
		z-index: 2147483001 !important;
	}

	.op-header-wrap__nav--active {
		z-index: 100050 !important;
	}

	/*
	 * Drawer fits device viewport: top bar + scrollable menu + pinned socials.
	 * Prevents L2/L3 expansion from pushing socials below the fold with no way to reach them.
	 */
	.op-header-wrap__nav,
	.op-header-wrap__nav--active {
		height: 100vh !important;
		height: 100dvh !important;
		max-height: 100vh !important;
		max-height: 100dvh !important;
		width: 100% !important;
		max-width: 100vw !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
		display: flex !important;
		flex-direction: column !important;
		padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.op-header-wrap__nav--top {
		flex: 0 0 auto;
	}

	/* Only the top-level menu list scrolls; nested submenus expand inside it */
	.op-header-wrap__nav > ul,
	.op-header-wrap__nav > .menu {
		flex: 1 1 auto !important;
		min-height: 0 !important;
		max-height: none !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
	}

	.op-header-wrap__nav > ul ul,
	.op-header-wrap__nav > .menu ul {
		max-height: none !important;
		overflow: visible !important;
	}

	.op-header-wrap__nav--socials {
		flex: 0 0 auto;
		margin-top: 16px !important;
		padding-top: 16px !important;
	}

	/* ONE PLUS logo stays visible on top of the open drawer */
	body.op-mobile-menu-open .op-header-wrap__logo,
	body:has(.op-header-wrap__nav--active) .op-header-wrap__logo {
		position: relative;
		z-index: 100055 !important;
	}

	.op-header-wrap__icon,
	.op-header-wrap__icon--active,
	.op-header-wrap__meta .op-header-wrap__icon,
	.op-header-wrap__meta .op-header-wrap__icon--active {
		z-index: 100060 !important;
		position: relative;
	}

	/* Search field lives in header meta (z:3) — lift it above the open drawer */
	body.op-mobile-menu-open .op-header-wrap__meta--form,
	body:has(.op-header-wrap__nav--active) .op-header-wrap__meta--form {
		z-index: 100070 !important;
	}

	body.op-mobile-menu-open #js-ccfw-settings-button.ccfw-settings-button--cookie-icon,
	body.op-mobile-menu-open #js-ccfw-settings-button.ccfw-settings-button--cookie_icon,
	body:has(.op-header-wrap__nav--active) #js-ccfw-settings-button.ccfw-settings-button--cookie-icon,
	body:has(.op-header-wrap__nav--active) #js-ccfw-settings-button.ccfw-settings-button--cookie_icon,
	body.op-mobile-menu-open .ccfw-settings-button--cookie-icon,
	body.op-mobile-menu-open .ccfw-settings-button--cookie_icon,
	body:has(.op-header-wrap__nav--active) .ccfw-settings-button--cookie-icon,
	body:has(.op-header-wrap__nav--active) .ccfw-settings-button--cookie_icon {
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
		display: none !important;
	}
}

/* === service5 / notariusz CF7 modal patch === */
/* Durable chrome: assets/css/footer-form.css (always enqueued after this file).
   PurgeCSS often drops `textarea` from `.choices__inner,input,select,textarea`.
   Choices CDN may load for #notariusz — keep overrides in footer-form.css. */
.choices__inner,input,select,textarea{font-size:18px;line-height:34px;font-family:Gilroy,sans-serif;border-radius:10px;border:solid 1px #d0d9e7;padding:24px 30px;background-color:#fff;display:block;width:100%;color:#131313}
.choices.is-open{position:relative;z-index:10}
.choices__list--dropdown .choices__item{font-size:18px!important;line-height:24px}
.choices[data-type*=select-one]::after{top:45%}
.modal-wrap__title,.modal-wrap .cf7-title{font-size:20px;line-height:30px;margin-bottom:15px;font-weight:700;max-width:85%}
.modal-wrap__form .cf7-buttons{display:flex;align-items:center;justify-content:space-between;margin-top:30px;position:relative}
.modal-wrap__form .cf7-buttons .btn{width:100%;max-width:200px;margin:0!important;height:60px!important}
.modal-wrap__form input,.modal-wrap__form select,.modal-wrap__form textarea{margin-bottom:15px;padding:15px 25px}
.cf7-step{display:none}.cf7-step.active{display:block}
.cf7-step p{margin-bottom:10px;display:block}
#modalNotariusz.service5-notariusz-modal .choices,
.service5-notariusz-modal .choices{width:100%}
