/* op-home.css — purged homepage stack (rebuild: _tmp-home-css/build-op-home-css.mjs) */
/* op-home.css — purged homepage 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,textarea {
    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,textarea::-webkit-input-placeholder {
    color: #878c94;
    opacity: 1
}

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

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

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

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

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

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

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

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

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

textarea {
    resize: none;
    height: 179px
}

.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
}

.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
}

.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
}

.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__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__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 .slick-dots {
    margin-right: 275px
}

.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 .slick-active .item::after {
    display: none!important
}

.how {
    overflow: hidden
}

.why {
    background: url(../img/main-old/bg-why.png) no-repeat center center/cover;
    border-radius: 50px;
    position: relative;
    z-index: 2
}

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

.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-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
}

.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
}

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

.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-wrap__flex--content-position {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 30px
}

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

.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
    }

    .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: 1200px) {

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

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

@media (max-width: 1024px) {

    .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
    }
}

@media (max-width: 620px) {

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

@media (max-width: 550px) {
    input,select,textarea {
        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
    }

    .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__top--rating {
        font-size: 14px;
        line-height: 20px
    }

    .why {
        border-radius: 20px
    }

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

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

    .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
    }

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

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

    .year {
        border-radius: 0
    }

    .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;
	}
}

/* === 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;
}
@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;
}
.op-ttl:not(h2) {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-size: clamp(0.875rem, calc(0.7770376176rem + 0.0041797283 * 100vw), 1.125rem);
}
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
ul {
    margin: 0;
    padding: 0;
}
.op-h1,
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,
textarea {
    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,
textarea::-webkit-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: #878c94;
}
input:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-ms-input-placeholder,
select::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
    opacity: 1;
    color: #878c94;
}
input:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder {
    opacity: 1;
    color: #878c94;
}
input::placeholder,
select::placeholder,
textarea::placeholder {
    opacity: 1;
    color: #878c94;
}
input:focus,
select:focus,
textarea:focus {
    border-color: #2380eb;
}
textarea {
    resize: none;
    height: 179px;
}
.op-mob {
    display: none;
}
.op-move {
    -webkit-animation: swipeHint 1.5s ease-in-out infinite;
    animation: swipeHint 1.5s ease-in-out infinite;
}
@-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-btn-primary {
    color: #086cdc;
    padding-left: 22px;
    padding-right: 22px;
    font-weight: 700;
}
.op-btn-primary::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #fff;
    z-index: -1;
    border-radius: 50px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-btn-primary::after {
    background: 0 0;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    left: -1px;
    top: -1px;
    background: -o-linear-gradient(358.09deg, #092b96 0, #086cdc 100%);
    background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
    z-index: -2;
}
.op-btn-primary:hover {
    color: #fff;
}
.op-btn-primary:hover::before {
    background-color: #086cdc;
}
.op-btn-primary:hover svg {
    rotate: none;
}
.op-btn-primary:hover svg path {
    fill: #fff;
}
.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 {
    padding-top: 81px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 30px;
}
.op-hero-wrap__content {
    width: 100%;
    margin-bottom: 45px;
    max-width: 635px;
}
.op-hero-wrap__content--title {
    font-weight: 700;
    line-height: 90%;
    font-size: 59px;
}
/* .op-hero-wrap__content--title br {
    display: none;
} */
.op-hero-wrap__content--title span {
        font-size: 103px;
        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%);
        -webkit-text-fill-color: transparent;
        -webkit-background-clip: text;
                background-clip: text;
        display: inline-block;
        line-height: 110%;
}
.op-hero-wrap__content--text {
    margin: 32px 0;
    font-weight: 400;
}
.op-hero-wrap__content--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 32px;
}
.op-hero-wrap__image {
    width: 100%;
	height: 538px;
    max-width: 635px;
    position: relative;
    z-index: 2;
    border-radius: 12px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 14px 11px;
}
.op-hero-wrap__image--main {
    z-index: -1;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.op-hero-wrap__image--main img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.op-hero-wrap__image--list {
	width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px;
    font-family: Gilroy, sans-serif;
}
.op-hero-wrap__image--list-flex {
    width: 100%;
    max-width: 267px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
}
.op-hero-wrap__image--list-flex .op-item {
    width: calc((100% - 10px) / 2);
}
.op-hero-wrap__image--list-banner {
    width: 100%;
    max-width: 336px;
}
.op-hero-wrap__image--list .op-item {
    padding: 16px;
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border: solid 1px rgba(255, 255, 255, 0.2);
    color: #fff;
    text-align: center;
}
.op-hero-wrap__image--list .op-item-title {
    font-weight: 700;
    margin-bottom: 4px;
    /* 24px = 1.5rem (мінімум 18px, максимум 24px) */
    font-size: clamp(1.125rem, calc(1.0760188088rem + 0.0020898642 * 100vw), 1.5rem);
}

.op-hero-wrap__image--list-banner.op-item .op-item-title {
    /* 20px = 1.25rem (мінімум 18px, максимум 20px) */
    font-size: clamp(1.125rem, calc(1.0760188088rem + 0.0020898642 * 100vw), 1.25rem);
}
.op-hero-wrap__image--list .op-item-text {
    line-height: 120%;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 0.9rem);
}
.op-hero-wrap__image--list .op-item-reviews {
    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;
    gap: 16px;
    text-align: left;
    -webkit-transform: scale(0.97);
    -ms-transform: scale(0.97);
    transform: scale(0.97);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    transition:
        transform 0.3s ease,
        -webkit-transform 0.3s ease;
}
.op-hero-wrap__image--list .op-item-reviews:hover {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}
.op-hero-wrap__image--list .op-item-reviews__image {
    width: 100%;
    max-width: 128px;
    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;
}
.op-hero-wrap__image--list .op-item-reviews__image img {
    max-height: 32px;
}
.op-hero-wrap__image--list .op-item-reviews__meta {
    width: 100%;
    max-width: 150px;
}
.op-item-reviews .op-item-reviews__meta a {
	color: #fff;
}
.op-hero-wrap__image--list .op-item-reviews__meta--title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 700;
    font-size: clamp(1rem, calc(0.9510188088rem + 0.0020898642 * 100vw), 1.125rem);
}
.op-hero-wrap__image--list .op-item-reviews__meta--title-value {
    padding-right: 10px;
}
.op-hero-wrap__image--list .op-item-reviews__meta--title-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.op-hero-wrap__image--list .op-item-reviews__meta svg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-hero-wrap__image--list .op-item-reviews__meta--count {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 12px;
}
.op-item-reviews__meta--count svg {
	width: 18px
}
.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-image img {
    border-radius: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 55px;
    height: 55px;
}
.op-item-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
}
.op-hero-list .op-item-title {
    font-weight: 700;
    margin: 3px 0 0 0;
    font-size: clamp(1.25rem, calc(1.1520376176rem + 0.0041797283 * 100vw), 1.5rem);
}
.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 {
    background: url(../img/main/bg-for.png) no-repeat center center/cover;
    position: relative;
    top: -75px;
    z-index: 1;
}
.op-for-wrap {
    color: #fff;
    padding: 175px 0 120px;
}
.op-for-wrap__title {
    text-align: center;
    margin-bottom: 30px;
}
.op-for-wrap__text {
    max-width: 534px;
}
.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;
}
.op-for-wrap__list .op-item-image {
    position: relative;
    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;
}
.op-for-wrap__list .op-item-image img {
    -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-image img:nth-child(2) {
    position: absolute;
    left: 50%;
    margin-right: -50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden;
}
.op-for-wrap__list .op-item-title {
    margin: 30px 0 20px;
    line-height: 32px;
    font-weight: 700;
    font-size: clamp(1.25rem, calc(1.1520376176rem + 0.0041797283 * 100vw), 1.5rem);
}
.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-for-wrap__list .op-item:hover .op-item-image img {
    opacity: 0;
    visibility: hidden;
}
.op-for-wrap__list .op-item:hover .op-item-image img:nth-child(2) {
    opacity: 1;
    visibility: visible;
}
.op-consultation {
  position: relative;
  overflow: hidden;
}

/* Убираем старые псевдо-элементы */
.op-consultation:before,
.op-consultation:after {
  display: none !important;
}

/* Новые реальные элементы */
.op-parallax-before,
.op-parallax-after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 30%;
  left: 0;
  pointer-events: none;
  z-index: 1;
  will-change: transform;
}

