:root {
    --font-text: "Roboto", sans-serif;
    --font-head: "Roboto Slab", serif;
    --font-second: "Roboto Condensed", sans-serif;
    --color-back: #f0f5f8;
    --color-text: #232323;
    --color-href: #525252;
    --color-href-hover: #38bee1;
    --color-white: #ffffff;
    --color-blue-light: #38bee1;
    --color-blue: #198ba9;
    --color-green: #62ac58;
    --color-yellow: #dba424;
    --color-red: #e64e4a;
    --color-dark: #232323;
    --width-wide: 1252px;
    --width: 1252px;
    --padding: 16px;
    --padding-minus: -16px;
    --h1-size: 42px;
    --h2-size: 38px;
    --h3-size: 22px;
    --h4-size: 18px;
    --h1-weight: 700;
    --h2-weight: 700;
    --h3-weight: 700;
    --h4-weight: 700;
    --h1-case: uppercase;
    --h2-case: uppercase;
    --h3-case: none;
    --h4-case: none;
}
@media (max-width: 1600px) {
    :root {
        --width-wide: 1252px;
        --width: 1252px;
        --h1-size: 42px;
        --h2-size: 32px;
        --h3-size: 20px;
        --h4-size: 18px;
        --h1-weight: 700;
        --h2-weight: 700;
        --h3-weight: 700;
        --h4-weight: 700;
        --h1-case: uppercase;
        --h2-case: uppercase;
        --h3-case: none;
        --h4-case: none;
    }
}
@media (max-width: 1200px) {
    :root {
        --width-wide: 100%;
        --width: 100%;
        --padding: 16px;
        --padding-minus: -16px;
        --h1-size: 42px;
        --h2-size: 26px;
        --h3-size: 16px;
        --h4-size: 18px;
        --h1-weight: 700;
        --h2-weight: 700;
        --h3-weight: 700;
        --h4-weight: 700;
        --h1-case: uppercase;
        --h2-case: uppercase;
        --h3-case: none;
        --h4-case: none;
    }
}
@media (max-width: 750px) {
    :root {
        --width-wide: 100%;
        --width: 100%;
        --h1-size: 42px;
        --h2-size: 22px;
        --h3-size: 13px;
        --h4-size: 18px;
        --h1-weight: 700;
        --h2-weight: 700;
        --h3-weight: 700;
        --h4-weight: 700;
        --h1-case: uppercase;
        --h2-case: uppercase;
        --h3-case: none;
        --h4-case: none;
    }
}
/*RESET*/
html,
body {
    height: 100%;
}
html,
body,
div,
span,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
em,
font,
img,
s,
strong,
sub,
sup,
b,
u,
i,
center,
ol,
ul,
li,
fieldset,
form,
label,
legend {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
html {
    scroll-behavior: smooth;
}
:focus {
    outline: 0;
}
body#tengu {
    background: var(--color-back);
    color: var(--font-text);
    font-family: var(--font-text);
    font-size: 16px;
    line-height: 1.5;
}
body,
div,
a,
td,
th,
span,
b {
    box-sizing: border-box;
}
font {
    color: inherit !important;
    font: inherit !important;
}
sup,
sub {
    font-size: 85%;
}
sup {
    vertical-align: super;
}
sub {
    vertical-align: sub;
}
hr {
    display: block;
    background: #666;
    color: #666;
    width: 100%;
    height: 1px;
    border: none;
}
strong {
    font-weight: bold;
}
img {
    display: block;
    margin: 0;
    max-width: 100%;
}
img[align="left"] {
    float: left;
    margin: 0 15px 15px 0;
}
img[align="right"] {
    float: right;
    margin: 0 0 15px 15px;
}
img[align="center"] {
    display: block;
    margin: 15px auto;
    max-width: 100%;
    max-height: 500px;
    width: auto;
    height: auto;
}
img[align="middle"] {
    display: block;
    margin: 15px auto;
    max-width: 100%;
    max-height: 500px;
    width: auto;
    height: auto;
}
table,
caption,
tbody,
tfoot,
thead,
tr {
    margin: 0;
    padding: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
th,
td {
    padding: 5px;
    margin: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
th,
thead td {
    font-weight: bold;
}
p {
    margin: 0;
}
p + p {
    margin-top: 1em;
}
ol:not([class]),
ul:not([class]) {
    margin: 1em 0 1em 1.5em;
}
ol:not([class]) li,
ul:not([class]) li {
    padding: 0;
    line-height: 1.5;
}
ol:not([class]) li + li,
ul:not([class]) li + li {
    margin-top: 0.5em;
}
ul:last-child {
    margin-bottom: 0;
}
/*LINKS*/
a {
    text-decoration: none;
    transition: 0.5s;
    color: var(--color-href);
}
a:hover {
    color: var(--color-href-hover);
    cursor: pointer;
}
a[href^="tel:"], a[href^="mailto:"], a[href^="https://wa."], a[href^="https://www.wa."]
{
    white-space: nowrap;
}
a[data-fancybox][href^="https://www.youtube"]
{
    position: relative;
    display: block;
    width: 100%;
    border-radius: 25px;
    overflow: hidden;
}
a[data-fancybox][href^="https://www.youtube"] img
{
    display: block;
}
a[data-fancybox][href^="https://www.youtube"]:after
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: url("data:image/svg+xml;base64,PCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KDTwhLS0gVXBsb2FkZWQgdG86IFNWRyBSZXBvLCB3d3cuc3ZncmVwby5jb20sIFRyYW5zZm9ybWVkIGJ5OiBTVkcgUmVwbyBNaXhlciBUb29scyAtLT4KPHN2ZyB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBmaWxsPSJub25lIj4KDTxnIGlkPSJTVkdSZXBvX2JnQ2FycmllciIgc3Ryb2tlLXdpZHRoPSIwIi8+Cg08ZyBpZD0iU1ZHUmVwb190cmFjZXJDYXJyaWVyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KDTxnIGlkPSJTVkdSZXBvX2ljb25DYXJyaWVyIj4KDTxwYXRoIGZpbGw9IiNDRTEzMTIiIGQ9Ik0xNC43MTIgNC42MzNhMS43NTQgMS43NTQgMCAwMC0xLjIzNC0xLjIzNEMxMi4zODIgMy4xMSA4IDMuMTEgOCAzLjExcy00LjM4MiAwLTUuNDc4LjI4OWMtLjYuMTYxLTEuMDcyLjYzNC0xLjIzNCAxLjIzNEMxIDUuNzI4IDEgOCAxIDhzMCAyLjI4My4yODggMy4zNjdjLjE2Mi42LjYzNSAxLjA3MyAxLjIzNCAxLjIzNEMzLjYxOCAxMi44OSA4IDEyLjg5IDggMTIuODlzNC4zODIgMCA1LjQ3OC0uMjg5YTEuNzU0IDEuNzU0IDAgMDAxLjIzNC0xLjIzNEMxNSAxMC4yNzIgMTUgOCAxNSA4czAtMi4yNzItLjI4OC0zLjM2N3oiLz4KDTxwYXRoIGZpbGw9IiNmZmZmZmYiIGQ9Ik02LjU5MyAxMC4xMWwzLjY0NC0yLjA5OC0zLjY0NC0yLjExdjQuMjA4eiIvPgoNPC9nPgoNPC9zdmc+Cg==") center center no-repeat;
    background-size: 15% auto;
    z-index: 99;
}
/*HEADERS*/
h1,
h2,
h3,
h4 {
    font-family: var(--font-head);
    display: block;
    line-height: 1.4;
    margin: 1em 0 0.66em 0;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
.h1:first-child,
.h2:first-child,
.h3:first-child,
.h4:first-child {
    margin-top: 0;
}
h1 {
    font-size: var(--h1-size);
    font-weight: var(--h1-weight);
    text-transform: var(--h1-case);
}
h2 {
    font-size: var(--h2-size);
    font-weight: var(--h2-weight);
    text-transform: var(--h2-case);
}
h3 {
    font-size: var(--h3-size);
    font-weight: var(--h3-weight);
    text-transform: var(--h3-case);
}
h4 {
    font-size: var(--h4-size);
    font-weight: var(--h4-weight);
    text-transform: var(--h4-case);
}
/*TENGU*/
.grid,
.flex,
.custom {
    width: 100%;
}
.custom {
    margin: 0 auto;
    max-width: var(--width);
}
.wide {
    width: 100%;
    max-width: var(--width-wide);
}
.grid > .grid,
.grid > .flex,
.flex > .grid,
.flex > .flex {
    width: auto;
}
/*FASTCODE TENGU GRIDING*/
.block {
    display: block;
}
.grid {
    display: grid;
}
.flex {
    display: flex;
    flex-wrap: wrap;
}
.none {
    display: none;
}
.align-top {
    align-items: start;
}
.align-middle {
    align-items: center;
}
.align-bottom {
    align-items: end;
}
.align-start {
    justify-content: start;
}
.align-stretch {
    align-items: stretch;
}
.align-center {
    justify-content: center;
}
.align-end {
    justify-content: end;
}
.align-left {
    justify-content: start;
}
.align-right {
    justify-content: end;
}
.align-around {
    justify-content: space-around;
}
.align-between {
    justify-content: space-between;
}
.align-evenly {
    justify-content: space-evenly;
}
.gap-0 {
    gap: 0;
}
.gap-5 {
    gap: 5px;
}
.gap-10 {
    gap: 10px;
}
.gap-15 {
    gap: 15px;
}
.gap-20 {
    gap: 20px;
}
.gap-25 {
    gap: 25px;
}
.gap-30 {
    gap: 30px;
}
.gap-35 {
    gap: 35px;
}
.gap-40 {
    gap: 40px;
}
.gap-45 {
    gap: 45px;
}
.gap-50 {
    gap: 50px;
}
.gap-55 {
    gap: 55px;
}
.gap-60 {
    gap: 60px;
}
.gap-65 {
    gap: 65px;
}
.gap-70 {
    gap: 70px;
}
.gap-75 {
    gap: 75px;
}
.gap-80 {
    gap: 80px;
}
.gap-85 {
    gap: 85px;
}
.gap-90 {
    gap: 90px;
}
.gap-95 {
    gap: 95px;
}
.gap-100 {
    gap: 100px;
}
.gap-4 {
    gap: 4px;
}
.gap-6 {
    gap: 6px;
}
.gap-8 {
    gap: 8px;
}
.gap-12 {
    gap: 12px;
}
.gap-14 {
    gap: 14px;
}
.gap-16 {
    gap: 16px;
}
.gap-18 {
    gap: 18px;
}
.gap-22 {
    gap: 22px;
}
.gap-24 {
    gap: 24px;
}
.gap-26 {
    gap: 26px;
}
.gap-28 {
    gap: 28px;
}
.gap-32 {
    gap: 32px;
}
.gap-34 {
    gap: 34px;
}
.gap-36 {
    gap: 36px;
}
.gap-38 {
    gap: 38px;
}
.gap-42 {
    gap: 42px;
}
.gap-44 {
    gap: 44px;
}
.gap-46 {
    gap: 46px;
}
.gap-48 {
    gap: 48px;
}
.order--1 {
    order: -1;
}
.order--2 {
    order: -2;
}
.order--3 {
    order: -3;
}
.order--4 {
    order: -4;
}
.order--5 {
    order: -5;
}
.order--6 {
    order: -6;
}
.order--7 {
    order: -7;
}
.order--8 {
    order: -8;
}
.order--9 {
    order: -9;
}
.order--10 {
    order: -10;
}
.order-off {
    order: 0;
}
.order-0 {
    order: 0;
}
.order-1 {
    order: 1;
}
.order-2 {
    order: 2;
}
.order-3 {
    order: 3;
}
.order-4 {
    order: 4;
}
.order-5 {
    order: 5;
}
.order-6 {
    order: 6;
}
.order-7 {
    order: 7;
}
.order-8 {
    order: 8;
}
.order-9 {
    order: 9;
}
.order-10 {
    order: 10;
}
.columns-1 {
    grid-template-columns: 1fr;
}
.columns-2 {
    grid-template-columns: repeat(2, 1fr);
}
.columns-3 {
    grid-template-columns: repeat(3, 1fr);
}
.columns-4 {
    grid-template-columns: repeat(4, 1fr);
}
.columns-5 {
    grid-template-columns: repeat(5, 1fr);
}
.columns-6 {
    grid-template-columns: repeat(6, 1fr);
}
.columns-7 {
    grid-template-columns: repeat(7, 1fr);
}
.columns-8 {
    grid-template-columns: repeat(8, 1fr);
}
.columns-9 {
    grid-template-columns: repeat(9, 1fr);
}
.columns-10 {
    grid-template-columns: repeat(10, 1fr);
}
.columns-1-auto {
    grid-template-columns: auto;
}
.columns-2-auto {
    grid-template-columns: repeat(2, auto);
}
.columns-3-auto {
    grid-template-columns: repeat(3, auto);
}
.columns-4-auto {
    grid-template-columns: repeat(4, auto);
}
.columns-5-auto {
    grid-template-columns: repeat(5, auto);
}
.columns-6-auto {
    grid-template-columns: repeat(6, auto);
}
.columns-7-auto {
    grid-template-columns: repeat(7, auto);
}
.columns-8-auto {
    grid-template-columns: repeat(8, auto);
}
.columns-9-auto {
    grid-template-columns: repeat(9, auto);
}
.columns-10-auto {
    grid-template-columns: repeat(10, auto);
}
.columns-auto-last {
    grid-template-columns: 1fr auto;
}
.columns-auto-first {
    grid-template-columns: auto 1fr;
}
.column-100 {
    grid-column: 1/-1;
}
.column-off {
    grid-column: auto;
}
.column-auto {
    grid-column: auto;
}
.flex-row {
    flex-direction: row;
}
.flex-column {
    flex-direction: column;
}
.flex-column-off {
    flex-direction: row;
}
.flex-wrap {
    flex-wrap: wrap;
}
.flex-wrap-off {
    flex-wrap: nowrap;
}
.flex-grow-0 {
    flex-grow: 0;
}
.flex-grow-1 {
    flex-grow: 1;
}
.flex-grow-2 {
    flex-grow: 2;
}
.flex-grow-off {
    flex-grow: 0;
}
.text-left {
    text-align: left;
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-justify {
    text-align: justify;
}
.width-fit {
    width: fit-content;
}
.width-100 {
    width: 100%;
}
.width-auto {
    width: auto;
}
.margin-right-auto {
    margin-left: 0;
    margin-right: auto;
}
.margin-left-auto {
    margin-left: auto;
    margin-right: 0;
}
.margin-center {
    margin-left: auto;
    margin-right: auto;
}
.font-text {
    font-family: var(--font-text);
}
.font-head {
    font-family: var(--font-head);
}
.font-second {
    font-family: var(--font-second);
}
@media (max-width: 1600px) {
    .block-note {
        display: block;
    }
    .grid-note {
        display: grid;
    }
    .flex-note {
        display: flex;
        flex-wrap: wrap;
    }
    .none-note {
        display: none;
    }
    .align-top-note {
        align-items: start;
    }
    .align-middle-note {
        align-items: center;
    }
    .align-bottom-note {
        align-items: end;
    }
    .align-start-note {
        justify-content: start;
    }
    .align-stretch-note {
        align-items: stretch;
    }
    .align-center-note {
        justify-content: center;
    }
    .align-end-note {
        justify-content: end;
    }
    .align-left-note {
        justify-content: start;
    }
    .align-right-note {
        justify-content: end;
    }
    .align-around-note {
        justify-content: space-around;
    }
    .align-between-note {
        justify-content: space-between;
    }
    .align-evenly-note {
        justify-content: space-evenly;
    }
    .gap-0-note {
        gap: 0;
    }
    .gap-5-note {
        gap: 5px;
    }
    .gap-10-note {
        gap: 10px;
    }
    .gap-15-note {
        gap: 15px;
    }
    .gap-20-note {
        gap: 20px;
    }
    .gap-25-note {
        gap: 25px;
    }
    .gap-30-note {
        gap: 30px;
    }
    .gap-35-note {
        gap: 35px;
    }
    .gap-40-note {
        gap: 40px;
    }
    .gap-45-note {
        gap: 45px;
    }
    .gap-50-note {
        gap: 50px;
    }
    .gap-55-note {
        gap: 55px;
    }
    .gap-60-note {
        gap: 60px;
    }
    .gap-65-note {
        gap: 65px;
    }
    .gap-70-note {
        gap: 70px;
    }
    .gap-75-note {
        gap: 75px;
    }
    .gap-80-note {
        gap: 80px;
    }
    .gap-85-note {
        gap: 85px;
    }
    .gap-90-note {
        gap: 90px;
    }
    .gap-95-note {
        gap: 95px;
    }
    .gap-100-note {
        gap: 100px;
    }
    .gap-4-note {
        gap: 4px;
    }
    .gap-6-note {
        gap: 6px;
    }
    .gap-8-note {
        gap: 8px;
    }
    .gap-12-note {
        gap: 12px;
    }
    .gap-14-note {
        gap: 14px;
    }
    .gap-16-note {
        gap: 16px;
    }
    .gap-18-note {
        gap: 18px;
    }
    .gap-22-note {
        gap: 22px;
    }
    .gap-24-note {
        gap: 24px;
    }
    .gap-26-note {
        gap: 26px;
    }
    .gap-28-note {
        gap: 28px;
    }
    .gap-32-note {
        gap: 32px;
    }
    .gap-34-note {
        gap: 34px;
    }
    .gap-36-note {
        gap: 36px;
    }
    .gap-38-note {
        gap: 38px;
    }
    .gap-42-note {
        gap: 42px;
    }
    .gap-44-note {
        gap: 44px;
    }
    .gap-46-note {
        gap: 46px;
    }
    .gap-48-note {
        gap: 48px;
    }
    .order--1-note {
        order: -1;
    }
    .order--2-note {
        order: -2;
    }
    .order--3-note {
        order: -3;
    }
    .order--4-note {
        order: -4;
    }
    .order--5-note {
        order: -5;
    }
    .order--6-note {
        order: -6;
    }
    .order--7-note {
        order: -7;
    }
    .order--8-note {
        order: -8;
    }
    .order--9-note {
        order: -9;
    }
    .order--10-note {
        order: -10;
    }
    .order-off-note {
        order: 0;
    }
    .order-0-note {
        order: 0;
    }
    .order-1-note {
        order: 1;
    }
    .order-2-note {
        order: 2;
    }
    .order-3-note {
        order: 3;
    }
    .order-4-note {
        order: 4;
    }
    .order-5-note {
        order: 5;
    }
    .order-6-note {
        order: 6;
    }
    .order-7-note {
        order: 7;
    }
    .order-8-note {
        order: 8;
    }
    .order-9-note {
        order: 9;
    }
    .order-10-note {
        order: 10;
    }
    .columns-1-note {
        grid-template-columns: 1fr;
    }
    .columns-2-note {
        grid-template-columns: repeat(2, 1fr);
    }
    .columns-3-note {
        grid-template-columns: repeat(3, 1fr);
    }
    .columns-4-note {
        grid-template-columns: repeat(4, 1fr);
    }
    .columns-5-note {
        grid-template-columns: repeat(5, 1fr);
    }
    .columns-6-note {
        grid-template-columns: repeat(6, 1fr);
    }
    .columns-7-note {
        grid-template-columns: repeat(7, 1fr);
    }
    .columns-8-note {
        grid-template-columns: repeat(8, 1fr);
    }
    .columns-9-note {
        grid-template-columns: repeat(9, 1fr);
    }
    .columns-10-note {
        grid-template-columns: repeat(10, 1fr);
    }
    .columns-1-auto-note {
        grid-template-columns: auto;
    }
    .columns-2-auto-note {
        grid-template-columns: repeat(2, auto);
    }
    .columns-3-auto-note {
        grid-template-columns: repeat(3, auto);
    }
    .columns-4-auto-note {
        grid-template-columns: repeat(4, auto);
    }
    .columns-5-auto-note {
        grid-template-columns: repeat(5, auto);
    }
    .columns-6-auto-note {
        grid-template-columns: repeat(6, auto);
    }
    .columns-7-auto-note {
        grid-template-columns: repeat(7, auto);
    }
    .columns-8-auto-note {
        grid-template-columns: repeat(8, auto);
    }
    .columns-9-auto-note {
        grid-template-columns: repeat(9, auto);
    }
    .columns-10-auto-note {
        grid-template-columns: repeat(10, auto);
    }
    .columns-auto-last-note {
        grid-template-columns: 1fr auto;
    }
    .columns-auto-first-note {
        grid-template-columns: auto 1fr;
    }
    .column-100-note {
        grid-column: 1/-1;
    }
    .column-off-note {
        grid-column: auto;
    }
    .column-auto-note {
        grid-column: auto;
    }
    .flex-row-note {
        flex-direction: row;
    }
    .flex-column-note {
        flex-direction: column;
    }
    .flex-column-off-note {
        flex-direction: row;
    }
    .flex-wrap-note {
        flex-wrap: wrap;
    }
    .flex-wrap-off-note {
        flex-wrap: nowrap;
    }
    .flex-grow-0-note {
        flex-grow: 0;
    }
    .flex-grow-1-note {
        flex-grow: 1;
    }
    .flex-grow-2-note {
        flex-grow: 2;
    }
    .flex-grow-off-note {
        flex-grow: 0;
    }
    .text-left-note {
        text-align: left;
    }
    .text-center-note {
        text-align: center;
    }
    .text-right-note {
        text-align: right;
    }
    .text-justify-note {
        text-align: justify;
    }
    .width-fit-note {
        width: fit-content;
    }
    .width-100-note {
        width: 100%;
    }
    .width-auto-note {
        width: auto;
    }
    .margin-right-auto-note {
        margin-left: 0;
        margin-right: auto;
    }
    .margin-left-auto-note {
        margin-left: auto;
        margin-right: 0;
    }
    .margin-center-note {
        margin-left: auto;
        margin-right: auto;
    }
    .font-text-note {
        font-family: var(--font-text);
    }
    .font-head-note {
        font-family: var(--font-head);
    }
    .font-second-tablet {
        font-family: var(--font-second);
    }
}
@media (max-width: 1200px) {
    .block-tablet {
        display: block;
    }
    .grid-tablet {
        display: grid;
    }
    .flex-tablet {
        display: flex;
        flex-wrap: wrap;
    }
    .none-tablet {
        display: none;
    }
    .align-top-tablet {
        align-items: start;
    }
    .align-middle-tablet {
        align-items: center;
    }
    .align-bottom-tablet {
        align-items: end;
    }
    .align-start-tablet {
        justify-content: start;
    }
    .align-stretch-tablet {
        align-items: stretch;
    }
    .align-center-tablet {
        justify-content: center;
    }
    .align-end-tablet {
        justify-content: end;
    }
    .align-left-tablet {
        justify-content: start;
    }
    .align-right-tablet {
        justify-content: end;
    }
    .align-around-tablet {
        justify-content: space-around;
    }
    .align-between-tablet {
        justify-content: space-between;
    }
    .align-evenly-tablet {
        justify-content: space-evenly;
    }
    .gap-0-tablet {
        gap: 0;
    }
    .gap-5-tablet {
        gap: 5px;
    }
    .gap-10-tablet {
        gap: 10px;
    }
    .gap-15-tablet {
        gap: 15px;
    }
    .gap-20-tablet {
        gap: 20px;
    }
    .gap-25-tablet {
        gap: 25px;
    }
    .gap-30-tablet {
        gap: 30px;
    }
    .gap-35-tablet {
        gap: 35px;
    }
    .gap-40-tablet {
        gap: 40px;
    }
    .gap-45-tablet {
        gap: 45px;
    }
    .gap-50-tablet {
        gap: 50px;
    }
    .gap-55-tablet {
        gap: 55px;
    }
    .gap-60-tablet {
        gap: 60px;
    }
    .gap-65-tablet {
        gap: 65px;
    }
    .gap-70-tablet {
        gap: 70px;
    }
    .gap-75-tablet {
        gap: 75px;
    }
    .gap-80-tablet {
        gap: 80px;
    }
    .gap-85-tablet {
        gap: 85px;
    }
    .gap-90-tablet {
        gap: 90px;
    }
    .gap-95-tablet {
        gap: 95px;
    }
    .gap-100-tablet {
        gap: 100px;
    }
    .gap-4-tablet {
        gap: 4px;
    }
    .gap-6-tablet {
        gap: 6px;
    }
    .gap-8-tablet {
        gap: 8px;
    }
    .gap-12-tablet {
        gap: 12px;
    }
    .gap-14-tablet {
        gap: 14px;
    }
    .gap-16-tablet {
        gap: 16px;
    }
    .gap-18-tablet {
        gap: 18px;
    }
    .gap-22-tablet {
        gap: 22px;
    }
    .gap-24-tablet {
        gap: 24px;
    }
    .gap-26-tablet {
        gap: 26px;
    }
    .gap-28-tablet {
        gap: 28px;
    }
    .gap-32-tablet {
        gap: 32px;
    }
    .gap-34-tablet {
        gap: 34px;
    }
    .gap-36-tablet {
        gap: 36px;
    }
    .gap-38-tablet {
        gap: 38px;
    }
    .gap-42-tablet {
        gap: 42px;
    }
    .gap-44-tablet {
        gap: 44px;
    }
    .gap-46-tablet {
        gap: 46px;
    }
    .gap-48-tablet {
        gap: 48px;
    }
    .order--1-tablet {
        order: -1;
    }
    .order--2-tablet {
        order: -2;
    }
    .order--3-tablet {
        order: -3;
    }
    .order--4-tablet {
        order: -4;
    }
    .order--5-tablet {
        order: -5;
    }
    .order--6-tablet {
        order: -6;
    }
    .order--7-tablet {
        order: -7;
    }
    .order--8-tablet {
        order: -8;
    }
    .order--9-tablet {
        order: -9;
    }
    .order--10-tablet {
        order: -10;
    }
    .order-off-tablet {
        order: 0;
    }
    .order-0-tablet {
        order: 0;
    }
    .order-1-tablet {
        order: 1;
    }
    .order-2-tablet {
        order: 2;
    }
    .order-3-tablet {
        order: 3;
    }
    .order-4-tablet {
        order: 4;
    }
    .order-5-tablet {
        order: 5;
    }
    .order-6-tablet {
        order: 6;
    }
    .order-7-tablet {
        order: 7;
    }
    .order-8-tablet {
        order: 8;
    }
    .order-9-tablet {
        order: 9;
    }
    .order-10-tablet {
        order: 10;
    }
    .columns-1-tablet {
        grid-template-columns: 1fr;
    }
    .columns-2-tablet {
        grid-template-columns: repeat(2, 1fr);
    }
    .columns-3-tablet {
        grid-template-columns: repeat(3, 1fr);
    }
    .columns-4-tablet {
        grid-template-columns: repeat(4, 1fr);
    }
    .columns-5-tablet {
        grid-template-columns: repeat(5, 1fr);
    }
    .columns-6-tablet {
        grid-template-columns: repeat(6, 1fr);
    }
    .columns-7-tablet {
        grid-template-columns: repeat(7, 1fr);
    }
    .columns-8-tablet {
        grid-template-columns: repeat(8, 1fr);
    }
    .columns-9-tablet {
        grid-template-columns: repeat(9, 1fr);
    }
    .columns-10-tablet {
        grid-template-columns: repeat(10, 1fr);
    }
    .columns-1-auto-tablet {
        grid-template-columns: auto;
    }
    .columns-2-auto-tablet {
        grid-template-columns: repeat(2, auto);
    }
    .columns-3-auto-tablet {
        grid-template-columns: repeat(3, auto);
    }
    .columns-4-auto-tablet {
        grid-template-columns: repeat(4, auto);
    }
    .columns-5-auto-tablet {
        grid-template-columns: repeat(5, auto);
    }
    .columns-6-auto-tablet {
        grid-template-columns: repeat(6, auto);
    }
    .columns-7-auto-tablet {
        grid-template-columns: repeat(7, auto);
    }
    .columns-8-auto-tablet {
        grid-template-columns: repeat(8, auto);
    }
    .columns-9-auto-tablet {
        grid-template-columns: repeat(9, auto);
    }
    .columns-10-auto-tablet {
        grid-template-columns: repeat(10, auto);
    }
    .columns-auto-last-tablet {
        grid-template-columns: 1fr auto;
    }
    .columns-auto-first-tablet {
        grid-template-columns: auto 1fr;
    }
    .column-100-tablet {
        grid-column: 1/-1;
    }
    .column-off-tablet {
        grid-column: auto;
    }
    .column-auto-tablet {
        grid-column: auto;
    }
    .flex-row-tablet {
        flex-direction: row;
    }
    .flex-column-tablet {
        flex-direction: column;
    }
    .flex-column-off-tablet {
        flex-direction: row;
    }
    .flex-wrap-tablet {
        flex-wrap: wrap;
    }
    .flex-wrap-off-tablet {
        flex-wrap: nowrap;
    }
    .flex-grow-0-tablet {
        flex-grow: 0;
    }
    .flex-grow-1-tablet {
        flex-grow: 1;
    }
    .flex-grow-2-tablet {
        flex-grow: 2;
    }
    .flex-grow-off-tablet {
        flex-grow: 0;
    }
    .text-left-tablet {
        text-align: left;
    }
    .text-center-tablet {
        text-align: center;
    }
    .text-right-tablet {
        text-align: right;
    }
    .text-justify-tablet {
        text-align: justify;
    }
    .width-fit-tablet {
        width: fit-content;
    }
    .width-100-tablet {
        width: 100%;
    }
    .width-auto-tablet {
        width: auto;
    }
    .margin-right-auto-tablet {
        margin-left: 0;
        margin-right: auto;
    }
    .margin-left-auto-tablet {
        margin-left: auto;
        margin-right: 0;
    }
    .margin-center-tablet {
        margin-left: auto;
        margin-right: auto;
    }
    .font-text-tablet {
        font-family: var(--font-text);
    }
    .font-head-tablet {
        font-family: var(--font-head);
    }
    .font-second-tablet {
        font-family: var(--font-second);
    }
}
@media (max-width: 750px) {
    .block-mobile {
        display: block;
    }
    .grid-mobile {
        display: grid;
    }
    .flex-mobile {
        display: flex;
        flex-wrap: wrap;
    }
    .none-mobile {
        display: none;
    }
    .align-top-mobile {
        align-items: start;
    }
    .align-middle-mobile {
        align-items: center;
    }
    .align-bottom-mobile {
        align-items: end;
    }
    .align-start-mobile {
        justify-content: start;
    }
    .align-stretch-mobile {
        align-items: stretch;
    }
    .align-center-mobile {
        justify-content: center;
    }
    .align-end-mobile {
        justify-content: end;
    }
    .align-left-mobile {
        justify-content: start;
    }
    .align-right-mobile {
        justify-content: end;
    }
    .align-around-mobile {
        justify-content: space-around;
    }
    .align-between-mobile {
        justify-content: space-between;
    }
    .align-evenly-mobile {
        justify-content: space-evenly;
    }
    .gap-0-mobile {
        gap: 0;
    }
    .gap-5-mobile {
        gap: 5px;
    }
    .gap-10-mobile {
        gap: 10px;
    }
    .gap-15-mobile {
        gap: 15px;
    }
    .gap-20-mobile {
        gap: 20px;
    }
    .gap-25-mobile {
        gap: 25px;
    }
    .gap-30-mobile {
        gap: 30px;
    }
    .gap-35-mobile {
        gap: 35px;
    }
    .gap-40-mobile {
        gap: 40px;
    }
    .gap-45-mobile {
        gap: 45px;
    }
    .gap-50-mobile {
        gap: 50px;
    }
    .gap-55-mobile {
        gap: 55px;
    }
    .gap-60-mobile {
        gap: 60px;
    }
    .gap-65-mobile {
        gap: 65px;
    }
    .gap-70-mobile {
        gap: 70px;
    }
    .gap-75-mobile {
        gap: 75px;
    }
    .gap-80-mobile {
        gap: 80px;
    }
    .gap-85-mobile {
        gap: 85px;
    }
    .gap-90-mobile {
        gap: 90px;
    }
    .gap-95-mobile {
        gap: 95px;
    }
    .gap-100-mobile {
        gap: 100px;
    }
    .gap-4-mobile {
        gap: 4px;
    }
    .gap-6-mobile {
        gap: 6px;
    }
    .gap-8-mobile {
        gap: 8px;
    }
    .gap-12-mobile {
        gap: 12px;
    }
    .gap-14-mobile {
        gap: 14px;
    }
    .gap-16-mobile {
        gap: 16px;
    }
    .gap-18-mobile {
        gap: 18px;
    }
    .gap-22-mobile {
        gap: 22px;
    }
    .gap-24-mobile {
        gap: 24px;
    }
    .gap-26-mobile {
        gap: 26px;
    }
    .gap-28-mobile {
        gap: 28px;
    }
    .gap-32-mobile {
        gap: 32px;
    }
    .gap-34-mobile {
        gap: 34px;
    }
    .gap-36-mobile {
        gap: 36px;
    }
    .gap-38-mobile {
        gap: 38px;
    }
    .gap-42-mobile {
        gap: 42px;
    }
    .gap-44-mobile {
        gap: 44px;
    }
    .gap-46-mobile {
        gap: 46px;
    }
    .gap-48-mobile {
        gap: 48px;
    }
    .order--1-mobile {
        order: -1;
    }
    .order--2-mobile {
        order: -2;
    }
    .order--3-mobile {
        order: -3;
    }
    .order--4-mobile {
        order: -4;
    }
    .order--5-mobile {
        order: -5;
    }
    .order--6-mobile {
        order: -6;
    }
    .order--7-mobile {
        order: -7;
    }
    .order--8-mobile {
        order: -8;
    }
    .order--9-mobile {
        order: -9;
    }
    .order--10-mobile {
        order: -10;
    }
    .order-off-mobile {
        order: 0;
    }
    .order-0-mobile {
        order: 0;
    }
    .order-1-mobile {
        order: 1;
    }
    .order-2-mobile {
        order: 2;
    }
    .order-3-mobile {
        order: 3;
    }
    .order-4-mobile {
        order: 4;
    }
    .order-5-mobile {
        order: 5;
    }
    .order-6-mobile {
        order: 6;
    }
    .order-7-mobile {
        order: 7;
    }
    .order-8-mobile {
        order: 8;
    }
    .order-9-mobile {
        order: 9;
    }
    .order-10-mobile {
        order: 10;
    }
    .columns-1-mobile {
        grid-template-columns: 1fr;
    }
    .columns-2-mobile {
        grid-template-columns: repeat(2, 1fr);
    }
    .columns-3-mobile {
        grid-template-columns: repeat(3, 1fr);
    }
    .columns-4-mobile {
        grid-template-columns: repeat(4, 1fr);
    }
    .columns-5-mobile {
        grid-template-columns: repeat(5, 1fr);
    }
    .columns-6-mobile {
        grid-template-columns: repeat(6, 1fr);
    }
    .columns-7-mobile {
        grid-template-columns: repeat(7, 1fr);
    }
    .columns-8-mobile {
        grid-template-columns: repeat(8, 1fr);
    }
    .columns-9-mobile {
        grid-template-columns: repeat(9, 1fr);
    }
    .columns-10-mobile {
        grid-template-columns: repeat(10, 1fr);
    }
    .columns-1-auto-mobile {
        grid-template-columns: auto;
    }
    .columns-2-auto-mobile {
        grid-template-columns: repeat(2, auto);
    }
    .columns-3-auto-mobile {
        grid-template-columns: repeat(3, auto);
    }
    .columns-4-auto-mobile {
        grid-template-columns: repeat(4, auto);
    }
    .columns-5-auto-mobile {
        grid-template-columns: repeat(5, auto);
    }
    .columns-6-auto-mobile {
        grid-template-columns: repeat(6, auto);
    }
    .columns-7-auto-mobile {
        grid-template-columns: repeat(7, auto);
    }
    .columns-8-auto-mobile {
        grid-template-columns: repeat(8, auto);
    }
    .columns-9-auto-mobile {
        grid-template-columns: repeat(9, auto);
    }
    .columns-10-auto-mobile {
        grid-template-columns: repeat(10, auto);
    }
    .columns-auto-last-mobile {
        grid-template-columns: 1fr auto;
    }
    .columns-auto-first-mobile {
        grid-template-columns: auto 1fr;
    }
    .column-100-mobile {
        grid-column: 1/-1;
    }
    .column-off-mobile {
        grid-column: auto;
    }
    .column-auto-mobile {
        grid-column: auto;
    }
    .flex-row-mobile {
        flex-direction: row;
    }
    .flex-column-mobile {
        flex-direction: column;
    }
    .flex-column-off-mobile {
        flex-direction: row;
    }
    .flex-wrap-mobile {
        flex-wrap: wrap;
    }
    .flex-wrap-off-mobile {
        flex-wrap: nowrap;
    }
    .flex-grow-0-mobile {
        flex-grow: 0;
    }
    .flex-grow-1-mobile {
        flex-grow: 1;
    }
    .flex-grow-2-mobile {
        flex-grow: 2;
    }
    .flex-grow-off-mobile {
        flex-grow: 0;
    }
    .text-left-mobile {
        text-align: left;
    }
    .text-center-mobile {
        text-align: center;
    }
    .text-right-mobile {
        text-align: right;
    }
    .text-justify-mobile {
        text-align: justify;
    }
    .width-fit-mobile {
        width: fit-content;
    }
    .width-100-mobile {
        width: 100%;
    }
    .width-auto-mobile {
        width: auto;
    }
    .margin-right-auto-mobile {
        margin-left: 0;
        margin-right: auto;
    }
    .margin-left-auto-mobile {
        margin-left: auto;
        margin-right: 0;
    }
    .margin-center-mobile {
        margin-left: auto;
        margin-right: auto;
    }
    .font-text-mobile {
        font-family: var(--font-text);
    }
    .font-head-mobile {
        font-family: var(--font-head);
    }
    .font-second-mobile {
        font-family: var(--font-second);
    }
}
/* SIMPLE SLIDER SETTINGS
.tns-controls {position:absolute;z-index:3;bottom:30px;left:35px;width:335px;display:flex;justify-content:space-between;align-items:end;height:0;}
.tns-controls [data-controls] {display:block;width:20px;height:20px;border:0;border-radius:0;background:none;overflow:hidden;padding:0;text-indent:40px;}
.tns-controls [data-controls="prev"] {background:url('/images/slider-prev.svg') left center no-repeat;}
.tns-controls [data-controls="next"] {background:url('/images/slider-next.svg') right center no-repeat;}
*/

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: fit-content;
    padding: 19px 28px 19px 28px;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    line-height: 18px;
    font-family: var(--font-head);
    background: #ffffff;
    color: var(--color-blue);
    box-shadow: 0 15px 20px rgba(25, 139, 169, 0.16);
    text-transform: uppercase;
    border: 0;
    border-radius: 0;
    transition: 0.5s;
    cursor: pointer;
}
.fancybox-content .btn {
    border: 1px solid var(--color-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: fit-content;
    padding: 19px 28px 19px 28px;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    line-height: 18px;
    font-family: var(--font-head);
    background: #ffffff;
    color: var(--color-blue);
    box-shadow: 0 15px 20px rgba(25, 139, 169, 0.16);
    text-transform: uppercase;
    border-radius: 0;
    transition: 0.5s;
    cursor: pointer;
}
.btn[name="qfsubmit"] {
    width: 100%;
    background: var(--color-blue);
    color: #ffffff;
    box-shadow: 0 0 0 1px var(--color-blue);
}
.btn[name="qfsubmit"]:hover {
    background: #ffffff;
    color: var(--color-blue);
    box-shadow: 0 0 0 1px var(--color-blue);
}
.btn:hover {
    background: var(--color-blue);
    color: #ffffff;
    box-shadow: none;
}
.btn-arrow:after {
    content: "";
    width: 13px;
    height: 13px;
    background: url("/images/button-arrow-blue.svg") center center no-repeat;
    transition: 0.5s;
}
.btn-arrow:hover:after {
    filter: brightness(0) invert(1);
}
.btn-middle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-decoration: none;
    text-align: center;
    width: fit-content;
    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
    padding: 15px 17px;
    border: 1px solid var(--color-blue);
    color: var(--color-blue);
    font-family: var(--font-head);
    text-transform: uppercase;
}
.btn-middle:hover {
    background: var(--color-blue);
    color: #ffffff;
}
.btn-small {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: fit-content;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    padding: 9px 15px 10px 15px;
    border: 1px solid var(--color-blue);
    color: #ffffff;
    background: none;
    text-align: center;
}
.btn-small:hover {
    background: var(--color-blue);
    color: #ffffff;
}
@media (max-width: 1200px) {
    .btn {
        font-weight: 600;
        font-size: 12px;
        line-height: 16px;
        padding: 15px 24px 16px 24px;
    }
}
@media (max-width: 750px) {
    .btn {
        font-size: 11px;
        line-height: 15px;
    }
}

.socials a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid var(--color-blue);
    display: flex;
    align-items: center;
    justify-content: center;
}
.socials a img {
    max-width: 20px;
    max-height: 20px;
}
.socials a:hover {
    background-color: var(--color-blue);
}
.content .socials a:not(:hover) {
    background-color: var(--color-dark);
}
@media (max-width: 1200px) {
    .socials a {
        width: 32px;
        height: 32px;
    }
    .socials a img {
        max-width: 16px;
        max-height: 16px;
        width: auto;
        height: auto;
    }
    .footer .socials {
        grid-area: 1/3/4/2;
    }
}
@media (max-width: 750px) {
    .footer .socials {
        grid-area: auto;
        position: absolute;
        top: 0;
        right: 0;
    }
}

.menu ul.mod-menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: start;
}
.menu ul.mod-menu > li {
    padding: 0;
    margin: 0;
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: start;
}
.menu ul.mod-menu > li:not(:last-child):after {
    content: "";
    width: 1px;
    height: 12px;
    background: #7b7b7b;
    opacity: 0.4;
}
.menu ul.mod-menu > li > a {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-transform: uppercase;
    position: relative;
}
.menu ul.mod-menu > li > a:after {
    content: "";
    position: absolute;
    background: var(--color-blue-light);
    top: calc(100% + 4px);
    left: 0;
    width: 0;
    height: 2px;
    transition: 0.5s;
}
.menu ul.mod-menu > li.active > a {
    color: var(--color-href-hover);
}
.menu ul.mod-menu > li.active > a:after,
.menu ul.mod-menu > li > a:hover:after {
    width: 100%;
}
@media (max-width: 900px) {
    .menu ul.mod-menu,
    .menu ul.mod-menu > li {
        gap: 8px;
    }
    .menu ul.mod-menu > li > a {
        font-size: 15px;
    }
}
@media (max-width: 750px) {
    .menu ul.mod-menu {
        display: none;
    }
}

