html {
    height: auto !important;
    margin-top: 0 !important;
}

body {
    font-family: "Geologica", sans-serif;
    font-weight: 400;
    font-size: 16px;
    overflow-x: hidden;
    min-height: 100vh !important;
    background-color: white;
}

*, ::after, ::before {
    box-sizing: border-box;
}

h1 {
    margin: 0 !important;
}


button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    outline: none;
}

w-100 {
    width: 100%;
}

a {
    outline: none !important;
    text-decoration: none;
}

a:hover {
    text-decoration: none;
    color: inherit;
}

b, strong {
    font-weight: bold;
}

p {
    margin-bottom: 0
}

input:focus,
textarea:focus,
select:focus {
    outline: none;
}

.overflow {
    overflow: hidden;
}

.main--wrapper {
    overflow-x: hidden;
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}

input {
    filter: none;
    outline: none;
}

input:focus, textarea:focus {
    border: none;
    outline: none;
}

a:focus, a:active, button:active, button:focus {
    outline: none !important;
}

.no-padding-right {
    padding-right: 0;
}

.no-padding-left {
    padding-left: 0;
}

.no-padding {
    padding-left: 0;
    padding-right: 0;
}

.hidden {
    display: none !important;
}

ul {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.header-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}

.header {
    background: white;
    box-shadow: 0px 1px 6px 0px #0000001A;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 40px;
    display: flex;
    flex-direction: column;
}

.header-top {
    display: flex;
    min-height: 80px;
    padding: 5px;
    padding-left: 30px;
    align-items: center;
}

.header .logo {
    padding-right: 46px;
}

.menu ul {
    display: flex;
    align-items: center;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu li {
    flex: 1;
    text-align: center;
    position: relative;
}


.menu li:nth-child(3) {
    margin-right: 10px;
}


.menu li:nth-child(3)::after {
    content: "";
    position: absolute;
    top: 0;
    right: -10px;
    bottom: 0;
    width: 1px;
    background: #ccc;
}

.menu a {
    display: flex;
    text-decoration: none;
    align-items: center;
    font-weight: 700;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 5%;
    text-transform: uppercase;
    color: #1F3D83;
    border-radius: 5px;
    transition: all .25s ease-in-out;
}

.menu-company a, .menu-services a, .menu-persey a {
    padding: 13px 20px;
}

.menu-services a .svg, .menu-persey a .svg {
    fill: #1F3D83;
    margin-left: 8px;
}

.menu-company a:hover, .menu-services a:hover, .menu-persey a:hover {
    background: #1F3D83;
    color: white;
}

.menu-services a:hover .svg, .menu-persey a:hover .svg {
    fill: white;
    transition: all .25s ease-in-out;
}

.menu-cabinet a {
    display: flex;
    text-decoration: none;
    align-items: center;
    font-weight: 700;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 5%;
    text-transform: uppercase;
    color: #097CBF;
    border-radius: 5px;
    padding: 10px 25px;
    transition: all .25s ease-in-out;
}

.menu-cabinet a .svg {
    order: -1;
    fill: #097CBF;
    margin-right: 15px;
}

.menu-cabinet a:hover {
    background: #097CBF;
    color: white;
    transition: all .25s ease-in-out;
}

.menu-cabinet a:hover .svg {
    fill: white;
}

.phone-lang {
    display: flex;
    border-top-left-radius: 10px;
    border-bottom-right-radius: 10px;
    background-color: #36BDA4;
    height: 70px;
    margin-left: auto;
}

.phone-lang .phone {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 25px;
    padding-right: 30px;
    position: relative;
}

.phone-lang .phone:before {
    content: '';
    width: 1px;
    height: 40px;
    right: 0;
    top: 15px;
    position: absolute;
    background: white;
}

.phone-lang .phone a {
    color: white;
    font-weight: 400;
    line-height: 1.2;
}


.phone-lang .phone a:first-child {
    margin-bottom: 5px;
}


.submenu-wrapper {
    display: none;
    padding: 10px 40px 40px;
}

.phone-lang .lang {
    padding-left: 10px;
    padding-right: 14px;
    display: flex;
    align-items: center;
}

.lang-dropdown {
    position: relative;
    display: inline-block;
}

.phone-lang .lang img {
    margin-right: 5px;
}

.lang-current {
    background: transparent;
    padding: 10px 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    border: none;
    color: white;
    font-weight: 500;
    text-transform: uppercase;
    border-radius: 5px;
    transition: all .25s ease-in-out;
}


.lang-current:hover, .lang-dropdown.open .lang-current {
    background: white;
    color: #097CBF;
}

.lang-current:hover .arrow .svg, .lang-dropdown.open .lang-current .arrow .svg {
    fill: #097CBF;
    transition: all .25s ease-in-out;
}

.lang-dropdown.open .lang-current .arrow .svg {
    rotate: 180deg;
}

.lang-current .arrow {
    margin-left: 10px;
    position: relative;
    top: -1px;
}

.lang-current .arrow .svg {
    fill: white;
}

.lang-dropdown.open .lang-current {
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}

.lang-list {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    list-style: none;
    padding: 0;
    margin: 0;
    min-width: 100%;
    z-index: 10;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}

.lang-list li a {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    text-decoration: none;
    color: #097CBF;
    text-transform: uppercase;
    font-weight: 500;
}

.lang-list li:first-child {
    border-top: 1px solid #f3f4f6;
    border-bottom: 1px solid #f3f4f6;
}


.lang-dropdown.open .lang-list {
    display: block;
}

.sub-menu {
    display: grid;
    grid-template-columns: repeat(3, auto);
    gap: 20px;
}

.menu-service-item a {
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 437px;
    margin-bottom: 2px;
    padding: 30px 20px 30px 30px;
    transition: all .25s ease-in-out;
}

.menu-service-item:last-child a {
    margin-bottom: 0;
}

.menu-service-item a {
    background: #F3F4F6;
}

.menu-service-item .name {
    font-family: Geologica;
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    color: #101B35;
}

.menu-service-item .arrow {
    display: none;
}

.menu-service-item:hover a {
    border-bottom-right-radius: 20px;
}


.menu-service-item:hover img {
    display: none;
}

.menu-service-item:hover .arrow {
    display: block;
}

.companies .menu-service-item:hover a {
    background: #097CBF;
}

.companies .menu-service-item:hover .name {
    color: white;
}

.individuals .menu-service-item:hover a {
    background: #36BDA4;
}

.individuals .menu-service-item:hover .name {
    color: white;
}

.companies .title {
    margin-left: 5px;
    display: flex;
    align-items: center;
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #097CBF;
    padding-bottom: 20px;
}

.individuals .title {
    margin-left: 5px;
    display: flex;
    align-items: center;
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #36BDA4;
    padding-bottom: 20px;
}

.companies .title .svg, .individuals .title .svg {
    margin-right: 20px;
}

.menu-service-decs {
    padding-top: 48px;
    padding-left: 20px;
}

.menu-service-decs .title {
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    padding-bottom: 20px;
    color: #101B35;
}

.menu-service-decs .text {
    font-weight: 200;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0%;
    color: #595C61;
    padding-bottom: 40px;
}

/* Buttons */

.btn-outline-blue {
    padding: 20px 10px;
    display: inline-flex;
    align-items: center;
    font-weight: 700;
    justify-content: center;
    border-radius: 10px;
    border: 2px solid #097CBF;
    color: #097CBF;
    text-transform: uppercase;
    max-height: 64px;
    min-width: 213px;
    background: white;
    transition: all .25s ease-in-out;
}

.btn-outline-blue .svg {
    margin-left: 20px;
    fill: #097CBF;
}

.btn-outline-blue:hover {
    color: white;
    background: #097CBF;
}

.btn-outline-blue:hover .svg {
    fill: white;
}

.btn-outline-white {
    padding: 20px 10px;
    display: inline-flex;
    align-items: center;
    font-weight: 700;
    justify-content: center;
    border-radius: 10px;
    border: 2px solid white;
    color: white;
    text-transform: uppercase;
    max-height: 64px;
    background: transparent;
    min-width: 213px;
    transition: all .25s ease-in-out;
}

.btn-outline-white .svg {
    margin-left: 20px;
    fill: white;
}

.btn-outline-white:hover {
    color: #097CBF;
    background: white;
}

.btn-outline-white:hover .svg {
    fill: #097CBF;
}

.btn-blue {
    padding: 20px 30px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    background-color: #097CBF;
    height: 64px;
    border-radius: 10px;
    border: none;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 5%;
    text-transform: uppercase;
    transition: all .25s ease-in-out;
}

.btn-blue:hover {
    background-color: #1F3D83;
    color: white;
}


/* ----------------- Buttons ------------------------------------- */

.menu-service-item .arrow {
    fill: white;
}

.sub-menu.persey {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding-top: 30px;
}

.sub-menu.persey .column-1 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.sub-menu.persey .menu-persey-decs {
    padding-left: 20px;
}

.menu-persey-item {
    width: 285px;
    background: #F3F4F6;
    padding: 20px;
    border: 1px solid #F3F4F6;
}

.menu-persey-item .img {
    width: 100%;
    height: 145px;
    border-top-right-radius: 20px;
}

.menu-persey-item .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-top-right-radius: 20px;
}