.op-parallax-before {
  background: url(/wp-content/uploads/2026/04/graphic_element-3.png) no-repeat top left;
}

.op-parallax-after {
  background: url(/wp-content/uploads/2026/04/group.png) no-repeat top right;
  top: 30%;
}

.op-consultation-wrap {
    padding: 65px 0 120px;
}
.op-consultation-wrap__title {
    text-align: center;
    margin-bottom: 30px;
    color: #0a2f9a;
}
.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__toggle {
    display: none;
}
.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-top__image {
	width: 77px;
    height: 77px;
    background: #fff;
    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%;
}
.op-consultation-wrap__list .op-item-top__image img {
    width: 37px;
    height: 37px;
	-o-object-fit: contain;
    object-fit: contain;
}
.op-consultation-wrap__list .op-item-top__category {
    text-align: center;
    padding: 10px 20px;
    border-radius: 5px;
    background-color: #e62d5b;
    font-weight: 700;
    color: #fff;
    font-size: clamp(1rem, calc(0.9510188088rem + 0.0020898642 * 100vw), 1.125rem);
}
.op-consultation-wrap__list .op-item-title,.op-consultation-wrap__list h3.op-item-title{font-family:inherit;font-style:normal;font-weight:700;max-width:361px;margin:0 0 38px;padding:0;letter-spacing:normal;text-transform:none;color:inherit;line-height:1.25;font-size:clamp(1.375rem,calc(1.2280564263rem + 0.0062695925 * 100vw),1.75rem)}
.op-consultation-wrap__list .op-item-title__heading{display:inline;margin:0;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;line-height:inherit}
.op-consultation-wrap__list .op-item-title p{display:inline;margin:0}
.op-consultation-wrap__list .op-item-title strong {
    display: inline-block;
    margin-left: 5px;
    padding: 1px 10px;
    line-height: 25px;
    color: #2483ed;
    font-weight: 700;
    border: solid 1px #c1d6ed;
    background-color: #e2f0ff;
    border-radius: 5px;
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-consultation-wrap__list .op-item-subtitle {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
}
.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-price {
    font-weight: 700;
    color: #0a2f9a;
    min-height: 74px;
    font-size: clamp(1.25rem, calc(1.0540752351rem + 0.0083594566 * 100vw), 1.75rem);
}
.op-consultation-wrap__list .op-item-price__notice {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 400;
    color: #131313;
}
.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 {
    background-color: #f8fafd;
    border-radius: 50px;
    padding: 120px 0;
    overflow: visible;
    overflow-x: hidden;
}
.page-id-408 .op-clients {
	background-color: #fff;
}
.page-id-408 .op-clients-wrap__list--slider {
	background-color: #f8fafd;
}
.op-clients-second .op-clients-wrap {
    padding-bottom: 0;
}
.op-clients-wrap__move {
    display: none;
}
/* .op-clients-wrap .op-container {
    max-width: 1460px;
} */
.op-clients-wrap__title {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 40px;
}
.op-clients-wrap__text {
    max-width: 592px;
}
.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__top--meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    line-height: 30px;
    background-color: #ebf1f9;
    border-radius: 5px;
    padding: 8px 10px;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-clients-reviews__top--meta a {
    color: #2380eb;
    font-weight: 700;
    position: relative;
}
.op-clients-reviews__top--meta a::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-clients-reviews__top--meta a:hover::after {
    width: 100%;
}
.op-clients-reviews__top--meta a::after {
    width: 100%;
    bottom: 3px;
}
.op-clients-reviews__top--meta a:hover::after {
    width: 0;
}
.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-how {
/*     background: url(../img/main/bg-how.png) no-repeat right calc(100% - 19px); */
	padding: 0 0 120px ;
}
.page-id-13 .op-how {
	padding: 0;
}
.op-how-wrap {
    margin-top: 97px;
}
.op-how-wrap__title {
    text-align: center;
    margin-bottom: 30px;
}
.op-how-wrap__flex {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.op-how-wrap__flex--image {
    width: 100%;
    max-width: 561px;
}
.op-how-wrap__flex--image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 20px;
}
.op-how-wrap__flex--list {
    width: 100%;
    max-width: 739px;
}
.op-how-wrap__flex--list .op-item {
    margin-bottom: 48px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: rgba(248, 250, 253, 0.5019607843);
    border: solid 1px #f0f2f5;
    border-radius: 20px;
    padding: 19px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-left: 62px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    cursor: pointer;
    position: relative;
}
.op-how-wrap__flex--list .op-item-counter {
    width: 59px;
    min-width: 59px;
    height: 59px;
    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;
    overflow: hidden;
    color: #fff;
    font-weight: 700;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    position: relative;
    z-index: 2;
    line-height: 1;
    padding-top: 2px;
    font-size: clamp(1.25rem, calc(1.0050940439rem + 0.0104493208 * 100vw), 1.875rem);
}
.op-how-wrap__flex--list .op-item-counter::after,
.op-how-wrap__flex--list .op-item-counter::before {
    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-how-wrap__flex--list .op-item-counter::after {
    opacity: 0;
    visibility: hidden;
    background: 0 0;
    background-color: #e62d5b;
}
.op-how-wrap__flex--list .op-item-content {
    width: 100%;
    max-width: calc(100% - 59px);
    padding-left: 20px;
    font-size: clamp(0.875rem, calc(0.8260188088rem + 0.0020898642 * 100vw), 1rem);
}
.op-how-wrap__flex--list .op-item-content__title,
.op-how-wrap__flex--list h3.op-item-content__title {
    margin: 0 0 12px;
    padding: 0;
    font-family: inherit;
    font-style: normal;
    font-weight: 700;
    color: #0a2f9a;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    font-size: clamp(1.125rem, calc(1.0760188088rem + 0.0020898642 * 100vw), 1.25rem);
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
}
.op-how-wrap__flex--list .op-item:nth-child(1) {
    padding-right: 58px;
}
.op-how-wrap__flex--list .op-item:nth-child(1)::after {
    content: "";
    display: block;
    width: 255px;
    height: 141px;
    background: url(../img/main/how.svg) no-repeat center center;
    position: absolute;
    right: -265px;
    top: 0;
}
.op-how-wrap__flex--list .op-item:nth-child(3)::after {
    content: "";
    display: block;
    width: 113px;
    height: 148px;
    position: absolute;
    right: -133px;
    top: 50px;
    background: url(../img/main/how-second.svg) no-repeat center center;
}
.op-how-wrap__flex--list .op-item:nth-child(odd) {
    margin-left: -15px;
	max-width: 93%;
}
.op-how-wrap__flex--list .op-item:nth-child(4n + 4) {
    padding-right: 41px;
    margin-left: 98px;
}
.op-how-wrap__flex--list .op-item:hover {
    border-color: #e72d5c;
}
.op-how-wrap__flex--list .op-item:hover .op-item-counter::before {
    opacity: 0;
    visibility: hidden;
}
.op-how-wrap__flex--list .op-item:hover .op-item-counter::after {
    opacity: 1;
    visibility: visible;
}
.op-how-wrap__flex--list .op-item:hover .op-item-content__title {
    color: #e72d5c;
}
.op-how-wrap__flex--list .op-btn {
    margin: 0 auto;
    padding-left: 35px;
    -webkit-transform: translateX(-50px);
    -ms-transform: translateX(-50px);
    transform: translateX(-50px);
}
.op-how-second {
    background: url(../img/main/bg-how__second.png) no-repeat center top/cover;
    padding-bottom: 125px;
}
.op-how-second .op-how-wrap {
    margin-top: 0;
    padding-top: 120px;
}
.op-how-second .op-how-wrap__flex--list .op-item-counter::before {
    opacity: 0;
    visibility: hidden;
}
.op-how-second .op-how-wrap__flex--list .op-item-counter::after {
    opacity: 1;
    visibility: visible;
}
.op-why {
    background: url(../img/main/bg-why.png) no-repeat left center/cover;
    background-image: -webkit-image-set(
        url(../img/main/bg-why.avif) type("image/avif"),
        url(../img/main/bg-why.webp) type("image/webp"),
        url(../img/main/bg-why.png) type("image/png")
    );
    background-image: image-set(
        url(../img/main/bg-why.avif) type("image/avif"),
        url(../img/main/bg-why.webp) type("image/webp"),
        url(../img/main/bg-why.png) type("image/png")
    );
    margin-top: 80px;
    border-radius: 50px;
}
.op-why-wrap {
    padding: 120px 0;
}
.op-why-wrap__title {
    text-align: center;
    margin-bottom: 30px;
}
.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-image {
    position: relative;
}
.op-why-wrap__list .op-item-image img {
    width: 61px;
    height: 61px;
    border-radius: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.op-why-wrap__list .op-item-image img:nth-child(2) {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.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-content__title,
.op-why-wrap__list h3.op-item-content__title {
    margin: 0 0 12px;
    padding: 0;
    font-family: inherit;
    font-style: normal;
    font-weight: 700;
    font-size: clamp(1.125rem, calc(1.0760188088rem + 0.0020898642 * 100vw), 1.25rem);
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
    color: inherit;
}
.op-why-wrap__list .op-item-content__title-icon {
    display: none;
}
.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 {
	position: relative;
}
.op-history:before {
	z-index: -1;
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(/wp-content/uploads/2026/04/vector-1.png) no-repeat top left;
	left: 0;
	top: 0;
}
.op-history:after {
	z-index: -1;
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(/wp-content/uploads/2026/04/vector.png) no-repeat top right;
	right: 0;
	top: 0;
}
.op-history-wrap {
    padding: 120px 0;
}
.op-history-wrap__title {
    margin-bottom: 30px;
    text-align: center;
}
.op-history-wrap__flex {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 30px;
}
.op-history-wrap__flex--image {
    width: 100%;
    max-width: 533px;
}
.op-history-wrap__flex--image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 12px;
}
.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-history-wrap__flex--content-slider .op-item-image {
    margin: 60px 0 15px;
    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;
}
.op-history-wrap__flex--content-slider .op-item-image::after {
    content: "";
    display: block;
    width: 1px;
    height: 30px;
    position: absolute;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #000;
    top: -45px;
    opacity: 0.2;
}
.op-history-wrap__flex--content-slider .op-item-image::before {
    content: "";
    display: block;
    width: 105px;
    height: 1px;
    background-color: #000;
    opacity: 0.2;
    position: absolute;
    right: -117px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.op-history-wrap__flex--content-more .op-btn {
    padding-left: 28px;
    gap: 20px;
}
.op-faq {
	position: relative;
    background: #fff;
}

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

@media (max-width: 1100px) {
	.hero-video {
		min-width: auto!important;
	}
	.op-faq:after,
	.op-faq:before {
		display: none;
	}
}
.op-faq-wrap__title {
    text-align: center;
    margin-bottom: 30px;
    line-height: 35px;
}
.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-top__title {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    max-width: calc(100% - 30px);
}
.op-faq-wrap__list .op-item-top__icon svg {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.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-faq-wrap__list .open .op-item-top__icon svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.op-faq-second {
    margin-top: 100px;
}
.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-top__title {
    font-weight: 700;
    max-width: calc(100% - 15px);
    font-size: clamp(1rem, calc(0.9510188088rem + 0.0020898642 * 100vw), 1.125rem);
}
.op-list-wrap__flex .op-item-top__icon svg {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.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-list-wrap__flex .open .op-item-top__icon svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.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-top__title {
    font-weight: 700;
    max-width: calc(100% - 30px);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    font-size: clamp(1rem, calc(0.9020376176rem + 0.0041797283 * 100vw), 1.25rem);
}
.op-price-wrap__list .op-item-top__icon svg {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.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-price-wrap__list .open .op-item-top__icon svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.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 {
    width: 100%;
    height: 449px;
    position: relative;
}
.op-team-wrap__list .op-item-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.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 h3.op-item-top__title {
    display: block;
    margin: 0;
    padding: 0;
    font: inherit;
    color: inherit;
    letter-spacing: normal;
    text-transform: none;
}
.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);
}
.op-w .op-clients-reviews {
    margin-top: 120px;
}

@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 {
        -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: 26px;
        margin-top: 20px;
    }
    .op-history-wrap__flex--content {
        max-width: 100%;
    }
    .op-history-wrap__flex--content-more {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .op-history-wrap__flex--image {
        max-width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    
    .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-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: 45px;
        padding-top: 38px;
    }
    .op-hero-wrap__content {
        max-width: 100%;
    }
    .op-hero-wrap__image {
        width: calc(100% + 80px);
        max-width: 100%;
        min-height: 583px;
        margin-left: 0;
    }
    .op-hero-wrap__image--list {
        width: 100%;
    }
    .op-hero-wrap__image--list-flex {
        width: 100%;
        max-width: calc((100% - 36px) / 2);
        gap: 36px;
    }
    .op-hero-wrap__image--list-flex .op-item {
        width: calc((100% - 36px) / 2);
    }
    .op-hero-wrap__image--list-banner {
        width: 100%;
        max-width: calc((100% - 36px) / 2);
    }
    .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 {
        margin-top: 80px;
    }
    .op-for-wrap {
        padding: 75px 0 100px;
    }
    .op-for-wrap__list .op-item {
        width: calc((100% - 30px) / 2);
    }
    .op-consultation-wrap {
        padding: 90px 0;
    }
    .op-consultation-wrap__title {
        margin-bottom: 16px;
    }
    .op-consultation-wrap__list .op-wrapper {
        padding: 30px 30px 0 0;
    }
    .op-clients {
        padding: 93px 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-how {
        background: #fff;
    }
    .op-how-wrap {
        margin-top: 90px;
    }
    .op-how-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;
        gap: 40px;
    }
    .op-how-wrap__flex--image {
        max-width: 405px;
    }
    .op-how-wrap__flex--list .op-item {
        margin-bottom: 16px;
    }
    .op-how-wrap__flex--list .op-item:nth-child(1n + 1) {
        width: 95%;
        max-width: 100%;
        margin-left: 0;
    }
    .op-how-wrap__flex--list .op-item:nth-child(1n + 1)::after {
        display: none;
    }
    .op-how-wrap__flex--list .op-item:nth-child(even) {
        margin-left: 47px;
    }
    .op-how-wrap__flex--list .op-btn {
                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;
        -webkit-transform: unset;
            -ms-transform: unset;
                transform: unset;
        margin-top: 24px;
    }
    .op-why {
        margin-top: 100px;
        background-image: -webkit-image-set(
            url(../img/main/bg-why-1600.avif) type("image/avif"),
            url(../img/main/bg-why-1600.webp) type("image/webp"),
            url(../img/main/bg-why.png) type("image/png")
        );
        background-image: image-set(
            url(../img/main/bg-why-1600.avif) type("image/avif"),
            url(../img/main/bg-why-1600.webp) type("image/webp"),
            url(../img/main/bg-why.png) type("image/png")
        );
    }
    .op-why-wrap {
        padding: 90px 0;
    }
    .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-image {
        display: none;
    }
    .op-why-wrap__list .op-item-content {
        max-width: 100%;
        padding-left: 0;
        text-align: center;
    }
    .op-why-wrap__list .op-item-content__title {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 8px;
    }
    .op-why-wrap__list .op-item-content__title-icon {
        display: block;
        position: relative;
        width: 40px;
        height: 40px;
    }
	.op-item-content__text {
		text-align: left;
	}
    .op-why-wrap__list .op-item-content__title-icon img {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        -o-object-fit: cover;
        object-fit: cover;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .op-why-wrap__list .op-item-content__title-icon img:nth-child(2) {
        opacity: 0;
        visibility: hidden;
        position: absolute;
        left: 50%;
        top: 50%;
        margin-right: -50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    .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-hero-wrap__image {
        margin-left: 0;
        width: calc(100% + 30px);
        max-width: 100%;
    }
    .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;
    }
    .op-clients-wrap__list--nav {
        display: none;
    }
}

@media (max-width: 1100px) {
	.op-hero-wrap__content--flex {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.op-hero-wrap__content--flex a {
		min-width: auto
	}
	.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 (min-width: 1100px) {
	.op-how-wrap__flex--list .op-item:nth-child(4n + 4) {
		max-width: 78%;
	}
	.op-how-wrap__flex--list .op-item:nth-child(3) {
		max-width: 85%;
	}
}

@media (max-width: 550px) {
    input,
    select,
    textarea {
        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-wrap {
        padding-top: 40px;
        gap: 60px;
    }
    .op-hero-wrap__content--text {
        margin: 20px 0 32px;
    }
    .op-hero-wrap__content--flex {
        gap: 15px;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
    }
    .op-hero-wrap__content--flex .op-btn {
        font-size: 14px;
    }
    .op-hero-wrap__content--flex .op-btn-primary {
        font-size: 0;
        width: 56px;
        height: 56px;
        padding: 0;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        min-width: 56px;
        min-height: 56px;
        gap: 0;
    }
    .op-hero-wrap__image {
        min-height: 277px;
        border-radius: 12px;
        position: relative;
        overflow: visible;
        padding-bottom: 10px;
        max-width: 100%;
        margin: 0 auto;
    }
    .op-hero-wrap__image--list-banner {
        border: none;
        width: 100%;
        max-width: 100%;
        left: 0;
        top: -82px;
        border-radius: 0 0 10px 10px;
        position: absolute;
    }
    .op-hero-wrap__image--list-banner .op-item-title {
        color: #131313;
    }
    .op-hero-wrap__image--list .op-item-reviews {
        color: #131313;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .op-hero-wrap__image--list-flex {
        max-width: 100%;
        gap: 10px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .op-hero-wrap__image--list-flex .op-item {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        max-width: 116px;
    }
    .op-hero-list {
        margin-right: -15px;
    }
    
    .op-hero-list .op-item-image img {
        width: 46px;
        height: 46px;
    }
    .op-hero-list .op-item-title {
        margin-top: 6px;
        font-size: 19px;
    }
    .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;
    }
	.page-id-13 .op-services-wrap__list .op-item-top__title {
        max-width: 230px;
        font-size: 20px;
    }
    .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 {
    padding-top: 125px;
    margin-top: -25px;
    }
    .op-for-wrap {
        padding: 53px 0 68px;
    }
    .op-for-wrap__title {
        max-width: 329px;
        margin: 0 auto 8px;
    }
    .op-for-wrap__move {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-top: 17px;
    }
    .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-for-wrap__list .op-item-image {
        max-width: 60px;
        margin: 0 auto;
    }
    .op-for-wrap__list .op-item-title {
        margin: 12px 0 20px;
    }
    .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-top__image img {
        width: 29px;
        height: 29px;
    }
    .op-consultation-wrap__list .op-item-top__category {
        padding: 5px 20px;
    }
    .op-consultation-wrap__list .op-item-title,
    .op-consultation-wrap__list h3.op-item-title {
        margin-bottom: 30px;
    }
    .op-consultation-wrap__list .op-item .op-btn {
        text-align: center;
        text-transform: none;
        margin-top: 24px;
    }
    .op-consultation-wrap__move {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-top: 9px;
    }
    .op-consultation-wrap__toggle {
        display: none;
    }
    .op-clients {
        border-radius: 20px;
        padding: 49px 0;
    }
    .op-clients-wrap__title {
        margin-bottom: 20px;
    }
    .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-wrap__move {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-right: 29px;
        margin-top: 19px;
    }
    .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-how-wrap {
        margin-top: 51px;
    }
    .op-how-wrap__title {
        margin-bottom: 20px;
    }
    .op-how-wrap__flex {
        margin-top: 15px;
    }
    .op-how-wrap__flex--image {
        max-width: 247px;
    }
    .op-how-wrap__flex--list .op-item {
        margin-bottom: 10px;
        padding: 17px 15px;
    }
    .op-how-wrap__flex--list .op-item:nth-child(1n + 1) {
        margin-left: 0;
    }
    .op-how-wrap__flex--list .op-item-counter {
        width: 37px;
        height: 37px;
        min-width: inherit;
    }
    .op-how-wrap__flex--list .op-item-content {
        max-width: calc(100% - 37px);
        padding-left: 15px;
    }
    .op-how-wrap__flex--list .op-item-content__title,
    .op-how-wrap__flex--list h3.op-item-content__title {
        margin-bottom: 10px;
    }
    .op-why {
        margin-top: 60px;
        border-radius: 20px;
        background-image: -webkit-image-set(
            url(../img/main/bg-why-1200.avif) type("image/avif"),
            url(../img/main/bg-why-1200.webp) type("image/webp"),
            url(../img/main/bg-why.png) type("image/png")
        );
        background-image: image-set(
            url(../img/main/bg-why-1200.avif) type("image/avif"),
            url(../img/main/bg-why-1200.webp) type("image/webp"),
            url(../img/main/bg-why.png) type("image/png")
        );
    }
    .op-why-wrap {
        padding: 60px 0;
    }
    .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-image {
        display: none;
    }
    .op-why-wrap__list .op-item-content {
        max-width: 100%;
        padding: 0;
    }
    .op-why-wrap__move {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-top: 6px;
        margin-right: 16px;
    }
    .op-why-wrap__title {
        margin-bottom: 9px;
    }
    .op-history-wrap {
        padding: 80px 0 60px;
    }
    .op-history-wrap__title {
        margin-bottom: 20px;
    }
    .op-history-wrap__flex {
        margin-top: 18px;
        gap: 22px;
    }
    .op-history-wrap__flex--content-move {
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin-left: auto;
        margin-top: 21px;
        margin-right: 2px;
    }
    .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-history-wrap__flex--content-more .op-btn {
        font-size: 14px;
    }
    .op-faq-wrap__title {
        margin-bottom: 20px;
    }
    .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-how-second {
        padding-bottom: 40px;
    }
    .op-how-second .op-how-wrap {
        padding-top: 30px;
    }
    .op-clients-second {
        padding-bottom: 100px;
    }
    .op-form-second {
        margin-bottom: 50px;
    }
    .op-price-wrap__list {
        margin-top: 31px;
    }
    .op-contacts-wrap__content--map {
        height: 301px;
        margin-bottom: 55px;
    }
    .op-faq-second {
        margin-top: 42px;
    }
    .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;
	}
    .op-company-wrap__list {
        margin-right: 0;
    }
}
@media (min-width: 993px) and (max-width: 1100px) {
    .op-consultation-wrap__toggle {
        display: none;
    }
    .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__toggle {
		-webkit-transform: scale(1.2);
		    -ms-transform: scale(1.2);
		        transform: scale(1.2);
		max-width: 305px;
		margin: 0 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		gap: 8px;
		margin-top: 30px;
		margin-bottom: 8px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		}
    .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::-webkit-scrollbar {
        display: none;
    }
    .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-how-wrap__flex--list .op-item:nth-child(1n + 1) {
		width: 100%;
	}
    .op-hero-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-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 .op-wrapper:last-child .op-item-image::before {
    display: none;
}
.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) {
	
	.op-faq-wrap__list .op-item-top__title {
        font-size: 18px;
        line-height: 24px;
        max-width: 85%!important;
    }
	.op-faq-wrap__list .op-ttx p {
		font-size: 16px;
	}
	.op-hero-wrap__image--main {
		border-radius: 0 0 25px 25px;
		overflow: hidden;
	}
	.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-parallax-before, .op-parallax-after {
		display: none;
	}
	.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;
	}
    .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;
    }
	.op-item-reviews .op-item-reviews__meta a {
		color: #131313;
	}
}
@media (max-width: 640px) {
	.op-services-wrap__more .op-btn {
		min-width: auto;
		padding-left: 20px;
	}
	.op-how {
		padding: 0 0 60px;
	}
	/* Match hero .op-btn: no SVG padding (it offset transform-origin / looked like a jump on tap+rotate) */
	.op-history-wrap__flex--content-more svg,
	.op-history-wrap__flex--content-more .op-history-cta__legacy-arrow {
		padding: 0;
		margin: 0;
		flex-shrink: 0;
		width: 48px;
		height: 48px;
		transform-origin: 50% 50%;
	}
	.op-history-wrap__flex--content-more .op-btn,
	.op-history-wrap__flex--content-more .op-history-cta__btn.op-btn {
		padding: 4px 7px 4px 20px;
		gap: 10px;
		overflow: hidden;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}
	 .op-hero-wrap__content--flex a {
        min-width: auto;
    }
	.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__form .choices__inner {
		font-size: 16px;
		padding: 15px 10px!important;
		margin-bottom: 15px;
	}
	.modal-wrap__form input:not(.iti__tel-input):not([type="tel"]), .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;
    }
}

@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;
	}
	.op-team-wrap__list .op-item-image {
		height: auto!important;
	}
}

@media (max-width: 640px) {
	.op-consultation {
		top: -50px;
	}
	.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 */

/* 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) .visually-hidden,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .wpcf7-not-valid-tip,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) form.wpcf7-form.invalid .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) form.wpcf7-form.unaccepted .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) form.wpcf7-form.failed .wpcf7-response-output,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) 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) .wpcf7-form-control-wrap {
  position: relative;
  display: block;
}

/* Generic text / email / date / textarea */
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap.op-form-field--error > textarea.wpcf7-form-control,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .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) .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) .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) .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) .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) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti::after,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap:has(.iti).op-form-field--error .iti .iti__tel-input,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap.op-form-field--error .choices__inner,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap.op-form-field--error:has(.choices)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .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) .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) .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) .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) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-checkbox)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .wpcf7-form-control-wrap.op-form-field--error:has(.wpcf7-acceptance)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .wpcf7-form-control-wrap:has(.wpcf7-checkbox .wpcf7-not-valid)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap[data-name="checkbox-626"].op-form-field--error::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .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) .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 {
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  align-items: flex-start;
  padding: 24px 12px;
  box-sizing: border-box;
}