.breadcrumb {
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 12px;
    flex-wrap: wrap;
    padding: 0 0 21px 0;
}
.breadcrumb li:first-child {
    display: none;
}
.breadcrumb li {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 12px;
}
.breadcrumb li:not(:last-child):after {
    content: "|";
    color: #d1d1d1;
}
.breadcrumb li > a,
.breadcrumb li > span {
    display: block;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.3;
}
.breadcrumb li > span {
    color: var(--color-blue);
}
.breadcrumb li > a {
    color: #8f8f8f;
    text-decoration: underline;
}
.breadcrumb li > a:hover {
    color: var(--color-blue);
    text-decoration: none;
}

.pagination {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 0;
    align-items: center;
    justify-content: center;
}
.pagination li.disabled {
    opacity: 0.5;
}
.pagination li > * {
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    color: #252324;
    width: 40px;
    height: 40px;
}
.pagination li:first-child > * {
    background: url("/images/nav-left.svg") center center no-repeat;
}
.pagination li:last-child > * {
    background: url("/images/nav-right.svg") center center no-repeat;
}
.pagination li.active {
    position: relative;
}
.pagination li.active:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}
.pagination li.active a {
    color: var(--color-blue);
    background-color: #ddeef2;
    position: relative;
    z-index: 1;
}
.pagination li:hover a {
    color: var(--color-blue);
}