.menu-persey-item .title {
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    letter-spacing: -3%;
    padding: 10px 0;
    color: #101B35;
}


.menu-persey-item .text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #595C61;
    font-weight: 200;
    font-style: ExtraLight;
    font-size: 16px;
    margin-bottom: 25px;
}

.menu-persey-item:hover {
    background: white;
    border: 1px solid #D4D7DD;
}

.menu-persey-item .logo-arrow {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.menu-persey-item .logo {
    padding-right: 0;
}


.menu-persey-item:hover .arrow {
    display: block;
}

.menu-persey-decs .logo {
    padding-bottom: 20px;
}

.menu-persey-decs .text {
    font-weight: 200;
    font-style: ExtraLight;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0%;
    color: #595C61;
    padding-bottom: 28px;
}

.menu-persey-item .arrow {
    fill: #097CBF;
    position: relative;
    top: 5px;
    display: none;
}

.banner {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 700px;
}

.banner .img img,
.banner video {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    object-fit: cover;
    object-position: bottom center;
}

.banner .container {
    position: relative;
    z-index: 99;
    padding-top: 130px;
}

.banner-title {
    font-weight: 400;
    font-size: 105px;
    line-height: 111px;
    letter-spacing: -3%;
    color: white;
    padding-top: 30px;
    width: 760px;
}

.banner-title span {
    display: block;
    color: #36BDA4;
}

.wpcf7-spinner {
    display: none !important;
}

.contact-form {
    max-width: 377px;
    width: 100%;
    border-radius: 10px;
    border: 2px solid white;
    padding: 30px 20px 20px;
    margin-left: auto;
}


.contact-form .logo {
    padding-bottom: 10px;
}

.contact-form .logo img {
    max-width: 100%;
}

.contact-form label {
    font-weight: 300;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 7%;
    color: rgba(255, 255, 255, 0.5);
    text-transform: uppercase;
    padding-bottom: 6.5px;
}


.contact-form .submit {
    padding-top: 7px;
}

.contact-form .submit p {
    padding-bottom: 0;
}

.contact-form input {
    height: 44px;
    display: flex;
    align-items: center;
    color: white;
    font-weight: 300;
    font-style: Light;
    font-size: 17px;
    line-height: 1;
    letter-spacing: 0%;
    background: transparent;
    border: none;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.contact-form input:hover {
    background: rgba(255, 255, 255, 0.1);
}

.contact-form input[type="submit"] {
    padding: 20px 30px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    background-color: #097CBF;
    height: 64px;
    border-radius: 10px;
    border: none;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 5%;
    text-transform: uppercase;
    transition: all .25s ease-in-out;
}


.contact-form input[type="submit"]:hover {
    background-color: #1F3D83 !important;
}


/* Скрываем настоящий select, но он нужен для отправки формы */
.wpcf7 select {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Кастомный контейнер */
.custom-select-wrapper {
    position: relative;
    width: 100%;
}

.custom-select-trigger {
    cursor: pointer;
    position: relative;
    height: 44px;
    display: flex;
    align-items: center;
    color: white;
    font-weight: 300;
    font-style: Light;
    font-size: 17px;
    line-height: 1;
    letter-spacing: 0%;
    background: transparent;
    border: none;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.custom-select-trigger:hover {
    background: rgba(255, 255, 255, 0.1);
}


.custom-select-trigger::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    width: 15px;
    height: 9px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='15' height='9' viewBox='0 0 15 9' fill='none'><path d='M12.657 0.516192C12.985 0.181452 13.5167 0.181452 13.8448 0.516192C14.1728 0.850933 14.1728 1.39353 13.8448 1.72827L7.68473 8.01408C7.35669 8.34882 6.82495 8.34882 6.49691 8.01408L0.336853 1.72827C0.00880947 1.39353 0.00880947 0.850933 0.336853 0.516192C0.664896 0.181452 1.19663 0.181452 1.52468 0.516192L7.09082 6.19597L12.657 0.516192Z' fill='white'/></svg>");
    background-repeat: no-repeat;
    background-size: contain;
    transform: translateY(-50%);
}

body:not(.home) .custom-select-trigger::after {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDE0IDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMi41NjYxIDAuMjUxMDU2QzEyLjg5NDIgLTAuMDgzNjg1MiAxMy40MjU5IC0wLjA4MzY4NTIgMTMuNzU0IDAuMjUxMDU2QzE0LjA4MiAwLjU4NTc5NiAxNC4wODIgMS4xMjgzOSAxMy43NTQgMS40NjMxM0w3LjU5MzkxIDcuNzQ4OTRDNy4yNjU4NyA4LjA4MzY4IDYuNzM0MTMgOC4wODM2OCA2LjQwNjA5IDcuNzQ4OTRMMC4yNDYwMzMgMS40NjMxM0MtMC4wODIwMTA4IDEuMTI4MzkgLTAuMDgyMDEwOCAwLjU4NTc5NiAwLjI0NjAzMyAwLjI1MTA1NkMwLjU3NDA3NiAtMC4wODM2ODUyIDEuMTA1ODEgLTAuMDgzNjg1MiAxLjQzMzg2IDAuMjUxMDU2TDcgNS45MzA4M0wxMi41NjYxIDAuMjUxMDU2WiIgZmlsbD0iIzEwMUIzNSIvPgo8L3N2Zz4K");
}

.custom-select-wrapper.open .custom-select-trigger::after {
    transform: translateY(-50%) rotate(180deg);
}

.custom-options {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s ease;
    z-index: 100;
    box-shadow: 0px 1px 6px 0px #0000001A;
}

.custom-select-wrapper.open .custom-options {
    opacity: 1;
    pointer-events: auto;
}


.custom-option {
    padding: 20px;
    cursor: pointer;
    height: 60px;
    background: white;
    font-weight: 300;
    font-size: 17px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #101B35;
    border-bottom: 1px solid #F3F4F6;
    position: relative;
}

.custom-option.selected:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    width: 12px;
    height: 9px;
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%229%22%20viewBox%3D%220%200%2012%209%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M10.3821%200.51961C10.7101%200.184869%2011.2418%200.184869%2011.5699%200.51961C11.8979%200.854351%2011.8979%201.39694%2011.5699%201.73168L5.40983%208.0175C5.08179%208.35224%204.55005%208.35224%204.22201%208.0175L1.06195%204.73168C0.733907%204.39694%200.733907%203.85435%201.06195%203.51961C1.38999%203.18487%201.92173%203.18487%202.24977%203.51961L4.81592%206.19939L10.3821%200.51961Z%22%20fill%3D%22%2336BDA4%22/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    transform: translateY(-50%);
}


.custom-option:last-child {
    border-bottom: none;
}

.custom-select-wrapper.error .custom-select-trigger {
    border-color: red;
}

.advantages {
    padding: 60px 0;
}

.advantage-box {
    text-align: center;
    border-right: 1px solid #E9EBEF;
    padding: 0 20px;
}

.advantage-box.last {
    border-right: none;
}

.advantage-box .icon--title {
    font-weight: 500;
    font-size: 50px;
    line-height: 0.9;
    color: #1F3D83;
    padding-bottom: 20px;
}

.advantage-box .icon--title img {
    position: relative;
    top: -6px;
    margin-right: 4px;
}

.advantage-box .text {
    font-weight: 200;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
    color: #595C61;
}

.cards {
    padding-bottom: 40px;
}

.cards .container .row {
    margin-bottom: 20px;
}

.card {
    border: none;
    min-height: 400px;
    border-radius: 0 40px 0 0;
    padding: 40px;
    height: 100%;
}

.card .title-icon {
    display: flex;
    align-items: center;
    padding-bottom: 20px;
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: white;
}

.card .title-icon .icon {
    display: flex;
    margin-right: 20px;
}

.card.for_companies {
    background: #097CBF;
}

.card.for_individuals {
    background: #36BDA4;
}

.card.persey_plus, .card.persey_club {
    background: #F3F4F6;
    border-radius: 0;
}

.card .bottom {
    margin-top: auto;
}

.card.for_companies .text, .card.for_individuals .text {
    font-weight: 200;
    font-style: ExtraLight;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #FFFFFF;
}

.card.persey_plus .title-icon, .card.persey_club .title-icon {
    color: #101B35;
    padding-bottom: 40px;
}

.card.persey_plus .text {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #595C61;
}

.card.persey_club .image-text {
    display: flex;
}

.card.persey_club .text {
    font-weight: 200;
    font-style: ExtraLight;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #595C61;
    margin-left: 40px;
}

/*.card.persey_club .text a {*/
/*    color: #097CBF;*/
/*    font-weight: 200;*/
/*    font-size: 16px;*/
/*    line-height: 28px;*/
/*    letter-spacing: 0%;*/
/*    padding-top: 20px;*/
/*    display: block;*/
/*}*/

.slider-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    gap: 162px;
}


.slick-dots {
    display: flex !important;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.slick-dots li button {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #D4D7DD;
    border: none;
    font-size: 0;
    line-height: 0;
    text-indent: -9999px; /* скрываем текст */
    overflow: hidden;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.slick-dots li.slick-active button {
    background: #1F3D83;
}

.slick-list {
    margin: 0 -10px;
}

.reviews-slider .review-card {
    margin: 0 10px;
    background: #E8F7FF;
    border-radius: 40px;
    border-bottom-left-radius: 0;
    padding: 40px;
}

.reviews-slider .slick-track {
    align-items: center;
    display: flex;
}

.review-header {
    display: flex;
    align-items: center;
}

.review-header img {
    border-radius: 50%;
    margin-left: auto;
    width: 70px;
    height: 70px;
    object-fit: cover;
    display: block;
    border: 3px solid #FFFFFF;
}

.review-name {
    font-weight: 600;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #101B35;
}

.review-position {
    font-weight: 200;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #101B35;
}

.review-text {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #595C61;
    padding: 10px 0;
}

.review-card .read-more {
    font-weight: 200;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #097CBF;
    cursor: pointer;
}

.review-card .read-more:hover {
    color: #1F3D83;
}

#popup {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.3);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

#popup.show {
    opacity: 1;
    visibility: visible;
    z-index: 999;
    padding: 0 20px;
}

#popup .popup-content {
    background: #fff;
    padding: 40px;
    max-width: 600px;
    box-shadow: 0px 0px 26px 0px #101B351A;
    position: relative;
    border-radius: 40px;
    border-bottom-left-radius: 0;
}

#popup-stars {
    padding-bottom: 20px;
}

