
@font-face {
font-family: 'Manrope';
font-style: normal;
font-weight: 400 800;
font-display: swap;
src: url('../fonts/manrope-cyrillic.woff2') format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
font-family: 'Manrope';
font-style: normal;
font-weight: 400 800;
font-display: swap;
src: url('../fonts/manrope-latin.woff2') format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: 'JetBrains Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url('../fonts/jetbrainsmono-700-cyrillic.woff2') format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
font-family: 'JetBrains Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url('../fonts/jetbrainsmono-700-latin.woff2') format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: 'Material Symbols Outlined';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url('../fonts/material-symbols-outlined.woff2') format('woff2');
}
.material-symbols-outlined {
font-family: 'Material Symbols Outlined';
font-weight: normal;
font-style: normal;
font-size: 24px;
line-height: 1;
letter-spacing: normal;
text-transform: none;
display: inline-block;
white-space: nowrap;
word-wrap: normal;
direction: ltr;
font-feature-settings: 'liga';
-webkit-font-smoothing: antialiased;
}
:root {
--font-heading: 'Manrope', system-ui, sans-serif;
--font-body: 'Manrope', system-ui, sans-serif;
--font-mono: 'JetBrains Mono', ui-monospace, monospace;
--bg-primary: #081121;
--bg-secondary: #0b1524;
--bg-card: #0e1a2c;
--bg-card-hover: #13233b;
--text-primary: #ffffff;
--text-secondary: #b7bcc3;
--text-muted: #8792a0;
--accent: #1d48e6;
--accent-hover: #1a3fce;
--accent-light: #526ccc;
--accent-bg: rgba(29, 72, 230, 0.10);
--accent-bg-strong: rgba(29, 72, 230, 0.16);
--surface-2: #374658;
--surface-2-hover: #415268;
--border-color: rgba(183, 188, 195, 0.14);
--border-card: rgba(183, 188, 195, 0.16);
--border-tag: rgba(183, 188, 195, 0.22);
--hero-overlay: rgba(8, 17, 33, 0.5);
--hero-glow-core: rgba(90, 116, 255, 0.55);
--hero-glow-mid:  rgba(120, 70, 220, 0.30);
--radius-sm: 8px;
--radius-md: 16px;
--radius-lg: 20px;
--radius-full: 99px;
--container-max: 1520px;
--container-pad: 200px;
--section-py: clamp(52px, 5.5vw, 76px);
--header-offset: clamp(104px, 4vw + 76px, 140px);
}
[data-theme="light"] {
--bg-primary: #ffffff;
--bg-secondary: #f6f8fb;
--bg-card: #f6f8fb;
--bg-card-hover: #eef2f7;
--text-primary: #0f1b2d;
--text-secondary: #475569;
--text-muted: #64748b;
--accent: #1d48e6;
--accent-hover: #1a3fce;
--accent-light: #3a58c0;
--accent-bg: rgba(29, 72, 230, 0.06);
--accent-bg-strong: rgba(29, 72, 230, 0.10);
--surface-2: #e6ebf2;
--surface-2-hover: #dbe2ec;
--border-color: #e2e8f0;
--border-card: #e2e8f0;
--border-tag: #cbd5e1;
--hero-overlay: rgba(255, 255, 255, 0.4);
}