body#tengu {
    background: url("/images/bg.svg") top center no-repeat;
    background-color: var(--color-back);
}
body.mainpage#tengu {
    background: url("/images/consulting-bg.svg") top center no-repeat;
    background-color: var(--color-back);
}
h2 {
    position: relative;
}
h3 {
    position: relative;
    color: #ffffff;
    width: fit-content;
    padding: 14px 31px 15px 0;
    line-height: 1.6;
}
h2:before {
    content: "";
    position: absolute;
    right: calc(100% + 32px);
    top: calc(50% - 1px);
    left: -100vw;
    height: 2px;
    background-color: var(--color-blue);
}
h3:before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    left: -100vw;
    bottom: 0;
    background-color: var(--color-blue);
    z-index: -1;
}
.contentpage h1 {
    font-size: 32px;
    text-transform: none;
    position: relative;
}
.contacts h2 {
    text-transform: none;
    font-size: 25px;
}
.contentpage h1:before {
    content: "";
    position: absolute;
    right: calc(100% + 32px);
    top: calc(50% - 1px);
    left: -100%;
    height: 2px;
    background-color: var(--color-blue);
}
@media (max-width: 1200px) {
    .mainpage:not body#tengu {
        background: var(--color-back) !important;
    }
    h2:before {
        display: none;
    }
    h3 {
        padding: 14px;
    }
    h3:before {
        left: 0;
    }
    .contentpage h1 {
        font-size: 24px;
    }
}
@media (max-width: 750px) {
    body#tengu {
        background: var(--color-back) !important;
    }
    h1,
    h2,
    h3 {
        text-align: center;
        box-sizing: border-box;
    }
    h3 {
        width: 100%;
    }
    .contentpage h1 {
        font-size: 20px;
    }
}