#popup-text {
    padding: 0;
}

#popup-text p {
    margin-bottom: 28px;
}

#popup-text p:last-child {
    margin-bottom: 0;
}

#popup .review-header img {
    margin-left: 0;
    margin-right: 20px;
}

#popup .review-header {
    padding-bottom: 20px;
}

.popup-content button {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 31px;
    height: 31px;
    border: none;
    background: none;
}

.popup-content button svg {
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.3s ease; /* плавность */
}

.popup-content button .close {
    opacity: 1;
}

.popup-content button .close-hover {
    opacity: 0;
}

.popup-content button:hover .close {
    opacity: 0;
}

.popup-content button:hover .close-hover {
    opacity: 1;
}

.reviews .slider-controls {
    padding-top: 40px;
    padding-bottom: 63px;
}

.slick-arrow {
    background: none;
    width: 37px;
    height: 16px;
    border: none;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.slick-dots li {
    display: flex;
    list-style: none;
}

.slick-dots li button {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #D4D7DD;
    border: none;
    padding: 0;
    margin: 0;
    display: block;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    box-sizing: border-box;
    text-indent: -9999px;
    overflow: hidden;
    line-height: 1;
}

.cabinet {
    height: 490px;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 60px;
}

.cabinet .content {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    color: white;
    align-items: flex-start;
    max-width: 550px;
}

.cabinet .content .title {
    font-weight: 500;
    font-size: 70px;
    line-height: 76px;
    letter-spacing: -3%;
    padding-bottom: 20px;
}

.cabinet .content .text {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    padding-bottom: 78px;
    color: white;
}

.cabinet .content a {
    min-width: 226px;
}

.cabinet .image {
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.cabinet .image img {
    width: 658px;
    right: -36px;
    position: relative
}

.tabs-inner .ui-tabs-nav {
    display: flex;
    flex-direction: column;
}

.tabs .top {
    border-bottom: 1px solid #D4D7DD;
    display: flex;
    justify-content: center;
}

.tabs .top li a {
    height: 63px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 5%;
    text-transform: uppercase;
    padding: 0 40px;
    color: #097CBF;
    border-top: 1px solid #D4D7DD;
    border-left: 1px solid #D4D7DD;
    border-right: 1px solid #D4D7DD;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #F3F4F6;
    position: relative;
}

.tabs .top li:hover a {
    background: white;
}

.tabs .top li:hover a:before {
    background: #F3F4F6;
}


.tabs .top li .svg {
    margin-right: 20px;
}

.tabs .top li:first-child {
    position: relative;
    right: -1px;
}

.tabs .top li:first-child a {
    color: #097CBF;
}

.tabs .top li:last-child a {
    color: #36BDA4;
}


.tabs .top .ui-state-active a {
    background: white;
}

.tabs .top .ui-state-active a:before {
    content: '';
    width: 100%;
    height: 1px;
    background: white;
    position: absolute;
    bottom: -1px;
}


.tabs .top {
    margin-bottom: 40px;
}

.tabs-inner .ui-tabs-nav a {
    height: 102px;
    display: grid;
    grid-template-columns: 1fr 50px;
    text-decoration: none;
    gap: 10px;
    background: #F3F4F6;
    padding: 0 40px 0 37px;
    margin-bottom: 2px;
    font-weight: 500;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #101B35;
    border-left: 3px solid #F3F4F6;
    align-items: center;
    transition: all .25s ease-in-out;
}

.tabs-inner .name {
    text-align: left;
}

.tabs-inner img,
.tabs-inner svg {
    justify-self: end;
}

.tabs-inner .ui-tabs-nav svg {
    fill: white;
    display: none;
}


.tabs-inner .ui-tabs-nav a:hover {
    border-bottom-right-radius: 20px;
}

#tabs-1 .ui-state-active a {
    border-left: 3px solid #097CBF;
    background: white;
    pointer-events: none;
}

#tabs-2 .ui-state-active a {
    border-left: 3px solid #36BDA4;
    background: white;
    pointer-events: none;
}

#tabs-1 .ui-tabs-nav a:hover {
    border-left: 3px solid #097CBF;
    background: #097CBF;
    color: white;
}

#tabs-2 .ui-tabs-nav a:hover {
    border-left: 3px solid #36BDA4;
    background: #36BDA4;
    color: white;
}

#tabs-1 .ui-tabs-nav a:hover img, #tabs-2 .ui-tabs-nav a:hover img {
    display: none;
}

#tabs-1 .ui-tabs-nav a:hover svg, #tabs-2 .ui-tabs-nav a:hover svg {
    display: block;
}

.tab-content {
    display: grid;
    grid-template-columns: 1fr 250px;
    gap: 20px;
    padding: 40px 0 40px 40px;
}

.tab-content .tab-content-left {
    padding-right: 80px;
}

.tab-content-title {
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: #101B35;
    padding-bottom: 40px;
}

.tab-content-text p {
    color: #595C61;
    font-weight: 200;
    font-style: ExtraLight;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    padding-bottom: 40px;
}

.tab-content-text p:last-child {
    padding-bottom: 0;
}

.tab-content-image, .tab-content-image img {
    border-radius: 40px;
    border-bottom-left-radius: 0;
}

.tab-content-image {
    padding-bottom: 40px;
}

.blog {
    padding-top: 70px;
}

.news-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px 20px;
    grid-auto-flow: dense;
}

.news-card {
    display: flex;
    flex-direction: column;
    position: relative;
}

.news-card .image {
    border-bottom-right-radius: 40px;
    position: relative;
}

.news-card .logo {
    position: absolute;
    top: 0;
    left: 0;
    height: 40px;
    background: white;
    align-items: center;
    display: flex;
    z-index: 2;
    padding: 10px;
    border-bottom-right-radius: 10px;
    max-width: 40px;
    overflow: hidden;
    transition: max-width .5s ease-in-out;
}

.news-card img {
    width: 100%;
    object-fit: cover;
    display: block;
    border-bottom-right-radius: 40px;
    transition: all .3s ease-in-out;
}

.news-card .title {
    min-height: 63px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 25px;
    line-height: 100%;
    letter-spacing: -3%;
    color: #101B35;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: calc(1 * 2);
    transition: all .3s ease-in-out;
}

.news-card.big {
    grid-row: span 2;
}

.news-card.big.left {
    grid-column: 1 / 2;
}

.news-card.big.right {
    grid-column: 3 / 4;
}

.news-card .meta {
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    color: #595C61;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.news-card .meta .svg {
    margin-right: 16px;
    position: relative;
    top: -1px;
}

.news-card:hover .title {
    color: #097CBF;
}

.news-card:hover img {
    opacity: 0.4;
    transition: all .3s ease-in-out;
}

.news-card:hover .logo {
    max-width: 200px;
}

.blog-title-arrow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 40px;
}

.blog-title-arrow .title {
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: #101B35;
}