#modalNotariusz .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) .wpcf7-form-control-wrap.op-form-field--error::before,
  :is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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) .wpcf7-form-control-wrap.op-form-field--error:has(> textarea)::before,
:is(.op-form, .modal, #modalNotariusz, #modalCallback, #modalConsultation, #modalGift, #modalOne, #modalTwo) .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). */

/* op-form-errors-20260910-btn-space-revert */

/* === assets/css/op-home-reveal.css === */
/* Homepage scroll reveal — GPU-friendly, no layout shift (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;
  }
}

/* === 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;
}


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

@media (max-width: 768px) {
    
    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
 * Стили блока содержания
 * ========================================= */

/* Collapsed: clip only the panel (~3 items). Never lock .op-toc__list itself —
   otherwise JS peek→nudge animation cannot reveal items 4–5. */

/* Fixed-width markers: digits start under title «С…», same font as list text */

/* 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);
    }
}

/* =========================================
 * 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.
 * ========================================= */


/* 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) */

.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 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;
}

/* Single post H1 sits below the Blog hero — keep equal vertical air
   above/below the title card (style.min .title-single-post margin). */

@media (max-width: 767px) {
	.top {
		border-radius: 0 0 20px 20px;
	}
}

.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;
}

.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;
}

.scroll {
    position: absolute;
    display: block;
    margin-top: -250px;
    overflow: hidden;
    visibility: hidden;
}