.quote {
    padding-left: 53px;
    background: url("/images/icon-quote.svg") left center no-repeat;
    font-size: 26px;
    line-height: 1.1538;
    font-family: var(--font-head);
}
.color-blue {
    color: var(--color-blue);
}
.color-yellow {
    color: var(--color-yellow);
}
.color-green {
    color: var(--color-green);
}
.color-red {
    color: var(--color-red);
}
@media (max-width: 1600px) {
    .quote {
        font-size: 24px;
        line-height: 1.5;
    }
}
@media (max-width: 1200px) {
    .quote {
        font-size: 18px;
        line-height: 1.5;
    }
}
@media (max-width: 750px) {
    .quote {
        font-size: 14px;
        line-height: 1.5;
    }
}

.menu {
    padding: 30px var(--padding);
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}
.about .menu {
    position: absolute;
    top: 0;
    width: 100%;
}
.menu.sticky {
    padding: 30px var(--padding);
    position: fixed;
    top: 0;
    width: 100%;
    background: #ffffff;
    z-index: 99;
    box-shadow: 0 -1px 0 2px #e3e3e3;
}
.menu .logo {
    max-width: 108px;
}
.menu.sticky .logo {
    display: block;
}
.menu .custom > .btn-small:not(:hover) {
    color: var(--color-blue);
}
@media (max-width: 750px) {
    .menu,
    .menu.sticky {
        padding: 0 var(--padding);
    }
    .menu.sticky .custom {
        justify-content: space-between;
    }
    .menu .logo {
        max-width: 72px;
        order: 1;
    }
    .menu .custom {
        position: relative;
        height: 52px;
    }
    .menu .custom > .btn-small {
        order: 5;
    }
    .menu .custom > .menuswitch {
        order: 10;
    }
}

.about .header {
    padding: 0 var(--padding);
}
.about .header .logo {
    display: block;
    margin-bottom: 95px;
}
.about .header .btn {
    width: 249px;
}
.about .header .in2 {
    position: relative;
    height: 1000px;
    min-height: 100vh;
}
.about .header .img {
    position: absolute;
    top: 40px;
    right: -119px;
    width: 721px;
}
.about .header .img-point-1 {
    left: 6%;
    top: 30%;
}
.about .header .img-point-2 {
    left: 71.5%;
    top: 64%;
}
.about .header .img-point-3 {
    left: 6%;
    top: 98.25%;
}
@media (max-width: 1600px) {
    .about .header {
        overflow: hidden;
    }
    .about .header .img-point-2 .img-point-content {
        margin-left: -270px;
    }
}
@media (max-width: 1200px) {
    .about .header {
        overflow: unset;
    }
    .about .header .in2 {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        height: auto;
        padding: 100px 0;
    }
    .about .header .in2:before {
        display: block;
        text-align: center;
        font-weight: 400;
        font-size: 24px;
        line-height: 1.5;
        color: #525252;
        margin-bottom: 46px;
        font-family: var(--font-head);
        content: "\412\43B\43E\436\435\43D\438\44F\20\432\20\43F\440\43E\435\43A\442\44B\20\441\20\441\438\43B\44C\43D\44B\43C\438\20\444\430\443\43D\434\435\440\430\43C\438\20\438\20\43C\430\441\448\442\430\431\438\440\443\435\43C\44B\43C\438\20\431\438\437\43D\435\441\2D\43C\43E\434\435\43B\44F\43C\438";
    }
    .about .header .img {
        position: relative;
        top: auto;
        right: auto;
        width: 100%;
    }
    .about .header .img img {
        width: 100%;
        height: auto;
    }
    .about .header .img-point-2 {
        left: 3.25%;
        top: 96%;
    }
    .about .header .img-point-1 {
        left: 39%;
        top: 96%;
    }
    .about .header .img-point-3 {
        left: 73%;
        top: 96%;
    }
    .about .header .img-point-2 .img-point-content {
        margin-left: -40px;
    }
    .about .header .img-point-1 .img-point-content {
        margin-left: -180px;
    }
    .about .header .img-point-3 .img-point-content {
        margin-left: 0;
        margin-right: -40px;
        left: auto;
        right: 50%;
    }
}
@media (max-width: 900px) {
    .about .header .in2:before {
        font-size: 20px;
        margin-bottom: 24px;
    }
}
@media (max-width: 750px) {
    .about .header {
        background: none;
    }
    .about .header .custom {
        padding: 52px 0 32px 0;
    }
    .about .header .logo {
        display: block;
        width: fit-content;
        margin: 0 auto 32px auto;
        max-width: 290px;
    }
    .about .header .in2 {
        height: auto;
        padding-left: 0;
        display: block;
        min-height: 1px;
        padding: 32px 0;
    }
    .about .header .in2:before {
        margin-bottom: 12px;
        text-align: center;
    }
    .about .header .img-point-content {
        max-width: 75vw;
    }
    .about .header .img-point-2 .img-point-content {
        margin-left: -0.25vw;
    }
    .about .header .img-point-1 .img-point-content {
        margin-left: -36vw;
    }
    .about .header .img-point-3 .img-point-content {
        margin-left: 0;
        margin-right: -24vw;
        left: auto;
        right: 50%;
    }
    .about .header .img-point-2 .img-point-content {
        margin-left: -20px;
        left: 0;
    }
    .about .header .img-point-1 .img-point-content {
        margin-left: calc((30px - 100vw) / 100 * 39);
        left: 0;
    }
    .about .header .img-point-3 .img-point-content {
        margin-left: auto;
        margin-right: calc((30px - 100vw) / 100 * 24);
        right: 0;
    }
}
@media (max-width: 450px) {
    .about .header .in2:before {
        font-size: 14px;
        margin-bottom: 6px;
        text-align: center;
    }
}

.consulting .header {
    padding: 0 var(--padding);
}
.consulting .header .logo {
    display: block;
    margin-bottom: 26px;
}
.consulting .header .textline {
    font-family: var(--font-head);
    font-weight: 400;
    font-size: 26px;
    line-height: 1.5;
    color: #525252;
}
.consulting .header .textline + .textline {
    margin: 12px 0 76px 0;
}
.consulting .header .btn {
    width: 249px;
}
.consulting .header .in2 {
    position: relative;
    min-height: 100vh;
}
.consulting .header .img {
    position: absolute;
    top: 405px;
    left: 36px;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.consulting .header .img span {
    font-family: var(--font-head);
    font-weight: 400;
    font-size: 34px;
    line-height: 1.5;
    text-align: center;
    color: var(--color-blue);
    max-width: 320px;
}

@media (max-width: 750px) {
    .consulting .header {
        padding: 120px var(--padding) 60px var(--padding);
    }
    .consulting .header .logo {
        max-width: 290px;
        margin: 0 auto 26px auto;
    }
    .consulting .header .textline {
        text-align: center;
    }
    .consulting .header .textline + .textline {
        margin: 12px 0 24px 0;
    }
    .consulting .header .btn {
        margin: 0 auto 16px auto;
    }
    .consulting .header .in2 {
        min-height: 1px;
    }
    .consulting .header .img {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
    }
    .consulting .header .textline {
        font-size: 24px;
        line-height: 1.5;
    }
    .consulting .header .img span {
        max-width: 100%;
        font-weight: 400;
        font-size: 26px;
        line-height: 1.5;
        color: #525252;
    }
}

@media (max-width: 900px) {
    .consulting .header .textline {
        font-size: 20px;
        line-height: 1.5;
    }
    .consulting .header .img span {
        max-width: 100%;
        font-weight: 400;
        font-size: 24px;
        line-height: 1.5;
        color: #525252;
    }
}
@media (max-width: 750px) {
    .consulting .header {
        padding: 52px var(--padding) 40px var(--padding);
    }
    .consulting .header .textline span {
        display: block;
    }
}

.contentpage {
    padding-top: 100px;
}
.contentpage .content {
    padding: 24px var(--padding) 148px var(--padding);
    min-height: calc(100vh - 215px);
    position: relative;
}
.contentpage .content:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    bottom: 80px;
    width: calc(50% - var(--width) / 2 + var(--width));
    background: #ffffff;
}
.contacts .content:before {
    content: "";
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;
    bottom: 80px;
    width: calc(50% - var(--width) / 2 + var(--width));
    background: #ffffff url(/images/logo_picture.svg) no-repeat -460% 25%;
    background-size: 110%;
}
.contacts .content:after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    bottom: 80px;
    width: calc(50% - var(--width) / 2 + var(--width));
    background: #ffffff99;
    height: 100%;
}

.contentpage .content .custom {
    padding-right: 52px;
}
.item-page h2 {
    font-weight: 600;
    font-size: 26px;
    line-height: 1.4;
    color: #232323;
    text-transform: none;
}
.item-page h3 {
    font-weight: 700;
    font-size: 22px;
    line-height: 1.4;
    color: #232323;
    text-transform: none;
    padding: 0;
}
.item-page h4 {
    font-weight: 600;
    font-size: 18px;
    line-height: 1.4;
}
.item-page h2:before {
    display: none;
}
.item-page h3:before {
    display: none;
}
blockquote {
    border-left: 2px solid var(--color-blue);
    padding-left: 16px;
    margin: 1.25em 0;
}
blockquote:last-child {
    margin-bottom: 0;
}
@media (max-width: 1600px) {
    .contentpage .content {
        padding: 28px var(--padding) 56px var(--padding);
    }
    .contentpage .content:before {
        bottom: 28px;
    }
}
@media (max-width: 1200px) {
    .contentpage .content {
        padding: 28px var(--padding) 56px var(--padding);
    }
    .contentpage .content .custom {
        padding-right: 0;
    }
    .contentpage .content:before {
        bottom: 28px;
    }
    .item-page h2 {
        font-size: 18px;
    }
    .item-page h3 {
        font-weight: 600;
        font-size: 16px;
    }
    .item-page h4 {
        font-size: 15px;
    }
}
@media (max-width: 750px) {
    .contentpage .content {
        padding: 28px var(--padding);
        background: #ffffff;
    }
    .contentpage .content:before {
        display: none;
    }
    .item-page h2,
    .item-page h3,
    .item-page h4 {
        text-align: left;
    }
    blockquote {
        border-left: 1px solid var(--color-blue);
        margin: 1em 0;
    }
}