.footer {
    margin-top: 60px;
    border-top: 10px solid transparent;
    border-image: linear-gradient(0deg, #FFFFFF 0%, #F4F4F4 100%);
    border-image-slice: 1;
}

.footer-top {
    padding-top: 40px;
    padding-bottom: 40px;
}

.footer-menus {
    display: grid;
    grid-template-columns: repeat(3, auto);
    column-gap: 45px;
}

.footer-menus .menu-title a {
    padding-bottom: 20px;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #097CBF;
    display: block;
}

.footer-menus li {
    padding-bottom: 20px;
}

.footer-menus ul li:last-child {
    padding-bottom: 0;
}

.footer-menus li a {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    padding-bottom: 20px;
    color: #097CBF;
}

.footer-menus li a:hover {
    color: #1F3D83;
}

.footer-middle {
    border-top: 1px solid #E9EBEF;
    border-bottom: 1px solid #E9EBEF;
    padding: 20px 0;
    display: flex;
    align-items: center;
}

.footer .link-round {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    width: 50px;
    border-radius: 50%;
    background: #F3F4F6;
    transition: all .25s ease-in-out;
}

.footer .link-round .svg {
    transition: all .25s ease-in-out;
    fill: #097CBF;
}

.footer .link-round:hover {
    background: #097CBF;
}

.footer .link-round:hover .svg {
    fill: white;
}

.footer-tel {
    display: flex;
    align-items: center;
    border-right: 1px solid #E9EBEF;
    flex-shrink: 0;
}

.footer-tel .tels {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-left: 20px;
    margin-right: 40px;
}

.footer-tel .tels a {
    font-weight: 500;
    font-size: 17px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #097CBF;
    padding: 3px 0;
}

.footer-soc {
    display: flex;
    align-items: center;
    padding-left: 40px;
    padding-right: 20px;
    border-right: 1px solid #E9EBEF;
}

.footer-soc .link-round {
    margin-right: 20px;
}

.footer-contact {
    display: flex;
    align-items: center;
    padding-left: 40px;
    width: 100%;
}

.footer-contact .link-round {
    margin-right: 20px;
}

.footer-contact .button {
    margin-left: auto;
}

.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 40px 0;
}

.footer-bottom-menu ul {
    display: flex;
}

.footer-bottom-menu ul li {
    padding-right: 40px;
}

.footer-bottom-menu ul li a {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #097CBF;
}

.footer-bottom-menu ul li a:hover {
    color: #1F3D83;
}

.footer-bottom .copy {
    color: #D4D7DD;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-style: Medium;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
}

.page-template-for-companies .banner-top {
    background-image: url("../images/bg_fc.jpg");
    background-size: cover;
    background-position: center bottom;
}

.page-template-for-individuals .banner-top {
    background-image: url("../images/bg_fi.jpg");
    background-size: cover;
    background-position: center bottom;
}

.banner-top {
    height: 700px;
    padding-top: 140px;
}

.banner-top-icon {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: white;
    display: flex;
    align-items: center;
    padding-left: 44px;
    padding-bottom: 30px;
}

.banner-top-icon .svg {
    margin-right: 20px;
    margin-left: 10px;
}

.banner-top-title {
    font-weight: 400;
    font-size: 105px;
    line-height: 111px;
    letter-spacing: -3%;
    color: white;
    padding-left: 44px;
    max-width: 730px;
    padding-bottom: 30px;
}

.banner-top-text {
    padding-left: 44px;
    color: white;
    font-weight: 300;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    max-width: 530px;
}

.banner-top-image {
    margin-left: auto;
    border-radius: 80px;
    border-bottom-left-radius: 0;
}

.banner-top-image img {
    border-radius: 80px;
    border-bottom-left-radius: 0;
}

.services-list {
    padding-top: 40px;
}

.services-list .service-item a {
    display: grid;
    grid-template-columns: 1fr 100px;
    height: 102px;
    padding: 0 40px;
    justify-content: space-between;
    align-items: center;
    background: #F3F4F6;
    margin-bottom: 20px;
    color: #101B35;
    font-weight: 500;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    transition: all .25s ease-in-out;
}

.services-list .service-item .arrow {
    fill: white;
    display: none;
    justify-self: end;
}

.services-list .service-item img {
    justify-self: end;
}

.services-list .service-item a:hover {
    border-bottom-right-radius: 20px;
    color: white;
}

.services-list .service-item a:hover .arrow {
    display: block;
}

.services-list .service-item a:hover img {
    display: none;
}

.services-list.companies a:hover {
    background: #097CBF;
}

.services-list.individuals a:hover {
    background: #36BDA4;
}

.page-content {
    background: #F3F4F6;
    border-bottom-right-radius: 40px;
    padding: 40px;
}

.page-content h2 {
    color: #101B35;
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    padding-bottom: 20px;
    margin-bottom: 0;
}

.page-content h3 {
    color: #101B35;
    font-weight: 500;
    font-size: 40px;
    line-height: 56px;
    letter-spacing: -3%;
    padding-bottom: 20px;
    padding-top: 20px;
}

.page-content p {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #101B35;
    padding-bottom: 20px;
}


.page-content ul li {
    font-weight: 400;
    font-size: 25px;
    line-height: 51px;
    letter-spacing: -3%;
    color: #1F3D83;
}

.page-content ul {
    list-style: none;
    padding-left: 0;
    padding-bottom: 20px;
}

.page-content ul li {
    position: relative;
    padding-left: 40px;
}

.page-content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: calc(50% - 2px);
    transform: translateY(-50%);
    width: 21px;
    height: 21px;
    background: url('../images/marker.svg');
}

.contact-form.blue {
    border: 2px solid #097CBF;
}

.contact-form.blue label {
    color: rgba(16, 27, 53, 0.5);
}

.contact-form.blue input {
    border-bottom: 1px solid rgba(16, 27, 53, 0.3);
    color: #101B35;
}

.contact-form.blue input:hover {
    background: white;
}


.contact-form.blue .custom-select-trigger {
    border-bottom: 1px solid rgba(16, 27, 53, 0.3);
    color: #101B35;
}

.contact-form.blue .custom-select-trigger:hover {
    background: white;
}

.contact-form.blue input[type="submit"] {
    color: white;
}

.banner-top-service {
    height: 300px;
    padding-top: 120px;
}

.banner-top-service.companies {
    background-image: url("../images/bg_sc.jpg");
    background-size: cover;
    background-position: center bottom;
}

.banner-top-service.individuals {
    background-image: url("../images/bg_si.jpg");
    background-size: cover;
    background-position: center bottom;
}

.banner-top-service-icon {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: white;
    display: flex;
    align-items: center;
    padding-left: 44px;
}

.banner-top-service-icon .svg {
    margin-right: 20px;
    margin-left: 10px;
}

.banner-top-ser-img {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 44px;
}

.banner-top-service-title {
    font-family: Geologica;
    font-weight: 400;
    font-size: 70px;
    line-height: 111px;
    letter-spacing: -3%;
    color: white;
}

.banner-top-service-image img {
    filter: brightness(0) invert(1);
}

.single-service-img {
    text-align: right;
    padding-bottom: 40px;
}

.single-service-img img {
    border-radius: 80px;
    border-bottom-left-radius: 0;
}

.single-posluga .page-content {
    margin-top: 40px;
}

.services-list.custom {
    padding-top: 20px;
}

.services-list.custom .for-companies a:hover {
    background: #097CBF;
}

.services-list.custom .for-individuals a:hover {
    background: #36BDA4;
}


.page-template-program .banner-top {
    background-image: url("../images/bg_pr.png");
    background-size: cover;
    background-position: center bottom;
}

.page-template-program .banner-top-logo {
    padding-left: 44px;
    padding-top: 30px;
}

.page-template-program .page-content {
    margin-top: 40px;
}

.page-template-program .page-content ul {
    padding-bottom: 0;
}

.page-template-program .image-card {
    text-align: right;
}

.page-template-program .image-card img {
    max-width: 100%;
    margin-top: 90px;
}

.page-content.mt-20 {
    margin-top: 20px;
}

.page-template-company .banner-top {
    background-image: url("../images/bg_pr.png");
    background-size: cover;
    background-position: center bottom;
}

.page-template-company .page-content {
    margin-bottom: 40px;
}

.page-template-company .advantages .order {
    order: -1;
}

.page-template-company .page-content ul:last-child {
    padding-bottom: 0;
}

.page-template-company .image {
    padding-top: 46px;
    text-align: right;
}

.page-template-company .tabs .tab-content-image img {
    max-width: 295px;
}


.page-template-company .tabs .tab-content {
    grid-template-columns: 1fr auto;
    gap: 0;
    padding-top: 0;
}

.page-template-company .tabs .tabs-inner .ui-tabs-nav a {
    grid-template-columns: 1fr 30px;
}

.page-template-company .tabs .tabs-inner .ui-tabs-nav a svg {
    fill: #097CBF;
    display: block;
}

.page-template-company .tabs .ui-state-active a {
    border-left: 3px solid #36BDA4 !important;
}

.page-template-company .tabs .ui-state-active a svg {
    display: none !important;
}

.page-template-company .tabs .ui-tabs-nav a:hover {
    background-color: #36BDA4 !important;
    border-left: 3px solid #36BDA4 !important;
}

.page-template-company .tabs .ui-tabs-nav a:hover svg {
    fill: white !important;
}

.page-template-company .tabs .tab-content-text {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #595C61;
}

.team {
    background: #F3F4F6;
    border-bottom-right-radius: 40px;
    padding: 40px;
}

.team .slick-dots {
    justify-content: center;
    padding-top: 40px;
}

.team-member {
    display: flex !important;
    align-items: center;
    flex-direction: column;
}

.team-member img {
    border-radius: 50%;
}

.team-member .team-name {
    padding-top: 10px;
    font-weight: 600;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    text-align: center;
    color: #101B35;
}

.team-member .team-position {
    padding-top: 10px;
    font-weight: 200;
    font-size: 16px;
    letter-spacing: 0%;
    text-align: center;
    color: #101B35;
}