/* .help-wrap__flex {
    align-items: flex-start;
} */

/* Ð›Ð¸Ð½Ð¸Ñ Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾Ð³Ð¾ Ð¿ÑƒÐ½ÐºÑ‚Ð° â€” ÐºÑ€Ð°ÑÐ½Ð°Ñ */

/* Ð›Ð¸Ð½Ð¸Ñ Ð¿Ñ€Ð¸ Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ð¸Ð¸ â€” ÑÐ¸Ð½ÑÑ */

.main-nav .slick-arrow {
    left: 15px;
}

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

/* Original theme override: style-old sets 458px, root style.css unlocks natural height */

.slick-carousel .slick-dots {
    display: none !important;
}

.slick-carousel.slick-single .slick-dots {
    display: block !important;
}

.mm {
    display: none !important;
}

.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__form .wpcf7-list-item {
    display: block;
    margin-bottom: 10px;
}

.modal-wrap__form .cf7-buttons .wpcf7-spinner {
    right: 0;
}

.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 .slick-dots {
    margin-top: 0;
}

.loadMoreBtn {
    margin: 40px auto 0;
    color: #fff !important;
    opacity: 0;
}

/* Service heroes — translucent breadcrumb plaque (like blog single date badge) */

/* Breadcrumbs site-wide: swipe to see full path on mobile (no … truncation) */