.about-us {
    padding: 0 var(--padding);
}
.about-us .custom {
    padding: 80px 0 120px 0;
    position: relative;
}
.about-us .custom:before {
    content: "";
    position: absolute;
    top: 0;
    right: 25px;
    bottom: 160px;
    left: -100%;
    background: #ffffff;
    z-index: -1;
    box-shadow: 0 20px 250px rgba(66, 121, 135, 0.13);
}
.about-us h2 {
    margin-bottom: 32px;
}
.about-us h3 {
    margin-bottom: 48px;
}
.about-us .quote {
    max-width: 725px;
    margin-bottom: 64px;
}
.about-us .t_news {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    align-items: stretch;
    justify-content: start;
}
.about-us .t_item-wrapper {
    border-top: 2px solid var(--color-blue);
    border-left: 2px solid var(--color-blue);
    background: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
}
.about-us .t_item {
    padding: 64px 32px 60px 32px;
    position: relative;
}
.about-us .t_item-image {
    position: absolute;
    left: 32px;
    top: 0;
    transform: translateY(-50%);
    background: linear-gradient(to left, #ffffff, #ffffff);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 4px;
}
.about-us .t_item-title {
    font-weight: 700;
    font-size: 22px;
    line-height: 1.4;
    color: var(--color-blue);
    display: block;
    margin-bottom: 12px;
}
.about-us .t_item-text {
    font-weight: 400;
    font-size: 15px;
    line-height: 1.6;
    color: #525252;
}
@media (max-width: 1600px) {
    .about-us .custom {
        padding: 60px 0;
    }
    .about-us .custom:before {
        top: 0;
        right: 25px;
        bottom: 85px;
    }
}
@media (max-width: 1200px) {
    .about-us .custom {
        padding: 40px 0;
    }
    .about-us .custom:before {
        top: 0;
        right: 16px;
        bottom: 56px;
    }
    .about-us .quote {
        margin-bottom: 36px;
    }
    .about-us .t_item {
        padding: 32px 24px;
    }
    .about-us .t_item-image {
        left: 24px;
        width: 71px;
        height: 40px;
        object-fit: contain;
    }
    .about-us .t_item-title {
        font-size: 16px;
        margin-bottom: 6px;
    }
    .about-us .t_item-text {
        font-size: 12px;
    }
}
@media (max-width: 750px) {
    .about-us .custom {
        padding: 28px 0;
    }
    .about-us .custom:before {
        top: 0;
        right: 16px;
        bottom: 44px;
    }
    .about-us h2 {
        margin-bottom: 24px;
        text-align: left;
        padding-right: 24px;
    }
    .about-us h3 {
        margin-bottom: 24px;
        padding: 14px 16px;
        margin-left: -16px;
        text-align: left;
        max-width: calc(100% - 48px);
    }
    .about-us .quote {
        margin-bottom: 28px;
        max-width: calc(100% - 32px);
    }
    .about-us .t_news {
        grid-template-columns: repeat(1, 1fr);
        gap: 36px;
    }
    .about-us .t_item-title {
        font-size: 14px;
        margin-bottom: 4px;
    }
}

.team {
    padding: 0 var(--padding);
}
.team .custom {
    padding: 80px 0;
    position: relative;
}
.team h2 {
    margin-bottom: 48px;
}
.team .teamflex {
    position: absolute;
    top: 80px;
    right: 0;
}
.team .teamflex > div {
    max-width: 475px;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.4;
    color: #525252;
}
.team .t_news {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch;
}
.team .t_item-wrapper {
    padding-left: 16px;
    padding-top: 276px;
    position: relative;
    background: url("/images/team-bg.svg") right 82px no-repeat;
    display: flex;
    flex-direction: column;
}
.team .t_item-wrapper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 16px;
    right: 0;
    background: var(--color-blue);
    z-index: -1;
}
.team .t_item {
    background: #ffffff;
    height: 100%;
}
.team .t_item-content {
    background: #ffffff;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.team .t_item-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 276px;
    min-width: 100%;
    object-fit: scale-down;
    object-position: right bottom;
}
.team .t_item-title {
    position: absolute;
    top: 16px;
    left: 16px;
    color: #ffffff;
    font-family: var(--font-head);
    font-weight: 700;
    font-size: 22px;
    line-height: 1.3;
    max-width: 50%;
}
.team .t_item-title span {
    display: block;
    font-size: 14px;
    line-height: 18px;
    font-weight: 400;
    font-family: var(--font-text);
    margin-top: 12px;
}
.team .t_item-title span + span {
    margin-top: 0;
}
.team .t_item-text {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    align-items: start;
    justify-content: space-between;
    padding: 32px 16px;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.4;
    color: #525252;
}
.team .digs1,
.team .digs2 {
    display: grid;
    padding: 16px;
    background: #ebf4f7;
    color: var(--color-blue);
    align-items: center;
    min-height: 130px;
}
.team .digs1 {
    grid-template-columns: 1fr 1px 42px;
    gap: 12px 24px;
}
.team .digs2 {
    grid-template-columns: 1fr 42px;
    gap: 12px;
}
.team .digs1 span:nth-child(2n-1),
.team .digs2 span:nth-child(2n-1) {
    font-size: 13px;
    line-height: 1.4;
}
.team .digs1 span:nth-child(2n),
.team .digs2 span:nth-child(2n) {
    font-weight: 500;
    font-size: 18px;
    line-height: 1;
}
.team .digs1:after {
    content: "";
    grid-area: 1/3/2/2;
    height: 100%;
    width: 1px;
    background: #a3cad7;
}
.team .digs2:after {
    content: "";
    grid-area: 2/3/3/1;
    height: 1px;
    width: 100%;
    background: #a3cad7;
}
.team .experience {
    font-weight: 400;
    font-size: 10px;
    line-height: 1.6;
    text-align: center;
    color: #7b7b7b;
    padding: 16px 14px;
    position: relative;
    min-height: 118px;
}
.team .experience:before {
    content: "\41E\43F\44B\442";
    display: block;
    margin: 0 auto 15px auto;
    padding: 0 10px;
    width: fit-content;
    background: #ffffff;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.4;
    color: #68787d;
    text-transform: uppercase;
    position: relative;
    z-index: 2;
}
.team .experience:after {
    content: "";
    position: absolute;
    height: 1px;
    left: 0;
    right: 0;
    top: 24px;
    background: #c7dfe7;
    z-index: 1;
}
@media (max-width: 1600px) {
    .team .custom {
        padding: 60px 0;
    }
    .team h2 {
        margin-bottom: 36px;
    }
    .team .teamflex {
        top: 60px;
    }
}
@media (max-width: 1200px) {
    .team .custom {
        padding: 40px 0;
    }
    .team .t_news {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
    .team h2 {
        margin-bottom: 28px;
    }
    .team .t_item-wrapper {
        padding-top: 164px;
        background: url("/images/team-bg.svg") right top no-repeat;
    }
    .team .t_item-image {
        height: 164px;
    }
    .team .teamflex {
        top: auto;
        position: relative;
        margin-bottom: 24px;
        justify-content: space-between;
    }
}
@media (max-width: 750px) {
    .team .custom {
        padding: 28px 0;
    }
    .team h2 {
        margin-bottom: 24px;
    }
    .team .t_news {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
    .team .t_item-wrapper {
        padding-left: 6px;
        padding-top: 95px;
        background: url("/images/team-bg.svg") right top no-repeat;
    }
    .team .t_item-wrapper:before {
        bottom: 6px;
    }
    .team .t_item-image {
        height: 95px;
    }
    .team .t_item-title {
        position: absolute;
        top: 16px;
        left: 20px;
        font-size: 16px;
        max-width: 100%;
    }
    .team .t_item-text {
        padding: 16px 14px;
        font-size: 12px;
    }
    .team .digs1,
    .team .digs2,
    .team .experience {
        min-height: 1px;
    }
    .team .teamflex {
        gap: 12px;
    }
    .team .teamflex > div {
        font-size: 16px;
        width: 100%;
        max-width: 100%;
    }
}

.steps {
    padding: 0 var(--padding);
}
.steps .custom {
    padding: 80px 0;
}
.steps h2 {
    margin-bottom: 40px;
}
.steps .t_news {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px 0;
    align-items: stretch;
}
.steps .t_item-wrapper {
    padding-top: calc(51px + 19px);
    display: grid;
    align-items: start;
}
.steps .t_item {
    height: 100%;
    position: relative;
    padding: 0 24px 24px 24px;
    background: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
}
.steps .t_item-title {
    display: block;
    padding: 12px 24px 10px 23px;
    font-weight: 600;
    font-size: 16px;
    line-height: 1;
    text-transform: uppercase;
    background: var(--color-blue);
    color: #ffffff;
    position: relative;
    margin-top: -19px;
    margin-bottom: 24px;
}
.steps .t_item-text {
    display: block;
    border-left: 2px solid var(--color-blue);
    padding-left: 24px;
    font-size: 16px;
    line-height: 16px;
}
.steps .t_item-text p {
    font-size: 18px;
    line-height: 1.3;
    color: #525252;
}
.steps .t_item-text p strong {
    display: block;
    font-size: 18px;
    line-height: 1.3;
    color: #525252;
}
.steps .t_item-text p.p16 {
    font-size: 16px;
}
.steps .t_item-text p + p {
    margin-top: 24px;
}
.steps-pieces .letters {
    padding: 7px;
    display: grid;
    gap: 5px;
    text-align: center;
    font-weight: 600;
    font-size: 24px;
    line-height: 1;
    color: var(--color-blue);
    border: 1px solid var(--color-blue);
}
.steps-pieces .titles {
    padding: 7px 0;
    display: grid;
    gap: 5px;
    text-align: left;
    font-weight: 600;
    font-size: 16px;
    line-height: 1;
    color: #525252;
}
.steps-pieces .titles > div {
    padding: 4px 0;
}
.steps-graph {
    position: relative;
    margin-bottom: 24px;
}
.steps-graph p:last-child {
    padding-right: 42px;
}
.steps-graph:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -24px;
    left: -24px;
    height: 112px;
    background: url("/images/steps-graph.svg") bottom right no-repeat;
}

.steps .t_item-title:before {
    content: "";
    position: absolute;
    left: 24px;
    bottom: calc(100% - 7px);
    font-family: var(--font-head);
    color: var(--color-blue);
    font-weight: 900;
    font-size: 58px;
    line-height: 1;
}
.steps .t_news > div:nth-child(1) .t_item-title:before {
    content: "2016";
}
.steps .t_news > div:nth-child(2) .t_item-title:before {
    content: "2017";
}
.steps .t_news > div:nth-child(3) .t_item-title:before {
    content: "2018";
}
.steps .t_news > div:nth-child(4) .t_item-title:before {
    content: "2018";
}
.steps .t_news > div:nth-child(5) .t_item-title:before {
    content: "2019";
}
.steps .t_news > div:nth-child(6) .t_item-title:before {
    content: "2020";
}
.steps .t_news > div:nth-child(7) .t_item-title:before {
    content: "2021";
}
.steps .t_news > div:nth-child(8) .t_item-title:before {
    content: "2022";
}
.steps .t_news > div:nth-child(9) .t_item-title:before {
    content: "2023";
}
.steps .t_news > div:nth-child(10) .t_item-title:before {
    content: "2024";
}
@media (max-width: 1600px) {
    .steps .custom {
        padding: 60px 0;
    }
}
@media (max-width: 1200px) {
    .steps .custom {
        padding: 40px 0;
    }
    .steps .t_news {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 750px) {
    .steps .custom {
        padding: 28px 0;
    }
    .steps h2 {
        margin-bottom: 24px;
    }
    .steps .t_news {
        grid-template-columns: repeat(1, 1fr);
        gap: 8px 0;
    }
    .steps .t_item-wrapper {
        padding-top: calc(28px + 16px);
    }
    .steps .t_item-title {
        padding: 10px 16px 9px 16px;
        font-size: 13px;
        line-height: 1;
        margin-top: -16px;
    }
    .steps .t_item-title:before {
        left: 16px;
        bottom: calc(100% - 4px);
        font-size: 32px;
        line-height: 1;
    }
    .steps .t_item-text {
        padding-left: 16px;
        font-size: 14px;
        line-height: 14px;
    }
    .steps .t_item-text p {
        font-size: 14px;
    }
    .steps .t_item-text p strong {
        font-size: 14px;
    }
    .steps .t_item-text p.p16 {
        font-size: 14px;
    }
    .steps .t_item-text p + p {
        margin-top: 16px;
    }
    .steps-graph {
        position: relative;
        margin-bottom: 24px;
        padding-right: 42px;
        min-height: 70px;
    }
    .steps-graph p:last-child {
        padding-right: 0;
    }
}

.business-model {
    padding: 0 var(--padding);
    position: relative;
}
.business-model .custom {
    padding: 80px 0 86px 0;
}
.business-model h2 {
    margin-bottom: 20px;
}
.business-model h3 {
    margin-bottom: 40px;
}
.business-model img {
    margin-left: -2.34%;
    max-width: 102.34%;
    margin-bottom: 26px;
}
.business-model .frame {
    padding: 24px;
    font-weight: 400;
    font-size: 12px;
    line-height: 1;
    border: 1px solid var(--color-blue);
    color: #525252;
}
.business-model .frame sup {
    font-weight: 700;
    color: var(--color-blue);
}
@media (max-width: 1600px) {
    .business-model .custom {
        padding: 60px 0;
    }
}
@media (max-width: 1200px) {
    .business-model .custom {
        padding: 40px 0;
    }
    .business-model h2 {
        margin-bottom: 16px;
    }
    .business-model h3 {
        margin-bottom: 24px;
    }
    .business-model img {
        max-width: calc(100% + 32px);
        width: calc(100% + 32px);
        height: 1050px;
        object-fit: contain;
        object-position: center center;
        margin: 0 -16px 0 -16px;
    }
    .business-model .frame {
        margin-top: -29px;
    }
}
@media (max-width: 750px) {
    .business-model .custom {
        padding: 28px 0;
    }
    .business-model .frame {
        padding: 16px 24px 20px 16px;
        font-size: 11px;
    }
    .business-model .frame .chek {
        display: block;
    }
}
@media (max-width: 352px) {
    .business-model .custom {
        padding: 28px 0;
    }
}

.target-head {
    color: var(--color-blue);
    font-weight: 700;
    font-size: 26px;
    line-height: 1.4;
    font-family: var(--font-head);
    margin-bottom: 8px;
}
.target-text {
    color: #525252;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.4;
    font-family: var(--font-head);
    position: relative;
}
.target-text:before {
    content: "";
    width: 24px;
    height: calc(26px * 1.4);
    position: absolute;
    top: 0;
    left: -40px;
    background: url("/images/target-arrow.svg") center center no-repeat;
}

.img-point {
    position: absolute;
    z-index: 2;
    width: 20px;
    height: 20px;
}
.img-point-dot {
    display: block;
    font-family: var(--font-head);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--color-blue);
    box-shadow: 0 5px 7px rgba(25, 139, 169, 0.54);
    color: #ffffff;
    text-align: center;
    font-weight: 500;
    line-height: 20px;
    cursor: pointer;
    transition: 0.5s;
}
.img-point-content {
    position: absolute;
    display: none;
    z-index: -1;
    opacity: 0;
    transition: 0.5s;
    padding: 24px;
    background: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
    top: calc(100% + 30px);
    left: 50%;
    width: 360px;
    margin-left: -180px;
    border-left: 1px solid var(--color-blue);
    border-top: 1px solid var(--color-blue);
}
.img-point-content:before {
    content: "";
    position: absolute;
    top: -30px;
    height: 30px;
    left: 0;
    right: 0;
}
.img-point-title {
    display: block;
    margin-bottom: 10px;
    font-weight: 700;
    font-size: 22px;
    line-height: 1;
}
.img-point-text {
    font-weight: 400;
    font-size: 13px;
    line-height: 140%;
}
.img-point:hover {
    z-index: 3;
}
.img-point:hover .img-point-dot {
    background: #38bee1;
}
.img-point:hover .img-point-content {
    z-index: 1;
    opacity: 1;
    display: block;
}

.investitions {
    padding: 0 var(--padding);
    position: relative;
}
.investitions:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    padding-top: 50.9375%;
    background: url("/images/investitions-bg.svg") center center no-repeat;
    background-size: contain;
    z-index: -1;
}
.investitions .custom {
    padding: 80px 0 160px 0;
    position: relative;
}
.investitions h2 {
    margin-bottom: 16px;
    position: relative;
    z-index: 2;
}
.investitions h2:after {
    content: "";
    display: block;
    width: var(--width);
    height: 64px;
    background: url("/images/investitions-logo.svg") right center no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.investitions .line1 {
    margin-bottom: 32px;
    font-weight: 300;
    font-size: 48px;
    line-height: 1.5;
    font-family: var(--font-head);
    max-width: 625px;
    position: relative;
    z-index: 2;
}
.investitions .target-block {
    margin-bottom: 48px;
    width: 100%;
    max-width: 405px;
}
.investitions .btn {
    width: 231px;
    position: relative;
    z-index: 2;
}
.investitions .in2 {
    position: relative;
}
.investitions .in2 .img {
    position: absolute;
    top: 0;
    left: 0;
    max-width: calc(100% + 30px);
    z-index: 1;
}
.investitions .in2 img {
    position: relative;
    z-index: 1;
}
.investitions .img-point-1 {
    left: 38%;
    top: 45%;
}
.investitions .img-point-2 {
    left: 33.5%;
    top: 56.5%;
}
.investitions .img-point-3 {
    left: 43.75%;
    top: 64.75%;
}
@media (max-width: 1600px) {
    .investitions .custom {
        padding: 80px 0 160px 0;
    }
    .investitions h2:after {
        max-width: calc(100vw - var(--padding) * 2);
    }
    .investitions .line1 {
        font-size: 36px;
        max-width: 475px;
    }
}
@media (max-width: 1200px) {
    .investitions .custom {
        padding: 40px 0 80px 0;
    }
    .investitions h2:after {
        width: calc(100vw - var(--padding) * 2);
    }
    .investitions .line1 {
        font-size: 28px;
        max-width: 375px;
    }
    .investitions .btn {
        width: 218px;
    }
    .investitions .in2 .img {
        max-width: 100%;
        position: relative;
    }
}
@media (max-width: 750px) {
    .investitions:before {
        display: none;
    }
    .investitions .custom {
        padding: 28px 0 34px 0;
    }
    .investitions .line1 {
        font-weight: 300;
        font-size: 22px;
        line-height: 1.4;
        text-align: center;
        max-width: 300px;
        margin: 0 auto 34px auto;
    }
    .investitions .target-block {
        margin-bottom: 48px;
        max-width: 100%;
    }
    .investitions .in2 .img {
        width: 420px;
        max-width: 70.833vw;
        margin: 0 auto;
    }
    .investitions h2 {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column-reverse;
        gap: 5px;
    }
    .investitions h2:after {
        position: relative;
        background-position: center center;
        left: auto;
        top: auto;
        transform: none;
    }
    /*.investitions img {position:relative;right:auto;top:auto;width:420px;max-width:70.833%;margin:8px auto 0 auto;}*/
}

.footer {
    padding: 0 var(--padding);
    position: relative;
    color: #7b7b7b;
    font-size: 13px;
    line-height: 21px;
    background: url("/images/footer-bg.svg") left center no-repeat;
}
.footer:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 24px;
    bottom: 0;
    background: var(--color-dark);
    transform: skewX(60deg);
    transform-origin: left bottom;
    z-index: -1;
}
.footer .custom {
    padding: 35px 0;
    position: relative;
    z-index: 2;
}
.footer .custom > div {
    position: relative;
}
.footer .links a {
    position: relative;
    font-weight: 400;
    font-size: 13px;
    line-height: 100%;
    color: #8f8f8f;
}
.footer .links a:before {
    content: "";
    position: absolute;
    right: 0;
    top: calc(100% + 1px);
    height: 1px;
    width: 100%;
    background: #8f8f8f;
    opacity: 0.3;
    transition: 0.5s;
}
.footer .links a:hover {
    color: #ffffff;
}
.footer .links a:hover:before {
    width: 0;
}
@media (max-width: 1600px) {
    .footer {
        overflow: hidden;
        max-width: 100%;
    }
    .footer:after {
        right: -144px;
    }
}