.team-member .team-text {
    color: #595C61;
    font-weight: 200;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    max-width: 200px;
    padding-bottom: 10px;
}

.team-member .team-soc {
    display: flex;
    gap: 10px;
}

.team-member .team-soc a {
    display: flex;
    width: 50px;
    height: 50px;
    align-items: center;
    justify-content: center;
    transition: all .25s ease-in-out;
    border-radius: 50%;
}

.team-member .team-soc a:hover {
    background: #097CBF;
}

.team-member .team-soc a svg {
    fill: #097CBF;
    transition: all .25s ease-in-out;
}

.team-member .team-soc a:hover svg {
    fill: white;
}

.team-title {
    padding-bottom: 80px;
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: #101B35;
}

.address-block {
    padding: 40px 0;
}

.address-block .address-title {
    padding-bottom: 20px;
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: #101B35;
}

.address-frame {
    max-width: 860px;
    height: 345px;
    border: 1px solid #D4D7DD;
    border-radius: 10px;
}

.address {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #101B35;
    padding-bottom: 20px;
}

.address-link {
    padding-bottom: 20px;
}

.address-link a {
    font-weight: 200;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #097CBF;
}

.address-link a:hover {
    color: #1F3D83;
}

.page-template-company .reviews .slider-controls {
    padding-bottom: 20px;
}

.page-template-blog .blog {
    padding-top: 120px;
}

.page-template-blog .blog-title {
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: #101B35;
    padding-bottom: 40px;
}

#load-more {
    margin-top: 40px;
}


.single-post .breadcrumbs {
    padding-top: 120px;
    display: flex;
    align-items: center;
    gap: 20px;
    padding-left: 44px;
    padding-bottom: 40px;
}

.single-post .breadcrumbs a {
    color: #097CBF;
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
}

.single-post .breadcrumbs a:hover {
    color: #1F3D83;
}

.single-post .breadcrumbs span {
    color: #595C61;
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.single-post .page-thumbnail img {
    border-radius: 80px;
    border-bottom-right-radius: 0;
}

.single-post .page-content {
    margin-top: 20px;
}

.single-post .page-content .meta {
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    color: #595C61;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-bottom: 20px;
}


.single-post .page-content .meta .svg {
    margin-right: 16px;
    position: relative;
    top: -1px;
}

.single-post .page-content h1 {
    font-weight: 500;
    font-size: 70px;
    line-height: 78px;
    letter-spacing: -3%;
    color: #101B35;
    padding-bottom: 20px;
}

.single-post .page-content h2 {
    padding-top: 20px;
}

.page-template-login .header-wrapper, .page-template-login .footer {
    display: none;
}

.page-template-contact .header-wrapper, .page-template-contact .footer {
    display: none;
}

.page-template-login .main--wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.page-template-contact .main--wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.page-template-contact .custom-options{
    bottom: 0;
    top: auto;
}

.page-content h2 .number {
    height: 52px;
    width: 54px;
    background-color: #36BDA4;
    color: white;
    font-weight: 500;
    font-size: 30px;
    line-height: 100%;
    letter-spacing: -3%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: -8px;
    margin-right: 8px;
    border-radius: 10px;
    border-bottom-left-radius: 0;
}

.page-content h3 .number {
    height: 41px;
    width: 39px;
    background-color: #36BDA4;
    color: white;
    font-weight: 500;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: -3%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: -8px;
    margin-right: 8px;
    border-radius: 10px;
    border-bottom-left-radius: 0;
}

.single-post .single-right {
    max-width: 377px;
    margin-left: auto;
}

.single-post .single-right img {
    width: 100%;
    border-radius: 80px;
    border-bottom-left-radius: 0;
}

.single-post .single-right .anchors-list {
    margin-top: 60px;
    padding-bottom: 0;
    border-left: 1px dotted #101B35;

    border-image: repeating-linear-gradient(
            to bottom,
            #101B35 0,
            #101B35 5px,
            transparent 5px,
            transparent 10px
    ) 1;
}

.single-post .single-right .anchors-list li:before {
    display: none;
}

.single-post .single-right .anchors-list li {
    font-weight: 400;
    font-style: Regular;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: -3%;
    vertical-align: bottom;
    padding-bottom: 30px;
}

.single-post .single-right .anchors-list li:last-child {
    padding-bottom: 0px;
}


.single-post .single-right .anchors-list li a {
    color: #097CBF;
}

.single-post .single-right .anchors-list li a:hover {
    color: #101B35;
}


.single-post .article-list {
    margin-top: 20px;
}


.contact-login {
    padding-top: 98px;
}

.contact-login .form-wrapper {
    background-color: #F3F4F6;
    border-bottom-right-radius: 80px;
    padding-top: 72px;
    padding-left: 176px;
}

.contact-login .form {
    width: 337px;
}

.contact-login .contact-form {
    margin-left: 0;
    width: 337px;
    border: none;
    padding: 0;
}

.contact-login .contact-form .logo {
    padding-bottom: 40px;
}


.contact-login .submit {
    padding-bottom: 50px;
}

.contact-login .text {
    text-align: center;
    padding-bottom: 10px;
    font-weight: 300;
    font-style: Light;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #595C61;
}

.contact-login .form a {
    color: #097CBF;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 5%;
    text-transform: uppercase;
}

.contact-login .form a:hover {
    color: #1F3D83;
}

.contact-login .text-privacy {
    padding-top: 40px;
    font-weight: 300;
    font-style: Light;
    font-size: 16px;
    line-height: 1.1;
    letter-spacing: 0%;
    text-align: center;
    color: #ADB1B9;
    padding-bottom: 40px;
}

.contact-login .text-privacy a {
    color: #097CBF;
}

.contact-login .image-wrapper {
    position: relative;
}

.contact-login .image-text {
    position: absolute;
    bottom: 40px;
    left: 40px;
    color: white;
    font-weight: 400;
    font-style: Regular;
    font-size: 48px;
    line-height: 55px;
    letter-spacing: -3%;
}

.contact-login .image-text span {
    color: #36BDA4;
}

.page-template-login .contact-login .form-wrapper {
    padding-top: 125px;
}


.top-footer-menu {
    padding-top: 120px;
}

.top-footer-menu ul {
    display: flex;
    padding-left: 40px;
}

.top-footer-menu ul a {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    color: #097CBF;
}

.top-footer-menu ul li {
    padding-right: 40px;
    margin-right: 40px;
    position: relative;
}

.top-footer-menu ul li:before {
    height: 20px;
    width: 1px;
    position: absolute;
    right: 0;
    top: 5px;
    content: '';
    background: #E0E3E8;
}


.top-footer-menu ul .current_page_item a {
    color: #595C61;
}

.licenses-awards .title {
    font-weight: 500;
    font-size: 50px;
    line-height: 56px;
    letter-spacing: -3%;
    color: #101B35;
    padding-bottom: 20px;
}

.licenses-awards .page-content {
    margin-top: 40px;
}

.text {
    font-weight: 200;
    font-size: 21px;
    line-height: 28px;
    letter-spacing: 0%;
    padding-bottom: 20px;
    color: #101B35;
}

.licenses-award-item {
    text-align: center;
    padding: 40px;
}

.licenses-award-item .meta {
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    color: #595C61;
    padding-bottom: 20px;
}

.licenses-award-item .meta .svg {
    margin-right: 16px;
    position: relative;
    top: -3px;
}

.licenses-award-item .text {
    font-weight: 200;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    color: #595C61;
}

.licenses-award-item .image {
    padding-bottom: 20px;
    display: flex;
    justify-content: center;
}

.licenses-award-item.awards {
    margin-bottom: 20px;
}

.licenses-award-item.awards .text {
    padding-bottom: 0;
}

.page-template-default .top-footer-menu {
    padding-bottom: 40px;
}

.page-template-default .mob-menu-top {
    margin-bottom: 30px;
}

.single-persey .page-content {
    margin-top: 40px;
}

.single-persey-img {
    width: 377px;
    height: 450px;
    border-radius: 80px;
    border-bottom-left-radius: 0;
    margin-bottom: 40px;
    margin-left: auto;
}

.single-persey-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 80px;
    border-bottom-left-radius: 0;
}

.banner a {
    display: none;
}

.footer-soc-contact {
    display: flex;
    width: 100%;
}

.footer .button-mob {
    display: none;
}

.menu-toggle {
    display: none;
}


nav {
    position: fixed;
    top: 0px;
    left: -100%;
    width: 100%;
    height: 100%;
    padding-top: 80px;
    transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 999;
    background: white;
    overflow-y: auto;
}

nav.active {
    left: 0;
}

nav ul {
    list-style: none;
    padding: 0 20px;
    margin: 0;
}


nav .ul li > a {
    display: flex;
    color: #1F3D83;
    text-decoration: none;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 5%;
    text-transform: uppercase;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    margin-bottom: 30px;
}


.submenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.submenu li a {
    padding-left: 35px;
    font-size: 0.95em;
}


.has-submenu.open .arrow {
    transform: rotate(180deg);
}