/* Blog single — centered interactive rating plaque */

/* ===== BLOG ===== */

@media (max-width: 1500px) {
    .list {
        padding-top: 0;
    }
}

@media (max-width: 550px) {

    .list {
        padding-top: 30px;
    }

    .stat {
        padding-top: 40px;
    }

    .slick-dots {
        margin-top: 20px;
    }

    .slick-dots li {
        margin: 0 5px;
    }

    .slick-dots li button {
        width: 10px;
        height: 10px;
    }

    .dd {
        display: none !important;
    }

    .mm {
        display: block !important;
    }

    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 ===== */

.op-btn.op-btn-primary {
    border: 1px solid transparent;
    background:
        -o-linear-gradient(#fff, #fff) padding-box,
        -o-linear-gradient(358.09deg, #092B96 0%, #086CDC 100%) border-box;
    background:
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) border-box;
}

.op-btn.op-btn-primary::before,
.op-btn.op-btn-primary::after {
    content: none;
}

.op-btn.op-btn-primary:hover {
    background:
        -o-linear-gradient(#086CDC, #086CDC) padding-box,
        -o-linear-gradient(358.09deg, #092B96 0%, #086CDC 100%) border-box;
    background:
        linear-gradient(#086CDC, #086CDC) padding-box,
        linear-gradient(91.91deg, #092B96 0%, #086CDC 100%) border-box;
}

/* =========================================================
   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 */
.op-how-wrap__flex--list h3.op-item-content__title {
	margin: 0 0 12px;
	padding: 0;
	font-family: inherit;
	font-style: normal;
	font-weight: 700;
	color: #0a2f9a;
	font-size: clamp(1.125rem, calc(1.0760188088rem + 0.0020898642 * 100vw), 1.25rem);
	line-height: inherit;
	letter-spacing: normal;
	text-transform: none;
}

@media (max-width: 640px) {
	.op-how-wrap__flex--list h3.op-item-content__title {
		margin-bottom: 10px;
	}
}

/* Главная: «Как мы работаем» — фото на ширину сетки карточек (mobile) */
@media (max-width: 1100px) {
	.op-how.op-how--home .op-how-wrap__flex--image {
		max-width: 466px;
	}
}

@media (max-width: 640px) {
	.op-how.op-how--home .op-how-wrap__flex--image {
		max-width: 100%;
		width: 100%;
	}
}

/* Главная: «Как мы работаем» — отступ снизу перед «Почему мы» */
.op-how.op-how--home,
.page-id-13 .op-how.op-how--home {
	padding-bottom: 80px;
	margin-bottom: 0;
}

@media (max-width: 1100px) {
	.op-how.op-how--home,
	.page-id-13 .op-how.op-how--home {
		padding-bottom: 60px;
		margin-bottom: 0;
	}
}

@media (max-width: 640px) {
	.op-how.op-how--home,
	.page-id-13 .op-how.op-how--home {
		padding-bottom: 48px;
		margin-bottom: 0;
	}
}

/* Контакты — плашка «Как нас найти» */

/* template-reviews.php — меньше отступ снизу */

/* 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;
}


.op-faq-wrap__list .op-item.open .op-item-top__title {
	color: inherit;
}


.op-faq-wrap__list .op-item.open .op-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 */
	.op-how.op-how--home .op-how-wrap__flex {
		align-items: stretch;
		gap: 28px;
	}

	.op-how.op-how--home .op-how-wrap__flex--image {
		max-width: 100%;
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.op-how.op-how--home .op-how-wrap__flex--image img {
		width: 100%;
		height: auto;
		aspect-ratio: 1122 / 1298;
		object-fit: cover;
		object-position: center 18%;
		border-radius: 20px;
		border: 1px solid rgba(20, 91, 205, 0.16);
		box-shadow: 0 8px 24px rgba(20, 91, 205, 0.06);
	}

	.op-how.op-how--home .op-how-wrap__flex--list .op-item:nth-child(even) {
		margin-left: 0;
	}

	/* 2) Nasza historia — photo inset matches text card; buttons */
	.op-history .op-history-wrap__flex--image {
		max-width: 100%;
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		height: auto;
	}

	.op-history .op-history-wrap__flex--image img {
		width: 100%;
		height: auto;
		max-height: none;
		aspect-ratio: 1024 / 890;
		object-fit: cover;
		object-position: center center;
		border-radius: 20px;
		border: 1px solid rgba(20, 91, 205, 0.16);
		box-shadow: 0 8px 24px rgba(20, 91, 205, 0.06);
	}

	/* Typografia: ближе к Historie klientów; expand fixes max-height clip */
	.op-history .op-history-wrap__flex--content .op-ttx {
		font-size: 16px;
		line-height: 1.62;
		height: auto;
		max-height: 10.5em;
		overflow: hidden;
		color: #5d6f82;
		transition: max-height 0.35s ease;
	}

	.op-history .op-history-wrap__flex--content .op-ttx.is-expanded {
		max-height: none !important;
		height: auto !important;
		overflow: visible;
	}

	.op-history .op-history-wrap__flex--content .op-ttx p {
		font-size: 16px;
		line-height: 1.62;
		color: #5d6f82;
		font-weight: 400;
	}

	/* Expand — style like blog "Zobacz wszystkie" (.blog-wrap__see-all.btn) */
	.op-history .op-history-wrap__flex--content-read,
	.op-history .op-history-read-btn {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		gap: 8px;
		position: relative;
		overflow: hidden;
		z-index: 0;
		width: fit-content !important;
		max-width: 100%;
		margin: 18px auto 8px;
		padding: 10px 18px !important;
		min-height: 40px;
		border: 0 !important;
		border-radius: 999px !important;
		background: linear-gradient(145deg, #2a8ef0 0%, #2380eb 45%, #092b96 100%) !important;
		color: #fff !important;
		font-family: Gilroy, sans-serif;
		font-size: 14px;
		font-weight: 700;
		line-height: 1.2;
		text-decoration: none !important;
		text-transform: none;
		cursor: pointer;
		box-shadow: 0 10px 24px rgba(35, 128, 235, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.2);
		transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
	}

	.op-history .op-history-read-btn::after {
		content: "";
		position: absolute;
		inset: 0;
		border-radius: inherit;
		background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.34) 48%, transparent 100%);
		transform: translateX(-130%);
		transition: transform 0.55s ease;
		pointer-events: none;
	}

	.op-history .op-history-read-btn:hover,
	.op-history .op-history-read-btn:focus-visible {
		background: linear-gradient(145deg, #3b9af5 0%, #2a8ef0 45%, #0a349f 100%) !important;
		box-shadow: 0 16px 34px rgba(35, 128, 235, 0.34), 0 0 0 4px rgba(35, 128, 235, 0.16);
		transform: translateY(-2px);
	}

	.op-history .op-history-read-btn:hover::after,
	.op-history .op-history-read-btn:focus-visible::after {
		transform: translateX(130%);
	}

	.op-history .op-history-read-btn__icon {
		display: inline-flex;
		position: relative;
		z-index: 1;
		transition: transform 0.22s ease;
	}

	.op-history .op-history-read-btn:hover .op-history-read-btn__icon {
		transform: translateY(2px);
	}

	.op-history .op-history-read-btn__label {
		position: relative;
		z-index: 1;
	}

	/* 3) Dlaczego my — card body +1–2px, lighter line-height; titles stay black */
	.op-why .op-why-wrap__list .op-item-content {
		font-size: 14px;
		line-height: 1.55;
		color: #131313;
	}

	.op-why .op-why-wrap__list .op-item-content__title,
	.op-why .op-why-wrap__list h3.op-item-content__title {
		color: #131313;
		font-family: inherit;
		font-weight: 700;
		font-size: clamp(1.125rem, calc(1.0760188088rem + 0.0020898642 * 100vw), 1.25rem);
		line-height: inherit;
		letter-spacing: normal;
		text-transform: none;
		margin: 0 0 12px;
		padding: 0;
	}

	.op-why .op-why-wrap__list .op-item-content__text {
		font-size: 14px;
		line-height: 1.55;
		text-align: left;
		color: #5d6f82;
	}

	.op-why .op-why-wrap__list .op-item {
		padding: 20px 18px;
	}

	/* Active/hover: red top line only — keep readable gray body text */
	.op-why .op-why-wrap__list .op-item:hover,
	.op-why .op-why-wrap__list .op-item:focus-within {
		background-color: rgba(255, 255, 255, 0.9);
		box-shadow: 0 4px 0 0 #E72D5C inset;
		color: inherit;
	}

	.op-why .op-why-wrap__list .op-item:hover .op-item-content__title,
	.op-why .op-why-wrap__list .op-item:focus-within .op-item-content__title,
	.op-why .op-why-wrap__list .op-item:hover h3.op-item-content__title,
	.op-why .op-why-wrap__list .op-item:focus-within h3.op-item-content__title {
		color: #131313;
	}

	.op-why .op-why-wrap__list .op-item:hover .op-item-content__text,
	.op-why .op-why-wrap__list .op-item:focus-within .op-item-content__text {
		color: #5d6f82;
	}

	/* 5) Local vertical rhythm — modest only */
	.op-how.op-how--home,
	.page-id-13 .op-how.op-how--home {
		padding-bottom: 48px;
	}

	.op-why {
		margin-top: 48px;
	}

	.op-why-wrap {
		padding: 52px 0 48px;
	}

	.op-history-wrap {
		padding: 64px 0 52px;
	}
}

/* ==========================================================================
   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
   ========================================================================== */

.op-history-badge,
.op-history-milestone__icon,
.op-history-cta__arrow,
.op-history-cta__support {
	display: none;
}

/* --------------------------------------------------------------------------
   Mobile + tablet (≤1100): same visual language as desktop,
   keep original swipe timeline (2 items + hand hint)
   -------------------------------------------------------------------------- */
@media (max-width: 1100px) {
	.op-history .op-history-wrap__title {
		color: #092b96;
		font-weight: 700;
	}

	.op-history .op-history-wrap__flex--image {
		position: relative;
	}

	.op-history-badge {
		display: flex;
		align-items: center;
		gap: 10px;
		position: absolute;
		left: 12px;
		bottom: 12px;
		z-index: 2;
		max-width: calc(100% - 24px);
		padding: 10px 14px 10px 10px;
		background: #fff;
		border-radius: 18px;
		border: 1px solid rgba(9, 43, 150, 0.12);
		box-shadow: 0 10px 24px rgba(9, 43, 150, 0.12);
	}

	.op-history-badge__icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 36px;
		width: 36px;
		height: 36px;
		border-radius: 11px;
		background: linear-gradient(135deg, rgba(9, 43, 150, 0.1) 0%, rgba(8, 108, 220, 0.14) 100%);
		color: #092B96;
	}

	.op-history-badge__copy {
		display: flex;
		flex-direction: column;
		gap: 2px;
		min-width: 0;
	}

	.op-history-badge__year {
		font-size: 16px;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		line-height: 1.2;
		background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		-webkit-text-fill-color: transparent;
	}

	.op-history-badge__label {
		font-size: 13px;
		font-weight: 600;
		line-height: 1.35;
		background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		-webkit-text-fill-color: transparent;
	}

	.op-history .op-history-card {
		width: 100%;
		padding: 22px 18px 20px;
		background: #fff;
		border-radius: 20px;
		border: 1px solid rgba(35, 128, 235, 0.12);
		box-shadow: 0 12px 28px rgba(9, 43, 150, 0.07);
		box-sizing: border-box;
	}

	.op-history .op-history-card > .op-ttx {
		color: #5d6f82;
	}

	/* Keep old swipe milestone look — hide desktop icon circles */
	.op-history-milestone__icon {
		display: none !important;
	}

	.op-history .op-history-wrap__flex--content-slider {
		/* keep native horizontal swipe (2 visible) — not desktop timeline */
		margin-top: 18px;
		margin-bottom: 28px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.op-history .op-history-wrap__flex--content-slider .op-item-image {
		display: flex !important;
	}

	.op-history .op-history-wrap__flex--content-slider .op-item-title,
	.op-history .op-history-wrap__flex--content-slider .op-item-year {
		color: #131313;
		font-weight: 700;
	}

	.op-history .op-history-wrap__flex--content-move.op-mob {
		display: block;
		width: fit-content;
		margin-left: auto;
		margin-right: 2px;
	}

	.op-history .op-history-cta {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 14px;
		margin-top: 8px;
		width: 100%;
	}

	/* Kim jesteśmy — same as hero .op-btn (gradient ::after + circle arrow), fit-content */
	.op-history .op-history-cta__btn.op-btn {
		display: inline-flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		width: fit-content !important;
		max-width: 100%;
		min-height: 56px;
		padding: 4px 7px 4px 20px;
		border-radius: 50px;
		background: transparent !important;
		color: #fff;
		text-transform: uppercase;
		font-size: 16px;
		letter-spacing: 0;
		box-shadow: none;
		transform: none;
		overflow: hidden;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}

	.op-history .op-history-cta__btn.op-btn::after {
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
		z-index: -1;
		border-radius: 50px;
		transition: 0.3s;
	}

	.op-history .op-history-cta__btn.op-btn:hover::after,
	.op-history .op-history-cta__btn.op-btn:focus-visible::after {
		opacity: 0.8;
	}

	.op-history-cta__legacy-arrow {
		display: block !important;
		flex: 0 0 auto;
		width: 48px;
		height: 48px;
		padding: 0 !important;
		margin: 0;
		transform-origin: 50% 50%;
		transition: 0.3s;
	}

	.op-history .op-history-cta__btn.op-btn:hover .op-history-cta__legacy-arrow,
	.op-history .op-history-cta__btn.op-btn:focus-visible .op-history-cta__legacy-arrow {
		rotate: 90deg;
	}

	.op-history-cta__arrow {
		display: none !important;
	}

	.op-history-cta__support {
		display: block;
		text-align: center;
		max-width: 280px;
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		line-height: 1.45;
		color: #7a8a9c;
		border: 0;
		padding: 0;
	}
}

@media (min-width: 641px) and (max-width: 1100px) {
	.op-history .op-history-card {
		padding: 28px 26px 24px;
	}

	.op-history-badge {
		left: 16px;
		bottom: 16px;
		padding: 12px 16px 12px 12px;
		border-radius: 20px;
	}
}

@media (min-width: 1101px) {
	.op-history .op-history-wrap {
		padding: 100px 0 110px;
	}

	.op-history .op-history-wrap__title {
		margin-bottom: 14px;
		color: #092b96;
		font-weight: 700;
	}

	.op-history .op-history-wrap__text.op-ttl {
		margin-bottom: 0;
		max-width: 640px;
		color: #5d6f82;
	}

	.op-history .op-history-wrap__flex {
		align-items: stretch;
		justify-content: space-between;
		gap: 36px;
		margin-top: 42px;
	}

	/* LEFT — premium photo */
	.op-history .op-history-wrap__flex--image {
		position: relative;
		flex: 0 0 440px;
		width: 440px;
		max-width: 440px;
		height: auto;
		min-height: 520px;
	}

	.op-history .op-history-wrap__flex--image img {
		display: block;
		width: 100%;
		height: 100%;
		min-height: 520px;
		max-width: none;
		object-fit: cover;
		object-position: 52% 40%;
		border-radius: 22px;
		border: 1px solid rgba(35, 128, 235, 0.14);
		box-shadow: 0 18px 40px rgba(9, 43, 150, 0.1);
	}

	/* Floating badge on photo — year + label from list10 / subtitle10 */
	.op-history-badge {
		display: flex;
		align-items: center;
		gap: 12px;
		position: absolute;
		left: 18px;
		bottom: 18px;
		z-index: 2;
		max-width: calc(100% - 36px);
		padding: 12px 16px 12px 12px;
		background: #fff;
		border-radius: 20px;
		border: 1px solid rgba(9, 43, 150, 0.12);
		box-shadow: 0 12px 28px rgba(9, 43, 150, 0.12);
	}

	.op-history-badge__icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 40px;
		width: 40px;
		height: 40px;
		border-radius: 12px;
		background: linear-gradient(135deg, rgba(9, 43, 150, 0.1) 0%, rgba(8, 108, 220, 0.14) 100%);
		color: #092B96;
	}

	.op-history-badge__copy {
		display: flex;
		flex-direction: column;
		gap: 2px;
		min-width: 0;
	}

	.op-history-badge__year {
		font-size: 17px;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		line-height: 1.2;
		background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		-webkit-text-fill-color: transparent;
	}

	.op-history-badge__label {
		font-size: 14px;
		font-weight: 600;
		line-height: 1.35;
		background: linear-gradient(91.91deg, #092B96 0%, #086CDC 100%);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		-webkit-text-fill-color: transparent;
	}

	/* RIGHT — light content card */
	.op-history .op-history-wrap__flex--content {
		flex: 1 1 auto;
		max-width: calc(100% - 440px - 36px);
		padding-right: 8px;
		box-sizing: border-box;
	}

	.op-history .op-history-card {
		height: 100%;
		display: flex;
		flex-direction: column;
		padding: 36px 40px 32px;
		background: #fff;
		border-radius: 22px;
		border: 1px solid rgba(35, 128, 235, 0.12);
		box-shadow: 0 16px 36px rgba(9, 43, 150, 0.07);
		box-sizing: border-box;
	}

	.op-history .op-history-card > .op-ttx {
		flex: 0 1 auto;
		font-size: 17px;
		line-height: 1.7;
		color: #3a4656;
	}

	.op-history .op-history-card > .op-ttx p {
		margin: 0 0 14px;
		color: inherit;
	}

	.op-history .op-history-card > .op-ttx p:last-child {
		margin-bottom: 0;
	}

	/* Hide mobile-only read-more on desktop */
	.op-history .op-history-read-btn {
		display: none !important;
	}

	/* Timeline: 4 equal stages, 20px side inset */
	.op-history .op-history-wrap__flex--content-slider {
		display: block !important;
		width: 100%;
		margin: 36px 0 12px;
		padding: 0;
		position: relative;
		overflow: visible;
		min-height: 148px;
	}

	/* One continuous rail through all dots (incl. outer halves) */
	.op-history .op-history-wrap__flex--content-slider::before {
		content: "";
		display: block !important;
		position: absolute;
		left: 20px;
		right: 20px;
		top: calc(2.6em + 36px + 11.5px);
		height: 1px;
		background-color: #000;
		opacity: 0.2;
		z-index: 0;
		width: auto;
		transform: none;
		pointer-events: none;
	}

	.op-history .op-history-wrap__flex--content-slider::after {
		display: none !important;
	}

	.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;
	}

	.op-history .op-history-wrap__flex--content-slider .op-wrapper {
		position: absolute;
		top: 0;
		width: max-content;
		max-width: 26%;
		float: none !important;
		flex: none !important;
		min-width: 0;
		z-index: 1;
	}

	.op-history .op-history-wrap__flex--content-slider .op-wrapper:nth-child(1) {
		left: 34px;
		transform: translateX(-50%);
	}

	/* Equal gaps between dot centers, 20px side inset — all centered the same way */
	.op-history .op-history-wrap__flex--content-slider .op-wrapper:nth-child(2) {
		left: calc(34px + (100% - 68px) / 3);
		transform: translateX(-50%);
	}

	.op-history .op-history-wrap__flex--content-slider .op-wrapper:nth-child(3) {
		left: calc(34px + 2 * ((100% - 68px) / 3));
		transform: translateX(-50%);
	}

	.op-history .op-history-wrap__flex--content-slider .op-wrapper:nth-child(4) {
		left: calc(100% - 34px);
		transform: translateX(-50%);
	}

	.op-history .op-history-wrap__flex--content-slider .op-item {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 0;
		margin: 0;
		padding: 0;
		background: transparent;
		border: 0;
		box-shadow: none;
		width: auto;
		position: relative;
	}

	/* Hide redesign icons — use original history.svg dots */
	.op-history-milestone__icon {
		display: none !important;
	}

	/* Same fixed title box + centered for every stage */
	.op-history .op-history-wrap__flex--content-slider .op-item-title {
		order: 0;
		box-sizing: border-box;
		width: max-content;
		max-width: 140px;
		height: 2.6em;
		min-height: 2.6em;
		margin: 0 auto;
		padding: 0;
		font-size: 17px;
		font-weight: 700;
		line-height: 1.3;
		color: #131313;
		display: flex;
		align-items: flex-end;
		justify-content: center;
		text-align: center;
	}

	.op-history .op-history-wrap__flex--content-slider .op-item-image {
		display: flex !important;
		align-items: center;
		justify-content: center;
		align-self: center;
		order: 1;
		position: relative;
		width: 28px;
		height: 28px;
		margin: 36px auto 14px;
		flex-shrink: 0;
		z-index: 1;
	}

	.op-history .op-history-wrap__flex--content-slider .op-item-image img {
		display: block;
		width: 28px;
		height: 28px;
		position: relative;
		z-index: 2;
	}

	/* Vertical tick from title down to the dot */
	.op-history .op-history-wrap__flex--content-slider .op-item-image::after {
		content: "";
		display: block;
		width: 1px;
		height: 28px;
		position: absolute;
		left: 50%;
		top: -32px;
		transform: translateX(-50%);
		background-color: #000;
		opacity: 0.2;
		z-index: 0;
	}

	/* No per-item connectors — one continuous ::before on slider */
	.op-history .op-history-wrap__flex--content-slider .op-item-image::before {
		display: none !important;
		content: none !important;
	}

	.op-history .op-history-wrap__flex--content-slider .op-item::before,
	.op-history .op-history-wrap__flex--content-slider .op-item::after {
		content: none !important;
		display: none !important;
		border: 0 !important;
	}

	.op-history .op-history-wrap__flex--content-slider .op-item-year {
		order: 2;
		font-size: 15px;
		font-weight: 700;
		color: #131313;
		line-height: 1.3;
		margin: 0;
		height: auto;
		text-align: center;
	}

	/* CTA — hero .op-btn look */
	.op-history .op-history-cta {
		display: flex;
		align-items: center;
		gap: 20px;
		margin-top: auto;
		padding-top: 28px;
	}

	.op-history .op-history-cta__btn.op-btn {
		display: inline-flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		width: fit-content !important;
		max-width: 100%;
		min-height: 56px;
		padding: 4px 7px 4px 20px;
		border-radius: 50px;
		background: transparent !important;
		color: #fff;
		text-transform: uppercase;
		font-size: 16px;
		letter-spacing: 0;
		box-shadow: none;
		transform: none;
	}

	.op-history .op-history-cta__btn.op-btn::after {
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		background: linear-gradient(91.91deg, #092b96 0, #086cdc 100%);
		z-index: -1;
		border-radius: 50px;
		transition: 0.3s;
	}

	.op-history .op-history-cta__btn.op-btn:hover::after,
	.op-history .op-history-cta__btn.op-btn:focus-visible::after {
		opacity: 0.8;
	}

	.op-history .op-history-cta__btn.op-btn svg:not(.op-history-cta__arrow svg) {
		display: block;
	}

	.op-history-cta__legacy-arrow {
		display: block !important;
		flex: 0 0 auto;
		width: 48px;
		height: 48px;
		padding: 0 !important;
		margin: 0;
		transform-origin: 50% 50%;
		transition: 0.3s;
	}

	.op-history .op-history-cta__btn.op-btn:hover .op-history-cta__legacy-arrow,
	.op-history .op-history-cta__btn.op-btn:focus-visible .op-history-cta__legacy-arrow {
		rotate: 90deg;
	}

	.op-history-cta__arrow {
		display: none !important;
	}

	.op-history-cta__support {
		display: block;
		max-width: 180px;
		padding-left: 18px;
		border-left: 1px solid rgba(35, 128, 235, 0.2);
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		line-height: 1.45;
		color: #7a8a9c;
	}
}

/* History + hero .op-btn: stable mobile tap (no sticky-hover rotate jump) */
@media (max-width: 1100px) {
	.op-history .op-history-cta__btn.op-btn {
		overflow: hidden;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
		gap: 10px !important;
		padding: 4px 7px 4px 20px !important;
	}

	.op-history .op-history-cta__btn.op-btn .op-history-cta__legacy-arrow,
	.op-history-wrap__flex--content-more .op-history-cta__legacy-arrow,
	.op-history-wrap__flex--content-more > .op-btn > svg {
		padding: 0 !important;
		margin: 0 !important;
		flex: 0 0 48px;
		width: 48px !important;
		height: 48px !important;
		max-width: 48px;
		transform-origin: 50% 50%;
		transition: transform 0.3s ease, rotate 0.3s ease;
	}

	/* Same as hero .op-btn: arrow points down on press */
	.op-history .op-history-cta__btn.op-btn:active .op-history-cta__legacy-arrow,
	.op-history .op-history-cta__btn.op-btn:focus-visible .op-history-cta__legacy-arrow,
	.op-history-wrap__flex--content-more > .op-btn:active > svg,
	.op-history-wrap__flex--content-more > .op-btn:focus-visible > svg {
		rotate: 90deg;
	}
}

@media (hover: none), (pointer: coarse) {
	/* Kill sticky iOS :hover so the arrow does not stay rotated after tap */
	.op-btn:hover svg,
	.op-history .op-history-cta__btn.op-btn:hover .op-history-cta__legacy-arrow {
		rotate: none;
		transform: none;
	}

	/* Press / keyboard still rotate like desktop hover / hero */
	.op-btn:active svg,
	.op-btn:focus-visible svg,
	.op-history .op-history-cta__btn.op-btn:active .op-history-cta__legacy-arrow,
	.op-history .op-history-cta__btn.op-btn:focus-visible .op-history-cta__legacy-arrow {
		rotate: 90deg !important;
	}

	.op-btn:active::after,
	.op-history .op-history-cta__btn.op-btn:active::after {
		opacity: 0.88;
	}
}

@media (min-width: 1440px) {
	.op-history .op-history-wrap__flex {
		gap: 44px;
	}

	.op-history .op-history-wrap__flex--image {
		flex-basis: 480px;
		width: 480px;
		max-width: 480px;
	}

	.op-history .op-history-wrap__flex--content {
		max-width: calc(100% - 480px - 44px);
	}

	.op-history .op-history-card {
		padding: 40px 44px 36px;
	}
}

/* =========================================
 * 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;
	}

	.op-hero-wrap > .op-hero-wrap__content > h1:first-child,
	.op-hero-wrap h1:first-of-type {
		scroll-margin-top: 0;
	}
}

@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 */

.op-company-wrap__list .op-item-top h3.op-item-top__title {
	display: block;
	margin: 0;
	padding: 0;
	font-family: inherit;
	font-style: normal;
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: normal;
	text-transform: none;
	color: inherit;
}

/* 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"],
.op-consultation-wrap__title span[style*="color"],
.op-consultation-wrap__title span[style*="Color"],
.op-clients-wrap__title span[style*="color"],
.op-clients-wrap__title span[style*="Color"],
.op-how-wrap__title span[style*="color"],
.op-how-wrap__title span[style*="Color"],
.op-history-wrap__title,
.op-history .op-history-wrap__title {
	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 */
.op-for-wrap__title span[style*="color"],
.op-for-wrap__title span[style*="Color"] {
	background: none !important;
	-webkit-background-clip: border-box !important;
	background-clip: border-box !important;
	-webkit-text-fill-color: unset !important;
	color: #2380eb !important;
}

/* Consultation H2: only accent span is brand-colored (parent was solid blue) */
.op-consultation-wrap__title {
	color: #131313 !important;
}

/* About page: solid blue title accents → same gradient as home hero */

.op-about-page .op-clients-wrap__title span,
.op-about-page .op-clients-reviews__title span,
.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 */
.op-consultation-wrap__list .op-item-title {
	display: block;
	margin: 0 0 38px;
	padding: 0;
	font-family: inherit;
	font-style: normal;
	font-weight: 700;
	font-size: clamp(1.375rem, calc(1.2280564263rem + 0.0062695925 * 100vw), 1.75rem);
	line-height: 1.25;
	letter-spacing: normal;
	text-transform: none;
	color: inherit;
	max-width: 361px;
}
.op-consultation-wrap__list .op-item-title__heading {
	display: inline;
	margin: 0;
	padding: 0;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	color: inherit;
	line-height: inherit;
}
@media (max-width: 640px) {
	.op-consultation-wrap__list .op-item-title {
		margin-bottom: 30px;
	}
}

/* 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;
	}
}

/* === home CF7 modal patch (purged from style.css; keep for lazy modals) === */
.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: -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 .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 p {
    margin-bottom: 10px;
    display: block;
}

/* === article paragraph reveal patch === */
@media (prefers-reduced-motion: no-preference) {
  .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;
  }
}