@media (max-width: 1370px) {
    .footer {
        background: var(--color-dark);
    }
    .footer:after {
        display: none;
    }
    .footer .custom {
        padding: 32px 0;
    }
}
@media (max-width: 750px) {
    .footer .custom {
        max-width: 328px;
    }
}

.qf3form {
    margin: 1em auto;
    max-width: 304px;
}
.qfcapt {
    display: none;
}
input[type="text"],
input[type="email"],
textarea {
    display: block;
    box-sizing: border-box;
    margin: 0;
    width: 100%;
    padding: 5px 16px;
    font-size: 15px;
    line-height: 24px;
    border: 1px solid var(--color-blue);
    font-family: var(--font-text);
}
.qf3 + .qf3 {
    margin-top: 8px;
}

.content p {
    font-size: 18px;
}
#countdown {
    font-family: var(--font-head);
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0 8px;
    align-items: center;
    justify-content: center;
    font-size: 48px;
    text-transform: lowercase;
    margin: 1em auto;
}
#countdown > div {
    display: flex;
    gap: 8px;
}
@media (max-width: 1200px) {
    .content p {
        font-size: 16px;
    }
    #countdown {
        font-size: 24px;
    }
}

.keydirections {
    padding: 0 var(--padding);
    position: relative;
}
.keydirections .custom {
    padding: 80px 0;
}
.keydirections .custom h2 {
    margin-bottom: 48px;
}
.keydirections .t_news {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.keydirections .t_item-wrapper {
    background: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
    padding: 16px;
    display: flex;
    position: relative;
}
.keydirections .t_item {
    border-left: 2px solid var(--color-blue);
    border-top: 2px solid var(--color-blue);
    padding: 22px 32px 24px 22px;
    width: 100%;
    height: 100%;
    position: relative;
}
.keydirections .t_item-title a {
    font-weight: 700;
    font-size: 22px;
    line-height: 1.4;
    color: var(--color-blue);
    border-bottom: 1px dotted var(--color-blue);
}
.keydirections .t_item-title a:hover {
    color: var(--color-blue-light);
    border-bottom: 1px dotted #ffffff00;
}
.keydirections .t_item-text {
    display: block;
    font-size: 16px;
    line-height: 1.7;
    color: #525252;
    padding-top: 16px;
}
.keydirections .t_item-image {
    position: absolute;
    right: 0;
    bottom: 0;
}
.keydirections .t_item-wrapper:before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    display: block;
    width: 50px;
    font-family: var(--font-head);
    font-weight: 400;
    font-size: 40px;
    line-height: 1;
    padding-top: 10px;
    color: var(--color-blue);
    text-align: center;
    background: #ffffff;
}
.keydirections .t_item-wrapper:nth-child(1):before {
    content: "1";
}
.keydirections .t_item-wrapper:nth-child(2):before {
    content: "2";
}
.keydirections .t_item-wrapper:nth-child(3):before {
    content: "3";
}
.keydirections .t_item-wrapper:nth-child(4):before {
    content: "4";
}
.keydirections .t_item-wrapper:nth-child(5):before {
    content: "5";
}
.keydirections .t_item-wrapper:nth-child(6):before {
    content: "6";
}
.keydirections .t_item-wrapper:nth-child(7):before {
    content: "7";
}
.keydirections .t_item-wrapper:nth-child(8):before {
    content: "8";
}
.keydirections .t_item-wrapper:nth-child(9):before {
    content: "9";
}
.keydirections .btn-middle {
    position: absolute;
    bottom: 0;
    left: 22px;
    border: 1px solid #232323;
    color: #232323;
}
.keydirections .btn-middle:hover {
    border: 1px solid var(--color-blue);
    color: #ffffff;
}
.keydflex {
    margin-top: 24px;
}
@media (max-width: 1600px) {
    .keydirections .custom {
        padding: 60px 0;
    }
}
@media (max-width: 1200px) {
    .keydirections .custom {
        padding: 40px 0;
    }
    .keydirections .t_news {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 750px) {
    .keydirections .custom {
        padding: 28px 0;
    }
    .keydirections .t_news {
        grid-template-columns: repeat(1, 1fr);
    }
    .keydirections .btn-middle {
        position: relative;
        bottom: auto;
        left: auto;
    }
}

.competence {
    padding: 0 var(--padding);
    position: relative;
}
.competence .custom {
    padding: 80px 0;
}
.competence .t_news {
    background: #ffffff;
    box-shadow: 0 20px 250px rgba(66, 121, 135, 0.13);
    padding: 48px;
    display: grid;
    grid-template-columns: auto auto auto auto auto auto;
    gap: 40px 32px;
}
.competence .t_item-wrapper:nth-child(1) {
    grid-area: 1/2/3/1;
    max-width: 300px;
}
.competence .t_item-wrapper:nth-child(2) {
    grid-area: 1/3/2/2;
}
.competence .t_item-wrapper:nth-child(3) {
    grid-area: 1/4/2/3;
}
.competence .t_item-wrapper:nth-child(4) {
    grid-area: 1/6/2/4;
}
.competence .t_item-wrapper:nth-child(5) {
    grid-area: 2/3/3/2;
}
.competence .t_item-wrapper:nth-child(6) {
    grid-area: 2/4/3/3;
}
.competence .t_item-wrapper:nth-child(7) {
    grid-area: 2/5/3/4;
}
.competence .t_item-wrapper:nth-child(8) {
    grid-area: 2/7/3/5;
}
.competence .t_item-wrapper:nth-child(9) {
    grid-area: 1/8/2/6;
}
.competence .t_item-title {
    font-weight: 700;
    font-size: 32px;
    line-height: 1;
    display: block;
    margin-bottom: 12px;
    color: var(--color-blue);
}
.competence .t_item-text {
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    color: #525252;
}
.competence .t_item-text span {
    display: block;
}
@media (max-width: 1600px) {
    .competence .custom {
        padding: 60px 0;
    }
}
@media (max-width: 1200px) {
    .competence .custom {
        padding: 40px 0;
    }
    .competence .t_news {
        grid-template-columns: auto auto auto auto;
        padding: 36px 24px;
        gap: 24px 16px;
    }
    .competence .t_item-wrapper:nth-child(1) {
        grid-area: 1/2/3/1;
        max-width: 300px;
    }
    .competence .t_item-wrapper:nth-child(2) {
        grid-area: 1/3/2/2;
    }
    .competence .t_item-wrapper:nth-child(3) {
        grid-area: 1/4/2/3;
    }
    .competence .t_item-wrapper:nth-child(4) {
        grid-area: 1/7/2/4;
    }
    .competence .t_item-wrapper:nth-child(5) {
        grid-area: 2/3/3/2;
    }
    .competence .t_item-wrapper:nth-child(6) {
        grid-area: 2/4/3/3;
    }
    .competence .t_item-wrapper:nth-child(7) {
        grid-area: 2/5/3/4;
    }
    .competence .t_item-wrapper:nth-child(8) {
        grid-area: 2/7/3/5;
    }
    .competence .t_item-wrapper:nth-child(9) {
        grid-area: 3/7/4/1;
    }
}
@media (max-width: 900px) {
    .competence .t_news {
        grid-template-columns: 2fr 1fr 1fr;
    }
    .competence .t_item-wrapper:nth-child(1) {
        grid-area: 1/2/3/1;
    }
    .competence .t_item-wrapper:nth-child(2) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(3) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(4) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(5) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(6) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(7) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(8) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(9) {
        grid-area: auto;
    }
    .competence .t_item-text span {
        display: inline-block;
    }
}
@media (max-width: 750px) {
    .competence .custom {
        padding: 28px 0;
    }
    .competence .t_news {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .competence .t_item-wrapper:nth-child(1) {
        grid-area: auto;
    }
    .competence .t_item-wrapper:nth-child(1) {
        order: 4;
    }
    .competence .t_item-wrapper:nth-child(2) {
        order: 3;
    }
    .competence .t_item-wrapper:nth-child(3) {
        order: 2;
    }
    .competence .t_item-wrapper:nth-child(4) {
        order: 1;
    }
    .competence .t_item-wrapper:nth-child(5) {
        order: 5;
    }
    .competence .t_item-wrapper:nth-child(6) {
        order: 6;
    }
    .competence .t_item-wrapper:nth-child(7) {
        order: 7;
    }
    .competence .t_item-wrapper:nth-child(8) {
        order: 8;
    }
    .competence .t_item-wrapper:nth-child(9) {
        order: 9;
    }
    .competence .t_item-title {
        font-size: 24px;
        margin-bottom: 6px;
    }
    .competence .t_item-text {
        font-size: 16px;
    }
    .competence .t_item-text p + p {
        margin-top: 6px;
    }
}

.expertisa {
    padding: 0 var(--padding);
    position: relative;
}
.expertisa .custom {
    padding: 80px 0;
}
.expertisa .t_news {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch;
    justify-content: start;
}
.expertisa .t_item {
    padding: 24px 16px 24px 24px;
    display: grid;
    grid-template-columns: 1fr 40px;
    gap: 24px;
    align-items: center;
    justify-content: start;
    background: url("/images/expertisa-bg.svg") left bottom no-repeat;
    background-color: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
    min-height: 114px;
}
.expertisa .t_item-title {
    order: 1;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.4;
}
.expertisa .t_item-image {
    order: 2;
    height: 48px;
    width: 40px;
    object-fit: contain;
    object-position: center bottom;
}
@media (max-width: 1600px) {
    .expertisa .custom {
        padding: 60px 0;
    }
}
@media (max-width: 1200px) {
    .expertisa .custom {
        padding: 40px 0;
    }
    .expertisa .t_news {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}
@media (max-width: 750px) {
    .expertisa .custom {
        padding: 28px 0;
    }
    .expertisa .t_news {
        grid-template-columns: repeat(1, 1fr);
    }
}

.cases {
    padding: 0;
    position: relative;
}
.cases .custom {
    padding: 80px 0;
    max-width: 100%;
}
.cases .custom h2 {
    max-width: var(--width);
    margin: 0 auto 48px auto;
}
.cases .tns-outer {
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
    position: relative;
}
.cases .t_news {
    display: flex;
    align-items: stretch;
}
.cases .t_item-wrapper {
    padding: 0 12px;
    display: flex;
}
.cases .t_item {
    height: 100%;
    display: block;
    padding: 24px 24px 50px 24px;
    background: url("/images/case-bg.svg") right bottom no-repeat;
    background-color: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
}
.cases .t_item:before {
    content: "\41A\435\439\441";
    display: block;
    width: fit-content;
    margin-bottom: 16px;
    padding: 5px 15px 5px 39px;
    background: url("/images/case-icon.svg") 16px center no-repeat;
    font-size: 18px;
    line-height: 1.4;
    text-transform: uppercase;
    color: var(--color-blue);
    border: 1px solid var(--color-blue);
}
.cases .t_item-title {
    font-weight: 700;
    font-size: 22px;
    line-height: 1.4;
}
.cases .tns-controls {
    width: 100%;
    max-width: var(--width);
    margin: 0;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 40px;
    position: absolute;
    top: -102px;
    left: calc(50% - var(--width) / 2);
}
.cases .tns-controls [data-controls] {
    display: block;
    width: 64px;
    height: 24px;
    border: 0;
    border-radius: 0;
    background: none;
    overflow: hidden;
    padding: 0;
    text-indent: 64px;
    cursor: pointer;
    position: relative;
}
.cases .tns-controls [data-controls]:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    transition: 0.5s;
}
.cases .tns-controls [data-controls]:hover:before {
    opacity: 1;
}
.cases .tns-controls [data-controls="prev"] {
    background: url("/images/slider-arrow-left.svg") left center no-repeat;
}
.cases .tns-controls [data-controls="prev"]:before {
    background: url("/images/slider-arrow-left-active.svg") left center no-repeat;
}
.cases .tns-controls [data-controls="next"] {
    background: url("/images/slider-arrow-right.svg") right center no-repeat;
}
.cases .tns-controls [data-controls="next"]:before {
    background: url("/images/slider-arrow-right-active.svg") right center no-repeat;
}
@media (max-width: 1600px) {
    .cases .custom {
        padding: 60px 0;
    }
}
@media (max-width: 1200px) {
    .cases .custom {
        padding: 40px 0;
    }
}
@media (max-width: 750px) {
    .cases .custom {
        padding: 28px 0;
    }
}

.projects {
    padding: 0 var(--padding);
    position: relative;
    margin-bottom: 80px;
}
.projects:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 925px;
    max-width: 50%;
    background: url("/images/projects.jpg") left center no-repeat;
}
.projects .custom {
    padding: 80px 0;
    min-height: calc(625px + 240px);
    display: flex;
    align-items: start;
    justify-content: center;
    flex-direction: column;
}
.projects .custom h2 {
    margin-bottom: 40px;
}
.projects .t_news {
    display: flex;
    align-items: stretch;
    justify-content: start;
    gap: 2px;
    margin-bottom: 56px;
}
.projects .t_item {
    background: #ffffff;
    padding: 20px;
    position: relative;
}
.projects .t_item:after {
    content: "?";
    font-family: var(--font-head);
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--color-blue);
    box-shadow: 0 5px 7px rgba(25, 139, 169, 0.54);
    color: #ffffff;
    text-align: center;
    font-weight: 500;
    line-height: 20px;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
    transition: 0.5s;
}
.projects .t_item-image {
    filter: grayscale(1);
    opacity: 0.66;
    transition: 0.5s;
    width: 90px;
    height: 90px;
    object-fit: contain;
}
.projects .t_item-content {
    display: none;
    opacity: 0;
    z-index: -1;
    transition: 0.5s;
    padding: 24px;
    background: #ffffff;
    box-shadow: 0 16px 30px rgba(66, 121, 135, 0.13);
    position: absolute;
    top: calc(100% + 30px);
    left: 50%;
    width: 360px;
    margin-left: -180px;
}
.projects .t_item-content:before {
    content: "";
    position: absolute;
    top: -30px;
    height: 30px;
    left: 0;
    right: 0;
}
.projects .t_item:hover:after {
    background: #38bee1;
}
.projects .t_item:hover .t_item-image {
    filter: none;
    opacity: 1;
}
.projects .t_item:hover .t_item-content {
    display: block;
    opacity: 1;
    z-index: 3;
}
.projects .t_item-title {
    display: block;
    margin-bottom: 10px;
    font-weight: 700;
    font-size: 22px;
    line-height: 1;
}
.projects .t_item-text {
    font-weight: 400;
    font-size: 13px;
    line-height: 140%;
}
.projects .t_item-text + .btn {
    margin-top: 24px;
}
.projects .target-block {
    margin-bottom: 56px;
    max-width: 100%;
    width: 500px;
}
@media (max-width: 1900px) {
    .projects:after {
        max-width: 45%;
    }
}