.has-submenu.open .submenu {
    max-height: 10000px;
    margin-bottom: 30px;
}

.menu-open {
    overflow: hidden;
}

.menu-open .header {
    border-radius: 0;
    box-shadow: none;
}


#mobile-menu .phone-lang .phone {
    display: flex;
}


#mobile-menu .phone-lang {
    padding-top: 2px;
    width: calc(100% - 40px);
    justify-content: center;
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 30px;
}

.page-template-company #accordion {
    display: none;
}

#accordion .tab-content-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 40px 40px;
    font-weight: 200;
    font-size: 18px;
    line-height: 25px;
    letter-spacing: 0%;
    color: #101B35;
}

#accordion .tab-content-text img {
    max-width: 295px;
    padding-bottom: 20px;
}

#accordion .ui-accordion-header[aria-expanded="true"]::after {
    content: '';
    display: block;
    width: 19px;
    height: 4px;
    background-image: url("../images/accordion-minus.svg");
    background-size: cover;
    margin-left: 20px;
    flex-shrink: 0;
}

#accordion .ui-accordion-header[aria-expanded="false"]::after {
    content: '';
    display: block;
    width: 19px;
    height: 19px;
    background-image: url("../images/accordion-plus.svg");
    background-size: cover;
    margin-left: 20px;
    flex-shrink: 0;
}

#accordion .ui-accordion-header {
    height: 102px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
    font-style: Medium;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: -3%;
    color: #101B35;
    padding: 0 40px;
    background: #F3F4F6;
    cursor: pointer;
}


#accordion .ui-accordion-header.ui-state-active {
    background: white;
    height: 90px;
    border-left: 3px solid #36BDA4;
}

#accordion .ui-accordion-content-active {
    border-left: 3px solid #36BDA4;
}


#accordion .ui-accordion-header-icon {
    display: none !important;
}

.blog.md {
    display: none;
}

.slider-license, .slider-awards {
    display: none;
}

.top-footer-menu-mobile {
    display: none
}

.mob-menu-top {
    position: relative;
    max-width: 335px;

}

.mob-menu {
    position: relative;
    width: 100%;
}

.mob-menu-trigger {
    justify-content: space-between;
    background: #fff;
    padding: 10px 0px;
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid #101B35;
    display: flex;
    align-items: center;
    height: 50px;
    font-weight: 300;
    font-size: 17px;
    line-height: 100%;
    letter-spacing: 0%;
}

.mob-menu-trigger .arrow {
    display: inline-block;
    position: relative;
    top: 3px;
}

.mob-menu.open .mob-menu-trigger .arrow {
    transform: rotate(-180deg);
}

.mob-menu-list {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background: #fff;
    list-style: none;
    padding: 0;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    visibility: hidden;
    z-index: 99;
}

.mob-menu.open .mob-menu-list {
    opacity: 1;
    max-height: 240px;
    visibility: visible;
    overflow-y: auto;
}

.mob-menu-item {
    cursor: pointer;
    height: 50px;
    background: white;
    font-weight: 300;
    font-size: 17px;
    line-height: 100%;
    letter-spacing: 0%;
    color: #101B35;
    border-bottom: 1px solid #F3F4F6;
    position: relative;
    display: flex;
    align-items: center;
    padding: 20px;
}

.mob-menu-item:hover {
    background: #f3f3f3;
}

.mob-menu-top-title {
    font-weight: 300;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 7%;
    color: rgba(16, 27, 53, 0.5);
    text-transform: uppercase;
}

.wpcf7 form.invalid .wpcf7-response-output {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    display: none;
}

/* Все обертки полей формы CF7 */
.wpcf7 .wpcf7-form-control-wrap {
    position: relative;
    padding-bottom: 33px;
    display: flex;
}

/* Абсолютное позиционирование ошибок */
.wpcf7 .wpcf7-not-valid-tip {
    position: absolute;
    top: 44px;
    left: 0;
    background: rgba(255, 0, 0, 0.85);
    color: #fff;
    padding: 1px 8px;
    border-radius: 3px;
    font-size: 12px;
    z-index: 10;
    white-space: nowrap;
}

.single-posluga .main--wrapper,
.single-persey .main--wrapper,
.page-template-for-companies .main--wrapper,
.page-template-for-individuals .main--wrapper {
    overflow: unset;
}

.single-posluga .contact-form,
.single-persey .contact-form,
.page-template-for-companies .contact-form,
.page-template-for-individuals .contact-form {
    position: sticky;
    top: 20px;
}

#popup-text {
    overflow-y: auto;
    max-height: 400px;
}

@media (max-width: 1400px) {
    .phone-lang .phone {
        display: none;
    }

    .menu-service-item a {
        width: auto;
        display: grid;
        grid-template-columns: 1fr 50px;
    }

    .menu-service-item img, .menu-service-item .arrow {
        margin-left: auto;
    }

    .sub-menu.persey {
        width: 100%;
        display: block;
    }

    .sub-menu.persey .column-1 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }

    .menu-persey-item {
        width: 100%
    }

    .banner-title {
        width: 700px;
        font-size: 80px;
        line-height: 85px;
    }

    .banner-top-title {
        font-size: 80px;
        line-height: 85px;
    }


    .card.persey_club {
        height: 100%;
    }

    .card.persey_club img {
        max-height: 130px;
        width: auto;
        object-fit: contain;
    }

    .cabinet .image img {
        max-width: 100%;
    }

    .footer-top img {
        max-width: 100%;
    }

    .contact-login .form-wrapper {
        padding-left: 0;
    }

    .contact-login .form {
        margin: 0 auto;
        max-width: 377px;
        width: 100%;
    }

}