*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html {
scroll-behavior: smooth;
}
html {
max-width: 100%;
}
body {
overflow-x: hidden;
max-width: 100%;
}
body {
font-family: var(--font-body);
background: var(--bg-primary);
color: var(--text-primary);
line-height: 1.5;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transition: background 0.3s ease, color 0.3s ease;
}
a {
text-decoration: none;
color: inherit;
}
img {
max-width: 100%;
height: auto;
display: block;
}
ul, ol {
list-style: none;
}
button {
font-family: inherit;
}
.reveal {
opacity: 0;
transform: translateY(40px);
transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal-left {
opacity: 0;
transform: translateX(-40px);
transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal-right {
opacity: 0;
transform: translateX(40px);
transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal.visible,
.reveal-left.visible,
.reveal-right.visible {
opacity: 1;
transform: translate(0, 0);
}
.stagger > .reveal:nth-child(1) { transition-delay: 0s; }
.stagger > .reveal:nth-child(2) { transition-delay: 0.08s; }
.stagger > .reveal:nth-child(3) { transition-delay: 0.16s; }
.stagger > .reveal:nth-child(4) { transition-delay: 0.24s; }
.stagger > .reveal:nth-child(5) { transition-delay: 0.32s; }
.stagger > .reveal:nth-child(6) { transition-delay: 0.40s; }
.itb-container {
width: 100%;
max-width: var(--container-max);
margin-inline: auto;
padding-inline: clamp(20px, 10vw, var(--container-pad));
}
.itb-section {
padding-block: var(--section-py);
}
.itb-section--alt {
background: var(--bg-secondary);
}
.itb-section__header {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 48px;
max-width: 720px;
}
.itb-section__eyebrow {
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1.68px;
text-transform: uppercase;
color: var(--text-secondary);
}
.itb-section__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: clamp(30px, 4vw, 46px);
line-height: 1.08;
letter-spacing: -1px;
color: var(--text-primary);
}
.itb-section__subtitle {
font-size: 17px;
line-height: 1.55;
color: var(--text-secondary);
}
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
font-family: var(--font-heading);
font-weight: 600;
font-size: 15.5px;
line-height: 1;
padding: 16px 28px;
border-radius: var(--radius-sm);
border: 1px solid transparent;
cursor: pointer;
transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
white-space: nowrap;
}
.btn--primary {
background: var(--accent);
color: #fff;
}
.btn--primary:hover {
background: var(--accent-hover);
}
.btn--ghost {
background: var(--surface-2);
color: var(--text-primary);
border-color: var(--border-color);
}
.btn--ghost:hover {
background: var(--surface-2-hover);
}
.btn--circle {
padding: 0;
width: 40px;
height: 40px;
border-radius: 50%;
background: transparent;
border-color: var(--border-color);
color: var(--text-secondary);
}
.btn--circle:hover {
color: var(--text-primary);
border-color: var(--border-tag);
}
.itb-tag {
display: inline-flex;
align-items: center;
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 0.5px;
text-transform: uppercase;
color: var(--text-secondary);
background: var(--accent-bg);
border: 1px solid var(--border-tag);
border-radius: var(--radius-sm);
padding: 6px 12px;
}


.site-header {
position: absolute;
inset: 0 0 auto 0;
z-index: 50;
background: var(--hero-overlay);
backdrop-filter: blur(2px);
}
.site-main > .itb-legal,
.site-main > .itb-page,
.site-main > .itb-404,
.site-main > .itb-blog-hero,
.site-main > .itb-article,
.site-main > .itb-single {
padding-top: var(--header-offset);
}
.site-main > .itb-section--ab-intro {
padding-top: max(var(--header-offset), clamp(48px, 7vw, 96px));
}
#cta {
scroll-margin-top: var(--header-offset);
}
.site-header__inner {
width: 100%;
max-width: var(--container-max);
margin-inline: auto;
padding: 24px clamp(20px, 10vw, var(--container-pad));
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
}
.site-header__logo {
display: inline-flex;
align-items: center;
gap: 12px;
flex-shrink: 0;
}
.site-header__logo-img {
height: 28px;
width: auto;
display: block;
}
.site-header__logo-text {
font-family: var(--font-heading);
font-weight: 500;
font-size: 18px;
letter-spacing: -0.18px;
color: var(--text-secondary);
}
.site-header__nav {
display: flex;
flex: 1;
justify-content: center;
}
.site-header__menu {
display: flex;
align-items: center;
gap: 26px;
}
.site-header__menu a,
.site-header__menu-text {
font-family: var(--font-heading);
font-weight: 500;
font-size: 14.5px;
color: var(--text-secondary);
white-space: nowrap;
transition: color 0.2s ease;
}
.site-header__menu a:hover {
color: var(--text-primary);
}
.site-header__menu-text {
cursor: default;
opacity: 0.55;
}
.site-header__actions {
display: flex;
align-items: center;
gap: 14px;
flex-shrink: 0;
}
.site-header__socials {
display: flex;
align-items: center;
gap: 2px;
list-style: none;
margin: 0;
padding-left: 16px;
border-left: 1px solid rgba(255, 255, 255, 0.14);
}
[data-theme="light"] .site-header__socials {
border-left-color: rgba(22, 24, 31, 0.12);
}
.site-header__social {
display: inline-flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
border-radius: 9px;
color: var(--text-secondary);
transition: color 0.2s ease, background 0.2s ease;
}
.site-header__social:hover,
.site-header__social:focus-visible {
color: var(--text-primary);
background: rgba(255, 255, 255, 0.08);
}
[data-theme="light"] .site-header__social:hover,
[data-theme="light"] .site-header__social:focus-visible {
color: #2233d6;
background: rgba(34, 51, 214, 0.08);
}
.site-header__social:focus-visible { outline: 2px solid #2233d6; outline-offset: 2px; }
.site-header__social .itb-social__icon {
width: 17px;
height: 17px;
fill: currentColor;
}
.site-header__social[aria-label="Rutube"] .itb-social__icon,
.site-header__social[aria-label="MAX"] .itb-social__icon,
.site-header__social[aria-label="Дзен"] .itb-social__icon {
width: 15px;
height: 15px;
}
.site-header__cta { margin-left: 10px; }
.site-header__burger {
display: none;
align-items: center;
justify-content: center;
width: 44px;
height: 44px;
padding: 0;
background: transparent;
border: 1px solid var(--border-color);
border-radius: 11px;
color: var(--text-primary);
cursor: pointer;
}
.site-header__burger:focus-visible { outline: 2px solid #2233d6; outline-offset: 2px; }
.site-header__burger-box {
position: relative;
display: block;
width: 20px;
height: 14px;
}
.site-header__burger-line {
position: absolute;
left: 0;
width: 100%;
height: 2px;
border-radius: 2px;
background: currentColor;
transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}
.site-header__burger-line:nth-child(1) { top: 0; }
.site-header__burger-line:nth-child(2) { top: 6px; }
.site-header__burger-line:nth-child(3) { top: 12px; }
.site-header__burger.is-active .site-header__burger-line:nth-child(1) {
transform: translateY(6px) rotate(45deg);
}
.site-header__burger.is-active .site-header__burger-line:nth-child(2) { opacity: 0; }
.site-header__burger.is-active .site-header__burger-line:nth-child(3) {
transform: translateY(-6px) rotate(-45deg);
}
.site-nav-backdrop {
position: fixed;
inset: 0;
z-index: 90;
background: rgba(6, 11, 22, 0.55);
backdrop-filter: blur(2px);
opacity: 0;
transition: opacity 0.28s ease;
}
.site-nav-backdrop.is-open { opacity: 1; }
.site-nav-backdrop[hidden] { display: none; }
.site-nav-mobile {
position: fixed;
inset: 0 0 0 auto;
z-index: 100;
width: min(360px, 88vw);
display: flex;
flex-direction: column;
gap: 8px;
padding: 20px 24px calc(24px + env(safe-area-inset-bottom));
background: var(--bg-primary);
border-left: 1px solid var(--border-color);
overflow-y: auto;
overscroll-behavior: contain;
transform: translateX(100%);
transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}
.site-nav-mobile.is-open { transform: translateX(0); }
.site-nav-mobile[hidden] { display: none; }
body.has-nav-open { overflow: hidden; }
.site-nav-mobile__head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding-bottom: 18px;
border-bottom: 1px solid var(--border-color);
}
.site-nav-mobile__title {
font-family: var(--font-heading);
font-weight: 700;
font-size: 17px;
letter-spacing: -0.2px;
color: var(--text-primary);
}
.site-nav-mobile__close {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
flex: none;
padding: 0;
background: transparent;
border: 1px solid var(--border-color);
border-radius: 11px;
color: var(--text-secondary);
cursor: pointer;
transition: color 0.2s ease, border-color 0.2s ease;
}
.site-nav-mobile__close:hover { color: var(--text-primary); border-color: var(--border-tag); }
.site-nav-mobile__close:focus-visible { outline: 2px solid #2233d6; outline-offset: 2px; }
.site-nav-mobile__menu {
display: flex;
flex-direction: column;
list-style: none;
margin: 0;
padding: 6px 0;
}
.site-nav-mobile__menu li { display: flex; }
.site-nav-mobile__menu a,
.site-nav-mobile__menu .site-header__menu-text {
flex: 1;
display: flex;
align-items: center;
min-height: 52px;
font-family: var(--font-heading);
font-weight: 600;
font-size: 17px;
letter-spacing: -0.2px;
color: var(--text-primary);
border-bottom: 1px solid var(--border-color);
transition: color 0.2s ease;
}
.site-nav-mobile__menu a:hover { color: var(--accent-light); }
.site-nav-mobile__menu .site-header__menu-text {
color: var(--text-secondary);
opacity: 0.55;
cursor: default;
}
.site-nav-mobile__footer {
margin-top: auto;
padding-top: 22px;
display: flex;
flex-direction: column;
gap: 20px;
}
.site-nav-mobile__cta {
width: 100%;
height: 54px;
}
.site-nav-mobile__socials {
display: flex;
flex-wrap: wrap;
gap: 10px;
list-style: none;
margin: 0;
padding: 0;
}
.site-nav-mobile__social {
display: inline-flex;
align-items: center;
justify-content: center;
width: 42px;
height: 42px;
border: 1px solid var(--border-color);
border-radius: 12px;
color: var(--text-secondary);
transition: color 0.2s ease, border-color 0.2s ease;
}
.site-nav-mobile__social:hover { color: var(--text-primary); border-color: var(--border-tag); }
.site-nav-mobile__social:focus-visible { outline: 2px solid #2233d6; outline-offset: 2px; }
.site-nav-mobile__social .itb-social__icon {
width: 19px;
height: 19px;
fill: currentColor;
}
@media (prefers-reduced-motion: reduce) {
.site-nav-mobile,
.site-nav-backdrop,
.site-header__burger-line { transition: none; }
}
.itb-has-dropdown {
position: relative;
display: flex;
align-items: center;
}
.itb-dropdown-toggle {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 0;
border: 0;
background: none;
font-family: var(--font-heading);
font-weight: 500;
font-size: 14.5px;
line-height: 1;
color: var(--text-secondary);
white-space: nowrap;
cursor: pointer;
transition: color 0.2s ease;
}
.itb-dropdown-toggle:hover,
.itb-has-dropdown.is-open .itb-dropdown-toggle {
color: var(--text-primary);
}
.itb-dropdown-toggle:focus-visible {
outline: 2px solid #2233d6;
outline-offset: 4px;
border-radius: 4px;
}
.itb-dropdown-caret {
width: 7px;
height: 7px;
border-right: 1.6px solid currentColor;
border-bottom: 1.6px solid currentColor;
transform: translateY(-1px) rotate(45deg);
transition: transform 0.25s ease;
opacity: 0.75;
}
.itb-has-dropdown.is-open .itb-dropdown-caret {
transform: translateY(1px) rotate(-135deg);
}
.itb-products-menu {
position: absolute;
top: calc(100% + 14px);
left: 0;
transform: translateY(6px);
width: min(440px, calc(100vw - 40px));
padding: 8px;
background: var(--bg-card);
border: 1px solid var(--border-card);
border-radius: var(--radius-md);
box-shadow: 0 18px 48px -20px rgba(3, 8, 20, 0.7), 0 2px 8px -4px rgba(3, 8, 20, 0.5);
opacity: 0;
visibility: hidden;
pointer-events: none;
transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
z-index: 60;
}
[data-theme="light"] .itb-products-menu {
box-shadow: 0 18px 44px -22px rgba(15, 27, 45, 0.28), 0 2px 8px -4px rgba(15, 27, 45, 0.14);
}
.itb-products-menu::before {
content: "";
position: absolute;
top: -14px;
left: 0;
right: 0;
height: 14px;
}
.itb-has-dropdown.is-open .itb-products-menu {
opacity: 1;
visibility: visible;
pointer-events: auto;
transform: translateY(0);
transition: opacity 0.2s ease, transform 0.2s ease;
}
.itb-products-menu--simple {
width: max-content;
min-width: 200px;
max-width: min(320px, calc(100vw - 40px));
}
.itb-products-menu__eyebrow {
display: flex;
align-items: center;
gap: 10px;
margin: 0;
padding: 12px 14px 10px;
font-family: var(--font-mono);
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--text-muted);
}
.itb-products-menu__eyebrow-count {
margin-left: auto;
padding: 2px 8px;
border-radius: var(--radius-full);
background: var(--accent-bg);
color: var(--accent-light);
letter-spacing: 0.06em;
}
.itb-products-menu__list + .itb-products-menu__group-label {
margin-top: 6px;
padding-top: 14px;
border-top: 1px solid var(--border-color);
}
.itb-products-menu__list {
display: flex;
flex-direction: column;
list-style: none;
margin: 0;
padding: 0;
}
.itb-products-menu__item { min-width: 0; }
.itb-products-menu__link {
position: relative;
display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
column-gap: 11px;
min-width: 0;
padding: 11px 14px;
border-radius: var(--radius-sm);
transition: background 0.18s ease;
}
.itb-products-menu__link:hover,
.itb-products-menu__link:focus-visible {
background: var(--bg-card-hover);
outline: none;
}
.itb-products-menu__link:focus-visible {
box-shadow: inset 0 0 0 1px var(--accent-light);
}
.itb-products-menu__marker {
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--text-muted);
opacity: 0.45;
transition: background 0.18s ease, opacity 0.18s ease, transform 0.18s ease;
}
.itb-products-menu__link:hover .itb-products-menu__marker,
.itb-products-menu__link:focus-visible .itb-products-menu__marker {
background: var(--accent);
opacity: 1;
}
.itb-products-menu__name {
min-width: 0;
font-family: var(--font-heading);
font-weight: 600;
font-size: 15px;
letter-spacing: -0.15px;
color: var(--text-primary);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.itb-products-menu__role {
font-family: var(--font-mono);
font-size: 10px;
font-weight: 700;
letter-spacing: 0.05em;
text-transform: uppercase;
color: var(--text-muted);
white-space: nowrap;
padding: 3px 9px;
border: 1px solid var(--border-tag);
border-radius: var(--radius-full);
transition: color 0.18s ease, border-color 0.18s ease;
}
.itb-products-menu__link:hover .itb-products-menu__role,
.itb-products-menu__link:focus-visible .itb-products-menu__role {
color: var(--text-secondary);
border-color: var(--border-color);
}
.itb-products-menu__item.is-core .itb-products-menu__link {
background: linear-gradient(100deg, var(--accent-bg), transparent 72%);
}
.itb-products-menu__item.is-core .itb-products-menu__link:hover,
.itb-products-menu__item.is-core .itb-products-menu__link:focus-visible {
background: linear-gradient(100deg, var(--accent-bg-strong), transparent 68%);
}
.itb-products-menu__item.is-core .itb-products-menu__marker {
background: var(--accent);
opacity: 1;
}
.itb-products-menu__item.is-core .itb-products-menu__role {
color: var(--accent-light);
border-color: color-mix(in oklch, var(--accent-light) 42%, transparent);
}
.itb-products-menu__all {
display: flex;
align-items: center;
gap: 8px;
margin-top: 8px;
padding: 15px 14px 14px;
border-top: 1px solid var(--border-color);
font-family: var(--font-heading);
font-weight: 600;
font-size: 13.5px;
line-height: 1;
color: var(--accent-light);
transition: color 0.18s ease, background 0.18s ease;
}
.itb-products-menu__all-label { display: inline-flex; align-items: center; }
.itb-products-menu__all:hover,
.itb-products-menu__all:focus-visible {
color: var(--text-primary);
outline: none;
}
.itb-products-menu__all:focus-visible {
text-decoration: underline;
text-underline-offset: 3px;
}
.itb-products-menu__all-arrow {
display: inline-flex;
align-items: center;
margin-left: auto;
line-height: 1;
color: var(--accent-light);
transition: transform 0.18s ease, color 0.18s ease;
}
.itb-products-menu__all:hover .itb-products-menu__all-arrow {
transform: translateX(4px);
color: var(--text-primary);
}
@media (prefers-reduced-motion: reduce) {
.itb-products-menu,
.itb-products-menu__marker,
.itb-dropdown-caret,
.itb-products-menu__all,
.itb-products-menu__all-arrow { transition: none; }
.itb-has-dropdown.is-open .itb-products-menu { transform: translateY(0); }
}
@media (max-width: 1320px) {
.site-header__menu { gap: 20px; }
}
@media (max-width: 1240px) {
.site-header__socials { display: none; }
}
@media (max-width: 900px) {
.site-header__nav { display: none; }
.site-header__cta { display: none; }
.site-header__burger { display: inline-flex; }
}
.site-nav-mobile__menu .itb-has-dropdown {
flex-direction: column;
align-items: stretch;
}
.site-nav-mobile__menu .itb-dropdown-toggle {
flex: 1;
justify-content: space-between;
min-height: 52px;
width: 100%;
font-weight: 600;
font-size: 17px;
letter-spacing: -0.2px;
color: var(--text-primary);
border-bottom: 1px solid var(--border-color);
}
.site-nav-mobile__menu .itb-dropdown-toggle:hover,
.site-nav-mobile__menu .itb-has-dropdown.is-open .itb-dropdown-toggle {
color: var(--accent-light);
}
.site-nav-mobile__menu .itb-products-menu {
position: static;
transform: none;
width: 100%;
max-width: none;
padding: 0;
background: none;
border: 0;
border-radius: 0;
box-shadow: none;
opacity: 1;
visibility: hidden;
pointer-events: none;
max-height: 0;
overflow: hidden;
transition: max-height 0.28s ease, visibility 0s linear 0.28s;
}
.site-nav-mobile__menu .itb-products-menu::before { content: none; }
.site-nav-mobile__menu .itb-products-menu__list { padding-top: 4px; }
.site-nav-mobile__menu .itb-products-menu > :last-child { margin-bottom: 10px; }
.site-nav-mobile__menu .itb-has-dropdown.is-open .itb-products-menu {
visibility: visible;
pointer-events: auto;
max-height: 1200px;
transition: max-height 0.32s ease;
}
.site-nav-mobile__menu .itb-products-menu__eyebrow { display: none; }
.site-nav-mobile__menu .itb-products-menu__group-label {
display: flex;
padding: 14px 12px 6px 14px;
}
.site-nav-mobile__menu .itb-products-menu__group-label + .itb-products-menu__list { padding-top: 0; }
.site-nav-mobile__menu .itb-products-menu__link {
padding: 12px 12px 12px 14px;
min-height: 48px;
}
.site-nav-mobile__menu .itb-products-menu__name { font-size: 15.5px; }
.site-nav-mobile__menu .itb-products-menu__item.is-core .itb-products-menu__link {
background: var(--accent-bg);
}
.site-nav-mobile__menu .itb-products-menu__all {
margin-top: 4px;
padding: 13px 14px;
}
@media (prefers-reduced-motion: reduce) {
.site-nav-mobile__menu .itb-products-menu { transition: visibility 0s; }
}
@media (max-width: 480px) {
.site-header__inner { padding-block: 16px; }
.site-header__logo-img { height: 24px; }
.site-header__logo-text { font-size: 16px; }
}


.itb-hero {
position: relative;
min-height: 820px;
display: flex;
align-items: center;
padding-top: 120px;
background-color: var(--bg-primary);
background-size: cover;
background-position: center right;
background-repeat: no-repeat;
overflow: hidden;
}
.itb-hero--photo {
background-image:
linear-gradient(90deg, rgba(8, 17, 33, 0.92) 0%, rgba(8, 17, 33, 0.55) 45%, rgba(8, 17, 33, 0.15) 100%),
var(--hero-bg);
}
.itb-hero--glow {
background-color: #060c18;
}
.itb-hero--glow::before {
content: "";
position: absolute;
top: -20%;
right: -8%;
width: min(900px, 70vw);
aspect-ratio: 1;
border-radius: 50%;
background:
radial-gradient(circle at 35% 35%,
var(--hero-glow-core) 0%,
var(--hero-glow-mid) 40%,
rgba(29, 72, 230, 0.05) 65%,
transparent 72%);
filter: blur(10px);
pointer-events: none;
z-index: 0;
}
.itb-hero::after {
content: "";
position: absolute;
inset: auto 0 0 0;
height: 160px;
background: linear-gradient(to bottom, transparent, var(--bg-primary));
pointer-events: none;
}
.itb-hero .itb-container {
position: relative;
z-index: 1;
}
.itb-hero__badge {
display: inline-flex;
align-items: center;
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1.68px;
text-transform: uppercase;
color: var(--text-secondary);
background: rgba(218, 220, 226, 0.12);
border: 1px solid rgba(183, 188, 195, 0.2);
border-radius: var(--radius-full);
padding: 8px 16px;
margin-bottom: 24px;
}
.itb-hero__title {
max-width: 980px;
font-family: var(--font-heading);
font-weight: 800;
font-size: clamp(38px, 5vw, 58px);
line-height: 1.04;
letter-spacing: -1.74px;
color: var(--text-primary);
margin-bottom: 28px;
}
.itb-hero__title p { margin: 0; }
.itb-hero__title .accent,
.itb-hero__title em {
color: var(--accent-light);
font-style: normal;
}
.itb-hero__subtitle {
max-width: 640px;
font-size: 18px;
line-height: 1.6;
color: var(--text-secondary);
margin-bottom: 40px;
}
.itb-hero__actions {
display: flex;
flex-wrap: wrap;
gap: 12px;
}
.itb-hero__actions .btn {
height: 54px;
}
.itb-hero__meta {
margin-top: 36px;
font-family: var(--font-mono);
font-weight: 700;
font-size: 11.5px;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--text-secondary);
}
@media (max-width: 1024px) {
.itb-hero {
min-height: 0;
padding-block: 140px 80px;
}
.itb-hero__subtitle { margin-bottom: 32px; }
}
@media (max-width: 700px) {
.itb-hero {
padding-block: 120px 64px;
background-image:
linear-gradient(180deg, rgba(8, 17, 33, 0.6) 0%, rgba(8, 17, 33, 0.9) 100%),
var(--hero-bg, url('../img/hero-bg.webp'));
}
.itb-hero::after { height: 100px; }
.itb-hero__badge { margin-bottom: 20px; }
.itb-hero__title {
font-size: clamp(28px, 8vw, 38px);
letter-spacing: -1px;
margin-bottom: 20px;
}
.itb-hero__subtitle { font-size: 16px; margin-bottom: 28px; }
.itb-hero__actions { flex-direction: column; align-items: stretch; }
.itb-hero__actions .btn { width: 100%; }
.itb-hero__meta { margin-top: 28px; font-size: 11px; letter-spacing: 1.1px; }
}
@media (max-width: 380px) {
.itb-hero { padding-block: 108px 52px; }
.itb-hero__badge { font-size: 11px; letter-spacing: 1.2px; padding: 7px 13px; }
}


.site-footer {
background: #efece4;
color: #16181f;
border-top: 1px solid #e2ddd1;
padding-top: 64px;
}
.site-footer__inner {
display: grid;
grid-template-columns: minmax(240px, 1fr) auto auto auto;
gap: 60px;
padding-bottom: 48px;
}
.site-footer__brand {
max-width: 300px;
display: flex;
flex-direction: column;
gap: 18px;
}
.site-footer__logo {
display: inline-flex;
align-items: center;
gap: 12px;
font-family: var(--font-heading);
font-weight: 700;
font-size: 22px;
letter-spacing: -0.4px;
color: #16181f;
}
.site-footer__logo-img {
height: 34px;
width: auto;
display: block;
}
.site-footer__tagline {
font-size: 14.5px;
line-height: 1.55;
color: #565c6a;
}
.site-footer__brand .btn {
align-self: flex-start;
padding: 13px 22px;
font-size: 14.5px;
background: #152040;
color: #fff;
border-color: #152040;
}
.site-footer__brand .btn:hover { background: #1d2c58; }
.site-footer__socials {
display: flex;
flex-wrap: wrap;
gap: 10px;
list-style: none;
margin: 4px 0 0;
padding: 0;
}
.site-footer__social {
display: inline-flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border: 1px solid #ddd8cc;
border-radius: 11px;
color: #565c6a;
transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}
.site-footer__social:hover,
.site-footer__social:focus-visible {
color: #2233d6;
border-color: #2233d6;
background: rgba(34, 51, 214, 0.06);
}
.site-footer__social:focus-visible { outline: 2px solid #2233d6; outline-offset: 2px; }
.site-footer__social .itb-social__icon {
width: 20px;
height: 20px;
fill: currentColor;
}
.site-footer__columns {
display: contents;
}
.site-footer__column {
display: flex;
flex-direction: column;
gap: 14px;
min-width: 150px;
}
.site-footer__heading {
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1.2px;
text-transform: uppercase;
color: #8a8578;
margin-bottom: 4px;
}
.site-footer__links {
display: flex;
flex-direction: column;
gap: 12px;
}
.site-footer__links a {
font-size: 15px;
color: #3c4250;
transition: color 0.2s ease;
}
.site-footer__links a:hover { color: #152040; }
.site-footer__contacts {
display: flex;
flex-direction: column;
gap: 16px;
min-width: 240px;
}
.site-footer__contacts > div { display: flex; flex-direction: column; gap: 3px; }
.site-footer__contacts .site-footer__phone,
.site-footer__contacts .site-footer__email a,
.site-footer__contacts .site-footer__address {
font-size: 16px;
color: #16181f;
}
.site-footer__contacts .site-footer__address {
font-size: 14px;
line-height: 1.5;
color: #565c6a;
}
.site-footer__contacts .site-footer__phone-link {
font-size: 16px;
color: #16181f;
transition: color 0.2s ease;
}
.site-footer__contacts .site-footer__phone-link:hover { color: #2233d6; }
.site-footer__contacts .site-footer__phone-note {
font-size: 13px;
line-height: 1.4;
color: #565c6a;
margin-bottom: 4px;
}
.site-footer__contacts .site-footer__label {
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 1px;
text-transform: uppercase;
color: #a8a396;
}
.site-footer__legal {
padding-block: 24px;
border-top: 1px solid #e2ddd1;
}
.site-footer__legal-links {
display: flex;
flex-wrap: wrap;
gap: 8px 0;
margin: 0 0 14px;
padding: 0;
list-style: none;
font-size: 13px;
}
.site-footer__legal-links a {
color: #6f6a5e;
text-decoration: none;
}
.site-footer__legal-links a:hover {
color: var(--accent);
text-decoration: underline;
text-underline-offset: 3px;
}
.site-footer__legal-links li:not(:last-child)::after {
content: '·';
margin-inline: 10px;
color: #b8b3a6;
}
.site-footer__okved {
margin: 0;
max-width: 90ch;
font-size: 12px;
line-height: 1.6;
color: #a8a396;
}
.site-footer__bottom {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 16px;
padding-block: 0 28px;
font-size: 13px;
color: #8a8578;
}
.site-footer__req {
display: inline-flex;
gap: 24px;
flex-wrap: wrap;
font-family: var(--font-mono);
}
@media (max-width: 1000px) {
.site-footer { padding-top: 48px; }
.site-footer__inner {
grid-template-columns: 1fr 1fr;
gap: 40px;
padding-bottom: 36px;
}
.site-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
.site-footer { padding-top: 40px; }
.site-footer__inner { grid-template-columns: 1fr; gap: 32px; }
.site-footer__column,
.site-footer__contacts { min-width: 0; }
.site-footer__brand { max-width: none; }
.site-footer__brand .btn { align-self: stretch; }
.site-footer__bottom {
flex-direction: column;
align-items: flex-start;
gap: 12px;
padding-block: 0 22px;
}
.site-footer__req { gap: 6px 18px; }
.site-footer__legal { padding-block: 20px; }
.site-footer__legal-links {
flex-direction: column;
gap: 10px;
}
.site-footer__legal-links li:not(:last-child)::after { content: none; }
}


body.page-template-template-services,
body.single-service {
--hero-glow-core: rgba(77, 92, 255, 0.55);
--hero-glow-mid:  rgba(60, 80, 210, 0.30);
}
body.page-template-template-solutions {
--hero-glow-core: rgba(70, 110, 200, 0.55);
--hero-glow-mid:  rgba(50, 90, 180, 0.30);
}
body.page-template-template-products,
body.single-product {
--hero-glow-core: rgba(120, 70, 220, 0.55);
--hero-glow-mid:  rgba(95, 55, 190, 0.30);
}
body.page-template-template-cases {
--hero-glow-core: rgba(63, 127, 230, 0.55);
--hero-glow-mid:  rgba(45, 100, 205, 0.30);
}
body.page-template-template-industries {
--hero-glow-core: rgba(96, 84, 232, 0.55);
--hero-glow-mid:  rgba(76, 64, 200, 0.30);
}
body.page-template-template-about {
--hero-glow-core: rgba(46, 92, 235, 0.55);
--hero-glow-mid:  rgba(35, 70, 200, 0.30);
}


.itb-section--tasks {
background: #f4f5f8;
color: #1f2025;
}
[data-theme="light"] .itb-section--tasks { background: #f4f5f8; }
.itb-section--tasks .itb-section__title { color: #16181f; }
.itb-section--tasks .itb-section__subtitle { color: #565c6a; }
.itb-tasks__topbar {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 40px;
margin-bottom: 44px;
}
.itb-tasks__title {
color: #16181f;
max-width: 620px;
}
.itb-tasks__nav {
display: flex;
align-items: center;
padding-top: 8px;
}
.itb-tasks__subtitle {
max-width: 260px;
font-size: 15px;
line-height: 1.5;
color: #565c6a;
text-align: right;
}
.itb-tasks__carousel {
position: relative;
}
.itb-cards--tasks {
display: flex;
gap: var(--tasks-gap, 24px);
overflow-x: auto;
--tasks-pad-x: 16px;
padding: 12px var(--tasks-pad-x) 22px;
margin-inline: calc(-1 * var(--tasks-pad-x));
scroll-snap-type: x mandatory;
scroll-behavior: smooth;
scroll-padding-inline: var(--tasks-pad-x);
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
-ms-overflow-style: none;
}
.itb-cards--tasks::-webkit-scrollbar { display: none; }
.itb-cards--tasks { cursor: grab; }
.itb-cards--tasks.is-dragging {
cursor: grabbing;
scroll-snap-type: none;
scroll-behavior: auto;
user-select: none;
}
.itb-cards--tasks.is-dragging a { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
.itb-cards--tasks { scroll-behavior: auto; }
}
.itb-tasks__pager {
display: flex;
align-items: center;
justify-content: center;
gap: 22px;
margin-top: 34px;
}
.itb-tasks__arrow {
width: 48px;
height: 48px;
border-radius: 50%;
border: 1.5px solid #c9ccd8;
background: #fff;
color: #152040;
cursor: pointer;
display: inline-flex;
align-items: center;
justify-content: center;
flex: none;
transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}
.itb-tasks__arrow:hover:not(:disabled) {
border-color: #2233d6;
color: #2233d6;
}
.itb-tasks__arrow:focus-visible {
outline: 2px solid #2233d6;
outline-offset: 3px;
}
.itb-tasks__arrow:disabled {
opacity: 0.35;
cursor: default;
}
.itb-tasks__dots {
display: flex;
align-items: center;
gap: 10px;
list-style: none;
margin: 0;
padding: 0;
}
.itb-tasks__dot {
width: 9px;
height: 9px;
padding: 0;
border: 0;
border-radius: 50%;
background: #c4c8d4;
cursor: pointer;
transition: background 0.2s ease, transform 0.2s ease, width 0.25s ease;
}
.itb-tasks__dot:hover { background: #9aa0b8; }
.itb-tasks__dot:focus-visible {
outline: 2px solid #2233d6;
outline-offset: 2px;
}
.itb-tasks__dot.is-active {
width: 26px;
border-radius: 99px;
background: #2233d6;
}
@media (max-width: 1000px) {
.itb-cards--tasks { --tasks-gap: 18px; }
}
@media (max-width: 760px) {
.itb-tasks__topbar { flex-direction: column; gap: 20px; margin-bottom: 32px; }
.itb-tasks__nav { width: 100%; justify-content: flex-start; padding-top: 0; }
.itb-tasks__subtitle { max-width: none; text-align: left; }
.itb-tasks__pager { gap: 16px; margin-top: 26px; }
.itb-tasks__arrow { width: 44px; height: 44px; }
}
.itb-card--task {
flex: 0 0 var(--tasks-card-w, 400px);
width: var(--tasks-card-w, 400px);
min-height: 280px;
background: #fff;
border-radius: 14px;
padding: 39px 32px;
display: flex;
flex-direction: column;
gap: 18px;
scroll-snap-align: start;
box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
transition: box-shadow 0.3s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.itb-card--task:hover {
box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
transform: translateY(-4px);
}
@media (prefers-reduced-motion: reduce) {
.itb-card--task { transition: box-shadow 0.3s ease; }
.itb-card--task:hover { transform: none; }
}
.itb-card--task .itb-card__number {
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1.68px;
color: #152040;
}
.itb-card--task .itb-card__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: 27px;
line-height: 1.12;
letter-spacing: -0.54px;
color: #1f2025;
}
.itb-card--task .itb-card__desc {
font-size: 14.5px;
line-height: 1.55;
color: #444957;
}
.itb-card--task .itb-card__tags {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: flex-end;
margin-top: auto;
}
.itb-card--task .itb-tag {
font-family: var(--font-heading);
font-weight: 700;
font-size: 12px;
letter-spacing: 0;
text-transform: none;
color: #152040;
background: #efeffb;
border: none;
border-radius: 99px;
padding: 6px 14px;
}
.itb-card--highlighted {
background: #2233d6;
}
.itb-card--highlighted .itb-card__number { color: rgba(255, 255, 255, 0.65); }
.itb-card--highlighted .itb-card__title { color: #fff; }
.itb-card--highlighted .itb-card__desc { color: rgba(255, 255, 255, 0.85); }
.itb-card--highlighted .itb-tag {
color: #fff;
background: transparent;
border: 1px solid rgba(255, 255, 255, 0.4);
}
.itb-card--cta {
flex: 0 0 var(--tasks-card-w, 400px);
width: var(--tasks-card-w, 400px);
min-height: 280px;
background: #d9dae2;
border: 1.5px dashed #9aa0c4;
border-radius: 14px;
padding: 34px 36px;
display: flex;
flex-direction: column;
scroll-snap-align: start;
transition: background 0.2s ease;
}
.itb-card--cta__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: 27px;
line-height: 1.12;
letter-spacing: -0.54px;
color: #16181f;
margin-bottom: 14px;
}
.itb-card--cta__desc {
font-size: 14.5px;
line-height: 1.5;
color: #444957;
margin-bottom: auto;
}
.itb-card--cta__btn {
align-self: stretch;
height: 54px;
margin-top: 20px;
background: #1d2fd6;
}
.itb-card--cta__btn:hover { background: #1626b8; }
@media (max-width: 640px) {
.itb-card--task,
.itb-card--cta {
min-height: 0;
padding: 28px 24px;
}
.itb-card--task { gap: 14px; }
.itb-card--task .itb-card__title,
.itb-card--cta__title { font-size: 23px; letter-spacing: -0.4px; }
.itb-card--task .itb-card__tags { justify-content: flex-start; padding-top: 4px; }
}


.itb-section--solutions {
--ease-out-quint: cubic-bezier(0.22, 1, 0.36, 1);
background: #efece4;
border-top: 1px solid #eae6dd;
border-bottom: 1px solid #eae6dd;
color: #16181f;
}
[data-theme="light"] .itb-section--solutions { background: #efece4; }
.itb-solutions__grid {
display: grid;
grid-template-columns: 340px 1fr;
gap: 80px;
align-items: start;
}
.itb-solutions__aside {
position: sticky;
top: 96px;
display: flex;
flex-direction: column;
}
.itb-solutions__eyebrow {
color: #2233d6;
letter-spacing: 2px;
margin-bottom: 24px;
position: relative;
padding-left: 38px;
}
.itb-solutions__eyebrow::before {
content: "";
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 26px;
height: 2px;
background: #2233d6;
border-radius: 2px;
}
.itb-solutions__aside .itb-section__title {
color: #2b3a6b;
font-size: 54px;
letter-spacing: -1.9px;
line-height: 1;
margin-bottom: 24px;
}
.itb-solutions__desc {
font-size: 16px;
line-height: 1.56;
color: #565c6a;
margin-bottom: 40px;
}
.itb-solutions__aside-footer {
display: flex;
align-items: center;
gap: 18px;
flex-wrap: wrap;
}
.btn--dark {
background: #152040;
color: #fff;
border-radius: 10px;
height: 52px;
}
.btn--dark:hover { background: #1d2c58; }
.itb-solutions__count {
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1px;
color: #8a8f9c;
}
.itb-card--solution {
display: grid;
grid-template-columns: minmax(220px, 1.1fr) 1.4fr auto;
gap: 30px;
align-items: start;
padding: 28px 30px;
border-top: 1px solid #ddd8cc;
cursor: pointer;
transition:
background 0.28s var(--ease-out-quint),
transform 0.28s var(--ease-out-quint),
box-shadow 0.36s var(--ease-out-quint),
padding 0.36s var(--ease-out-quint);
}
.itb-solutions__list > .itb-card--solution:first-child { border-top: none; }
.itb-card--solution:not(.is-active):hover {
background: rgba(34, 51, 214, 0.04);
transform: translateX(4px);
}
.itb-card--solution:focus-visible { outline: 2px solid #2233d6; outline-offset: -2px; }
.itb-card--solution.is-active {
border-top: none;
background: #fff;
border-radius: 18px;
padding: 28px 30px;
box-shadow: 0 26px 54px -32px rgba(21, 32, 64, 0.45);
position: relative;
cursor: default;
}
.itb-card--solution.is-active::before {
content: "";
position: absolute;
left: 0;
top: 18px;
bottom: 18px;
width: 4px;
border-radius: 0 4px 4px 0;
background: #2233d6;
transform-origin: top;
animation: itb-solution-bar 0.45s var(--ease-out-quint) both;
}
@keyframes itb-solution-bar {
from { transform: scaleY(0); opacity: 0; }
to   { transform: scaleY(1); opacity: 1; }
}
.itb-card--solution .itb-card__head {
grid-column: 1;
grid-row: 1 / 3;
align-self: start;
}
.itb-card--solution .itb-card__category {
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 1.6px;
text-transform: uppercase;
color: #2233d6;
margin-bottom: 8px;
}
.itb-card--solution .itb-card__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: 22px;
line-height: 1.18;
letter-spacing: -0.44px;
color: #16181f;
}
.itb-card--solution .itb-card__desc {
grid-column: 2;
grid-row: 1 / 3;
align-self: center;
font-size: 14.5px;
line-height: 1.52;
color: #565c6a;
}
.itb-card--solution .itb-card__link {
grid-column: 3;
grid-row: 1 / 3;
align-self: center;
font-family: var(--font-heading);
font-weight: 600;
font-size: 14px;
color: #2233d6;
white-space: nowrap;
}
.itb-card--solution .itb-card__link:hover { text-decoration: underline; }
.itb-card--solution-nolink {
grid-template-columns: minmax(220px, 1.1fr) 1.4fr;
}
.itb-card--solution-nolink .itb-card__points { grid-column: 1 / 3; }
.itb-card--solution .itb-card__points {
grid-column: 1 / 4;
grid-row: 3;
display: grid;
grid-template-rows: 0fr;
overflow: hidden;
min-height: 0;
transition: grid-template-rows 0.4s var(--ease-out-quint);
}
.itb-card--solution.is-active .itb-card__points {
grid-template-rows: 1fr;
}
.itb-card--solution .itb-card__points-inner {
min-height: 0;
margin: 20px 0 0;
padding: 18px 0 0;
list-style: none;
display: flex;
flex-wrap: wrap;
gap: 8px 26px;
border-top: 1px solid #eae6dd;
opacity: 0;
transform: translateY(6px);
transition:
opacity 0.3s var(--ease-out-quint) 0.08s,
transform 0.3s var(--ease-out-quint) 0.08s;
}
.itb-card--solution.is-active .itb-card__points-inner {
opacity: 1;
transform: translateY(0);
}
.itb-card--solution .itb-card__points li {
position: relative;
padding-left: 16px;
font-size: 14px;
color: #3c4250;
}
.itb-card--solution .itb-card__points li::before {
content: "";
position: absolute;
left: 0;
top: 8px;
width: 7px;
height: 7px;
border-radius: 2px;
background: #2233d6;
}
@media (max-width: 1000px) {
.itb-solutions__grid { grid-template-columns: 1fr; gap: 40px; }
.itb-solutions__aside { position: static; }
.itb-solutions__aside .itb-section__title {
font-size: clamp(30px, 6vw, 44px);
letter-spacing: -1.2px;
}
.itb-solutions__desc { margin-bottom: 28px; }
.itb-card--solution {
grid-template-columns: 1fr;
gap: 16px 20px;
}
.itb-card--solution .itb-card__head {
grid-column: 1;
grid-row: auto;
}
.itb-card--solution .itb-card__desc,
.itb-card--solution .itb-card__link {
grid-column: 1;
grid-row: auto;
margin-top: 8px;
}
.itb-card--solution .itb-card__points { grid-column: 1; }
.itb-card--solution:not(.is-active):hover { transform: none; }
}
@media (max-width: 640px) {
.itb-solutions__grid { gap: 32px; }
.itb-card--solution { padding: 22px 0; gap: 12px; }
.itb-card--solution.is-active { padding: 24px 20px; }
.itb-card--solution.is-active::before { top: 14px; bottom: 14px; }
.itb-card--solution .itb-card__title { font-size: 20px; }
.itb-card--solution .itb-card__desc,
.itb-card--solution .itb-card__link { margin-top: 0; }
.itb-card--solution .itb-card__points-inner {
flex-direction: column;
gap: 10px;
margin-top: 16px;
padding-top: 16px;
}
.itb-solutions__aside-footer { gap: 14px; }
.itb-solutions__aside-footer .btn--dark { flex: 1 1 auto; }
}
@media (prefers-reduced-motion: reduce) {
.itb-card--solution,
.itb-card--solution .itb-card__points,
.itb-card--solution .itb-card__points-inner {
transition: background 0.01ms, color 0.01ms, border-color 0.01ms;
}
.itb-card--solution:not(.is-active):hover { transform: none; }
.itb-card--solution.is-active::before { animation: none; }
.itb-card--solution .itb-card__points-inner {
opacity: 1;
transform: none;
}
}


.itb-section--products {
background: var(--bg-primary);
}
.itb-section--products .itb-section__header { max-width: 680px; }
.itb-section--products .itb-container {
max-width: 1600px;
padding-inline: clamp(20px, 4vw, 48px);
}
.itb-diagram {
position: relative;
display: grid;
grid-template-columns: minmax(300px, 1fr) minmax(440px, 540px) minmax(300px, 1fr);
align-items: center;
gap: 90px;
margin-top: 48px;
}
.itb-diagram__col {
display: flex;
flex-direction: column;
gap: 8px;
min-width: 0;
}
.itb-diagram__col--left { align-items: flex-start; }
.itb-diagram__col--right { align-items: flex-end; }
.itb-diagram__col .itb-node { width: 380px; max-width: 100%; }
.itb-diagram__core { min-width: 0; }
.itb-diagram__core .itb-card--core { width: 100%; }
.itb-diagram__lines {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
overflow: visible;
pointer-events: none;
z-index: 1;
}
.itb-diagram__line {
fill: none;
stroke: var(--accent);
stroke-width: 2;
stroke-linecap: round;
stroke-dasharray: 5 7;
animation: itb-dash-run 1s linear infinite;
}
@keyframes itb-dash-run {
to { stroke-dashoffset: -24; }
}
.itb-diagram__col,
.itb-diagram__core { position: relative; z-index: 2; }
.itb-node {
display: flex;
align-items: flex-start;
gap: 16px;
padding: 18px 4px;
border-bottom: 1px solid var(--border-color);
}
.itb-node:last-child { border-bottom: none; }
.itb-node__num {
flex: 0 0 44px;
width: 44px;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid rgba(122, 160, 255, 0.30);
border-radius: 12px;
background: var(--bg-card);
font-family: var(--font-mono);
font-weight: 700;
font-size: 13px;
color: var(--accent-light);
}
.itb-node__body { min-width: 0; flex: 1 1 auto; }
.itb-node__head {
display: flex;
align-items: baseline;
gap: 10px;
flex-wrap: wrap;
}
.itb-node__title {
font-family: var(--font-heading);
font-weight: 700;
font-size: 17px;
letter-spacing: -0.2px;
color: var(--text-primary);
}
.itb-node__link {
color: inherit;
transition: color 0.2s ease;
}
.itb-node__link:hover { color: var(--accent-light); }
.itb-node--link { position: relative; cursor: pointer; }
.itb-node--link::before {
content: '';
position: absolute;
inset: 0 -16px;
border-radius: var(--radius-sm);
background: transparent;
transition: background 0.2s ease, box-shadow 0.2s ease;
pointer-events: none;
}
.itb-node--link .itb-node__link::after {
content: '';
position: absolute;
inset: 0 -16px;
border-radius: var(--radius-sm);
z-index: 1;
}
.itb-node--link > * { position: relative; }
.itb-node--link:hover::before { background: var(--bg-card-hover); }
.itb-node--link:hover .itb-node__link { color: var(--accent-light); }
.itb-node--link:hover .itb-node__num {
border-color: rgba(122, 160, 255, 0.55);
color: var(--accent-light);
}
.itb-node--link:hover .itb-node__arrow {
color: var(--accent-light);
transform: translateX(3px);
}
.itb-diagram__col--right .itb-node--link:hover .itb-node__arrow {
transform: scaleX(-1) translateX(3px);
}
.itb-node--link:focus-within::before {
background: var(--bg-card-hover);
box-shadow: inset 0 0 0 1px var(--accent-light);
}
.itb-node--link .itb-node__link:focus-visible { outline: none; }
.itb-node--link:focus-within .itb-node__arrow { color: var(--accent-light); }
.itb-node__role {
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 0.3px;
color: var(--accent);
}
.itb-node__desc {
margin-top: 4px;
font-size: 13.5px;
line-height: 1.5;
color: var(--text-secondary);
}
.itb-node__arrow {
flex: 0 0 auto;
align-self: center;
margin-left: auto;
padding-right: 6px;
font-size: 19px;
line-height: 1;
color: var(--text-muted);
transition: color 0.2s ease, transform 0.2s ease;
}
.itb-diagram__col--right .itb-node { flex-direction: row-reverse; text-align: right; }
.itb-diagram__col--right .itb-node__head { justify-content: flex-end; }
.itb-diagram__col--right .itb-node__arrow {
margin-left: 0;
margin-right: auto;
padding-right: 0;
padding-left: 6px;
transform: scaleX(-1);
}
.itb-diagram__col--right .itb-node__arrow:hover { transform: scaleX(-1) translateX(3px); }
.itb-card--core {
width: 100%;
background: linear-gradient(150deg, #16235a 0%, #0f1830 100%);
border: 1px solid rgba(122, 160, 255, 0.30);
border-radius: 22px;
padding: 35px;
display: flex;
flex-direction: column;
gap: 16px;
color: #fff;
}
.itb-card--core .itb-card__img {
width: 100%;
border-radius: 12px;
margin-bottom: 8px;
}
.itb-card--core .itb-card__head { display: flex; align-items: baseline; gap: 12px; }
.itb-card--core .itb-card__logo {
margin-left: auto;
align-self: center;
flex: 0 0 auto;
width: 34px;
height: 34px;
color: #fff;
}
.itb-card--core .itb-card__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: 34px;
letter-spacing: -0.85px;
color: #fff;
}
.itb-card--core .itb-card__role {
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 1px;
text-transform: uppercase;
color: rgba(255, 255, 255, 0.6);
}
.itb-card--core .itb-card__subtitle,
.itb-card--core .itb-card__desc {
font-size: 14.5px;
line-height: 1.55;
color: #aeb9d6;
}
.itb-card--core .itb-card__subtitle + .itb-card__desc { margin-top: -8px; }
.itb-card--core .itb-card__points {
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 4px;
}
.itb-card--core .itb-card__points li {
position: relative;
padding: 13px 18px 13px 35px;
font-size: 13.5px;
color: #dbe2f2;
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 11px;
}
.itb-card--core .itb-card__points li::before {
content: "";
position: absolute;
left: 16px;
top: 50%;
transform: translateY(-50%);
width: 7px;
height: 7px;
border-radius: 2px;
background: #5a8bff;
}
.itb-card--core .itb-card__link {
margin-top: 0;
align-self: flex-start;
background: #2233d6;
border: 1px solid transparent;
border-radius: 11px;
padding: 12px 22px;
font-family: var(--font-heading);
font-weight: 600;
font-size: 14.5px;
color: #fff;
transition: background 0.2s ease;
}
.itb-card--core .itb-card__link:hover { background: #1a279f; }
.itb-card--module {
display: grid;
grid-template-columns: 44px 1fr auto;
gap: 4px 22px;
align-items: center;
padding: 22px 0;
border-top: 1px solid var(--border-color);
}
.itb-card--module:first-of-type { border-top: none; }
.itb-card--module .itb-card__img { display: none; }
.itb-card--module .itb-card__number {
grid-row: 1 / 3;
width: 44px;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid var(--border-tag);
border-radius: 12px;
font-family: var(--font-mono);
font-weight: 400;
font-size: 14px;
color: var(--text-secondary);
}
.itb-card--module .itb-card__head {
grid-column: 2;
display: flex;
align-items: baseline;
gap: 12px;
flex-wrap: wrap;
}
.itb-card--module .itb-card__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: 20px;
letter-spacing: -0.3px;
color: var(--text-primary);
}
.itb-card--module .itb-card__role {
font-family: var(--font-mono);
font-weight: 700;
font-size: 10.5px;
letter-spacing: 0.8px;
text-transform: uppercase;
color: var(--text-muted);
}
.itb-card--module .itb-card__subtitle { display: none; }
.itb-card--module .itb-card__desc {
grid-column: 2;
grid-row: 2;
font-size: 14px;
line-height: 1.5;
color: var(--text-secondary);
}
.itb-card--module .itb-card__points { display: none; }
.itb-card--module .itb-card__link {
grid-column: 3;
grid-row: 1 / 3;
font-size: 22px;
color: var(--text-secondary);
transition: color 0.2s ease;
font-size: 0;
}
.itb-card--module .itb-card__link::after {
content: "→";
font-size: 22px;
}
.itb-card--module .itb-card__link:hover { color: var(--accent-light); }
.itb-products__footer {
display: flex;
flex-direction: column;
align-items: center;
margin-top: 56px;
}
.itb-products__tags {
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: 12px;
}
.itb-products__tags-label {
font-family: var(--font-mono);
font-weight: 400;
font-size: 12px;
letter-spacing: 0.5px;
color: var(--text-secondary);
margin-right: 4px;
}
@media (max-width: 1000px) {
.itb-diagram {
grid-template-columns: 1fr;
gap: 24px;
max-width: 640px;
margin-inline: auto;
}
.itb-diagram__core { order: -1; }
.itb-diagram__lines { display: none; }
.itb-diagram__col--left,
.itb-diagram__col--right { align-items: stretch; }
.itb-diagram__col .itb-node { width: 100%; }
.itb-diagram__col--right .itb-node { flex-direction: row; text-align: left; }
.itb-diagram__col--right .itb-node__head { justify-content: flex-start; }
.itb-diagram__col--right .itb-node__arrow {
margin-left: auto;
margin-right: 0;
padding-left: 0;
padding-right: 6px;
transform: none;
}
.itb-diagram__col--right .itb-node--link:hover .itb-node__arrow { transform: translateX(3px); }
}
@media (max-width: 640px) {
.itb-card--core { padding: 26px 22px; border-radius: 18px; }
.itb-card--core .itb-card__title { font-size: 27px; letter-spacing: -0.6px; }
.itb-card--core .itb-card__logo { width: 28px; height: 28px; }
.itb-card--core .itb-card__link { align-self: stretch; text-align: center; }
.itb-card--core .itb-card__points li { padding: 12px 14px 12px 32px; }
.itb-node { gap: 12px; padding: 16px 0; }
.itb-node__num { flex-basis: 38px; width: 38px; height: 38px; border-radius: 10px; }
.itb-node__title { font-size: 16px; }
.itb-node__arrow { padding-right: 0; font-size: 17px; }
.itb-products__footer { margin-top: 40px; }
.itb-products__tags { justify-content: flex-start; }
.itb-products__tags-label { flex-basis: 100%; margin-bottom: 4px; }
}
@media (prefers-reduced-motion: reduce) {
.itb-diagram__line { animation: none; }
}


.itb-section--audience,
.itb-section--why {
color: #16181f;
}
.itb-section--why { background: #efece4; }
.itb-section--audience { background: #f4f1ea; }
[data-theme="light"] .itb-section--why { background: #efece4; }
[data-theme="light"] .itb-section--audience { background: #f4f1ea; }
.itb-section--audience .itb-section__title,
.itb-section--why .itb-section__title {
color: #16181f;
}
.itb-section--audience .itb-section__subtitle,
.itb-section--why .itb-section__subtitle {
color: #565c6a;
}
.itb-audience__grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px 40px;
}
.itb-audience__item {
position: relative;
display: flex;
flex-direction: column;
gap: 6px;
padding: 26px 0 26px 28px;
border-top: 1px solid #ddd8cc;
}
.itb-audience__item:nth-child(-n+3) { border-top: none; }
.itb-audience__item::before {
content: "";
position: absolute;
left: 0;
top: 33px;
width: 8px;
height: 8px;
border-radius: 2px;
background: #2233d6;
}
.itb-audience__title {
font-family: var(--font-heading);
font-weight: 700;
font-size: 18px;
letter-spacing: -0.3px;
color: #16181f;
}
.itb-audience__desc {
font-size: 14.5px;
line-height: 1.5;
color: #565c6a;
}
.itb-why__grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
align-items: start;
}
.itb-why__item {
position: relative;
background: #fff;
border: 1px solid #eae6dd;
border-radius: 14px;
overflow: hidden;
transition:
border-color 0.35s ease,
box-shadow 0.35s ease;
}
.itb-why__item::before {
content: "";
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: #2233d6;
transform: scaleY(0);
transform-origin: top;
transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 1;
}
.itb-why__item:hover::before,
.itb-why__item.is-open::before {
transform: scaleY(1);
}
.itb-why__item:hover {
border-color: #cfd6f2;
box-shadow: 0 22px 44px -26px rgba(29, 47, 214, 0.4);
}
.itb-why__item.is-open {
border-color: #b9c4f0;
box-shadow: 0 20px 40px -28px rgba(29, 47, 214, 0.35);
}
.itb-why__head {
width: 100%;
display: flex;
align-items: flex-start;
gap: 16px;
padding: 24px 24px 24px 28px;
background: none;
border: 0;
text-align: left;
cursor: pointer;
font: inherit;
color: inherit;
}
.itb-why__title {
flex: 1;
font-family: var(--font-heading);
font-weight: 700;
font-size: 17px;
line-height: 1.3;
letter-spacing: -0.3px;
color: #16181f;
transition: color 0.3s ease;
}
.itb-why__item:hover .itb-why__title,
.itb-why__item.is-open .itb-why__title {
color: #1d2fd6;
}
.itb-why__toggle {
position: relative;
flex: none;
width: 26px;
height: 26px;
margin-top: 1px;
border-radius: 50%;
border: 1.5px solid #d6d0c4;
transition: border-color 0.3s ease, background-color 0.3s ease;
}
.itb-why__toggle::before,
.itb-why__toggle::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 11px;
height: 1.6px;
background: #2233d6;
transform: translate(-50%, -50%);
transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.itb-why__toggle::after { transform: translate(-50%, -50%) rotate(90deg); }
.itb-why__item:hover .itb-why__toggle { border-color: #b9c4f0; }
.itb-why__item.is-open .itb-why__toggle {
border-color: #2233d6;
background: rgba(34, 51, 214, 0.08);
}
.itb-why__item.is-open .itb-why__toggle::after {
transform: translate(-50%, -50%) rotate(0deg);
}
.itb-why__head:focus-visible {
outline: 2px solid #2233d6;
outline-offset: -3px;
border-radius: 12px;
}
.itb-why__panel {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.itb-why__item.is-open .itb-why__panel {
grid-template-rows: 1fr;
}
.itb-why__panel > .itb-why__desc {
overflow: hidden;
min-height: 0;
margin: 0;
padding: 0 26px 0 28px;
font-size: 14px;
line-height: 1.55;
color: #565c6a;
opacity: 0;
transition: opacity 0.3s ease, padding-bottom 0.4s ease;
}
.itb-why__item.is-open .itb-why__panel > .itb-why__desc {
opacity: 1;
padding-bottom: 26px;
}
@media (prefers-reduced-motion: reduce) {
.itb-why__item,
.itb-why__item::before,
.itb-why__toggle,
.itb-why__toggle::before,
.itb-why__toggle::after,
.itb-why__title,
.itb-why__panel,
.itb-why__panel > .itb-why__desc { transition: none; }
}
@media (max-width: 1000px) {
.itb-audience__grid,
.itb-why__grid { grid-template-columns: repeat(2, 1fr); }
.itb-audience__item:nth-child(-n+3) { border-top: 1px solid #ddd8cc; }
.itb-audience__item:nth-child(-n+2) { border-top: none; }
}
@media (max-width: 620px) {
.itb-audience__grid,
.itb-why__grid { grid-template-columns: 1fr; }
.itb-audience__grid { gap: 0; }
.itb-audience__item:nth-child(-n+2) { border-top: 1px solid #ddd8cc; }
.itb-audience__item:first-child { border-top: none; }
}
.itb-audience__grid .itb-audience__item--feature {
grid-column: span 2;
margin-top: 12px;
padding: 30px 28px;
border-top: none;
border-radius: 14px;
background: linear-gradient(135deg, #2a54ea, #1738b4);
}
.itb-audience__grid .itb-audience__item--feature::before { display: none; }
.itb-audience__item--feature .itb-audience__title { color: #fff; }
.itb-audience__item--feature .itb-audience__desc { color: rgba(255, 255, 255, 0.82); }
@media (max-width: 620px) {
.itb-audience__grid .itb-audience__item--feature { grid-column: auto; }
}


.itb-section--clients {
background: #fbfbf9;
color: #16181f;
}
[data-theme="light"] .itb-section--clients { background: #fbfbf9; }
.itb-section--clients .itb-section__header { align-items: flex-start; text-align: left; }
.itb-section--clients .itb-section__title { color: #16181f; }
.itb-clients-marquee {
margin-top: 32px;
overflow: hidden;
-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.itb-clients-marquee__viewport {
display: flex;
width: max-content;
}
.itb-clients-marquee:hover .itb-clients-marquee__track {
animation-play-state: paused;
}
.itb-clients-marquee__track {
animation: itb-clients-scroll 60s linear infinite;
}
@keyframes itb-clients-scroll {
to { transform: translateX(-100%); }
}
@media (prefers-reduced-motion: reduce) {
.itb-clients-marquee { overflow-x: auto; }
.itb-clients-marquee__track { animation: none; }
.itb-clients-marquee__track[aria-hidden="true"] { display: none; }
}
.itb-clients {
display: flex;
flex-wrap: nowrap;
align-items: stretch;
gap: 20px;
flex: 0 0 auto;
padding-inline: 10px;
}
.itb-clients__item {
flex: 0 0 208px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 14px;
min-height: 148px;
padding: 28px 24px;
background: #fff;
border: 1px solid #ecece6;
border-radius: 16px;
text-align: center;
transition: border-color 0.35s ease, box-shadow 0.35s ease, transform 0.35s ease;
}
.itb-clients__item:hover {
border-color: #dcdccf;
box-shadow: 0 18px 40px -28px rgba(21, 32, 64, 0.35);
transform: translateY(-4px);
}
.itb-clients__logo {
display: flex;
align-items: center;
justify-content: center;
height: 48px;
width: 100%;
}
.itb-clients__img {
max-height: 100%;
max-width: 150px;
width: auto;
height: auto;
object-fit: contain;
filter: grayscale(1);
opacity: 0.62;
transition: filter 0.35s ease, opacity 0.35s ease;
}
.itb-clients__item:hover .itb-clients__img {
filter: grayscale(0);
opacity: 1;
}
.itb-clients__mono {
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 50%;
background: #eef0fc;
color: #2233d6;
font-family: var(--font-heading);
font-weight: 700;
font-size: 20px;
transition: background 0.35s ease, color 0.35s ease;
}
.itb-clients__item:hover .itb-clients__mono {
background: #2233d6;
color: #fff;
}
.itb-clients__name {
font-family: var(--font-heading);
font-weight: 600;
font-size: 14px;
line-height: 1.3;
letter-spacing: -0.2px;
color: #565c6a;
transition: color 0.35s ease;
}
.itb-clients__item:hover .itb-clients__name { color: #16181f; }
@media (prefers-reduced-motion: reduce) {
.itb-clients__item,
.itb-clients__img,
.itb-clients__mono,
.itb-clients__name { transition: none; }
.itb-clients__item:hover { transform: none; }
}
@media (max-width: 560px) {
.itb-clients { gap: 14px; }
.itb-clients__item { flex-basis: 150px; min-height: 132px; padding: 22px 16px; }
}


.itb-section--cases {
background: #fff;
color: #16181f;
}
[data-theme="light"] .itb-section--cases { background: #fff; }
.itb-section--cases .itb-section__topbar {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 40px;
}
.itb-section--cases .itb-section__topbar .itb-section__header { margin-bottom: 0; }
.itb-section--cases .itb-section__title { color: #16181f; }
.itb-section--cases .itb-section__eyebrow { color: #2233d6; }
.itb-section__link {
font-family: var(--font-heading);
font-weight: 600;
font-size: 15px;
color: #152040;
white-space: nowrap;
}
.itb-section__link:hover { text-decoration: underline; }
.itb-cards--cases {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}
.itb-card--case {
background: #fff;
border: 1px solid #e6e8ee;
border-radius: 18px;
overflow: hidden;
display: flex;
flex-direction: column;
transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.itb-card--case:hover {
border-color: #c9d0e6;
box-shadow: 0 20px 44px -30px rgba(21, 32, 64, 0.4);
}
.itb-card--case .itb-card__media {
display: block;
aspect-ratio: 411 / 172;
overflow: hidden;
}
.itb-card--case .itb-card__img {
width: 100%;
height: 100%;
object-fit: cover;
}
.itb-card--case .itb-tag {
margin: 22px 24px 0;
align-self: flex-start;
color: #2233d6;
background: #eef0fc;
border: 1px solid #dfe3f8;
}
.itb-card--case .itb-card__title {
margin: 14px 24px 0;
font-family: var(--font-heading);
font-weight: 700;
font-size: 19px;
line-height: 1.2;
letter-spacing: -0.3px;
color: #16181f;
}
.itb-card--case .itb-card__title a { color: inherit; }
.itb-card--case .itb-card__title a:hover { color: #2233d6; }
.itb-card--case .itb-card__desc {
margin: 10px 24px 26px;
font-size: 14px;
line-height: 1.5;
color: #565c6a;
}
@media (max-width: 900px) {
.itb-cards--cases { grid-template-columns: 1fr; max-width: 460px; }
}
@media (max-width: 640px) {
.itb-section--cases .itb-section__topbar {
flex-direction: column;
align-items: flex-start;
gap: 16px;
margin-bottom: 28px;
}
.itb-cards--cases { max-width: none; gap: 18px; }
.itb-card--case .itb-tag { margin: 18px 20px 0; }
.itb-card--case .itb-card__title { margin: 12px 20px 0; }
.itb-card--case .itb-card__desc { margin: 10px 20px 22px; }
}


.itb-section--process {
background: #f4f2ec;
color: #16181f;
}
[data-theme="light"] .itb-section--process { background: #f4f2ec; }
.itb-section--process .itb-section__title { color: #16181f; }
.itb-section--process .itb-section__subtitle { color: #565c6a; }
.itb-process {
position: relative;
}
.itb-steps {
display: grid;
grid-template-columns: repeat(8, 1fr);
gap: 16px;
margin: 0;
padding: 0;
list-style: none;
}
.itb-steps__item {
position: relative;
}
.itb-steps__item:not(:last-child)::before {
content: "";
position: absolute;
top: 24px;
left: 48px;
width: calc(100% - 48px + 16px);
height: 0;
border-top: 1.5px dashed #b9bfd6;
transform: translateY(-50%);
z-index: 0;
}
.itb-steps__item:last-child::before { display: none; }
.itb-steps__btn {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 14px;
width: 100%;
padding: 0;
background: none;
border: 0;
text-align: left;
cursor: pointer;
font: inherit;
color: inherit;
}
.itb-steps__btn:disabled { cursor: default; }
.itb-steps__num {
width: 48px;
height: 48px;
flex: none;
display: flex;
align-items: center;
justify-content: center;
border: 1.5px solid #2233d6;
border-radius: 50%;
background: #fff;
font-family: var(--font-mono);
font-weight: 700;
font-size: 14px;
color: #2233d6;
transition: background-color 0.3s ease, color 0.3s ease,
transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
box-shadow 0.3s ease;
}
.itb-steps__btn:not(:disabled):hover .itb-steps__num {
transform: translateY(-3px);
box-shadow: 0 12px 24px -14px rgba(34, 51, 214, 0.5);
}
.itb-steps__btn.is-active .itb-steps__num {
background: #2233d6;
color: #fff;
transform: none;
}
.itb-steps__btn:focus-visible {
outline: 2px solid #2233d6;
outline-offset: 4px;
border-radius: 10px;
}
.itb-steps__text {
font-family: var(--font-heading);
font-weight: 600;
font-size: 13.5px;
line-height: 1.3;
color: #444957;
text-wrap: balance;
transition: color 0.3s ease;
}
.itb-steps__btn:not(:disabled):hover .itb-steps__text,
.itb-steps__btn.is-active .itb-steps__text {
color: #1d2fd6;
}
.itb-steps__pop {
--pop-x: 26px;
position: absolute;
z-index: 20;
width: min(420px, calc(100% - 8px));
background: #fff;
border-radius: 16px;
padding: 24px 28px;
box-shadow: 0 26px 54px -24px rgba(10, 14, 30, 0.4);
opacity: 0;
transform: translateY(6px);
transition: opacity 0.28s ease, transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}
.itb-steps__pop[hidden] { display: none; }
.itb-steps__pop.is-open {
opacity: 1;
transform: translateY(0);
}
.itb-steps__pop::before {
content: "";
position: absolute;
top: -8px;
left: var(--pop-x);
width: 16px;
height: 16px;
margin-left: -8px;
background: #fff;
border-radius: 3px 0 0 0;
transform: rotate(45deg);
}
.itb-steps__pop-title {
display: block;
font-family: var(--font-heading);
font-weight: 700;
font-size: 17px;
line-height: 1.3;
letter-spacing: -0.3px;
color: #16181f;
margin-bottom: 10px;
}
.itb-steps__pop-desc {
font-size: 15px;
line-height: 1.6;
color: #565c6a;
margin: 0;
}
@media (prefers-reduced-motion: reduce) {
.itb-steps__num,
.itb-steps__text,
.itb-steps__pop { transition: none; }
}
@media (min-width: 1101px) {
.postid-185 .itb-steps { grid-template-columns: repeat(5, 1fr); gap: 20px; }
.postid-185 .itb-steps__num { width: 60px; height: 60px; font-size: 17px; }
.postid-185 .itb-steps__text { font-size: 15.5px; }
.postid-185 .itb-steps__item:not(:last-child)::before {
top: 30px;
left: 60px;
width: calc(100% - 60px + 20px);
}
}
@media (max-width: 1100px) {
.itb-steps { grid-template-columns: repeat(4, 1fr); gap: 36px 20px; }
.itb-steps__item::before { display: block; }
.itb-steps__item:nth-child(4n)::before { display: none; }
}
@media (max-width: 760px) {
.itb-steps { grid-template-columns: repeat(3, 1fr); }
.itb-steps__item::before { display: block; }
.itb-steps__item:nth-child(3n)::before { display: none; }
}
@media (max-width: 520px) {
.itb-steps { grid-template-columns: repeat(2, 1fr); gap: 32px 16px; }
.itb-steps__item::before { display: block; }
.itb-steps__item:nth-child(2n)::before { display: none; }
.itb-steps__pop { width: calc(100% - 8px); }
}


.itb-section--cta {
background: var(--bg-secondary);
border-top: 1px solid var(--border-color);
}
.itb-cta__inner {
display: grid;
grid-template-columns: 1fr 606px;
gap: 80px;
align-items: start;
}
.itb-cta__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: clamp(30px, 3.6vw, 42px);
line-height: 1.1;
letter-spacing: -1px;
color: var(--text-primary);
margin-bottom: 20px;
max-width: 600px;
}
.itb-cta__desc {
font-size: 16px;
line-height: 1.6;
color: var(--text-secondary);
margin-bottom: 32px;
max-width: 440px;
}
.itb-cta__buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
max-width: 580px;
}
.itb-cta__buttons .btn {
padding: 12px 20px;
font-size: 14.5px;
border-radius: var(--radius-sm);
}
.itb-cta__form {
position: relative;
}
@media (max-width: 1000px) {
.itb-cta__inner { grid-template-columns: 1fr; gap: 40px; }
.itb-cta__desc { max-width: none; }
.itb-cta__buttons { max-width: none; }
}
@media (max-width: 640px) {
.itb-cta__inner { gap: 32px; }
.itb-cta__desc { margin-bottom: 24px; }
.itb-cta__buttons { gap: 8px; }
.itb-cta__buttons .btn {
flex: 1 1 calc(50% - 4px);
padding: 12px 14px;
font-size: 13.5px;
white-space: normal;
}
}


.itb-section--prod-cta {
--bg-primary: #0b1020;
--bg-card: #101a33;
--text-primary: #ffffff;
--text-secondary: #9aa4bb;
--border-card: rgba(148, 163, 208, 0.18);
--accent-bg: rgba(90, 116, 255, 0.14);
--surface-2: rgba(148, 163, 208, 0.12);
--surface-2-hover: rgba(148, 163, 208, 0.22);
--border-color: rgba(148, 163, 208, 0.18);
background: #0b1020;
color: #fff;
}
.itb-section--prod-cta .itb-section__eyebrow {
display: flex;
align-items: center;
gap: 14px;
color: #7f97ff;
margin-bottom: 16px;
}
.itb-section--prod-cta .itb-section__eyebrow::before {
content: "";
width: 26px;
height: 2px;
background: #2f4dff;
flex: none;
}


.itb-cookie {
position: fixed;
left: 0;
right: 0;
bottom: 0;
z-index: 80;
padding: 16px clamp(16px, 4vw, 32px);
padding-bottom: max(16px, env(safe-area-inset-bottom));
background: var(--bg-card);
border-top: 1px solid var(--border-card);
box-shadow: 0 -8px 32px rgba(0, 0, 0, .18);
transform: translateY(100%);
transition: transform .28s ease-out;
}
.itb-cookie.is-visible {
transform: translateY(0);
}
.itb-cookie__inner {
max-width: var(--container-max);
margin-inline: auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
}
.itb-cookie__text {
margin: 0;
font-size: 14px;
line-height: 1.55;
color: var(--text-secondary);
}
.itb-cookie__text a {
color: var(--text-primary);
text-decoration: underline;
text-underline-offset: 2px;
}
.itb-cookie__text a:hover {
color: var(--accent-light);
}
.itb-cookie__accept {
flex-shrink: 0;
min-width: 160px;
}
@media (max-width: 720px) {
.itb-cookie {
padding-top: 12px;
padding-bottom: max(12px, env(safe-area-inset-bottom));
}
.itb-cookie__inner {
gap: 12px;
}
.itb-cookie__purpose {
display: none;
}
.itb-cookie__text {
font-size: 13px;
line-height: 1.45;
}
.itb-cookie__accept {
min-width: 0;
padding-inline: 18px;
}
}
@media (prefers-reduced-motion: reduce) {
.itb-cookie {
transition: none;
}
}


.itb-svc-hero__chips {
list-style: none;
margin: 0 0 32px;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 10px;
max-width: 1120px;
}
.itb-svc-hero__chip {
font-family: var(--font-heading);
font-weight: 600;
font-size: 14.5px;
line-height: 1;
color: var(--text-primary);
background: var(--bg-card);
border: 1px solid var(--border-card);
border-radius: var(--radius-full);
padding: 11px 18px;
white-space: nowrap;
}
@media (max-width: 640px) {
.itb-svc-hero__chips { gap: 8px; margin-bottom: 24px; }
.itb-svc-hero__chip { font-size: 13px; padding: 9px 14px; }
}


.itb-section--svc-catalog {
--text-primary: #0f1b2d;
--text-secondary: #475569;
--text-muted: #64748b;
--bg-card-hover: #eef2f7;
--border-card: #cbd3df;
--accent-light: #3a58c0;
background: #f2f4f8;
color: #0f1b2d;
}
.itb-section--svc-catalog .itb-container {
max-width: 1760px;
padding-inline: clamp(20px, 6vw, 96px);
}
.itb-svc-catalog__header {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 24px;
}
.itb-svc-catalog__heading {
display: flex;
flex-direction: column;
gap: 12px;
}
.itb-section--svc-catalog .itb-section__eyebrow {
display: flex;
align-items: center;
gap: 14px;
color: var(--accent-light);
}
.itb-section--svc-catalog .itb-section__eyebrow::before {
content: "";
width: 26px;
height: 2px;
background: var(--accent);
flex: none;
}
.itb-svc-catalog__count {
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--text-muted);
white-space: nowrap;
padding-bottom: 8px;
}
.itb-svc-catalog__intro {
max-width: 720px;
font-size: 17px;
line-height: 1.6;
color: var(--text-secondary);
margin-bottom: 40px;
}
.itb-svc-catalog__list {
display: flex;
flex-direction: column;
}
.itb-svc-service {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
gap: 32px 80px;
padding: 48px 32px;
border-top: 1px solid var(--border-card);
transition: background 0.2s ease;
}
.itb-svc-service:last-child { border-bottom: 1px solid var(--border-card); }
.itb-svc-service--acc {
display: block;
grid-template-columns: none;
gap: 0;
padding: 0;
}
.itb-svc-service--acc:last-child { border-bottom: 1px solid var(--border-card); }
.itb-svc-service__summary {
display: flex;
align-items: center;
gap: 20px;
padding: 40px 32px;
cursor: pointer;
list-style: none;
transition: background 0.2s ease;
}
.itb-svc-service__summary::-webkit-details-marker { display: none; }
.itb-svc-service__summary:hover { background: var(--bg-card-hover); }
.itb-svc-service__summary:focus-visible {
outline: 2px solid var(--accent);
outline-offset: -2px;
}
.itb-svc-service__summary .itb-svc-service__title {
flex: 1 1 auto;
margin-bottom: 0;
}
.itb-svc-service__num {
flex: none;
font-family: var(--font-mono);
font-weight: 700;
font-size: 13px;
letter-spacing: 0.5px;
color: var(--text-muted);
transition: color 0.2s ease;
}
.itb-svc-service--acc:hover .itb-svc-service__num,
.itb-svc-service--acc[open] .itb-svc-service__num { color: var(--accent-light); }
.itb-svc-service__preview {
flex: none;
font-size: 13.5px;
color: var(--text-muted);
white-space: nowrap;
transition: opacity 0.2s ease;
}
.itb-svc-service--acc[open] .itb-svc-service__preview { opacity: 0; }
.itb-svc-service__toggle {
position: relative;
flex: none;
width: 34px;
height: 34px;
border: 1px solid var(--border-card);
border-radius: 50%;
background: #fff;
transition: background 0.2s ease, border-color 0.2s ease, transform 0.25s ease;
}
.itb-svc-service__toggle::before,
.itb-svc-service__toggle::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 13px;
height: 2px;
border-radius: 1px;
background: var(--text-secondary);
transform: translate(-50%, -50%);
transition: transform 0.25s ease, background 0.2s ease, opacity 0.2s ease;
}
.itb-svc-service__toggle::after { transform: translate(-50%, -50%) rotate(90deg); }
.itb-svc-service--acc:hover .itb-svc-service__toggle {
background: var(--accent);
border-color: var(--accent);
}
.itb-svc-service--acc:hover .itb-svc-service__toggle::before,
.itb-svc-service--acc:hover .itb-svc-service__toggle::after { background: #fff; }
.itb-svc-service--acc[open] .itb-svc-service__toggle {
background: var(--accent);
border-color: var(--accent);
}
.itb-svc-service--acc[open] .itb-svc-service__toggle::before,
.itb-svc-service--acc[open] .itb-svc-service__toggle::after { background: #fff; }
.itb-svc-service--acc[open] .itb-svc-service__toggle::after {
transform: translate(-50%, -50%) rotate(0deg);
opacity: 0;
}
.itb-svc-service__reveal {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows 0.3s ease;
}
.itb-svc-service--acc[open] .itb-svc-service__reveal {
grid-template-rows: 1fr;
}
.itb-svc-service__reveal-inner {
overflow: hidden;
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
gap: 32px 80px;
padding: 0 32px 44px;
opacity: 0;
transition: opacity 0.25s ease;
}
.itb-svc-service--acc[open] .itb-svc-service__reveal-inner { opacity: 1; }
.itb-svc-service__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: clamp(19px, 1.9vw, 23px);
line-height: 1.18;
letter-spacing: -0.4px;
color: var(--text-primary);
margin-bottom: 16px;
text-wrap: balance;
}
.itb-svc-service__desc {
font-size: 15.5px;
line-height: 1.6;
color: var(--text-secondary);
margin-bottom: 20px;
}
.itb-svc-service__cta {
display: inline-flex;
align-items: center;
gap: 6px;
font-family: var(--font-heading);
font-weight: 600;
font-size: 15px;
color: var(--accent);
text-decoration: none;
transition: gap 0.2s ease, color 0.2s ease;
}
.itb-svc-service__cta:hover { gap: 12px; color: var(--accent-hover); }
.itb-svc-service__points {
list-style: none;
margin: 0;
padding: 0;
align-self: center;
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 20px 40px;
}
.itb-svc-service__point {
position: relative;
padding-left: 20px;
font-size: 15px;
line-height: 1.45;
color: var(--text-secondary);
}
.itb-svc-service__point::before {
content: "";
position: absolute;
left: 0;
top: 8px;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--accent);
}
.itb-svc-service:not(.itb-svc-service--featured):hover {
background: var(--bg-card-hover);
}
.itb-svc-service--featured {
position: relative;
grid-template-columns: 1fr;
border: none;
background: var(--accent);
border-radius: var(--radius-lg);
padding: 0;
margin-bottom: 28px;
overflow: hidden;
color: #fff;
}
.itb-svc-service--featured:last-child { border-bottom: none; }
.itb-svc-service--featured .itb-svc-service__body {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
gap: 32px 48px;
padding: 48px 220px 48px 52px;
position: relative;
}
.itb-svc-service--featured .itb-svc-service__main {
grid-row: 1;
}
.itb-svc-service--featured .itb-svc-service__title { color: #fff; }
.itb-svc-service--featured .itb-svc-service__desc { color: rgba(255, 255, 255, 0.86); }
.itb-svc-service--featured .itb-svc-service__cta { color: #fff; }
.itb-svc-service--featured .itb-svc-service__cta:hover { color: #fff; }
.itb-svc-service--featured .itb-svc-service__point { color: rgba(255, 255, 255, 0.9); }
.itb-svc-service--featured .itb-svc-service__point::before { background: rgba(255, 255, 255, 0.85); }
.itb-svc-service__object {
position: absolute;
right: -20px;
bottom: -20px;
width: 240px;
max-width: 40%;
height: auto;
z-index: 0;
pointer-events: none;
user-select: none;
filter: drop-shadow(0 16px 28px rgba(8, 17, 33, 0.4));
}
@media (max-width: 1000px) {
.itb-svc-service,
.itb-svc-service__reveal-inner {
grid-template-columns: 1fr;
gap: 24px;
}
.itb-svc-service__points { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.itb-svc-service--featured .itb-svc-service__body {
grid-template-columns: 1fr;
padding: 32px;
}
.itb-svc-service__object { display: none; }
}
@media (max-width: 720px) {
.itb-svc-service__preview { display: none; }
}
@media (max-width: 560px) {
.itb-svc-catalog__header { flex-direction: column; align-items: flex-start; gap: 12px; }
.itb-svc-service__points { grid-template-columns: 1fr; gap: 12px; }
.itb-svc-service:not(.itb-svc-service--featured):hover { padding-left: 12px; padding-right: 12px; }
.itb-svc-service__summary { padding: 26px 20px; gap: 14px; }
.itb-svc-service__reveal-inner { padding-left: 20px; padding-right: 20px; }
.itb-svc-service__num { font-size: 12px; }
.itb-svc-service__toggle { width: 30px; height: 30px; }
.itb-svc-service__toggle::before,
.itb-svc-service__toggle::after { width: 11px; }
}
@media (prefers-reduced-motion: reduce) {
.itb-svc-service__reveal,
.itb-svc-service__reveal-inner,
.itb-svc-service__toggle {
transition: none;
}
}


.itb-section--svc-process {
background: #0f1a2e;
}
.itb-svc-process__header {
display: flex;
flex-direction: column;
gap: 12px;
max-width: 760px;
margin-bottom: 40px;
}
.itb-section--svc-process .itb-section__eyebrow {
display: flex;
align-items: center;
gap: 14px;
color: var(--accent-light);
}
.itb-section--svc-process .itb-section__eyebrow::before {
content: "";
width: 26px;
height: 2px;
background: var(--accent);
flex: none;
}
.itb-svc-process__list {
list-style: none;
margin: 0;
padding: 0;
border-top: 2px solid var(--accent);
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 48px 40px;
padding-top: 48px;
}
.itb-svc-process__step {
display: flex;
flex-direction: column;
}
.itb-svc-process__num {
display: flex;
align-items: baseline;
gap: 8px;
font-family: var(--font-mono);
font-weight: 700;
font-size: clamp(30px, 3.6vw, 44px);
line-height: 1;
color: var(--accent);
margin-bottom: 20px;
}
.itb-svc-process__step-label {
font-size: 13px;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--text-muted);
}
.itb-svc-process__title {
font-family: var(--font-heading);
font-weight: 700;
font-size: 18px;
line-height: 1.25;
color: var(--text-primary);
margin-bottom: 12px;
}
.itb-svc-process__desc {
font-size: 15px;
line-height: 1.55;
color: var(--text-secondary);
}
@media (max-width: 900px) {
.itb-svc-process__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 32px; }
}
@media (max-width: 560px) {
.itb-svc-process__list { grid-template-columns: 1fr; gap: 32px; padding-top: 32px; }
}


.itb-section--svc-formats {
--text-primary: #ffffff;
--text-secondary: #9aa4bb;
--text-muted: #6f7c99;
--accent-light: #7f97ff;
background: #0b1020;
border-top: 1px solid rgba(127, 151, 255, 0.14);
color: #ffffff;
}
.itb-svc-formats__inner {
display: grid;
grid-template-columns: minmax(0, 0.85fr) minmax(0, 2fr);
gap: 48px;
align-items: start;
}
.itb-svc-formats__aside {
position: sticky;
top: 96px;
}
.itb-section--svc-formats .itb-section__eyebrow {
display: flex;
align-items: center;
gap: 14px;
color: var(--accent-light);
margin-bottom: 20px;
}
.itb-section--svc-formats .itb-section__eyebrow::before {
content: "";
width: 26px;
height: 2px;
background: var(--accent);
flex: none;
}
.itb-svc-formats__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: clamp(30px, 3.4vw, 46px);
line-height: 1.04;
letter-spacing: -1px;
text-transform: uppercase;
color: var(--text-primary);
margin-bottom: 24px;
}
.itb-svc-formats__desc {
font-size: 16px;
line-height: 1.6;
color: var(--text-secondary);
margin-bottom: 24px;
}
.itb-svc-formats__link {
display: inline-flex;
align-items: center;
gap: 8px;
font-family: var(--font-heading);
font-weight: 600;
font-size: 15px;
color: var(--accent);
text-decoration: none;
transition: gap 0.2s ease;
}
.itb-svc-formats__link:hover { gap: 14px; }
.itb-svc-formats__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 20px;
}
.itb-svc-format {
display: flex;
flex-direction: column;
min-height: 240px;
padding: 28px;
border: 1px solid rgba(148, 163, 208, 0.16);
border-radius: var(--radius-md);
background: #101a33;
text-decoration: none;
transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.itb-svc-format:hover {
border-color: rgba(127, 151, 255, 0.5);
transform: translateY(-3px);
box-shadow: 0 14px 30px rgba(8, 17, 33, 0.18);
}
.itb-svc-format__kicker {
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 1.4px;
text-transform: uppercase;
color: #7f97ff;
margin-bottom: 16px;
}
.itb-svc-format__title {
font-family: var(--font-heading);
font-weight: 700;
font-size: 19px;
line-height: 1.2;
color: #fff;
margin-bottom: 12px;
}
.itb-svc-format__desc {
font-size: 14.5px;
line-height: 1.55;
color: #9aa4bb;
margin-bottom: 24px;
}
.itb-svc-format__footer {
margin-top: auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.itb-svc-format__tags {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.itb-svc-format__tag {
font-family: var(--font-mono);
font-weight: 700;
font-size: 11px;
letter-spacing: 0.6px;
color: #9aa4bb;
background: rgba(148, 163, 208, 0.12);
border: 1px solid rgba(148, 163, 208, 0.2);
border-radius: var(--radius-sm);
padding: 6px 10px;
white-space: nowrap;
}
.itb-svc-format__arrow {
flex: none;
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 50%;
border: 1px solid rgba(148, 163, 208, 0.2);
color: #fff;
font-size: 16px;
transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.itb-svc-format:hover .itb-svc-format__arrow {
background: rgba(127, 151, 255, 0.16);
transform: translateX(3px);
}
.itb-svc-format--featured {
border-color: rgba(127, 151, 255, 0.6);
background: linear-gradient(160deg, #16234a 0%, #101a33 100%);
}
.itb-svc-format--featured .itb-svc-format__arrow {
background: #fff;
color: var(--accent);
border-color: #fff;
}
.itb-svc-format--featured:hover .itb-svc-format__arrow {
background: #fff;
transform: translateX(3px);
}
@media (max-width: 1000px) {
.itb-svc-formats__inner { grid-template-columns: 1fr; gap: 32px; }
.itb-svc-formats__aside { position: static; }
.itb-svc-formats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
.itb-svc-formats__grid { grid-template-columns: 1fr; }
}


.itb-section--svc-outcomes {
--text-primary: #0f1b2d;
--text-secondary: #475569;
--accent-light: #3a58c0;
--bg-card: #ffffff;
--border-card: #e2e8f0;
background: #f2f4f8;
color: #0f1b2d;
}
.itb-svc-outcomes__header {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 40px;
}
.itb-section--svc-outcomes .itb-section__eyebrow {
display: flex;
align-items: center;
gap: 14px;
color: var(--accent-light);
}
.itb-section--svc-outcomes .itb-section__eyebrow::before {
content: "";
width: 26px;
height: 2px;
background: var(--accent);
flex: none;
}
.itb-svc-outcomes__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 24px;
margin-bottom: 24px;
}
.itb-svc-outcome {
position: relative;
display: flex;
flex-direction: column;
min-height: 220px;
padding: 32px 32px 68px;
background: var(--bg-card);
border: 1px solid var(--border-card);
border-radius: var(--radius-lg);
overflow: hidden;
transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.itb-svc-outcome:hover {
transform: translateY(-4px);
border-color: rgba(29, 72, 230, 0.4);
box-shadow: 0 16px 34px rgba(15, 27, 45, 0.10);
}
.itb-svc-outcome:hover .itb-svc-outcome__title {
color: var(--accent);
}
.itb-svc-outcome__logo {
position: absolute;
right: 24px;
bottom: 24px;
width: auto;
height: 32px;
object-fit: contain;
object-position: right bottom;
opacity: 0.85;
pointer-events: none;
transition: opacity 0.25s ease, transform 0.25s ease;
}
.itb-svc-outcome:hover .itb-svc-outcome__logo {
opacity: 1;
transform: translateY(-3px) scale(1.05);
}
.itb-svc-outcome__title {
font-family: var(--font-heading);
font-weight: 700;
font-size: 19px;
line-height: 1.2;
color: var(--text-primary);
margin-bottom: 12px;
transition: color 0.25s ease;
}
.itb-svc-outcome__desc {
font-size: 15px;
line-height: 1.55;
color: var(--text-secondary);
}
.itb-svc-outcome-feature {
position: relative;
display: flex;
align-items: center;
justify-content: space-between;
gap: 40px;
padding: 44px 48px;
border-radius: var(--radius-lg);
border: 1px solid rgba(127, 151, 255, 0.28);
background: #17233f;
color: #fff;
overflow: hidden;
}
.itb-svc-outcome-feature__text {
max-width: 720px;
}
.itb-svc-outcome-feature__logo {
position: absolute;
right: 40px;
bottom: 32px;
width: auto;
height: 44px;
object-fit: contain;
object-position: right bottom;
opacity: 0.9;
pointer-events: none;
}
.itb-svc-outcome-feature__kicker {
display: inline-block;
font-family: var(--font-mono);
font-weight: 700;
font-size: 12px;
letter-spacing: 1.4px;
text-transform: uppercase;
color: #7f97ff;
margin-bottom: 16px;
}
.itb-svc-outcome-feature__title {
font-family: var(--font-heading);
font-weight: 800;
font-size: clamp(24px, 2.8vw, 32px);
line-height: 1.12;
letter-spacing: -0.5px;
color: #fff;
margin-bottom: 14px;
}
.itb-svc-outcome-feature__desc {
font-size: 16px;
line-height: 1.6;
color: #9aa4bb;
}
@media (max-width: 1000px) {
.itb-svc-outcomes__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
.itb-svc-outcome-feature { flex-direction: column; align-items: flex-start; gap: 28px; padding: 32px; }
}
@media (max-width: 560px) {
.itb-svc-outcomes__grid { grid-template-columns: 1fr; }
}


.itb-cw {
position: fixed;
right: clamp(16px, 3vw, 32px);
bottom: clamp(16px, 3vw, 32px);
bottom: max(clamp(16px, 3vw, 32px), env(safe-area-inset-bottom));
z-index: 70;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 12px;
}
.itb-cw__fab {
position: relative;
flex-shrink: 0;
width: 56px;
height: 56px;
padding: 0;
border: none;
border-radius: var(--radius-full);
background: var(--accent);
color: #fff;
cursor: pointer;
display: grid;
place-items: center;
box-shadow: 0 6px 20px rgba(8, 17, 33, .28);
transition: background .2s ease, transform .2s ease;
}
.itb-cw__fab:hover {
background: var(--accent-hover);
transform: translateY(-2px);
}
.itb-cw__fab:focus-visible {
outline: 2px solid var(--accent-light);
outline-offset: 3px;
}
.itb-cw__fab-icon {
grid-area: 1 / 1;
width: 26px;
height: 26px;
transition: opacity .2s ease, transform .2s ease;
}
.itb-cw__fab-icon--close {
opacity: 0;
transform: rotate(-90deg);
}
.itb-cw.is-open .itb-cw__fab-icon--open {
opacity: 0;
transform: rotate(90deg);
}
.itb-cw.is-open .itb-cw__fab-icon--close {
opacity: 1;
transform: rotate(0);
}
.itb-cw__fab::after {
content: '';
position: absolute;
inset: 0;
border-radius: inherit;
pointer-events: none;
opacity: 0;
}
.itb-cw__fab.is-pulsing::after {
animation: itb-cw-pulse 1.8s ease-out 3;
}
@keyframes itb-cw-pulse {
0%   { opacity: .55; box-shadow: 0 0 0 0 var(--accent); }
70%  { opacity: 0;   box-shadow: 0 0 0 18px var(--accent); }
100% { opacity: 0;   box-shadow: 0 0 0 18px var(--accent); }
}
.itb-cw__menu {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 10px;
}
.itb-cw__menu[hidden] {
display: none;
}
.itb-cw__item {
position: relative;
width: 48px;
height: 48px;
padding: 0;
border: 1px solid var(--border-card);
border-radius: var(--radius-full);
background: var(--bg-card);
color: var(--text-primary);
cursor: pointer;
display: grid;
place-items: center;
box-shadow: 0 4px 14px rgba(8, 17, 33, .22);
text-decoration: none;
opacity: 0;
transform: translateY(8px);
transition: opacity .22s ease, transform .22s ease, background .2s ease, border-color .2s ease;
}
.itb-cw.is-open .itb-cw__item {
opacity: 1;
transform: translateY(0);
transition-delay: calc(var(--cw-i, 0) * 40ms);
}
.itb-cw__item:hover {
background: var(--bg-card-hover);
border-color: var(--border-tag);
}
.itb-cw__item:focus-visible {
outline: 2px solid var(--accent-light);
outline-offset: 3px;
}
.itb-cw__item-icon,
.itb-cw__item .itb-social__icon {
width: 22px;
height: 22px;
color: var(--text-primary);
}
.itb-cw__item-tip {
position: absolute;
right: calc(100% + 10px);
top: 50%;
transform: translateY(-50%) translateX(4px);
white-space: nowrap;
padding: 5px 10px;
border-radius: var(--radius-sm);
background: var(--bg-card);
border: 1px solid var(--border-card);
color: var(--text-secondary);
font-size: 13px;
line-height: 1.2;
opacity: 0;
pointer-events: none;
transition: opacity .18s ease, transform .18s ease;
}
.itb-cw__item:hover .itb-cw__item-tip,
.itb-cw__item:focus-visible .itb-cw__item-tip {
opacity: 1;
transform: translateY(-50%) translateX(0);
}
.itb-cw__popover {
width: 320px;
max-width: calc(100vw - 32px);
padding: 18px;
border: 1px solid var(--border-card);
border-radius: var(--radius-md);
background: var(--bg-card);
box-shadow: 0 12px 40px rgba(8, 17, 33, .32);
opacity: 0;
transform: translateY(8px);
transition: opacity .22s ease, transform .22s ease;
}
.itb-cw__popover[hidden] {
display: none;
}
.itb-cw__popover.is-visible {
opacity: 1;
transform: translateY(0);
}
.itb-cw__popover-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
margin-bottom: 14px;
}
.itb-cw__popover-title {
margin: 0;
font-family: var(--font-heading);
font-size: 17px;
font-weight: 700;
line-height: 1.3;
color: var(--text-primary);
}
.itb-cw__popover-close,
.itb-cw__greeting-close {
flex-shrink: 0;
width: 28px;
height: 28px;
padding: 0;
border: none;
border-radius: var(--radius-full);
background: transparent;
color: var(--text-muted);
cursor: pointer;
display: grid;
place-items: center;
transition: color .18s ease, background .18s ease;
}
.itb-cw__popover-close:hover,
.itb-cw__greeting-close:hover {
color: var(--text-primary);
background: var(--surface-2);
}
.itb-cw__popover-close svg,
.itb-cw__greeting-close svg {
width: 16px;
height: 16px;
}
.itb-cw-form {
display: flex;
flex-direction: column;
gap: 12px;
}
.itb-cw-form__hp {
position: absolute;
left: -9999px;
width: 1px;
height: 1px;
overflow: hidden;
}
.itb-cw-form__field {
display: flex;
flex-direction: column;
gap: 5px;
}
.itb-cw-form__label {
font-size: 12px;
color: var(--text-muted);
}
.itb-cw-form__field input,
.itb-cw-form__field textarea {
width: 100%;
padding: 10px 12px;
border: 1px solid var(--border-color);
border-radius: var(--radius-sm);
background: var(--bg-primary);
color: var(--text-primary);
font-family: var(--font-body);
font-size: 14px;
line-height: 1.4;
transition: border-color .18s ease;
}
.itb-cw-form__field textarea {
resize: vertical;
min-height: 56px;
}
.itb-cw-form__field input::placeholder,
.itb-cw-form__field textarea::placeholder {
color: var(--text-muted);
}
.itb-cw-form__field input:focus,
.itb-cw-form__field textarea:focus {
outline: none;
border-color: var(--accent);
}
.itb-cw-form__submit {
width: 100%;
}
.itb-cw-form__submit.is-loading {
opacity: .6;
pointer-events: none;
}
.itb-cw-form__submit:disabled {
opacity: .5;
cursor: not-allowed;
}
.itb-cw-form__consent {
margin: 0;
}
.itb-cw-form__consent .itb-consent__text {
font-size: 11px;
line-height: 1.45;
color: var(--text-muted);
}
.itb-cw-form__consent a {
color: var(--text-secondary);
text-decoration: underline;
text-underline-offset: 2px;
}
.itb-cw-form__consent a:hover {
color: var(--accent-light);
}
.itb-cw-form__result {
margin: 0;
font-size: 13px;
line-height: 1.45;
color: var(--text-secondary);
}
.itb-cw-form__result.is-error {
color: #ff8f8f;
}
[data-theme="light"] .itb-cw-form__result.is-error {
color: #b42318;
}
.itb-cw__greeting {
position: relative;
width: 320px;
max-width: calc(100vw - 32px);
border: 1px solid var(--border-card);
border-radius: var(--radius-md);
background: var(--bg-card);
box-shadow: 0 12px 40px rgba(8, 17, 33, .32);
opacity: 0;
transform: translateY(8px);
transition: opacity .28s ease, transform .28s ease;
}
.itb-cw__greeting[hidden] {
display: none;
}
.itb-cw__greeting.is-visible {
opacity: 1;
transform: translateY(0);
}
.itb-cw__greeting-close {
position: absolute;
top: 8px;
right: 8px;
z-index: 1;
}
.itb-cw__greeting-body {
display: flex;
align-items: flex-start;
gap: 12px;
width: 100%;
padding: 16px;
border: none;
border-radius: inherit;
background: transparent;
color: inherit;
font: inherit;
text-align: left;
cursor: pointer;
}
.itb-cw__greeting-body:focus-visible {
outline: 2px solid var(--accent-light);
outline-offset: -2px;
}
.itb-cw__greeting-photo {
flex-shrink: 0;
width: 48px;
height: 48px;
border-radius: var(--radius-full);
object-fit: cover;
object-position: center top;
}
.itb-cw__greeting-content {
display: block;
min-width: 0;
padding-right: 22px;
}
.itb-cw__greeting-name {
display: block;
margin-bottom: 4px;
font-family: var(--font-heading);
font-size: 15px;
font-weight: 600;
line-height: 1.3;
color: var(--text-primary);
}
.itb-cw__greeting-text {
display: block;
font-size: 13px;
line-height: 1.5;
color: var(--text-secondary);
}
.itb-cw__greeting-p {
display: block;
margin: 0 0 8px;
}
.itb-cw__greeting-p:last-child {
margin-bottom: 0;
}
@media (max-width: 600px) {
.itb-cw {
right: 12px;
bottom: max(12px, env(safe-area-inset-bottom));
}
.itb-cw__fab {
width: 52px;
height: 52px;
}
.itb-cw__popover,
.itb-cw__greeting {
width: calc(100vw - 24px);
}
.itb-cw__item-tip {
display: none;
}
}
@media (prefers-reduced-motion: reduce) {
.itb-cw__fab,
.itb-cw__fab-icon,
.itb-cw__item,
.itb-cw__item-tip,
.itb-cw__popover,
.itb-cw__greeting {
transition: none;
}
.itb-cw.is-open .itb-cw__item {
transition-delay: 0s;
}
.itb-cw__fab:hover {
transform: none;
}
.itb-cw__fab.is-pulsing::after {
animation: none;
}
}


.itb-cta-form {
display: flex;
flex-direction: column;
gap: 16px;
padding: 28px;
background: var(--bg-card);
border: 1px solid var(--border-card);
border-radius: var(--radius-lg);
}
.itb-cta-form__row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}
.itb-cta-form__field {
display: flex;
flex-direction: column;
gap: 6px;
}
.itb-cta-form__label {
font-size: 13px;
color: var(--text-secondary);
}
.itb-cta-form input[type="text"],
.itb-cta-form textarea {
width: 100%;
padding: 12px 14px;
background: var(--bg-primary);
border: 1px solid var(--border-card);
border-radius: var(--radius-sm);
color: var(--text-primary);
font: inherit;
outline: none;
transition: border-color .15s;
}
.itb-cta-form input[type="text"]:focus,
.itb-cta-form textarea:focus {
border-color: var(--accent);
}
.itb-cta-form textarea {
resize: vertical;
min-height: 96px;
}
.itb-cta-form__submit {
width: 100%;
justify-content: center;
cursor: pointer;
}
.itb-cta-form__submit.is-loading {
opacity: .6;
pointer-events: none;
}
.itb-cta-form__hp {
position: absolute;
left: -9999px;
width: 1px;
height: 1px;
overflow: hidden;
}
.itb-cta__result {
margin: 0;
padding: 12px 14px;
border-radius: var(--radius-sm);
background: var(--accent-bg);
color: var(--text-primary);
font-size: 14px;
}
.itb-cta__result.is-error {
background: rgba(220, 60, 60, 0.12);
}
.itb-cta__preset {
cursor: pointer;
}
.itb-cta__preset.is-active {
background: var(--accent);
border-color: var(--accent);
color: #fff;
}
.itb-cta-form.is-flash {
box-shadow: 0 0 0 2px var(--accent);
transition: box-shadow .2s;
}
.itb-cta-form__consents {
display: flex;
flex-direction: column;
gap: 12px;
}
.itb-consent {
display: grid;
grid-template-columns: 18px 1fr;
gap: 10px;
align-items: start;
cursor: pointer;
}
.itb-consent input[type="checkbox"] {
appearance: none;
-webkit-appearance: none;
margin: 0;
width: 18px;
height: 18px;
margin-top: 2px;
background: var(--bg-primary);
border: 1px solid var(--border-tag);
border-radius: 4px;
cursor: pointer;
transition: background .15s, border-color .15s;
}
.itb-consent input[type="checkbox"]:hover {
border-color: var(--accent);
}
.itb-consent input[type="checkbox"]:checked {
background: var(--accent);
border-color: var(--accent);
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E");
background-size: 14px;
background-position: center;
background-repeat: no-repeat;
}
.itb-consent input[type="checkbox"]:focus-visible {
outline: 2px solid var(--accent);
outline-offset: 2px;
}
.itb-consent__text {
font-size: 13px;
line-height: 1.5;
color: var(--text-secondary);
}
.itb-consent__text a {
color: var(--text-primary);
text-decoration: underline;
text-underline-offset: 2px;
}
.itb-consent__text a:hover {
color: var(--accent-light);
}
.itb-consent__req {
color: var(--accent);
}
.itb-cta-form__submit:disabled {
opacity: .5;
cursor: not-allowed;
}
@media (max-width: 640px) {
.itb-cta-form__row {
grid-template-columns: 1fr;
}
.itb-cta-form {
padding: 20px;
gap: 14px;
}
.itb-cta-form input[type="text"],
.itb-cta-form textarea {
font-size: 16px;
padding: 13px 14px;
}
.itb-cta-form textarea {
min-height: 112px;
}
.itb-cta-form__submit {
height: 52px;
}
}


@media (max-width: 1024px) {
:root {
--section-py: 72px;
}
}
@media (max-width: 768px) {
:root {
--section-py: 56px;
}
.itb-section__header { margin-bottom: 32px; }
.itb-section__subtitle { font-size: 15.5px; }
.itb-expertise__inner { gap: 10px; padding-block: 16px; }
.itb-expertise__list { gap: 6px 18px; }
.itb-expertise__item { padding: 0; }
.itb-expertise__item:not(:last-child)::after { display: none; }
}
@media (max-width: 480px) {
:root {
--section-py: 48px;
}
.btn {
padding: 15px 22px;
font-size: 15px;
}
}