@media (max-width: 1600px) {
    .projects .custom {
        padding: 60px 0;
    }
    .projects .t_item-wrapper:nth-child(1) .t_item-content {
        margin-left: 0;
        left: 0;
    }
    .projects .t_item-wrapper:nth-child(4) .t_item-content {
        margin-left: 0;
        left: auto;
        right: 0;
    }
}

@media (max-width: 1200px) {
    .projects .custom {
        padding: 40px 0;
        min-height: 1px;
    }
    /*.projects:after {display:none;}*/
    .projects {
        padding-bottom: 500px;
    }
    .projects:after {
        display: block;
        top: 560px;
        left: 0;
        max-width: 100%;
        background-size: 100% auto;
    }
}
@media (max-width: 750px) {
    .projects .custom {
        padding: 28px 0;
    }
    .projects .t_item-content {
        max-width: calc(100vw - 30px);
    }
    .projects .t_item-wrapper:nth-child(2) .t_item-content {
        margin-left: 0;
        left: calc(30px / 4 - 25vw);
    }
    .projects .t_item-wrapper:nth-child(3) .t_item-content {
        margin-left: 0;
        left: auto;
        right: calc(30px / 4 - 25vw);
    }
    .projects .t_item-wrapper:nth-child(2) .t_item-content {
        margin-left: 0;
        left: -130px;
    }
    .projects .t_item-wrapper:nth-child(3) .t_item-content {
        margin-left: 0;
        left: auto;
        right: -130px;
    }
}
@media (max-width: 556px) {
    .projects .t_item-image {
        max-height: calc(25vw - 30px / 4 - 40px);
    }
    .projects .t_item-wrapper:nth-child(1) .t_item-content {
        margin-left: 0;
        left: 0;
    }
    .projects .t_item-wrapper:nth-child(2) .t_item-content {
        margin-left: 0;
        left: calc(30px / 5 - 20vw);
    }
    .projects .t_item-wrapper:nth-child(3) .t_item-content {
        margin-left: 0;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
    }
    .projects .t_item-wrapper:nth-child(4) .t_item-content {
        margin-left: 0;
        left: auto;
        right: calc(30px / 5 - 20vw);
    }
    .projects .t_item-wrapper:nth-child(5) .t_item-content {
        margin-left: 0;
        left: auto;
        right: 0;
    }
    .projects {
        padding-bottom: 300px;
    }
}

@media (max-width: 350px) {
    .projects:after {
        top: 610px;
    }
    .projects {
        padding-bottom: 200px;
    }
}

.fancybox-content {
    width: auto;
    max-width: 60%;
}
.fancybox-content h4 {
    font-weight: 600;
    font-size: 26px;
    line-height: 1.4;
    margin-bottom: 22px;
}
.fancybox-content h2,
.fancybox-content h3 {
    color: #232323;
    text-transform: none;
}
.fancybox-content h2:before,
.fancybox-content h3:before {
    display: none;
}
@media (max-width: 1200px) {
    .fancybox-content {
        width: auto;
        max-width: 90%;
    }
}

.blog-header {
    border: 1px solid #e3e3e3;
    padding: 40px 20px 40px 310px;
    background: url("/images/blog-headpic5.png") 40px bottom no-repeat;
    display: flex;
    align-items: center;
    justify-content: start;
    flex-wrap: wrap;
    gap: 28px 24px;
    margin-bottom: 56px;
}
.blog-header .title {
    font-family: var(--font-head);
    font-weight: 400;
    font-size: 22px;
    line-height: 1.4;
    color: #232323;
}
.blog-header .title:before {
    content: "\420\430\437\431\438\440\430\44E\20\440\435\430\43B\44C\43D\44B\435\20\43A\435\439\441\44B\20\7C\20\414\435\43B\44E\441\44C\20\44D\43A\441\43F\435\440\442\438\437\43E\439\2C\20\43E\43F\44B\442\43E\43C\20\438\20\438\43D\441\430\439\442\430\43C\438";
}
.blog-header .text {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.4;
    color: #8f8f8f;
}
.blog-header a {
    display: flex;
    gap: 8px;
    align-items: center;
    border: 1px solid var(--color-blue);
    padding: 8px 16px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.4;
}
.blog-header a:before {
    content: "";
    width: 15px;
    height: 15px;
    background: url("/images/blog-telegram.svg") center center no-repeat;
    transition: 0.5s;
}
.blog-header a:hover {
    background: var(--color-blue);
    color: #ffffff;
}
.blog-header a:hover:before {
    filter: brightness(0) invert(1);
}
@media (max-width: 1200px) {
    .blog-header {
        padding: 40px 24px 220px 24px;
        background-position: center bottom;
    }
}
@media (max-width: 750px) {
    .blog-header .title:before {
        content: "\420\430\437\431\438\440\430\44E\20\43A\435\439\441\44B\20\7C\20\414\435\43B\44E\441\44C\20\44D\43A\441\43F\435\440\442\438\437\43E\439\20\438\20\43E\43F\44B\442\43E\43C";
    }
}

.content-right-wrapper {
    display: grid;
    grid-template-columns: 356px 1fr;
    gap: 56px;
    align-items: start;
    justify-content: start;
}
.t_blog-wrapper {
}
.t_blog-list .blog-items {
    display: grid;
    gap: 8px;
    margin-bottom: 24px;
}
.t_blog-item {
    padding: 16px;
    background: #ffffff;
    box-shadow: 0 3px 15px rgba(66, 121, 135, 0.17);
    position: relative;
}
.t_blog-item-info {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 16px;
}
.t_blog-item-info .t_blog-fields {
    margin-bottom: 12px;
}
.t_blog-datetime {
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: end;
}
.t_blog-item h2 {
    font-family: var(--font-text);
    font-weight: 700;
    font-size: 14px;
    line-height: 1.4;
    text-transform: none;
    position: static;
}
.t_blog-item h2:before {
    display: none;
}
.t_blog-item h2 a {
    color: #232323;
}
.t_blog-item h2 a:before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    transition: 0.5s;
    border-left: 1px solid var(--color-blue);
    border-top: 1px solid var(--color-blue);
    opacity: 0;
}
.t_blog-item h2 a:hover {
    color: var(--color-href-hover);
}
.t_blog-item h2 a:hover:before {
    opacity: 1;
}
.t_blog-item-text {
    font-weight: 400;
    font-size: 11px;
    line-height: 1.6;
    color: #525252;
}
.t_blog-item-toggler {
    float: right;
    cursor: pointer;
    font-weight: 400;
    font-size: 10px;
    line-height: 1.3;
    display: flex;
    align-items: center;
    gap: 4px;
    color: #198ba9;
    border-bottom: 1px solid #198ba9;
    transition: 0.5s;
    position: relative;
    z-index: 3;
}
.t_blog-item-toggler:hover {
    color: var(--color-href-hover);
    border-bottom: 1px solid var(--color-href-hover);
}
.t_blog-item-toggler:after {
    content: "";
    width: 6px;
    height: 9px;
    background: url("/images/blog-more.svg") center center no-repeat;
}
.t_blog-info {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 8px 24px;
    flex-wrap: wrap;
}
.t_blog-intro .t_blog-item-toggler:after {
    transform: rotateX(-180deg);
}
.t_blog-fields {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 6px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1;
    color: #8f8f8f;
    flex-wrap: wrap;
}
.t_blog-fields span {
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 0;
}
.t_blog-fields span:before {
    content: "#";
}

.t_blog-eye {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1;
    color: #8f8f8f;
    white-space: nowrap;
}
.t_blog-eye:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background: url("/images/blog-eye.svg") center center no-repeat;
    background-size: contain;
}

.t_blog-time {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1;
    color: #8f8f8f;
    white-space: nowrap;
}
.t_blog-time:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background: url("/images/blog-time.svg") center center no-repeat;
}

.t_blog-date {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1;
    color: #8f8f8f;
    white-space: nowrap;
}
.t_blog-date:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background: url("/images/blog-date.svg") center center no-repeat;
}

.t_blog-share {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1;
    color: #8f8f8f;
    white-space: nowrap;
    position: relative;
    cursor: pointer;
}
.t_blog-share:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background: url("/images/blog-share.svg") center center no-repeat;
}
.t_blog-share:after {
    content: "\41F\43E\434\435\43B\438\442\44C\441\44F\20\441\442\430\442\44C\435\439";
}
.t_blog-share-links {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 3;
    padding: 20px 6px 20px 20px;
    background: #ffffff;
    box-shadow: 0 2px 5px rgba(66, 121, 135, 0.13);
    display: grid;
    gap: 6px;
    color: var(--color-blue);
}

.t_blog-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--color-blue);
    white-space: nowrap;
}
.t_blog-link:hover {
    text-decoration: underline;
}
.t_blog-link-a:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background: url("/images/blog-tg.svg") center center no-repeat;
}
.t_blog-link-a:after {
    content: "\427\438\442\430\442\44C\20\432\20\54\65\6C\65\67\72\61\6D";
}

.t_blog-page-header-image {
    min-height: 256px;
    padding: 32px;
    position: relative;
    background-position: center center;
    background-size: cover;
    margin: 16px 0 40px 0;
}
.t_blog-page-header-image:before {
    content: "";
    background: linear-gradient(180deg, #0d333d 0%, rgba(17, 121, 149, 0) 100%);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.t_blog-page-header-image h1 {
    position: relative;
    z-index: 2;
    color: #ffffff;
}
.t_blog-info + .page-header h1:before,
.t_blog-page-header-image h1:before {
    display: none;
}
.t_blog-info + .page-header {
    margin: 16px 0 40px 0;
}
@media (max-width: 1200px) {
    .content-right-wrapper {
        grid-template-columns: 1fr 307px;
        gap: 42px;
    }
    .t_blog-page-header-image {
        min-height: 1px;
        padding: 0;
        background: none !important;
    }
    .t_blog-page-header-image:before {
        display: none;
    }
    .t_blog-page-header-image h1 {
        color: #232323;
    }
    .t_blog-page-header-image,
    .t_blog-info + .page-header {
        margin: 16px 0 24px;
    }
    .t_blog-link {
        font-size: 13px;
    }
}
@media (max-width: 750px) {
    .content-right-wrapper {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .t_blog-page-header-image h1 {
        text-align: left;
    }
    .content-right {
        order: 1;
    }
    .content-right-column {
        order: 2;
    }
    .content-right .books-grid {
        display: none;
    }
    .content-right-column .books-grid {
        display: grid !important;
    }
}

.content-right > .form-search {
    padding: 24px;
    border: 3px solid #198ba933;
}
.content-right > .form-search h3 {
    color: #232323;
    padding: 0;
}
.content-right > .form-search h3:before {
    display: none;
}
.jlcontentfieldsfilter {
    display: flex;
    flex-wrap: wrap;
    gap: 50px 30px;
    justify-content: space-between;
    align-items: stretch;
}
.jlmf-section {
    flex-grow: 1;
}
.jlmf-section:last-child {
    width: 100%;
}
.jlmf-section:last-child button.jlmf-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: fit-content;
    font-weight: 400;
    font-size: 11px;
    min-width: 180px;
    line-height: 19px;
    padding: 9px 15px 10px 15px;
    border: 1px solid var(--color-blue);
    color: var(--color-blue);
    background: none;
    text-align: center;
    transition: 0.5s;
    cursor: pointer;
    text-transform: uppercase;
    font-family: var(--font-head);
}
.jlmf-section:last-child button.jlmf-link:hover {
    background: var(--color-blue);
    color: #ffffff;
}
.jlmf-label {
    font-family: var(--font-head);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.4;
    color: #232323;
    margin-bottom: 16px;
}
.jlmf-checkbox {
    display: none;
}
.jlmf-sublabel {
    font-weight: 400;
    font-size: 13px;
    line-height: 1.4;
    color: var(--color-blue);
    padding: 2px 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    border: 1px dashed #c7dfe7;
    cursor: pointer;
    transition: 0.5s;
    width: fit-content;
}
.jlmf-sublabel:before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border: 1px solid #c7dfe7;
    border-radius: 2px;
}
.jlmf-list-1,
.jlmf-list-1 > div {
    display: grid;
    gap: 8px;
}
.jlmf-sublabel:hover,
.jlmf-checkbox:checked + .jlmf-sublabel {
    border: 1px solid var(--color-blue);
}
.jlmf-checkbox:checked + .jlmf-sublabel:before {
    background: url("/images/checkbox.svg") center center no-repeat;
    background-size: cover;
}
.waiting {
    position: relative;
}
form.waiting:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: url("/modules/mod_jlcontentfieldsfilter/assets/images/ajax_loader.gif") center center no-repeat;
    background-color: #ffffff80;
    z-index: 99;
}
form:not(.waiting) .inactive {
    position: relative;
    opacity: 0.33;
}
form:not(.waiting) .inactive:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
}
@media (max-width: 1200px) {
    .jlcontentfieldsfilter {
        flex-direction: column;
        gap: 0;
    }
    .jlmf-section {
        padding-bottom: 8px;
    }
    .jlmf-section + .jlmf-section {
        padding-top: 8px;
        border-top: 1px solid #c7dfe7;
    }
    .jlmf-label {
        margin-bottom: 0;
    }
    .jlmf-label {
        margin-bottom: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 6px;
    }
    .jlmf-label:after {
        content: "";
        width: 10px;
        height: 6px;
        background: url("/images/blog-galk.svg") center center no-repeat;
        transition: 0.5s;
    }
    .jlmf-list-1 {
        display: none;
        padding-bottom: 14px;
    }
    .jlmf-label.active {
        padding-bottom: 16px;
    }
    .jlmf-label.active:after {
        transform: rotateX(-180deg);
    }
    .jlmf-label.active + .jlmf-list-1 {
        display: grid;
    }
}