@media (max-width: 1200px) {


    .contact-login .form {
        margin: 0 auto;
        max-width: 357px;
        width: 100%;
        padding: 0 20px;
    }

    .menu li:nth-child(3)::after {
        display: none;
    }

    .menu-persey-decs {
        display: none;
    }

    .header .menu {
        margin-left: auto;
    }

    .header .logo {
        padding-right: 20px;
    }

    .menu-company a, .menu-services a, .menu-persey a {
        padding: 13px 5px;
    }

    .phone-lang .lang {
        padding-right: 10px
    }

    .lang-current {
        padding: 10px 10px;
    }

    .banner-title {
        width: 580px;
        font-size: 70px;
        line-height: 74px;
    }

    .banner-top-title {
        font-size: 70px;
        line-height: 74px;
    }

    .advantage-box.br {
        border-right: none;
    }

    .advantage-box.bt {
        border-top: 1px solid #E9EBEF;
        padding-top: 30px;
        margin-top: 10px;
    }

    .card.persey_plus {
        height: 100%;
    }

    .tab-content {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .tab-content-image {
        display: none;
    }

    .lang-list li a {
        padding: 10px 10px;
        margin-bottom: 0;
    }

    .page-template-company .tabs .tab-content {
        grid-template-columns: 1fr;
    }

    .page-template-company .tab-content .tab-content-left {
        padding-right: 0;
    }

    .page-template-company .tabs {
        margin-bottom: 40px;
    }


    .page-template-company .tabs .tab-content {
        padding-right: 0;
    }
}

@media (max-width: 992px) {

    .contact-login .image-wrapper {
        display: none;
    }

    .contact-login .form-wrapper {
        border-bottom-right-radius: 40px;
        border-top-left-radius: 40px;
        padding: 40px;
    }

    .page-template-login .contact-login .form-wrapper {
        padding-top: 40px;
    }

    .contact-login .form {
        padding: 0;
    }

    .mob-hidden {
        display: none;
    }

    .header-top .menu-cabinet {
        display: none;
    }

    .header-wrapper .container {
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .header-top {
        padding-left: 20px;
    }

    .menu-company a, .menu-services a, .menu-persey a {
        padding: 13px 10px;
    }

    .menu-service-decs {
        display: none;
    }

    .sub-menu {
        grid-template-columns: repeat(2, auto);
    }

    .banner .contact-form {
        display: none;
    }

    .banner {
        min-height: 500px;
    }

    .banner-title {
        width: 100%;
        padding: 0 20px;
    }

    .banner a {
        margin-top: 40px;
        margin-left: 10px;
        margin-right: 10px;
        display: flex;
    }

    .card {
        margin-bottom: 10px;
        min-height: auto;
    }

    .cards .container .row {
        margin-bottom: 0;
    }

    .card.persey_plus {
        height: auto;
    }

    .card.persey_club img {
        max-height: 260px;
    }

    .cabinet {
        height: auto;
        padding: 40px 50px;
    }

    .cabinet .content {
        width: 100%;
    }

    .cabinet .image img {
        left: 0;
        right: auto;
    }

    .cabinet .image {
        justify-content: center;
    }

    .tab-content {
        display: none;
    }

    .blog.md {
        display: block;
    }

    .blog {
        display: none;
    }

    .footer-soc {
        padding-left: 20px;
        padding-right: 20px;
        border-right: none;
    }

    .footer-contact {
        padding-left: 20px;
    }

    .footer-tel .tels {
        margin-right: 40px;
    }

    .footer-contact .button {
        display: none;
    }

    .footer-bottom-menu ul li {
        padding-right: 10px;
    }

    .contact-form {
        margin-left: 0;
    }

    .page-template-company .image {
        display: none;
    }

    .single-service-img {
        display: none;
    }

    .page-template-program .banner-top .col-auto img {
        display: none;
    }

    .page-template-program .banner-top {
        height: auto;
        padding-bottom: 20px;
    }

    .page-template-program .banner-top-logo {
        padding-left: 0px;
        padding-top: 20px;
    }

    .single-right {
        display: none;
    }

    .slider-license ul, .slider-awards ul {
        justify-content: center;
    }

    .slider-license ul li:before, .slider-awards ul li:before {
        display: none;
    }

    .slider-license ul li, .slider-awards ul li {
        padding-left: 0;
    }

    .slider-license, .slider-awards {
        display: block;
    }

    .contact-login {
        padding-top: 120px;
    }

    .top-footer-menu-mobile {
        display: block;
        padding-top: 110px;
    }

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

@media (max-width: 767px) {

    .banner .container {
        padding-top: 110px;
    }

    .banner {
        min-height: 440px;
    }

    .banner-title {
        width: 100%;
        font-size: 40px;
        line-height: 45px;
    }

    .banner-top-title {
        padding-left: 0;
        font-size: 50px;
        line-height: 55px;
        padding-bottom: 20px;
    }

    .banner-top {
        padding-top: 120px;
        height: auto;
    }

    .banner-top-text {
        padding-left: 0;
        max-width: 100%;
        font-weight: 300;
        font-size: 18px;
        line-height: 28px;
        letter-spacing: 0%;
        padding-bottom: 20px;
    }

    .banner-top-image img {
        max-width: 315px;
        border-radius: 40px;
        border-bottom-left-radius: 0;
        padding-bottom: 20px;
    }

    .advantages {
        padding: 30px 0;
    }

    .advantage-box .icon--title {
        font-size: 25px;
        line-height: 25px;
    }

    .card {
        padding: 30px;
    }

    .card .title-icon img {
        height: 25px
    }

    .card .title-icon {
        font-size: 30px;
        line-height: 1;
    }

    .card.for_companies .text, .card.for_individuals .text {
        font-size: 18px;
        line-height: 25px;
    }

    .card.persey_plus .text {
        font-size: 18px;
        line-height: 25px;
    }

    .card.persey_club .text {
        font-size: 18px;
        line-height: 25px;
    }

    .card.persey_plus .title-icon, .card.persey_club .title-icon {
        padding-bottom: 20px;
    }

    .card .button a {
        width: 100%;
    }

    .card.persey_club .image-text {
        flex-direction: column;
        align-items: flex-start;
    }

    .card.persey_club .text {
        margin-left: 0;
    }

    .card.persey_club {
        height: auto;
    }

    .card.persey_club img {
        max-height: 100%;
        margin-bottom: 20px;
    }

    .card.persey_club .text {
        padding-bottom: 0;
    }

    .card.persey_plus {
        order: 4;
    }

    .cards .order1 {
        order: -1;
    }

    .cards {
        padding-bottom: 20px;
    }

    .reviews .slider-controls {
        padding-top: 20px;
        padding-bottom: 30px;
    }

    .review-text {
        font-size: 18px;
        line-height: 25px;
    }

    .reviews-slider .review-card {
        padding: 30px;
    }

    .reviews .slider-controls .slick-arrow {
        display: none !important;
    }

    .cabinet {
        background-position: top center;
    }

    .cabinet .order {
        order: -1;
    }

    .cabinet {
        height: auto;
        padding-top: 40px;
        padding-bottom: 40px;
        padding-right: 50px;
        padding-left: 50px;
        margin-bottom: 30px;
    }

    .cabinet .image {
        margin-bottom: 20px;
        height: auto;
    }

    .cabinet .content {
        max-width: auto;
    }

    .cabinet .content .title {
        font-size: 35px;
        line-height: 1;
        padding-bottom: 10px;
    }

    .cabinet .content .text {
        padding-bottom: 20px;
        font-size: 18px;
        line-height: 28px;
    }

    .cabinet a {
        width: 100%;
    }

    .tabs .top li a {
        width: 104px;
        padding: 0;
    }

    .tabs .top li a span {
        display: none;
    }

    .tabs .top li .svg {
        margin: 0;
    }

    .tabs .top {
        margin-bottom: 20px;
    }

    .blog {
        padding-top: 30px;
    }

    .blog-title-arrow {
        padding-bottom: 30px;
    }

    .blog-title-arrow .title {
        font-size: 30px;
        line-height: 56px;
    }

    .blog.md .item-3 {
        display: none;
    }

    .news-card {
        margin-bottom: 30px;
    }

    .news-card .title {
        min-height: auto;
        font-size: 22px;
    }

    .footer {
        margin-top: 30px
    }

    .footer-menus {
        display: none;
    }

    .footer-top {
        padding: 30px 10px;
    }

    .footer-middle {
        flex-direction: column;
        padding: 30px 0;
        border-bottom: none;
    }

    .footer-tel .tels a {
        font-size: 25px;
    }

    .footer-tel .link-round {
        width: 70px;
        height: 70px;
    }


    .footer-tel .link-round .svg {
        display: none;
    }

    .footer-tel .link-round .svg-mob {
        display: block !important;
    }

    .footer-tel {
        width: 100%;
        text-align: center;
        justify-content: center;
        padding-bottom: 30px;
        margin-bottom: 30px;
        border-bottom: 1px solid #E9EBEF;
        border-right: none;
    }

    .footer .button-mob {
        display: flex;
    }

    .footer .button-mob a {
        width: 100%;
    }

    .footer-soc .link-round, .footer-contact .link-round {
        width: 40px;
        height: 40px;
    }

    .footer-soc .link-round .svg, .footer-contact .link-round .svg {
        transform: scale(0.75);
    }

    .footer-contact {
        padding-left: 0;
        width: auto;
    }

    .footer-soc {
        padding-left: 0;
        padding-right: 0;
    }

    .footer-contact .last {
        margin-right: 0 !important;
    }

    .footer-soc-contact {
        justify-content: center;
    }

    .footer-bottom {
        padding: 30px 0 20px;
        flex-direction: column;
    }


    .footer-bottom-menu ul {
        flex-direction: column;
        align-items: center;
    }

    .footer-bottom-menu ul li {
        padding-right: 0;
        padding-bottom: 30px;
    }

    .header-top .menu, .header-top .phone-lang {
        display: none;
    }

    .menu-toggle {
        margin-left: auto;
        margin-right: 30px;
        cursor: pointer;
        display: block;
    }

    .menu-toggle .close {
        display: none;
    }

    .menu-toggle.active .open {
        display: none;
    }

    .menu-toggle.active .close {
        display: block;
    }

    .header-wrapper {
        overflow-x: hidden;
        padding-bottom: 5px;
        padding-left: 10px;
    }

    .header-wrapper .col-12 {
        padding-right: 0;
        padding-left: 0;
    }

    .sub-menu {
        grid-template-columns: 1fr;
    }

    .sub-menu.persey .column-1 {
        grid-template-columns: 1fr;
    }

    .sub-menu.persey {
        padding-top: 0;
    }

    .mobile-cabinet {
        justify-content: flex-start !important;
        color: #097CBF !important;
        border-top: 1px solid #E9EBEF;
        padding-top: 30px !important;
    }

    .mobile-cabinet .svg {
        fill: #097CBF;
        margin-right: 15px;
    }

    .has-submenu .arrow {
        fill: #1F3D83;
    }

    .banner-top-icon {
        padding-left: 0;
        padding-bottom: 20px;
    }

    .services-list {
        padding-top: 30px;
    }

    .services-list .service-item a {
        margin-bottom: 2px;
    }

    .page-template-for-companies .page-content, .page-template-for-individuals .page-content {
        margin-top: 28px;
    }

    .page-content {
        padding: 30px 20px;
    }

    .page-content h2 {
        font-size: 30px;
        line-height: 32px;
    }

    .page-content p {
        font-size: 18px;
        line-height: 25px;
    }

    .page-content ul li {
        font-size: 20px;
        line-height: 26px;
        margin-bottom: 20px;
    }

    .page-content ul li::before {
        top: calc(50% - -1px);
    }

    .page-content ul li:last-child {
        margin-bottom: 0;
    }

    .footer-tel .tels {
        margin-right: 0px;
    }

    .page-template-company #tabs-1 {
        display: none;
    }

    .page-template-company #accordion {
        display: block;
    }

    .page-template-company .page-content {
        margin-bottom: 30px;
    }

    .team {
        margin-top: 10px;
        padding: 30px 20px;
    }

    .team-title {
        font-size: 30px;
        padding-bottom: 30px;
    }

    .reviews {
        padding-top: 30px;
    }

    .address-block {
        padding: 30px 0;
    }

    .address-block .address-title {
        font-size: 30px;
        line-height: 1;
    }

    .address {
        font-size: 18px;
        padding-bottom: 10px;
    }

    .address-block .contact-form {
        margin-top: 30px;
    }

    .banner-top-service {
        height: auto;

    }

    .banner-top-service-title {
        font-weight: 400;
        font-size: 50px;
        line-height: 100%;
        letter-spacing: -3%;
        padding-bottom: 30px;
    }

    .banner-top-ser-img {
        padding-left: 0;
    }

    .banner-top-service-icon {
        padding-bottom: 20px;
        padding-left: 0;
    }

    .banner-top-service-image img {
        display: none;
    }

    .single-posluga .page-content {
        margin-top: 30px;
    }

    .single-posluga .contact-form {
        margin-top: 20px;
    }

    .single-service-img-mobile {
        display: block !important;
    }

    .single-service-img-mobile img {
        max-width: 100%;
        margin-bottom: 40px;
        border-radius: 40px;
        border-bottom-left-radius: 0;
    }

    .single-persey-img {
        display: none;
    }


    .page-template-blog .blog {
        padding-top: 120px;
    }

    .single-post .breadcrumbs {
        padding-top: 120px;
        padding-left: 0;
    }

    .single-post .breadcrumbs span, .single-post .breadcrumbs a {
        font-size: 14px;
    }

    .single-post .page-content h1 {
        font-size: 50px;
        line-height: 100%;
    }

    .page-content h2 .number {
        display: flex;
        margin-bottom: 12px;
    }

    .single-post .page-thumbnail img {
        border-radius: 40px;
        border-bottom-right-radius: 0;
    }

    .single-post .breadcrumbs {
        padding-bottom: 30px;
    }

    .single-post .page-thumbnail img {
        height: 335px;
        object-fit: cover;
    }

    .licenses-award-item {
        padding-top: 0;
        padding-bottom: 20px;
    }

    .licenses-awards .page-content {
        margin-bottom: 0;
        padding-bottom: 0;
    }

    .licenses-awards .title {
        font-size: 30px;
        line-height: 32px;
    }

    .page-content h3 {
        font-size: 24px;
        line-height: 28px;
    }

    .page-content h3 .number {
        display: flex;
        margin-bottom: 10px;
    }

    .page-template-program .image-card {
        text-align: left;
    }

    .page-template-program .image-card img {
        margin-top: 20px;
    }

    .contact-login .form-wrapper {
        padding: 40px 20px;
    }

    .contact-login .contact-form {
        width: 100%;
    }

    .contact-login .text-privacy {
        font-size: 12px;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .licenses-awards .page-content {
        margin-top: 30px;
    }

    .page-template-blog .blog-title {
        font-size: 30px;
        line-height: 32px;
        padding-bottom: 30px;
    }


}

@media (max-width: 576px) {

    .container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .card.persey_club img {
        width: 100%;
    }

    #popup .popup-content {
        padding: 30px;
    }

    .mob-menu-top {
        max-width: 100% !important;
    }

}

.rotator {
    display: inline-block;
    position: relative;
    height: 1.3em;
    overflow: hidden;
    vertical-align: bottom;
    min-width: 7ch;
}

.rotator .list {
    display: flex;
    flex-direction: column;
    height: 300%; /* 3 слова */
    transform: translateY(0%);
    animation: slide 9s cubic-bezier(.22, .9, .2, 1) infinite;
}

.rotator .list span {
    height: 1.3em; /* совпадает с контейнером */
    display: flex;
    align-items: center;
    white-space: nowrap;
}

@keyframes slide {
    0%, 15% {
        transform: translateY(0%);
    }
    /* первый слово */
    25%, 40% {
        transform: translateY(-33.333%);
    }
    /* второе слово */
    50%, 65% {
        transform: translateY(-66.666%);
    }
    /* третье слово */
    100% {
        transform: translateY(0%);
    }
    /* плавный возврат */
}


.arrow-wrapper {
    position: relative;
    width: 16px;
    height: 16px;
    display: inline-block;
    overflow: hidden;
    margin-left: 10px;
}

.arrow-anim {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
}

.arrow-anim:hover .arrow {
    fill: #097CBF;
}

.arrow-anim .arrow {
    position: absolute;
    top: 0;
    left: 0;
    transition: transform 0.75s ease, opacity 0.75s ease;
    fill: white;
    transition-delay: 0.3s; /* чтобы выезжала чуть позже */
}

/* Вторая (clone) стрелка изначально слева и невидима */
.arrow-anim .arrow--clone {
    transform: translateX(-120%);
    opacity: 0;
}

/* При наведении */
.arrow-anim:hover .arrow--main {
    transform: translateX(120%);
    opacity: 0;
}

.arrow-anim:hover .arrow--clone {
    transform: translateX(0);
    opacity: 1;
    transition-delay: 0.3s; /* чтобы выезжала чуть позже */
}

.arrow-anim.blue .arrow {
    fill: #097CBF;
}

.arrow-anim.blue:hover .arrow {
    fill: white;
}

.page-template-login .wpcf7 .wpcf7-not-valid-tip {
    display: none !important;
}

.slick-arrow .svg {
    fill: #097CBF;
}

.slick-arrow .svg:hover {
    fill: #1F3D83;
}

.blog-title-arrow a .svg {
    fill: #097CBF;
}


.blog-title-arrow a .svg:hover {
    fill: #1F3D83;
}

.home .contact-form {
    background: rgba(31, 61, 131, 0.8);
    border-color: rgba(31, 61, 131, 0.8);
}


.main--wrapper {
    overflow-x: hidden;
    position: relative;
    z-index: 1;
    min-height: 100%;
    display: block;
    width: 100%;
    background-color: #fff;
    padding-bottom: 60px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

.footer {
    position: fixed;
    overflow: hidden;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 0;
}

.page-template-company .page-content.company p {
    padding-bottom: 28px;
}

.page-template-company .page-content.company p:last-child {
    padding-bottom: 0;
}

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

.company--top {
    height: 368px;
    background-image: url("../images/company--top.jpg");
    display: flex;
    background-position: center center;
    justify-content: flex-end;
    align-items: baseline;
}

.company--top img {
    padding-top: 85px;
    padding-right: 31px;
    width: 1103px;
    display: block;
    margin: 0 auto;
}


@media (max-width: 1200px) {
    .company--top img {
        padding-left: 31px;
    }
}

@media (max-width: 767px) {

    .company-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .company--top img {
        padding: 0 26px;
        width: auto;
    }

    .company--top {
        height: 200px;
        background-image: url("../images/company--top-sm.jpg");
        justify-content: center;
        align-items: center;
    }

    .page-template-company .page-content.company {
        padding-bottom: 40px;
    }
}

.lang-dropdown.open .lang-list a[href*="/ru/"]:hover {
    background: #f2f2f2;
    color: #000;
    border-radius: 5px;
}

.lang-dropdown.open .lang-list a[href*="/en/"]:hover {
    background: #f2f2f2;
    color: #000;
    border-radius: 5px;
}

.lang-dropdown.open .lang-list a[href="/"]:hover,
.lang-dropdown.open .lang-list a[href="/uk/"]:hover {
    background: #f2f2f2;
    color: #000;
    border-radius: 5px;
}

.custom-options .custom-option:hover {
    background: #f2f2f2;
    color: #000;
}

/* ДЕСKTOP: кнопка "Читати далі" вирівняна праворуч */
/* Мобілка НЕ змінюється */
@media (min-width: 992px) {
    .card.for_companies .bottom,
    .card.for_individuals .bottom,
    .card.persey_plus .bottom,
    .card.persey_club .bottom {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        width: 100%;
    }
}

/* Мобілка: додаємо відступ між блоками */
@media (max-width: 991px) {
    .cards .row > .col-12 {
        margin-bottom: 24px;
    }
}


.card.persey_plus .bottom {
    justify-content: space-between;
}

.card.persey_plus .bottom .btn-outline-blue {
    background: transparent;
}

.card.persey_plus .bottom .btn-outline-blue:hover {
    background: #097CBF;
}

.card.persey_club .bottom .btn-outline-blue {
    background: transparent;
}

.card.persey_club .bottom .btn-outline-blue:hover {
    background: #097CBF;
}

@media (max-width: 576px) {
    .card.persey_plus .bottom a,
    .card.persey_club .bottom a {
        margin-top: 20px;
    }
}

.page-template-main .contact-form input[type="submit"] {
    padding: 20px 10px;
    display: inline-flex;
    align-items: center;
    font-weight: 700;
    justify-content: center;
    border-radius: 10px;
    border: 2px solid white;
    color: white;
    text-transform: uppercase;
    max-height: 64px;
    background: transparent;
    min-width: 213px;
    transition: all .25s ease-in-out;
}


.page-template-main .contact-form input[type="submit"]:hover {
    color: #097CBF !important;
    background: white !important;
}

.footer-top-padding-logo {
    padding-right: 90px;
}

.contact-text {
    font-family: Geologica;
    font-weight: 300;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    color: #595C61;
    padding-top: 40px;
}

.persey-btn {
    padding: 20px 30px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: white;
    background-color: #097CBF;
    height: 64px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 5%;
    text-transform: uppercase;
    transition: all .25s ease-in-out;
}

.persey-btn svg {
    width: 23px;
    margin-left: 10px;
}

.persey-btn:hover {
    background-color: #1F3D83 !important;
    color: white;
}


.page-template-main .banner-title {
    font-weight: 500;
}