.mod-jfilters_filters {
    display: flex;
    flex-wrap: wrap;
    gap: 24px 30px;
    justify-content: start;
    align-items: stretch;
    padding: 24px 24px 0 24px;
    border: 3px solid #198ba933;
}
.mod-jfilters_filters h3 {
    color: #232323;
    padding: 0;
    margin: 0;
    width: 100%;
}
.mod-jfilters_filters h3:before {
    display: none;
}
.jfilters-filter-header__toggle {
    font-family: var(--font-head);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.4;
    color: #232323;
    margin-bottom: 16px;
    display: block;
    padding: 0;
    border: 0;
    background: none;
}
.jfilters-filter-header__toggle span {
    display: none !important;
}
.jfilters-filter-container {
    flex-grow: 1;
    padding-bottom: 24px;
}
.jfilters-filter-container__inner {
    display: grid;
    gap: 12px;
}
.jfilters-filter-list {
    list-style-type: none;
    display: grid;
    gap: 8px;
    order: 1;
}
.jfilters-filter-list .jfilters-item-link {
    font-weight: 400;
    font-size: 13px;
    line-height: 1.4;
    color: var(--color-blue);
    padding: 2px 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    border: 1px dashed #c7dfe7;
    cursor: pointer;
    transition: 0.5s;
    width: fit-content;
}
.jfilters-filter-list .jfilters-item-link:before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border: 1px solid #c7dfe7;
    border-radius: 2px;
}
.jfilters-filter-list .jfilters-item-link:hover {
    border: 1px solid var(--color-blue);
}
.jfilters-filter-list .jfilters-item-link--selected {
    border: 1px solid var(--color-blue);
}
.jfilters-filter-list .jfilters-item-link--selected:before {
    background: url("/images/checkbox.svg") center center no-repeat;
    background-size: cover;
}
.jfilters-item-link--clear {
    order: 2;
}
.jfilters-item-link--clear {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: fit-content;
    font-weight: 400;
    font-size: 11px;
    min-width: 150px;
    line-height: 18px;
    padding: 6px 12px;
    background: var(--color-blue);
    color: #ffffff;
    border: 1px solid var(--color-blue);
    text-align: center;
    transition: 0.5s;
    cursor: pointer;
    text-transform: uppercase;
    font-family: var(--font-head);
}
.jfilters-item-link--clear:hover {
    color: var(--color-blue);
    background: none;
}
@media (max-width: 1200px) {
    .mod-jfilters_filters {
        flex-direction: column;
        gap: 0;
    }
    .mod-jfilters_filters h3 {
        margin-bottom: 18px;
    }
    .jlmf-section {
        padding-bottom: 8px;
    }
    .jfilters-filter-container + .jfilters-filter-container {
        padding-top: 8px;
        border-top: 1px solid #c7dfe7;
    }
    .jfilters-filter-header {
        margin: 0;
    }
    .jfilters-filter-header__toggle {
        margin-bottom: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 6px;
        width: 100%;
    }
    .jfilters-filter-header__toggle:after {
        content: "";
        width: 10px;
        height: 6px;
        background: url("/images/blog-galk.svg") center center no-repeat;
        transition: 0.5s;
    }
    .jfilters-filter-container {
        padding-bottom: 14px;
    }
    .jfilters-filter-container__inner {
        display: none;
        padding-top: 14px;
    }
    .jfilters-filter-container.active {
        padding-bottom: 16px;
    }
    .jfilters-filter-container.active:after {
        transform: rotateX(-180deg);
    }
    .jfilters-filter-container.active .jfilters-filter-container__inner {
        display: grid;
    }
}

.books-grid {
    margin-top: 16px;
}
.books-grid .btn-small {
    background: #ffffff;
    font-family: var(--font-head);
    border: 1px solid #ffffff;
    color: var(--color-blue);
    font-weight: 600;
    font-size: 11px;
    line-height: 15px;
    text-transform: uppercase;
    min-width: 180px;
}
.books-grid .btn-small:hover {
    background: var(--color-blue);
    color: #ffffff;
    border: 1px solid var(--color-blue);
}
.books {
    background: url("/images/books-bg.png") right bottom no-repeat;
    background-color: #c7dfe7;
    padding: 10px 0 16px 24px;
}
.books .grid {
    gap: 5px 24px;
    margin-bottom: 6px;
}
.books .grid > div:nth-child(1) {
    grid-area: 1/2/3/1;
    font-weight: 900;
    font-size: 64px;
    line-height: 100%;
    color: var(--color-blue);
}
.books .grid > div:nth-child(2) {
    font-weight: 400;
    font-size: 18px;
    line-height: 100%;
    font-family: var(--font-head);
    align-self: end;
}
.books .grid > div:nth-child(3) {
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    font-family: var(--font-head);
    align-self: start;
}
.quest {
    background: url("/images/questions-bg.svg") right center no-repeat;
    background-color: #c7dfe7;
    padding: 16px 75px 16px 24px;
}
.quest div {
    margin-bottom: 13px;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.4;
    font-family: var(--font-head);
}

.mod-finder__search {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
}
.mod-finder__search input[type="text"] {
    height: 40px;
    border-right: none;
    box-sizing: border-box;
    border-color: #c7dfe7;
    transition: 0.5s;
}
.mod-finder__search .btn {
    display: block;
    box-sizing: border-box;
    width: 40px;
    min-width: 40px;
    height: 40px;
    background: url("/images/search-icon.svg") center center no-repeat;
    background-color: #ffffff;
    border: 1px solid #c7dfe7;
    border-left: none;
    box-shadow: none;
    overflow: hidden;
    text-indent: 40px;
    padding: 0;
}
.mod-finder__search .btn > span {
    display: none;
}
.mod-finder__search input[type="text"]:focus,
.mod-finder__search input[type="text"]:hover,
.mod-finder__search input[type="text"]:focus + .btn,
.mod-finder__search input[type="text"]:hover + .btn {
    border-color: var(--color-blue);
}

.t_blog-gallery {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 40px;
}
.t_blog-gallery a {
    display: block;
    width: 240px;
    height: 240px;
    overflow: hidden;
    cursor: zoom-in;
}
.t_blog-gallery a img {
    display: block;
    margin: 0;
    width: 240px;
    height: 240px;
    object-fit: cover;
    transition: 0.5s;
}
.t_blog-gallery a:hover img {
    transform: scale(1.1, 1.1);
}

.menuactive {
    overflow-y: hidden;
}
.menuactive .m_mobile-wrapper {
    display: block;
}

.m_mobile-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9999;
    background: #062b3580;
}
.m_mobile-wrapper > .menuswitch {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.m_mobile {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 95%;
    max-width: 385px;
    background: #f0f5f8;
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow-y: scroll;
    z-index: 2;
}
.m_mobile-close {
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: end;
}
.m_mobile-close .menuswitch {
    width: 56px;
    height: 56px;
    position: relative;
}
.m_mobile-close .menuswitch:before {
    content: "";
    background: url("/images/menu-close.svg") center center no-repeat;
    display: block;
    width: 56px;
    height: 56px;
    transition: 0.5s;
}
.m_mobile-close .menuswitch:after {
    content: "";
    background: url("/images/menu-close-hover.svg") center center no-repeat;
    width: 56px;
    height: 56px;
    transition: 0.5s;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
}
.m_mobile-close .menuswitch:hover {
    background: #198ba919;
}
.m_mobile-close .menuswitch:hover:before {
    opacity: 0;
}
.m_mobile-close .menuswitch:hover:after {
    opacity: 1;
}
.m_mobile-menu {
    padding: 0 0 24px 0;
}
.m_mobile-menu .mod-menu {
    padding: 0;
    margin: 0;
    list-style-type: none;
}
.m_mobile-menu .mod-menu li {
    padding: 0;
    margin: 0;
}
.m_mobile-menu .mod-menu li a {
    display: block;
    padding: 20px 24px;
    font-weight: 400;
    font-size: 20px;
    line-height: 24px;
    text-transform: uppercase;
    color: #525252;
    text-decoration: none;
}
.m_mobile-menu .mod-menu li.active a,
.m_mobile-menu .mod-menu li:hover a {
    color: #198ba9;
    background: #ffffff;
}
.m_mobile-menu .mod-menu li + li {
    border-top: 1px solid #a3cad7;
}
.m_mobile-contacts {
    padding: 24px;
    display: none;
}
.m_mobile-buttons .btn {
    width: 220px;
}
.m_mobile-buttons .btn + .btn {
    margin-top: 16px;
}
.m_mobile-buttons {
    padding: 24px;
}
.m_mobile-socials {
    padding: 24px 24px 48px 24px;
}
.m_mobile-socials .socials a {
    width: 40px;
    height: 40px;
}
.m_mobile-socials .socials a img {
    max-width: 20px;
    max-height: 20px;
}
.m_mobile-socials .socials a:focus img,
.m_mobile-socials .socials a:hover img {
    filter: brightness(0) invert(1);
}

.booklist {
    gap: 16px 24px;
    align-items: start;
    justify-content: start;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.3;
    color: #7b7b7b;
}
.booklist > div {
    display: grid;
    gap: 16px;
}
@media (max-width: 750px) {
    .booklist {
        gap: 12px;
        font-size: 14px;
    }
}

.zsliders {
}
.zsliders > a {
    display: block;
    width: 100%;
    cursor: pointer;
}
.zsliders > a.active {
}
.zsliders > div {
    display: none;
}
.zsliders > a.active + div {
    display: block;
}
.zspoilers {
}
.zspoilers a {
    display: block;
    cursor: pointer;
    margin-left: 18px;
    position: relative;
    border-bottom: 1px dashed #7b7b7b;
    width: fit-content;
}
.zspoilers a:before {
    content: "";
    display: block;
    position: absolute;
    width: 18px;
    left: -18px;
    top: 0;
    bottom: 0;
    background: url("/images/books-down.svg") left center no-repeat;
}
.zspoilers a.active {
    border-bottom: 1px dashed #7b7b7b00;
    color: var(--color-blue);
}
.zspoilers a.active:before {
    background: url("/images/books-up.svg") left center no-repeat;
}
.zspoilers a + div {
    display: none;
    font-size: 14px;
}
.zspoilers a.active + div {
    display: block;
}
.ztabs {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: wrap;
}
.ztabs > a {
    width: auto;
    cursor: pointer;
    order: 1;
    flex-grow: 1;
    text-align: center;
}
.ztabs > a.active {
}
.ztabs > div {
    display: none;
    width: 100%;
    order: 2;
}
.ztabs > a.active + div {
    display: block;
}

audio {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 600px;
}
.btn-telescope {
    display: block;
    width: fit-content;
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    position: relative;
    padding: 20px 16px 20px 64px;
    text-transform: lowercase;
    margin: 0 auto;
    box-shadow: 0 12px 20px rgba(25, 139, 169, 0.26);
    color: var(--color-blue);
}
.btn-telescope:before,
.btn-telescope:after {
    content: "";
    border: 2px solid var(--color-blue);
    border-radius: 50%;
    position: absolute;
    box-sizing: border-box;
    transition: 0.5s;
}
.btn-telescope:before,
.btn-telescope:hover:after {
    width: 36px;
    height: 36px;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
}
.btn-telescope:after,
.btn-telescope:hover:before {
    width: 16px;
    height: 16px;
    left: 30px;
    top: 50%;
    transform: translate(-50%, -50%);
}
.btn-telescope:hover {
    background: var(--color-blue);
    box-shadow: 0 0 0 rgba(25, 139, 169, 0.36);
    color: #ffffff;
}
@media (max-width: 750px) {
    .btn-telescope {
        font-size: 16px;
        font-weight: 600;
        line-height: 20px;
        position: relative;
        padding: 16px 12px 16px 48px;
    }
    .btn-telescope:before,
    .btn-telescope:hover:after {
        width: 28px;
        height: 28px;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
    }
    .btn-telescope:after,
    .btn-telescope:hover:before {
        width: 12px;
        height: 12px;
        left: 24px;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}

/*kontakty*/
.contactbutton {
    padding-top: 20px;
}
.contactbutton a {
    width: 100%;
}
.contactsocials a {
    border: none;
}

.glavnaya_banner-nadpis {
    display: none;
}
.glavnaya_banner-knopki .btn-middle {
    width: 100%;
    text-align: center;
    border: 1px solid var(--color-blue);
    background: #ffffff;
    box-shadow: 0 15px 20px rgba(25, 139, 169, 0.16);
}
.glavnaya_banner-knopki .btn-middle:hover {
    background: var(--color-blue);
}

@media (max-width: 900px) {
    .glavnaya_banner-nadpis {
        display: none;
    }
    .glavnaya_banner-knopki {
        display: none;
    }
}

.metrikacounter {
    margin-top: 20px;
}
