/* 20250729-1 */
/* ------------------------------ Fonts -------------------------------- */

@font-face { font-family: 'TT Firs Text'; src: url('/_data/objects/0000/0221/view_file.woff2') format('woff2-variations'), url('/_data/objects/0000/0221/view_file.woff2') format('woff2'); }
@font-face { font-family: 'TT Tricks Variable'; src: url('/_data/objects/0000/0222/view_file.woff2') format('woff2-variations'), url('/_data/objects/0000/0222/view_file.woff2') format('woff2'); }



/* ------------------------------ Reset -------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, figure,
cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, 
li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; }

* { box-sizing: border-box; }

html, body { width: 100%; height: 100%; overscroll-behavior: none; }
html { height: auto; background-color: #2D2D2D; -webkit-tap-highlight-color: rgba(0,0,0,0); }

body { font-family: 'TT Firs Text', sans-serif; /*font-size: 62.5%;*/ font-weight: 500; color: #2D2D2D; background-color: #E9E9E9; }
body { overflow-x: hidden; touch-action: pan-y; -webkit-overflow-scrolling: touch; 
-webkit-text-size-adjust: none; -ms-text-size-adjust: none; -moz-text-size-adjust: none; text-size-adjust: none; 
-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; 
-webkit-user-select: none; user-select: none;
/* transition: background-color 0.5s ease;  */ will-change: background-color; }

:focus { outline: 0; }

ul { list-style: none; }
img { border: 0; }

.cf { display: inline-block; }
.cf:after {  content: "."; display: block;  height: 0;  clear: both;  visibility: hidden; }
* html .cf { height: 1% }
.cf { display: block }

.is-hidden { opacity: 0; visibility: hidden; }
.is-visible { opacity: 1; visibility: visible; transition: opacity 0.3s; }




/* ------------------------------ Common -------------------------------- */

:root {
	/* Grid */
	--page-padding: 32px;
	--grid-gap: 32px;
	--grid-columns: 16;

	/* Variables */
	--content-width: 100%;
	--content-width2: calc(100% - 2 * var(--page-padding));
	--column-width: calc( (var(--content-width) - var(--grid-gap) * (var(--grid-columns) - 1)) / var(--grid-columns)  );
	--2column-width: calc(2 * var(--column-width) + 1 * var(--grid-gap));
	--3column-width: calc(3 * var(--column-width) + 2 * var(--grid-gap));
	--4column-width: calc(4 * var(--column-width) + 3 * var(--grid-gap));
	--5column-width: calc(5 * var(--column-width) + 4 * var(--grid-gap));
	--6column-width: calc(6 * var(--column-width) + 5 * var(--grid-gap));
	--7column-width: calc(7 * var(--column-width) + 6 * var(--grid-gap));
	--8column-width: calc(8 * var(--column-width) + 7 * var(--grid-gap));
	--9column-width: calc(9 * var(--column-width) + 8 * var(--grid-gap));
	--10column-width: calc(10 * var(--column-width) + 9 * var(--grid-gap));

	--content-width3: calc(100vw - 2 * var(--page-padding));
	--column-width3: calc( (var(--content-width3) - var(--grid-gap) * (var(--grid-columns) - 1)) / var(--grid-columns)  );
	--2column-width3: calc(2 * var(--column-width3) + 1 * var(--grid-gap));

	--first-slide-width: calc(3 * var(--column-width) + 2 * var(--grid-gap));
	--slide-width: calc(4 * var(--column-width) + 3 * var(--grid-gap));
	--scrollbar-start: calc(3 * (var(--column-width) + var(--grid-gap)));
	--scrollbar-width: calc(13 * var(--column-width) + 12 * var(--grid-gap));
}

.comm-width { width: var(--content-width); padding: 0 var(--page-padding); margin: 0 auto; position: relative; }
.content-hidden { overflow: hidden; }

a { color: red; text-decoration: underline; -webkit-tap-highlight-color: transparent; stext-decoration-style: solid; text-decoration-skip-ink: none; text-underline-offset: auto; text-underline-position: from-font; text-decoration-thickness: from-font; }
a:hover { color: #9747FF; }

h1 { font-size: 78px; line-height: 86px; }
h2 { font-family: 'TT Firs Text'; font-size: 48px; line-height: 56px; font-weight: 800; }

/* 
section + section { border-top: 1px solid red; }
 */

.section { padding-top: 100px; padding-bottom: 150px; position: relative; }

.section-header { position: relative; text-indent: calc( var(--3column-width) + var(--grid-gap)); }
.section-header .split-line:nth-child(1) { text-indent: calc( var(--3column-width) + var(--grid-gap)) !important; }

.section-header__title strong,
.section-header__title div strong { font-family: 'TT Firs Text'; font-weight: 500; }
.section-header__title.section-header__title--alt,
.section-header__title.section-header__title--alt .section-header__title-wrap { font-family: 'TT Tricks Variable'; font-weight: 300; }

.section-header__subtitle { position: absolute; left: 0; top: 13px; font-size: 14px; line-height: 18px; font-weight: 500; text-indent: 0; width: var(--3column-width); }

.section-svg-title { margin-left: calc(var(--grid-gap) * (-1)); margin-right: calc(var(--grid-gap) * (-1)); overflow: visible !important; }
.section-svg-title svg { display: block; width: 100%; height: auto; }

.section-svg-title { position: relative; will-change: transform; }

.section--approach + .section--products-wrap,
.section--ratings + .section--awards,
.section--awards + .section--team,
.section--cases + .section--clients,
.section--clients + .section--group,
.section--group + .section--career,
.section--career + .section--media { margin-top: -100px; }


.button { line-height: 1; vertical-align: top; position: relative; align-items: center; text-decoration: none; z-index: 10; }
.button * { transition: all 0.3s cubic-bezier(0.2,-0.5,0.8,1.5); }
.button .button__icon { align-items: center; justify-content: center; background-repeat: no-repeat; background-size: contain; flex-shrink: 0; }
.button .button__icon--left { opacity: 0; transform: scale(0); }
.button .button__icon--right { opacity: 1; transform: scale(1); }
.button:hover .button__icon--left  { opacity: 1; transform: scale(1); }
.button:hover .button__icon--right { opacity: 0; transform: scale(0); }


.button--filled { display: inline-flex; }
.button--filled .button__icon { width: 66px; height: 66px; display: flex; }
.button--filled .button__icon--left { margin-right: -66px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='66' height='66' fill='%232D2D2D' rx='33'/><path stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }
.button--filled .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='63' height='63' x='1.5' y='1.5' stroke='%232D2D2D' stroke-width='3' rx='31.5'/><path stroke='%232D2D2D' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }
.button--filled .button__label { font-family: 'TT Firs Text', sans-serif; font-size: 14px; line-height: 18px; font-weight: 500; color: #fff; background: #2D2D2D; padding: 24px 40px; border-radius: 100px; }
.button--filled:hover .button__label { transform: translateX(66px); }

.button--filled-light .button__label { color: #2D2D2D; background: #fff; }
.button--filled-light .button__icon--left { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='66' height='66' fill='white' rx='33'/><path stroke='%232D2D2D' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }
.button--filled-light .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='63' height='63' x='1.5' y='1.5' stroke='white' stroke-width='3' rx='31.5'/><path stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }


.button--small .button__icon { width: 26px; height: 26px; }
.button--small .button__icon--left { margin-right: -26px; }
.button--small .button__label { padding: 4px 24px; }
.button--small:hover .button__label { transform: translateX(26px); }

.button--show-more .button__label { color: #2D2D2D; background: #fff; }
.button--show-more .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='63' height='63' x='64.5' y='1.5' stroke='%23fff' stroke-width='3' rx='31.5' transform='rotate(90 64.5 1.5)'/><path stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M8.958 33 33 57.042 57.04 33'/></svg>"); }
.button--show-more .button__icon--left  { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='66' height='66' x='66' fill='%23fff' rx='33' transform='rotate(90 66 0)'/><path stroke='%232D2D2D' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M8.958 33 33 57.042 57.04 33'/></svg>"); }


.button--link { display: flex; }
.button--link .button__icon { width: 44px; height: 44px; display: inline-flex;  }
.button--link .button__icon--left { margin-right: -44px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='66' height='66' fill='%232D2D2D' rx='33'/><path stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }
.button--link .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='63' height='63' x='1.5' y='1.5' stroke='%232D2D2D' stroke-width='3' rx='31.5'/><path stroke='%232D2D2D' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }
.button--link .button__label { width: 100%; font-family: 'TT Firs Text', sans-serif; font-size: 24px; line-height: 42px; font-weight: 400; color: #2D2D2D; }
.button--link:hover .button__label { transform: translateX(54px); }

.pagination { position: relative; text-align: center; width: 100%; }


.split-word, 
.split-line { text-indent: 0!important; }
.split-line { /*white-space: nowrap;*/ }


@media (hover: none) and (pointer: coarse) {
	.fancybox-content {
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-y: contain;
	}
}

.fancybox-container {
	overscroll-behavior: contain;
	touch-action: none;
	overflow: hidden !important;
}


.hidden { overflow: hidden !important; height: 100%; }



/* ------------------------------ Header -------------------------------- */

.header { position: absolute; z-index: 20; left: 0; right: 0; }
.header-wrap { display: flex; justify-content: space-between; align-items: center; padding: 24px 0; }
.header .logo { display: flex; align-items: flex-end; gap: 16px; font-size: 14px; line-height: 18px; font-weight: 400; color: #2D2D2D; text-decoration: none; }

.menu ul { display: flex; align-items: center; gap: 30px; }
.menu__item { font-size: 14px; line-height: 18px; font-weight: 500; position: relative; }
.menu__item a { color: #2D2D2D; text-decoration: none; display: flex; align-items: center; }

.menu__item-label { position: relative; }

.menu__item-dot,
.menu__item-label,
.menu__item--has-submenu .menu__item-arrow { transition: all 0.3s cubic-bezier(0.2,-0.5,0.8,2); }

.menu__item-dot { transform: rotate(100deg); position: absolute; pointer-events: none; left: -6px; width: 18px; height: 6px; opacity: 0; }
.menu__item-dot:before { content: "";  position: absolute; background: #2D2D2D; width: 6px; height: 6px; border-radius: 50%; }

.menu__item a:hover .menu__item-dot { transform: rotate(-10deg); opacity: 1; }
.menu__item a:hover .menu__item-label { transform: translateX(8px); }
.menu__item a:hover .menu__item-arrow { transform: translateX(8px) rotate(-180deg); }
 
.submenu { opacity: 0; visibility: hidden; position: absolute; left: -20px; top: 26px; background: #2D2D2D; padding: 16px; border-radius: 8px; width: 220px; display: flex; flex-direction: column; gap: 12px; transition: all 0.6s linear; } 
.submenu a { color: #fff; display: flex; align-items: center; position: relative; }
.submenu .menu__item-dot:before { background: #fff; }

.menu__item--has-submenu:hover .submenu { opacity: 1; visibility: visible; }
.menu__item--has-submenu .menu__item-arrow { width: 20px; height: 18px; background: url(/_data/objects/0000/0050/arrow.svg) no-repeat 50% 50%; margin-top: 2px; }

.menu__burger { display: none; -webkit-tap-highlight-color: transparent; }

.menu { overflow: visible !important; }


/* ------------------------------ Hero section -------------------------------- */

.section--hero { padding-top: 0; padding-bottom: 0; }

.comm-width--hero { display: flex; justify-content: space-between; flex-direction: column; min-height: calc(100vh - 0px); }
.section--hero .header-spacer { display: none; }

.section--hero .section-header { margin-top: -121px; }
.section--hero .section-header__subtitle { top: 16px; }
.section--hero .section-header + .button { margin-top: 62px; }

.hero__highlights { position: relative; margin-top: 95px; padding-bottom: 37px; text-align: right; }
.hero__highlights-list { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 40px; font-weight: 400; font-size: 14px; line-height: 18px; }
.hero__highlights-line { display: block; width: var(--content-width); height: 1px; background: #2D2D2D; position: absolute; left: 0; bottom: 24px; }



/* ------------------------------ Approach section -------------------------------- */

.section--approach { z-index: 22; padding-top: 80px; }

.section--approach .section-header { display: flex; display: flex; text-indent: 0; gap: var(--grid-gap);  }
.section--approach .section-header__title { width: var(--12column-width); }
.section--approach .section-header__subtitle { position: static; width: var(--3column-width); margin-top: 13px; }

.section--approach .section-header .split-line:nth-child(1) { text-indent: 0 !important; }

.approach__slider-wrap { width: 100%; margin-left: calc(var(--3column-width) + var(--grid-gap)); margin-top: 86px; }
.approach__slider { position: relative; display: grid; column-gap: var(--grid-gap); grid-auto-columns: var(--5column-width); grid-auto-flow: column; }

.approach__item	{ background-color: #FFFFFF; border-radius: 8px; background-repeat: no-repeat; background-position: 100% 100%; background-size: contain; transition: background-color, background-image, 0.3s linear; }
.approach__content { height: 100%; padding: 24px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: space-between; }
.approach__title { font-size: 24px; line-height: 28px; font-weight: 500; }
.approach__desc { font-size: 20px; line-height: 24px; font-weight: 400; opacity: 0; transition: opacity 0.3s linear; }

.approach__item:hover { background-image: none !important; }
.approach__item:hover .approach__desc { opacity: 1; }

.approach__item:before { content: ""; padding-top: 100%; float: left; }

.approach__item:nth-child(1):hover { background-color: #C6F5FF; }
.approach__item:nth-child(2):hover { background-color: #DCFF93; }
.approach__item:nth-child(3):hover { background-color: #FEF1A9; }
.approach__item:nth-child(4):hover { background-color: #DCB3FF; }



/* ------------------------------ Products section -------------------------------- */

.section--products-wrap { position: relative; }
.section--products-wrap .products__bg-after { position: absolute; left: 0; right: 0; top: 0; bottom: 0;  z-index: 1; }

.section--products { z-index: 2; --clip-radius: 150%; --clip-center-x: 50%; --clip-center-y: 50%; clip-path: circle(var(--clip-radius) at 50% var(--clip-center-y)); /* transition: clip-path 0.3s linear; */ will-change: clip-path; }
.section--products .section-header { display: flex; flex-direction: column; gap: 57px; width: var(--7column-width); text-indent: 0; }
.section--products .section-header__subtitle { position: static; margin-top: -7px; width: 100%; }
.section--products .split-line:nth-child(1) { text-indent: 0 !important; }

.products__content { display: flex; justify-content: space-between; position: relative; }
.products__content:after { content: ""; width: 400px; height: 464px; position: absolute; left: -100px; bottom: -77px; background: url(/_data/objects/0000/0050/cube_s3_g1.svg) no-repeat 0 0; }

.products__list { width: calc(var(--8column-width) + var(--grid-gap)); }

.products__item { position: relative; padding: 24px 0; border-bottom: 1px solid #2D2D2D; display: flex; flex-direction: column; gap: 12px;}
.products__item:first-child { border-top: 1px solid #2D2D2D; }
.products__desc { font-weight: 400; font-size: 16px; line-height: 22px; }

.products__item .button__label { font-weight: 500; }

.section--products-wrap .products__bg-after { background: #2D2D2D; opacity: 0; }
.section--products-wrap .products__bg-before { display: block; position: fixed; top: 0; bottom: 0; left: 0; right: 0; opacity: 0; background: #C6F5FF; pointer-events: none; }



/* ------------------------------ Ratings section -------------------------------- */

.section--ratings { background-color: #2D2D2D; }
.section--ratings * { color: #fff; }
.ratings__svg-title + .section-header { margin-top: 81px; }

.ratings__table { margin-top: 79px; } /* 100 */

.ratings__row { position: relative; display: flex; font-size: 20px; line-height: 28px; font-weight: 400; border-bottom: 1px solid #E9E9E9; padding: 20px 0; gap: var(--grid-gap); }
.ratings__row:not(.ratings__row--head) .ratings__rating { font-weight: 500; }

.ratings__row--head { font-size: 16px; line-height: 22px; font-weight: 400; color: #AFAFAF; padding: 0; padding-bottom: 16px; border-bottom: 0; }
.ratings__row--head div { color: #AFAFAF; }
.ratings__rating { width: var(--5column-width); }
.ratings__nomination { width: var(--6column-width); }
.ratings__place { width: var(--5column-width); }

.ratings__table + .pagination .button,
.moreLoadedCell + .pagination .button { margin-top: 80px; }

.ratings__cube { content: ""; width: 400px; height: 464px; position: absolute; right: -233px; /* (/6*3.5) */ top: 0; background: url(/_data/objects/0000/0050/cube_s3_g4.svg) no-repeat 0 0; }



/* ------------------------------ Awards section -------------------------------- */

.section--awards { background-color: #2D2D2D; z-index: 99; }
.section--awards * { color: #fff; }
.awards__svg-title  + .awards__slider-wrap { margin-top: 100px; }

.awards__slider-wrap { width: auto; margin-left: calc(-1 * var(--page-padding)); margin-right: calc(-1 * var(--page-padding)); }

.awards__slider { width: var(--content-width2); overflow: visible; }
.awards__slider .swiper-wrapper { align-items: stretch; }

.awards__item { height: auto; min-height: 182px; /* min-height: 206px; */ border: 1px solid #E9E9E9; padding: 24px; box-sizing: border-box; border-radius: 8px; display: flex; gap: 17px; flex-direction: column; justify-content: space-between; margin-right: var(--grid-gap);  }
.awards__item:not(:first-child) { width: var(--slide-width) !important; }
.awards__item:last-child { margin-right: 0; }
.awards__item.awards__item--title { border-color: transparent; padding: 0; width: var(--first-slide-width) !important; }

.awards__label { font-size: 14px; line-height: 18px; font-weight: 400; margin-top: -8px; }
.awards__title { font-size: 20px; line-height: 28px; font-weight: 500; }
.awards__nomination,
.awards__info,
.awards__place { font-size: 16px; line-height: 22px; font-weight: 400; }
.awards__nomination, 
.awards__info { margin-top: 17px; }

.awards__item:hover,
.awards__item:focus { cursor: grab; cursor: -webkit-grab; }
.awards__item:active { cursor: grabbing; cursor: -webkit-grabbing; }


.awards__scrollbar { position: relative; left: var(--scrollbar-start); width: var(--scrollbar-width); height: 1px; background: #E9E9E9; margin: 56px 0 0 0; overflow: visible; cursor: pointer; }

.swiper-scrollbar-drag { position: relative; top: -12px; width: 52px; height: 26px; background: #2D2D2D url(/_data/objects/0000/0050/arrow-left.svg) no-repeat 0 0; /* Центрируем по вертикали */ cursor: grab; display: flex; align-items: center; justify-content: flex-end; }
.swiper-scrollbar-drag::after { content: "";  width: 26px; height: 26px; background: url(/_data/objects/0000/0050/arrow-right.svg) no-repeat 0 0; transition: transform 0.2s; } /* Иконка внутри ползунка */
.swiper-scrollbar-drag:hover:after { transform: translateX(10px); }
.swiper-scrollbar-drag:active { cursor: grabbing; cursor: -webkit-grabbing; }



/* ------------------------------ Team section -------------------------------- */

.section--team { background-color: #2D2D2D; }
.section--team .comm-width { position: static; }
.section--team * { color: #fff; }
.team__svg-title { position: relative; top: 0; }
.team__svg-title + .section-header { margin-top: 80px; }

.team__slider-wrap {  margin-top: 86px;  }
.team__slider { padding-bottom: 80px; display: flex; gap: var(--grid-gap); position: relative;   }

.team__item { position: relative; overflow: hidden; width: 156px; min-width: 156px; height: 380px; display: flex; gap: 8px; flex-direction: column; justify-content: space-between; padding-top: 44px; font-size: 14px; line-height: 18px; font-weight: 400; color: #2D2D2D; text-align: center; border-radius: 200px; background-color: #E9E9E9; }

.team__item * { color: #2D2D2D; }
.team__item:nth-child(odd) { transform: translateY(-80px); }

.team__name { font-weight: 500; }
.team__name,
.team__post { padding: 0 16px;  }

.team__photo { display: block; margin: 12px 0 0 0; }
.team__photo img { display: block; width: 100%; height: auto; }



/* ------------------------------ Cases section -------------------------------- */

.section--cases { padding-top: 80px; }

.cases__table { margin-top: 79px; } /* 100 */
.cases__row { display: flex; font-size: 20px; line-height: 28px; font-weight: 400; border-bottom: 1px solid #AFAFAF; padding: 20px 0 20px 0; gap: var(--grid-gap); position: relative; z-index: 1; opacity: 1; }
.cases__row--head { font-size: 16px; line-height: 22px; font-weight: 400; color: #AFAFAF; padding: 0; padding-bottom: 16px; border-bottom: 0; }
.cases__row--head div { color: #AFAFAF; }
.cases__row:not(.cases__row--head) .cases__client { font-weight: 500; }

.cases__client { width: var(--3column-width); }
.cases__result { width: var(--6column-width); }
.cases__metrics { width: var(--7column-width); }
.cases__row p + p { margin-top: 8px; }
/* 
.cases__icon { opacity: 0; position: absolute; top: 50%; transform: translateY(-50%); transform: rotate(8deg); left: 10%; transition: opacity 0.3s linear; z-index: 10;  }
 */
.cases__icon { position: absolute; left: 0; top: 0; transform-origin: 0 0; opacity: 0; /* transition: opacity 0.3s linear;  */pointer-events: none; z-index: 10; }
.cases__icon img { width: 300px; height: auto; border-radius: 8px; }

 
.cases__row,
.cases__row:hover { color: #2D2D2D; text-decoration: none; }
.cases__row:hover { z-index: 2; }
.cases__row:hover .cases__icon { opacity: 1; }

.cases__row .button__label { font-size: 20px; line-height: 28px; font-weight: 500; }
.cases__row .button__icon { display: none; }
.cases__row .button--link:hover .button__label { transform: translateX(0); }



/* ------------------------------ Clients section -------------------------------- */

.section--clients { padding-top: 80px; }

.section--clients .section-header { display: flex; text-indent: 0; gap: var(--grid-gap); }
.section--clients .split-line:nth-child(1) { text-indent: 0 !important; }
.section--clients .section-header__subtitle { margin-top: 13px; position: static; width: var(--3column-width); min-width: var(--3column-width); }

.clients__list { margin-top: 70px; /* 100 */ display: flex; gap: calc(var(--grid-gap) * 0.5) var(--grid-gap); flex-wrap: wrap; }
.clients__item { width: var(--2column-width); position: relative; }
.clients__item img { display: block; margin: 0; width: 100%; height: 100%; object-fit: cover; }



/* ------------------------------ Group section -------------------------------- */

.section--group { }

.group__svg-title { display: flex; flex-direction: column; align-items: flex-end; }
.group__svg-title svg  { will-change: transform; } 

.section--group .section-header { position: relative; }
.group__svg-title + .section-header { margin-top: -46px; }

.group__slider-wrap { margin-top: 86px; }
.group__slider { display: grid; column-gap: var(--grid-gap); grid-auto-columns: var(--3column-width); grid-auto-flow: column; }

.group__item,
a.group__item { position: relative; color: #2D2D2D; background-color: #FFFFFF; border-radius: 8px; text-decoration: none; }
a.group__item:hover	{ color: #2D2D2D; }

.group__item:before { content: ""; padding-top: 100%; float: left; }
.group__content { padding: 24px; display: flex; flex-direction: column; justify-content: space-between; height: 100%; }
.group__desc { font-weight: 400; font-size: 16px; line-height: 22px; }
.group__icon img { width: 100%; height: auto; display: block; margin: 0; max-height: 100%; max-width: 100%; }

.group__slider-wrap + .button { margin-top: 80px; }



/* ------------------------------ Career section -------------------------------- */

.section--career .section-header { display: flex; text-indent: 0; gap: var(--grid-gap); }
.career__image-wrap + .section-header { margin-top: 80px; }
.section--career .section-header__title-wrap { width: var(--12column-width); }
.section--career .section-header__subtitle { position: static; margin-top: 13px; width: var(--3column-width); min-width: var(--3column-width); }

.section--career .split-line:nth-child(1) { text-indent: 0 !important; }

.career__image-wrap { position: relative; }
.career__image-wrap:before,
.career__image-wrap:after { content: ""; position: absolute; z-index: 2; }
.career__image-wrap:before { width: 400px; height: 464px; background: url(/_data/objects/0000/0050/cube_s3_g1.svg) no-repeat 0 0; background-size: cover; left: -101px; bottom: -80px; }
.career__image-wrap:after { width: 280px; height: 325px; background: url(/_data/objects/0000/0050/cube_s2_g1.svg) no-repeat 0 0; background-size: cover; top: -162px; right: 47px; }

.career__image { width: 100%; overflow: hidden; margin: 0 auto; display: flex; justify-content: center; border-radius: 8px; }
.career__image img { width: 100%; height: 100%; aspect-ratio: 16 / 9; display: block; object-fit: cover; margin: 0; }

.section--career .section-header__title + .button { margin-top: 69px; }



/* ------------------------------ Media section -------------------------------- */

.section--media { padding-top: 80px; padding-bottom: 0; }
.section--media .comm-width { z-index: 1; }

.media__svg-title { margin: 0; margin-left: 0 !important; margin-right: 0 !important; position: sticky; bottom: 0; z-index: 0; will-change: left, position; }

.media__list { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: 75px; /* 80 */ margin-top: 87px; /* 100 */ }

.media__item,
.media__item:hover { color: #2D2D2D; text-decoration: none; }
.media__item:nth-child(5n + 1) { width: var(--5column-width); }
.media__item:nth-child(5n + 2) { width: calc(var(--3column-width) + var(--grid-gap)); }
.media__item:nth-child(5n + 3) { width: calc(var(--3column-width) + var(--grid-gap)); }
.media__item:nth-child(5n + 4) { width: calc(var(--8column-width) + var(--grid-gap)); }
.media__item:nth-child(5n) { width: var(--5column-width); }

.media__title { font-size: 20px; line-height: 28px; font-weight: 500; }
.media__icon { margin: 0 0 28px 0; border-radius: 8px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.media__item img { width: 100%; height: 100%; aspect-ratio: 1 / 1; display: block; object-fit: cover; margin: 0; transition: transform 0.3s linear; }

.media__item:nth-child(5n + 1) .media__icon img { aspect-ratio: 3 / 2; }
.media__item:nth-child(5n + 4) .media__icon img { aspect-ratio: 3 / 2; }
.media__item:nth-child(5n) .media__icon img { aspect-ratio: 4 / 3; }

.media__source { font-size: 16px; line-height: 22px; color: #AFAFAF; font-weight: 400; margin-top: 12px; }

.media__item:hover img { transform: scale(1.1); }

.media__list + .pagination .button { margin-top: 74px; }



/* ------------------------------ Contacts section -------------------------------- */

.section--contacts { overflow: hidden; background: #2D2D2D; color: #fff; padding-top: 0; padding-bottom: 120px;  }
.contacts__svg-title + .contacts__group { margin-top: 90px; }

.contacts__group { display: flex; width: 100%; margin-left: calc(var(--5column-width) + var(--grid-gap)); column-gap: var(--grid-gap); }
.contacts__label { width: var(--2column-width); font-size: 14px; line-height: 18px; font-weight: 500; margin-top: 3px; }
.contacts__detail { width: var(--9column-width); font-family: 'TT Tricks Variable'; font-size: 24px; line-height: 28px; font-weight: 300; color: #AFAFAF; }
.contacts__detail strong,
.contacts__detail a { font-family: 'TT Firs Text'; font-weight: 500; color: #fff; text-decoration: none; }
.contacts__detail p + p { margin-top: 23px; }
.contacts__detail p,
.contacts__label { position: relative; will-change: top; }

.contacts__group + .contacts__group { margin-top: 85px; }

.contacts__cube { content: ""; width: 280px; height: 325px; position: absolute; left: var(--grid-gap); bottom: -81px; background: url(/_data/objects/0000/0050/cube_s2_g5.svg) no-repeat 0 0; background-size: cover; }



/* ------------------------------ Footer -------------------------------- */

.footer { background-color: #2D2D2D; color: #AFAFAF; padding: 24px 0 21px 0; font-weight: 400; font-size: 14px; line-height: 18px; overflow: hidden; }
.footer__wrap { display: flex; column-gap: var(--grid-gap); align-items: flex-end; }

.footer__left { width: var(--5column-width); min-width: var(--5column-width); }
.footer__right { display: flex; justify-content: space-between; width: 100%; }

.footer .logo { display: inline-block; }
.footer .logo svg { display: block; margin: 0; }
.footer a { color: #AFAFAF; text-decoration: none; }
.footer__copy { margin: 14px 0 6px 0; }

.footer__social-group { display: flex; column-gap: 20px; align-items: center; }
.footer__social-link { display: inline-flex; align-items: center; }

.footer__social-link svg path { transition: all 0.3s linear; }
.footer__social-link:hover svg path { fill: #fff; }

.footer__left,
.footer__social-group { position: relative; will-change: top; }



/* ------------------------------ 404 -------------------------------- */
html:has(.g-page104) { background-color: #FEF1A9; }
body.g-page104 { background-color: #FEF1A9; }
.g-page104 .submenu .menu__item-label { background-color: #2D2D2D; }

.section404 { display: flex; flex-direction: column; justify-content: space-between; min-height: 100vh; }
.section-svg-title404 { border-top: 1px solid #2D2D2D; padding-top: 100px; margin-left: calc(var(--grid-gap) * (-1)); margin-right: calc(var(--grid-gap) * (-1)); /*margin-top: 0 !important; margin-bottom: 0 !important;*/ }
.section-svg-title404 svg { display: block; margin: 0; width: 100%; height: auto; }
.section404 .titles404 { margin-top: 131px; margin-left: calc(var(--6column-width) + var(--grid-gap)); padding-bottom: 150px; }

.titles404 { position: relative; }
.titles404 h1 { text-indent: calc(var(--3column-width) + var(--grid-gap)); font-weight: 500; font-size: 48px; line-height: 56px; }
.titles404 h1 span { font-weight: 300; font-family: 'TT Tricks Variable'; }
/*.titles404 p { position: absolute; left: 0; top: 13px; font-size: 14px; line-height: 18px; font-weight: 500; }*/
.titles404 .button--filled { margin-top: 67px; text-indent: 0; }


/* ------------------------------ cookie -------------------------------- */

.cookie-agree { position: fixed; right: var(--grid-gap); bottom: var(--grid-gap); max-width: 358px; border-radius: 8px; padding: 16px; background: #2D2D2D; z-index: 9999; font-size: 14px; line-height: 18px; font-weight: 400;  }
.cookie-wrap { text-align: right; }
.cookie-wrap p { text-align: left; color: #fff; }
.cookie-wrap .button--filled .button__icon { width: 26px; height: 26px; }
.cookie-wrap .button--filled .button__icon--left { margin-right: -26px; background-image: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='%23ffffff' xmlns='http://www.w3.org/2000/svg'><rect x='25.25' y='1.25' width='24.5' height='24.5' rx='12.25' transform='rotate(90 25.25 1.25)' stroke='white' stroke-width='1.5'/><path d='M6.5 20L13 13.5M6.5 7L13 13.5M19.5 7L13 13.5M19.5 20L13 13.5' stroke='%232d2d2d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
.cookie-wrap .button--filled .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='25.25' y='1.25' width='24.5' height='24.5' rx='12.25' transform='rotate(90 25.25 1.25)' stroke='white' stroke-width='1.5'/><path d='M6.5 20L13 13.5M6.5 7L13 13.5M19.5 7L13 13.5M19.5 20L13 13.5' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
.cookie-wrap .button--filled:hover .button__label { transform: translateX(26px); }
.cookie-wrap .button--filled .button__label { background: #FFFFFF; color: #2D2D2D; padding: 4px 24px; }
.cookie-wrap p + .button { margin-top: 16px; }
.cookie-wrap p a { color: #fff; }

/* ------------------------------ case -------------------------------- */
.bg-violet { background: #DCB3FF; }
.bg-violet .contacts__svg-title g { stroke: #DCB3FF; /*stroke-width: 1;*/ }

.g-case .cases__row--head div { color: #2D2D2D; }
.g-case .cases__row,
.g-case .cases__row--head + .cases__row { border-color: #2D2D2D; }

.bg-green { background: #DCFF93; }
.bg-green .contacts__svg-title g { stroke: #DCFF93; /*stroke-width: 1;*/ }

.bg-blue { background: #C6F5FF; }
.bg-blue .contacts__svg-title g { stroke: #C6F5FF; /*stroke-width: 1;*/ }

.bg-yellow { background: #FEF1A9; }
.bg-yellow .contacts__svg-title g { stroke: #FEF1A9; /*stroke-width: 1;*/ }

.bg-grey { background: #E9E9E9; }
.bg-grey .contacts__svg-title g { stroke: #E9E9E9; /*stroke-width: 1;*/ }

.section-bordered { border-bottom: 1px solid #2D2D2D; }

.section--case-head { border-bottom: 1px solid #2D2D2D; display: flex; gap: var(--grid-gap); padding-top: 129px; }
.section--case-head .case--head-col	{ width: var(--3column-width); font-weight: 400; font-size: 16px; line-height: 22px; padding-top: 13px; }
.section--case-head h1 { width: var(--9column-width); font-size: 48px; line-height: 56px; font-weight: 500; margin-left: calc( var(--column-width) + var(--grid-gap) ); }
.section--case-head h1 .highlight { font-family: 'TT Tricks Variable'; font-weight: 300; }
.section--case-head .case--head-col:nth-child(2) .button { display: none; }
.section--case-head .case--head-col:nth-child(2) { margin-bottom: -7px; }

.case--head-title { font-weight: 500; font-size: 14px; line-height: 18px; margin-bottom: 11px; }
.section--case-head .button { margin-top: 37px; }
.section--case-head .button--filled .button__icon { width: 26px; height: 26px; }
.section--case-head .button--filled .button__icon--left { transform: scale(0) rotate(90deg); margin-right: -26px; }
.section--case-head .button--filled .button__icon--right { transform: scale(1) rotate(90deg); }
.section--case-head .button--filled:hover .button__label { transform: translateX(26px); }
.section--case-head .button--filled .button__label { padding: 4px 24px; }
.section--case-head .button--filled:hover .button__icon--right { transform: scale(0) rotate(90deg); }
.section--case-head .button--filled:hover .button__icon--left  { transform: scale(1) rotate(90deg); }

.section--case-icon img { width: 100%; height: auto; display: block; margin: 0; border-radius: 8px; }
.case-icons { display: flex; justify-content: space-between; position: relative; }
.case-icons div:nth-child(1) { width: var(--6column-width); }
.case-icons div:nth-child(2) { width: var(--8column-width); }
.section--case-icon .section--case-content { margin-top: -7px; }
.section--case-icon img + .section--case-content,
.section--case-icon .case-icons + .section--case-content,
.section--case-icon .case-icon + .section--case-content { margin-top: 93px; }


.case-icon { position: relative; }

.section--case-content { display: flex; gap: var(--grid-gap); }
.section--case-content .case--title { width: var(--3column-width); font-weight: 500; font-size: 14px; line-height: 18px; }
	.section--case-content .case--title h2 { margin-top: 40px; }
.section--case-content .case--desc { width: var(--10column-width); font-weight: 400; font-size: 20px; line-height: 28px; }
	.section--case-content .case--desc h2:first-child { margin-top: -13px; }
	.section--case-content .case--desc p:first-child { margin-top: -4px; }
	.section--case-content .case--desc h2:last-child { margin-bottom: -12px; }
	.section--case-content .case--desc ul:last-child:last-child { margin-bottom: -8px; }
	.section--case-content .case--desc ul:last-child.result-list:last-child { margin-bottom: 0px; }

.section--case-solution { position: relative; padding-top: 93px; }
.section--case-solution.solution-cube-left:before,
.section--case-solution.solution-cube-left-right:before { content: ''; width: 400px; height: 464px; position: absolute;
    left: -220px; top: 20%; background: url(/_data/objects/0000/0050/cube_s3_g1.svg) no-repeat 0 0; background-size: cover;
}
.section--case-solution.solution-cube-left-right:after { content: ''; width: 280px; height: 324px; position: absolute;
    right: -90px; bottom: 20%; background: url(/_data/objects/0000/0050/cube_s3_g1.svg) no-repeat 0 0; background-size: cover; } 

.task-cube-left-bot,
.task-cube-right-bot,
.task-cube-right-top  { position: relative; }	
.task-cube-left-bot:after,
.task-cube-right-bot:after,
.task-cube-right-top:after { content: ''; width: 280px; height: 324px; position: absolute; background: url(/_data/objects/0000/0050/cube_s3_g1.svg) no-repeat 0 0; background-size: cover; }	
.task-cube-left-bot:after { left: var(--grid-gap); top: 50%; }
.task-cube-right-bot:after { right: calc(var(--grid-gap) * (-2)); bottom: 160px; }
.task-cube-right-top:after { right: calc(var(--grid-gap) * (-1)); top: 0; }

.section--case-result { padding-top: 93px; }
.article strong,
.article b { font-weight: 500; }
.article { font-weight: 400; font-size: 20px; line-height: 28px; }
.article h2 + p,
.article h2 + ul,
.article h2 + ol { margin-top: 34px; }

.article p + p,
.article p + ul,
.article p + ol,
.article ul + p,
.article ol + p { margin-top: 8px; }

.article p + h2,
.article ul + h2,
.article ol + h2 { margin-top: 73px; }

.picture img { max-width: 100%; height: auto; display: block; margin: 0; border-radius: 8px; }

.article p.picture + p,
.article .picture + p,
.article p.picture + ul,
.article .picture + ul,
.article p.picture + ol,
.article .picture + ol { margin-top: 29px; }

.article p + p.picture,
.article p + .picture,
.article ul + p.picture,
.article ul + .picture,
.article ol + p.picture,
.article ol + .picture { margin-top: 33px; }

.article ul { list-style-type: none; }
.article ul li { position: relative; padding-left: 54px; }
.article ul li:before { content: '';  position: absolute; left: 29px; top: 14px; width: 2px; height: 2px; border-radius: 50%; background: #000; }
.article ul li + li,
.article ol li + li { margin-top: 8px; }
.article ul ul,
.article ul ol,
.article ol ol,
.article ol ul { margin-top: 8px; margin-bottom: 8px !important; }

.article ol { counter-reset: ol-li; }
.article ol.start-3 { counter-set: ol-li 2; }
.article ol.start-5 { counter-set: ol-li 4; }
.article ol ol { counter-reset: ol-ol-li; }

.article ol li { margin-left: 54px; list-style-position: outside; list-style-type: none; list-style-type: none; position: relative; }
.article ol li:before { content: counter(ol-li)'.\a0'; counter-increment: ol-li; display: inline-block; position: absolute; 
top: 0px; left: -48px; width: 34px; font-size: 20px; line-height: 28px; text-align: right; vertical-align: baseline; }
.article ol ol li:before { content: counter(ol-li) '.' counter(ol-ol-li); counter-increment: ol-ol-li; left: -60px; width: 40px; }

.section--case-content .case--desc .result-list:first-child { margin-top: -15px; }
.result-list li,
.article .result-list li { padding: 20px 0px 19px 0px; font-family: 'TT Tricks Variable'; font-weight: 300; font-size: 48px; line-height: 56px; border-bottom: 1px solid #2D2D2D; }
.result-list li + li,
.article .result-list li + li { margin-top: 0; }
.result-list li:first-child { padding-top: 0; }
.result-list li strong { font-family: 'TT Firs Text'; font-weight: 500; font-size: 48px; line-height: 56px; }
.result-list li:before { display: none; }

.article .result-list + .picture,
.article .result-list + p.picture { margin-top: 100px; }

.section--content-form { justify-content: space-between; padding-bottom: 24px; }
.section--content-form .case--title { width: var(--8column-width); margin-top: -7px; }
.section--content-form .case--title h2 { margin-top: 57px; }
.section--content-form .case--desc { width: var(--7column-width); margin-top: 87px; }
.section--content-form .case--desc .form_row .form_row__label { display: none; }

.form_row + .form_row { margin-top: 44px; }
.form_row { position: relative; }
.form_row_submit + .form_row_footer { margin-top: 33px; }
.form_row + .form_row_submit { margin-top: 79px; }
.form_row_footer { font-weight: 400; font-size: 16px; line-height: 22px; }
.form_row_footer a { color: #2D2D2D; } 


/* ------------------------------ cases list -------------------------------- */
.button--filled.button--dark .button__label { color: #fff; background: #2D2D2D; }
.button--filled.button--dark .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='63' height='63' x='64.5' y='1.5' stroke='%232d2d2d' stroke-width='3' rx='31.5' transform='rotate(90 64.5 1.5)'/><path stroke='%232d2d2d' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M8.958 33 33 57.042 57.04 33'/></svg>"); }
.button--filled.button--dark .button__icon--left  { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='66' height='66' x='66' fill='%232d2d2d' rx='33' transform='rotate(90 66 0)'/><path stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M8.958 33 33 57.042 57.04 33'/></svg>"); }

.section--title { /* padding-top: 0px; */ padding-bottom: 0; }
.section--title .section-header { margin-top: 80px; /* margin-top: 0; padding-top: 131px; */ }

.g-cases h1 { font-size: 48px; line-height: 56px; }
.section--title .section-svg-title { /* position: absolute; top: 14px; left: 0; right: 0; margin: 0; */ }
.section--title .section-svg-title svg { transition: margin 0.3s ease; }

.section--title .section-header__subtitle { /* top: 144px; */ }

.g-cases .contacts__svg-title g { stroke: #DCB3FF; }
.cases__table + .pagination .button { margin-top: 80px; }

.g-cases .filter { margin-top: -14px; }
.filter + .cases__table { margin-top: 70px; }
.filter form { display: flex; gap: var(--grid-gap); }
.filter .form_row { width: var(--4column-width); }
.filter .form_row .select2 { width: 100% !important; }

.g-cases .section--content-form { padding-top: 0; padding-bottom: 144px; }
.g-career .section--content-form { padding-bottom: 144px; }

.cases__table + .cases__table { margin-top: 0; }

/* ------------------------------ select -------------------------------- */
.form_row .select2-container { width: 100% !important; }
.select2-container .select2-selection--single .select2-selection__rendered { padding: 16px 56px 16px 20px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: #2D2D2D; font-size: 20px; line-height: 28px; font-weight: 400; }
.select2-container--default .select2-selection--single { border: 0; border-radius: 8px !important; height: auto; }
.select2-container--default .select2-selection--single .select2-selection__placeholder { color: #AFAFAF; }
.select2-container--default .select2-selection--single .select2-selection__arrow { width: 48px; height: 28px; background-repeat: no-repeat; background-position: 50% 50%; top: 16px; right: 8px; transition: transform .3s;
background-image: url("data:image/svg+xml;utf8,<svg width='48' height='28' viewBox='0 0 48 28' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M16 11L23.9998 18.9998L31.9997 11' stroke='%232D2D2D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
.select2-container--default .select2-selection--single .select2-selection__arrow b { display: none; }
.select2-container--open.select2-container--default .select2-selection--single .select2-selection__arrow { transform: rotate(180deg); }
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, 
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple { border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; }

.select2-dropdown { background-color: #2D2D2D; border: 0; border-radius: 8px; overflow: hidden; }
.select2-container--open .select2-dropdown--below { border-top-left-radius: 8px; border-top-right-radius: 8px; margin-top: 12px; }
.select2-results__option { padding: 16px 40px 16px 20px; color: #fff; font-size: 20px; line-height: 28px; font-weight: 400; position: relative; transition: all 0.3s cubic-bezier(0.2,-0.5,0.8,2); overflow: hidden; }
.select2-container--default .select2-results>.select2-results__options { max-height: 400px; }
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable,
.select2-container--default .select2-results__option--selected { background-color: transparent; display: flex; align-items: center; gap: 10px; padding-right: 20px; }
.select2-container--default .select2-results__option--selected:before { content: ''; width: 10px; height: 10px; background: #fff; border-radius: 50%; }
.select2-container--open .select2-dropdown--above { background-color: transparent; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; }
.select2-container--open .select2-dropdown--above .select2-results { margin-bottom: 12px; background-color: #2D2D2D; border-radius: 8px; }


.select2-results__option .dot { transform: rotate(90deg); position: absolute; pointer-events: none; top: 22px; left: 22px; width: 30px; height: 30px; opacity: 0; transition: all 0.3s cubic-bezier(0.2,-0.5,0.8,2); }
.select2-results__option .dot:before { content: '';  position: absolute; background: #fff; width: 10px; height: 10px; border-radius: 50%; }
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable .dot { transform: rotate(-10deg); opacity: 1; }
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable { padding-left: 40px; padding-right: 20px; }

.select2-container--default .select2-results__option--selected { padding-left: 20px !important; }
.select2-container--default .select2-results__option--selected .dot { display: none !important;  }

.filter #form_102 input[type=submit] { display: none !important;  }
.filter .form_row + .form_row { margin-top: 0 !important; }

.result-nofound { font-weight: 400; font-size: 20px; line-height: 28px; margin-top: 69px; margin-bottom: -7px; }


/*===============================form===============================*/
input[type=email],
input[type=tel],
input[type=password],
input[type=text],
input.input,
select,
textarea { font-family: 'TT Firs Text'; font-style: normal; font-weight: 400;
font-size: 20px; line-height: 20px; color: #2D2D2D; background: #fff; padding: 16px 20px; 
border: 1px solid #fff; margin: 0; text-align: left;
-webkit-appearance: none; -moz-appearance: none; box-sizing: border-box; width: 100%; 
border-radius: 8px; -webkit-border-radius: 8px; box-shadow: none; -webkit-box-shadow: none; }
textarea { resize: none; display: block; }


/*input[type=email]:hover,
input[type=tel]:hover,
input[type=password]:hover,
input[type=text]:hover,
input.input:hover,
textarea:hover,
select:hover,
input[type=email]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=text]:focus,
input.input:focus,
textarea:focus { border-color: #2D2D2D; }*/

input[type=submit], 
button[type=submit], 
.button { font-family: 'Roboto', sans-serif; border: 0; margin: 0; padding: 0; background: none;
 cursor: pointer; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; }

.form_row__p__comment_pageinfo,
.form_row__p__comment_formname { display: none !important; }

input.error { /*border-color: #FF0000 !important;*/ }
span.error { font-weight: 400; font-size: 14px; line-height: 18px; /*color: #FF0000 !important;*/ margin-top: 9px; display: block; position: absolute; left: 0; bottom: -24px; }

.form_row__p__comment_phone + .form_row__p__comment_contact,
.form_row__p__career_phone + .form_row__p__career_contact { margin-top: 0 !important; }
.form_row__p__comment_phone span.error,
.form_row__p__career_phone span.error { bottom: -66px; }


.form_row__p__form_bad_email { display: none !important; }

.radio_elements { display: flex; gap: 16px; margin-top: 14px; }
.radio_elements label { display: inline-flex; align-items: center; gap: 10px; }
.radio_elements input[type="radio"] {
    appearance: none; /* убираем стандартный вид */
    -webkit-appearance: none;
    width: 26px;
    height: 26px;
	margin: 0;
    border: 1.5px solid #2D2D2D;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    position: relative;
}

.radio_elements input[type="radio"]:checked {
    background-color: #2D2D2D; background-repeat: no-repeat; background-position: 50% 50%;
	background-image: url("data:image/svg+xml;utf8,<svg width='16' height='12' viewBox='0 0 16 12' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M14.5 1.125L5.5625 10.875L1.5 6.44318' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

.radio_elements input[type="radio"]:checked::before {
    /*content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #4CAF50;*/
}

.form_result_ok { position: fixed; width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; color: #fff; /*background: rgba(255, 255, 255, 0.1); -webkit-backdrop-filter: blur(2.5px); backdrop-filter: blur(2.5px);*/ z-index: 499; }
.form_result_content { position: fixed; top: 50%; left: 50%; transform: translate(-50%,-50%); text-align: center;  width: 358px; background: #2D2D2D; padding: 16px; box-sizing: border-box; border-radius: 8px; font-size: 14px; line-height: 18px; font-weight: 400; }
.form_result_content p { text-align: left; }
.form_result_content p + .button { margin-top: 32px; }

.form_result_content .button--filled .button__icon { width: 26px; height: 26px; }
.form_result_content .button--filled .button__icon--left { margin-right: -26px; background-image: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='%23ffffff' xmlns='http://www.w3.org/2000/svg'><rect x='25.25' y='1.25' width='24.5' height='24.5' rx='12.25' transform='rotate(90 25.25 1.25)' stroke='white' stroke-width='1.5'/><path d='M6.5 20L13 13.5M6.5 7L13 13.5M19.5 7L13 13.5M19.5 20L13 13.5' stroke='%232d2d2d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
.form_result_content .button--filled .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='25.25' y='1.25' width='24.5' height='24.5' rx='12.25' transform='rotate(90 25.25 1.25)' stroke='white' stroke-width='1.5'/><path d='M6.5 20L13 13.5M6.5 7L13 13.5M19.5 7L13 13.5M19.5 20L13 13.5' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
.form_result_content .button--filled:hover .button__label { transform: translateX(26px); }
.form_result_content .button--filled .button__label { background: #FFFFFF; color: #2D2D2D; padding: 4px 24px; }

.fancybox-content .form_result_ok + form { display: none; }

/*===============================HR===============================*/
.g-career .contacts__svg-title g { stroke: #DCB3FF; }

.section--values { padding-top: 80px; }
.section--values .section-header { display: flex; text-indent: 0; gap: var(--grid-gap); }
.section--values .section-header__subtitle { position: static; /* width: var(--3column-width);  */margin-top: 13px; flex-shrink: 0; }
.section--values .section-header__title { width: var(--12column-width); }


.values__slider { margin-left: calc(var(--3column-width) + var(--grid-gap)); margin-top: 86px; /*margin-right: calc(var(--grid-gap) * (-1));*/ }
.values__slider .swiper-wrapper { /*display: grid; column-gap: var(--grid-gap); grid-auto-columns: var(--5column-width); grid-auto-flow: column;*/ }
.values__item { width: var(--5column-width); min-width: 358px; background-color: #FFFFFF; border-radius: 8px; height: auto; background-repeat: no-repeat; background-position: 100% 100%; background-size: contain; transition: background-color, background-image, 0.3s linear; }
.values__item + .values__item { margin-left: var(--grid-gap); }
.values__item:before { content: ""; padding-top: 100%; float: left; }
.values__content { height: 100%; padding: 24px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: space-between; }
.values__title { font-size: 24px; line-height: 28px; font-weight: 500; }
.values__desc { font-size: 20px; line-height: 24px; font-weight: 400; opacity: 0; transition: opacity 0.3s linear; }
.values__item:hover { background-image: none !important; }
.values__item:hover .values__desc { opacity: 1; }

.values__item:nth-child(4n + 1):hover { background-color: #C6F5FF; }
.values__item:nth-child(4n + 2):hover { background-color: #DCFF93; }
.values__item:nth-child(4n + 3):hover { background-color: #FEF1A9; }
.values__item:nth-child(4n + 4):hover { background-color: #DCB3FF; }

.section--values + .section--partnership { margin-top: -100px; }

.section--partnership { padding-top: 80px; }
.partnership__table { margin-top: 79px; } /* 100 */
.partnership__row { display: flex; font-size: 20px; line-height: 28px; font-weight: 400; border-bottom: 1px solid #AFAFAF; padding: 20px 0 20px 0; gap: var(--grid-gap); position: relative; z-index: 1; opacity: 1; }
.partnership__client { width: var(--4column-width); flex-shrink: 0; font-weight: 500; }
.partnership__result { width: var(--12column-width); }
.partnership__row p + p { margin-top: 8px; }
.partnership__icon { position: absolute; left: 0; top: 0; transform-origin: 0 0; opacity: 0; /* transition: opacity 0.3s linear;  */pointer-events: none; z-index: 10; }
.partnership__icon img { width: 300px; height: auto; border-radius: 8px; }
 .partnership__row,
.partnership__row:hover { color: #2D2D2D; text-decoration: none; }
.partnership__row:hover { z-index: 2; }
.partnership__row:hover .cases__icon { opacity: 1; }
.partnership__table + .button { margin-top: 80px; }

/* fancybox */
.select2-container:has(.select2-dropdown) { z-index: 99999; }
/*body.compensate-for-scrollbar { overflow-y: auto; } 
.fancybox-container { -webkit-backdrop-filter: blur(2.5px); backdrop-filter: blur(2.5px); }
.fancybox-bg { background: rgba(255, 255, 255, 0.1); }*/
.fancybox-is-open .fancybox-bg { opacity: 0; }
.fancybox-container-center .fancybox-content { background: #2D2D2D; padding: 20px 20px 18px 20px; width: var(--8column-width); border-radius: 8px; /*max-width: 592px;*/ }
.fancybox-container-center .fancybox-content .form_row__label { display: none; }
.fancybox-container-center .fancybox-content .form_row_footer,
.fancybox-container-center .fancybox-content .form_row_footer a { color: #fff; }
.fancybox-container-center .fancybox-content .button--filled .button__label { color: #2D2D2D; background: #fff; }
.fancybox-container-center .fancybox-content span.error { color: #fff; }
.fancybox-container-center .fancybox-content h2 { color: #fff; margin-top: 46px; margin-bottom: 45px; }
.fancybox-container-center .fancybox-slide--html .fancybox-close-small { background: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='25.25' y='0.75' width='24.5' height='24.5' rx='12.25' transform='rotate(90 25.25 0.75)' stroke='white' stroke-width='1.5'/><path d='M6.5 19.5L13 13M6.5 6.5L13 13M19.5 6.5L13 13M19.5 19.5L13 13' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat 0 0; width: 26px; height: 26px; padding: 0; top: 20px; right: 20px; opacity: 1; }
.fancybox-container-center .fancybox-slide--html .fancybox-close-small svg { display: none; }

.fancybox-container-center .fancybox-content .button--filled .button__label { color: #2D2D2D; background: #fff; }
.fancybox-container-center .fancybox-content .button--filled .button__icon--left { background-image: url("data:image/svg+xml;utf8,<svg width='67' height='67' viewBox='0 0 67 67' fill='white' xmlns='http://www.w3.org/2000/svg'><rect x='65.5' y='1.5' width='64' height='64' rx='32' transform='rotate(90 65.5 1.5)' stroke='%232D2D2D' stroke-width='3'/><path d='M33.5 57.5415L57.5416 33.4999M9.45837 33.4999H57.5416M33.5 9.45824L57.5416 33.4999' stroke='%232D2D2D' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
.fancybox-container-center .fancybox-content .button--filled .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg width='67' height='67' viewBox='0 0 67 67' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='65.5' y='1.5' width='64' height='64' rx='32' transform='rotate(90 65.5 1.5)' stroke='white' stroke-width='3'/><path d='M33.5 57.5415L57.5416 33.4999M9.45837 33.4999H57.5416M33.5 9.45824L57.5416 33.4999' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }

.fancybox-container-center .fancybox-content .select2-container { width: 100% !important; }
.fancybox-active .select2-dropdown { background: #fff; }
.fancybox-active .select2-results__option,
.fancybox-active .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable { color: #2D2D2D; }
.fancybox-active .select2-results__option .dot:before,
.fancybox-active .select2-container--default .select2-results__option--selected:before { background: #2D2D2D; }


.fancybox-content:has(.form_result_ok) { background: none; padding:0; width: auto; }
.fancybox-content:has(.form_result_ok) form,
.fancybox-content:has(.form_result_ok) h2 { display: none; }
/*.fancybox-container:has(.form_result_ok) .fancybox-bg { display: none; }
.fancybox-container:has(.form_result_ok) .fancybox-bg { -webkit-backdrop-filter: blur(0); backdrop-filter: blur(0); }*/

.file-upload,
.form_row label.file-upload { display: block; }
.form_standart .file-upload { position: relative; overflow: hidden; }
.file-upload input[type=file] { position: absolute; top: 0; left: 0; visibility: hidden; height: 100%; }

.file-upload i { display: block; font-style: normal; font-size: 14px; line-height: 18px; font-weight: 400; color: #AFAFAF; margin-top: 10px; }
.file-upload button { max-width: 100%; }
.file-upload button .button__label { white-space: nowrap; }
.fancybox-container-center .fancybox-content .file-upload .button--filled .button__icon--left { background-image: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='white' xmlns='http://www.w3.org/2000/svg'><rect x='26' width='26' height='26' rx='13' transform='rotate(90 26 0)' /><path d='M9 13.9744L9 7.5C9 5.29086 10.7909 3.5 13 3.5V3.5C15.2091 3.5 17 5.29086 17 7.5L17 19.5588C17 21.1832 15.6832 22.5 14.0588 22.5V22.5C12.4345 22.5 11.1176 21.1832 11.1176 19.5588L11.1176 10.1365C11.1176 9.16188 11.9077 8.37179 12.8824 8.37179V8.37179C13.857 8.37179 14.6471 9.16188 14.6471 10.1365L14.6471 18.6026' stroke='%232D2D2D' stroke-width='1.5'/></svg>"); }
.fancybox-container-center .fancybox-content .file-upload .button--filled .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='25.25' y='0.75' width='24.5' height='24.5' rx='12.25' transform='rotate(90 25.25 0.75)' stroke='white' stroke-width='1.5'/><path d='M9 13.9744L9 7.5C9 5.29086 10.7909 3.5 13 3.5V3.5C15.2091 3.5 17 5.29086 17 7.5L17 19.5588C17 21.1832 15.6832 22.5 14.0588 22.5V22.5C12.4345 22.5 11.1176 21.1832 11.1176 19.5588L11.1176 10.1365C11.1176 9.16188 11.9077 8.37179 12.8824 8.37179V8.37179C13.857 8.37179 14.6471 9.16188 14.6471 10.1365L14.6471 18.6026' stroke='white' stroke-width='1.5'/></svg>"); }

.file-upload .file-name { font-size: 20px; line-height: 28px; font-weight: 400; white-space: nowrap; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.fancybox-container-center .fancybox-content .file-upload .file-name { color: #fff; }
.file-upload-wrap { display: flex; gap: 10px; flex-wrap: nowrap; }
.form_progress { display: none !important; }


.section--internship { background: #C6F5FF; padding-top: 0 !important; }
.section-header.section-header__columns { display: flex; flex-direction: column; gap: 37px; text-indent: 0; }
.section-header__columns .section-header__subtitle { position: static; margin-top: -7px; width: 100%; }

.internship__image { position: relative; margin-left: calc(var(--grid-gap) * (-1)); margin-right: calc(var(--grid-gap) * (-1)); }
.internship__svg-title { position: absolute; left: 0; bottom: 0; right: 0; margin: 0 0 -1px 0; }
.internship__image + .section-header { margin-top: 100px; }
.internship__image img { width: 100%; height: 100%; aspect-ratio: 16 / 9; display: block; object-fit: cover; margin: 0; }

.internship__list { display: flex; margin-left: calc( var(--4column-width) + var(--grid-gap) ); gap: var(--grid-gap); width: 100%; margin-top: 66px; }
.internship__item { width: var(--4column-width); color: #2D2D2D; text-decoration: none; padding: 24px 0 22px 0; border-bottom: 1px solid #2D2D2D; }
.internship__item:hover { color: #2D2D2D; }
.internship__text { font-size: 16px; line-height: 22px; font-weight: 400; margin-top: 12px; }
.internship__item .button__label { font-weight: 500; }


.section--moredetails { background: #2D2D2D; padding-top: 90px; padding-bottom: 95px; }
.section--moredetails * { color: #fff; }
.moredetails__wrap { margin-left: calc( var(--4column-width) + var(--grid-gap) ); font-size: 16px; line-height: 22px; font-weight: 400; width: var(--6column-width); }
.moredetails__wrap p + p { margin-top: 10px; }
.moredetails__wrap strong { font-size: 20px; line-height: 28px; font-weight: 500; }


.section--reviews { background: #FEF1A9; }
.reviews__slider { margin-top: 81px; }
.reviews__item:nth-child(3n + 1) { width: calc( var(--5column-width) + var(--grid-gap) ); }
.reviews__item:nth-child(3n + 2) { width: var(--4column-width); }
.reviews__item:nth-child(3n) { width: calc( var(--3column-width) + var(--grid-gap) ); }
.reviews__item { /*flex-shrink: 0;*/ }
.reviews__item + .reviews__item { margin-left: calc( var(--2column-width) + var(--grid-gap) ); }
.reviews__content { font-size: 16px; line-height: 22px; font-weight: 400; }
.reviews__author { margin-top: 34px; display: flex; gap: 25px; }
.reviews__author_photo { width: 78px; flex-shrink: 0; }
.reviews__author_photo img { display: block; margin: 0; border-radius: 8px; width: 100%; height: auto; }
.reviews__author_title { font-weight: 500; font-size: 20px; line-height: 28px; }
.reviews__author_post { font-weight: 400; font-size: 14px; line-height: 18px; margin-top: 2px; color: #AFAFAF; }
.reviews__item p + p { margin-top: 12px; }


.section--faq { background: #FEF1A9; padding-top: 0; }
.section--faq .section-header { margin-top: -101px; }
.faq__svg-title { display: flex; }
.faq__svg-title svg { transition: margin 0.3s ease; }
.section--faq .comm-width { position: relative; }
.faq__list {  margin-top: 86px; display: flex; flex-direction: column; gap: 20px; align-items: flex-end; }
.faq__item_question,
.faq__item_answer { padding: 20px; border-radius: 8px; font-size: 20px; line-height: 28px; font-weight: 400; }
.faq__item_question { background: #fff; margin-right: calc( var(--4column-width) + var(--grid-gap) ); max-width: var(--6column-width); }
.faq__item_answer { background: #2D2D2D; color: #fff; width: var(--6column-width); margin-left: calc( var(--4column-width) + var(--grid-gap) ); margin-right: calc( var(--6column-width) + var(--grid-gap) ); }
.center { text-align: center; }
.section--faq .button { margin-top: 80px; }



@media (min-width: 1200px) { 
	.values__item:hover,
	.values__item:focus { cursor: grab; cursor: -webkit-grab; }
	.values__item:active { cursor: grabbing; cursor: -webkit-grabbing; }
}

.g-career .header .logo svg g { fill: #fff; }
.g-career .header .logo { color: #fff; }
.g-career .menu__item a { color: #fff; }
.g-career .menu__item-dot:before { background: #fff; }

.section--cover { position: relative; background: #2D2D2D; /* min-height: 1053px; */ }
.section--cover * { color: #fff; }
.section--cover .section-svg-title { /* top: -39px; */ }
.section--cover .section-svg-title svg { transition: margin 0.3s ease; }

.section--cover h1 { font-size: 48px; line-height: 56px; }
.cover__bg { position: absolute; top: 0; left: 0; right: 0; }
.cover__bg img { display: block; margin: 0; width: 100%; height: auto; }

.section--cover .section-header { /* margin-top: 188px; */margin-top: 80px; }
.cover__content { display: flex; gap: 32px; margin: 67px 0 58px 0; align-items: center; }
.cover__content .button { flex-shrink: 0; }
.cover__content p { font-weight: 400; font-size: 16px; line-height: 22px; width: var(--7column-width); }

.cover__highlights { display: flex; gap: 32px; }
.cover__highlights-item { width: var(--8column-width); padding: 24px 0 23px 0; border-bottom: 1px solid #FFFFFF; color: #fff; text-decoration: none; }
.cover__highlights-item:hover { color: #fff; text-decoration: none; }
.highlights__desc { font-weight: 400; font-size: 16px; line-height: 22px; margin-top: 11px; }
.section--cover .button--link .button__label { color: #fff; font-weight: 500; }
.section--cover .button--link .button__icon--left { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='66' height='66' fill='white' rx='33'/><path stroke='%232D2D2D' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }
.section--cover .button--link .button__icon--right { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='66' height='66' fill='none' viewBox='0 0 66 66'><rect width='63' height='63' x='1.5' y='1.5' stroke='white' stroke-width='3' rx='31.5'/><path stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M33 57.042 57.042 33M8.958 33h48.084M33 8.96 57.042 33'/></svg>"); }





@media (max-width: 1199px) { 

	/* ------------------------------ Common -------------------------------- */

	:root {
		/* Grid */
		--page-padding: 28px;
		--grid-gap: 28px;
		--grid-columns: 8;

		/* Variables */
		--first-slide-width: 0;
		--slide-width: calc(3 * var(--column-width) + 2 * var(--grid-gap)); 
		--scrollbar-width: calc(8 * var(--column-width) + 7 * var(--grid-gap));
	}

	h1 { font-size: clamp(68px, calc((100vw - 796px)/(1276 - 796) * (78 - 68) + 68px), 78px); line-height: 1.08823529; /* font-size: 68px; line-height: 74px;  */}

	.section { overflow: hidden; }
	.section--content-form, .section--case-cases, .section--case-solution, .section--case-icon, .section--faq { overflow: visible; }

	.section-header { text-indent: calc(var(--2column-width) + var(--grid-gap)); }
	.section-header .split-line:nth-child(1) { text-indent: calc( var(--2column-width) + var(--grid-gap)) !important; }
	.section-header__subtitle { width: var(--2column-width); }


	.menu ul { gap: 24px; }



	/* ------------------------------ Hero section -------------------------------- */

	.comm-width--hero { display: flex; justify-content: space-between; flex-direction: column; min-height: calc(100vh - 74px); }
	.section--hero .header-spacer { height: 74px; }

	.hero__svg-title { margin-top: 76px; }
	.section--hero .section-header { margin-top: 71px; }
	.section--hero .section-header__subtitle { top: 19px; }

	.hero__highlights { /* margin-top: 108px; */ }
	.hero__highlights-list { gap: 20px; }



	/* ------------------------------ Approach section -------------------------------- */

	.section--approach .section-header__title { width: var(--6column-width); }
	.section--approach .section-header__subtitle { width: var(--2column-width); }

	.approach__slider-wrap { margin-left: 0; }
	.approach__slider { display: flex; flex-wrap: wrap; gap: var(--grid-gap); width: 100%; }
	.approach__item { width: var(--4column-width); }



	/* ------------------------------ Products section -------------------------------- */

	.section--products-wrap { overflow: visible; }

	.section--products .section-header { width: var(--6column-width); }
	.section--products .split-line:nth-child(1) { text-indent: 0 !important; }

	.products__content { display: block; }
	.products__content:after { display: none; }
	.products__list { width: var(--8column-width); }

	.section--products .section-header + .products__list { margin-top: 89px; }



	/* ------------------------------ Ratings section -------------------------------- */

	.ratings__svg-title + .section-header { margin-top: 81px; }

	.ratings__row { gap: var(--grid-gap); }

	.ratings__rating { width: var(--3column-width); }
	.ratings__nomination { width: var(--3column-width); }
	.ratings__place { width: var(--2column-width); }

	.ratings__table + .pagination .button { transform: translateX(-33px); }

	.ratings__cube { width: 280px; height: 325px; background-size: cover; right: -163px;  /* (280/6*3.5) */ top: 0px; }



	/* ------------------------------ Awards section -------------------------------- */

	.awards__item { padding: 16px; }
	.awards__item.awards__item--title { display: none; }
	.awards__scrollbar { left: 0; }



	/* ------------------------------ Team section -------------------------------- */

	.team__slider { gap: var(--grid-gap); }



	/* ------------------------------ Cases section -------------------------------- */

	.cases__row { flex-direction: column; font-size: 16px; line-height: 22px; gap: 10px; padding-top: 24px; padding-bottom: 24px; }

	.cases__row--head { display: none; }
	.cases__row--head + .cases__row { border-top: 1px solid #AFAFAF; }

	.cases__client,
	.cases__result,
	.cases__metrics { width: var(--8column-width); }	
	.cases__client { margin-bottom: 2px; }
	.cases__row p + p { margin-top: 0; }

	.cases__icon,
	.cases__row:hover .cases__icon { opacity: 0; display: none; }
	
	.cases__row .button__icon { display: inline-flex; }
	.cases__row .button__label { font-size: 24px; line-height: 28px; }
	.cases__row .button--link:hover .button__label { transform: translateX(54px); }



	/* ------------------------------ Clients section -------------------------------- */

	.section--clients .split-line:nth-child(1) { text-indent: 0 !important; }
	.section--clients .section-header__subtitle { width: var(--2column-width); min-width: var(--2column-width); }

	.clients__item { width: calc( (var(--content-width) - 5 * var(--grid-gap) ) / 6); }



	/* ------------------------------ Group section -------------------------------- */

	.group__slider-wrap { margin-left: 0; }
	.group__slider { width: 100%; display: flex; flex-wrap: wrap; gap: var(--grid-gap); justify-content: space-between; grid-auto-columns: var(--3column-width); }
	.group__item { width: calc((var(--content-width) - 2 * var(--grid-gap))/3); }
	.group__content { padding: 20px; }



	/* ------------------------------ Career section -------------------------------- */

	.section--career { overflow-y: visible; pointer-events: none; -ms-overflow-style: none; scrollbar-width: none; }

	.career__image-wrap + .section-header { margin-top: 100px; }

	.section--career .section-header { flex-direction: column; gap: 57px; }
	.section--career .section-header__title-wrap,
	.section--career .section-header__title,
	.section--career .section-header__subtitle { width: 100%; min-width: 100%; }
	.section--career .section-header__subtitle { margin-top: -7px; }
	.section--career .split-line:nth-child(1) { text-indent: 0 !important; }
	
	.career__image-wrap:before { width: 280px; height: 325px; left: -76px; bottom: -55px; }
	.career__image-wrap:after { width: 160px; height: 186px; bottom: auto; top: -94px; right: -56px; }

	.career__image { width: 100%; /* width: var(--6column-width); */ }
	.career__image img { /* height: 405px; */ }

	.section--career .button { pointer-events: all; }



	/* ------------------------------ Media section -------------------------------- */

	.section--media { padding-bottom: 0; }

	.media__svg-title { margin: 0; margin-left: 0 !important; margin-right: 0 !important; position: fixed; z-index: 0; will-change: left, position; }
	.media__svg-title.sticky { position: absolute; bottom: 0; }

	.media__item:nth-child(4n + 1) { width: var(--4column-width); }
	.media__item:nth-child(4n + 2) { width: var(--3column-width); }
	.media__item:nth-child(4n + 2) .media__icon { width: calc( 100% - 2*var(--grid-gap) - 2px ); }
	.media__item:nth-child(4n + 3) { width: calc( var(--2column-width) + var(--grid-gap) + var(--column-width)/2 + 8px ); }
	.media__item:nth-child(4n + 4) { width: var(--5column-width); }

	.media__item:nth-child(4n + 1) .media__icon img { aspect-ratio: 4 / 3; }
	.media__item:nth-child(4n + 4) .media__icon img { aspect-ratio: 3 / 2; }



	/* ------------------------------ Contacts section -------------------------------- */

	.section--contacts { /* padding-bottom: 295px;  */}
	.contacts__group { margin-left: 0; }

	.contacts__cube { width: 160px; height: 186px; left: auto; right: var(--grid-gap); bottom: -46px; background: url(/_data/objects/0000/0050/cube_s1_g5.svg) no-repeat 0 0; }



	/* ------------------------------ Footer -------------------------------- */

	.g-page1 .footer { }
	.footer__wrap { flex-direction: column; align-items: flex-start; gap: 24px; }
	.footer__left { width: var(--8column-width); min-width: var(--8column-width); }
	.footer__right { margin-top: 2px; }


	/* ------------------------------ 404 -------------------------------- */

	.section404 .titles404 { margin-left: 0; /*margin-top: 129px;*/ }
	.titles404 h1 { text-indent: calc(var(--2column-width) + var(--grid-gap)); }
	.titles404 h1 br { display: none; }
	
	
	/* ------------------------------ case -------------------------------- */
	.section--case-head { flex-wrap: wrap; }
	.section--case-head h1 { order: 1; width: 100%; margin-left: 0; }
	.section--case-head .case--head-col { order: 2; width: var(--3column-width); padding-top: 31px; }
	.section--case-head .case--head-col:first-child	{ margin-left: calc( var(--2column-width) + var(--grid-gap) ); /*margin-left: var(--2column-width);*/ }
	.section--case-content .case--title { width: var(--2column-width); }
	.section--case-content .case--desc { width: var(--6column-width); }
	
	.case-icons div:nth-child(1) { width: 100%; }
	.case-icons div:nth-child(2) {  display: none; }
	
	.section--content-form { flex-wrap: wrap; }
	.section--content-form .case--title { width: 100%; display: flex; gap: var(--grid-gap); }
	.section--content-form .case--title p { width: var(--2column-width); }
	.section--content-form .case--title h2 { width: var(--6column-width); margin-top: -13px; }
	.section--content-form .case--desc { margin-left: calc( var(--2column-width) + var(--grid-gap) ); margin-top: 41px; }
	.section--case-solution.solution-cube-left:before,
	.section--case-solution.solution-cube-left-right:before	{ width: 280px; height: 324px; left: -115px; }
	.section--case-solution.solution-cube-left-right:after { display: none; }
	
	.task-cube-left-bot:after,
	.task-cube-right-bot:after,
	.task-cube-right-top:after { width: 174px; height: 201px; }
	.task-cube-right-bot:after { top: 55%;  bottom: auto; }
	
	.section--title { /* padding-top: 0; */ }
	.g-cases .comm-width--hero { min-height: 1px; }
	
	/*
	.section--title .section-svg-title { top: 34px; }
	.section--title .section-header { padding-top: 129px; }
	.section--title .section-header__subtitle { top: 142px; }
	*/
	
	.filter .form_row { width: var(--3column-width); }
	.filter + .cases__table { margin-top: 80px;}
	
	
	/*===============================HR===============================*/

	.cover__content { align-items: flex-start; flex-wrap: wrap; margin: 34px 0 58px 0; gap: 74px 32px; }
	.cover__content p { order: 1; width: 100%; }
	.cover__content .button { order: 2; }
	.cover__highlights { flex-direction: column; gap: 0; }
	.cover__highlights-item { width: 100%; }

	.section--values .section-header__subtitle { }
	.values__slider { margin-left: 0; }
	.values__slider .swiper-wrapper { display: flex; flex-wrap: wrap; gap: var(--grid-gap); width: 100%; transform: translate3d(0, 0, 0)!important; }
	.values__item { width: var(--4column-width); min-width: var(--4column-width); }
	.values__item + .values__item { margin-left: 0; }
	
	.partnership__client { width: var(--2column-width); }
	.partnership__result { width: var(--6column-width); }
	
	.internship__list { margin-left: calc( var(--2column-width) + var(--grid-gap) ); flex-direction: column; }
	.internship__item { width: var(--6column-width); }
	
	.fancybox-container-center .fancybox-content { width: var(--6column-width); }
	
	.moredetails__wrap { margin-left: calc( var(--2column-width) + var(--grid-gap) ); width: var(--5column-width); }
	
	.reviews__item:nth-child(3n + 1) { width: var(--4column-width); }
	.reviews__item:nth-child(3n + 2) { width: var(--3column-width); }
	.reviews__item:nth-child(3n) { width: calc( var(--2column-width) + var(--grid-gap) ); }
	.reviews__item + .reviews__item { margin-left: calc(var(--column-width) + var(--grid-gap)*2.6); }
	
	.faq__item_question { margin-right: calc( var(--column-width) + var(--grid-gap) ); max-width: var(--5column-width); }
	.faq__item_answer {  width: var(--5column-width); margin-left: calc( var(--column-width) + var(--grid-gap) ); margin-right: calc( var(--2column-width) + var(--grid-gap) ); }
	

	.reviews__item:hover,
	.reviews__item:focus { cursor: grab; cursor: -webkit-grab; }
	.reviews__item:active { cursor: grabbing; cursor: -webkit-grabbing; }
	

	.section--values:after { content: ''; width: 280px; height: 324px; position: absolute; bottom: 0px; right: -60px; background: url(/_data/objects/0000/0050/cube_s2_g5.svg) no-repeat 0 0; }
}



@media (min-width: 740px) {  
	.menu { display: block !important; }
	.menu__burger--close, 
	.menu__svg-title, 
	.menu__footer, 
	.menu__cube { display: none; }
}



@media (max-width: 739px) {  
	:root {
      /* Grid */
      --page-padding: 20px;
      --grid-gap: 20px;

	/* Variables */
	  --slide-width: calc(5 * var(--column-width) + 4 * var(--grid-gap)); 
	}



	/* ------------------------------ Common -------------------------------- */

	body { min-width: 356px; }

	h1 { font-size: clamp(32px, calc((100vw - 360px)/(796 - 360) * (68 - 32) + 32px), 68px); line-height: 1.125; /* font-size: 32px; line-height: 36px; */ }
	h2 { font-size: 24px; line-height: 28px; }


	.section { padding-top: 50px; padding-bottom: 80px; }
	.section-svg-title { margin-left: calc(var(--page-padding) * -1); margin-right: calc(var(--page-padding) * -1); }
	.section-svg-title + .section-header { margin-top: 50px; }

	.section-header { width: 100%; top: 0; text-indent: 0; display: flex; flex-direction: column; gap: 26px; }
	.section-header__subtitle { position: static; margin-top: -7px; }

	.section-header__title,
	.section-header__subtitle { width: 100%; }

	.section-header .split-line:nth-child(1) { text-indent: 0!important; }

	.section--approach + .section--products-wrap,
	.section--ratings + .section--awards,
	.section--awards + .section--team,
	.section--cases + .section--clients,
	.section--clients + .section--group,
	.section--career + .section--media { margin-top: -50px; }

	.section--group + .section--career  { margin-top: -100px; }


	.button--filled .button__icon { width: 52px; height:52px;  }
	.button--filled .button__icon--left { margin-right: -52px; }
	.button--filled .button__label { font-size: 12px; line-height: 16px; padding: 18px 24px; }
	.button--filled:hover .button__label { transform: translateX(52px); }

	.button--link .button__icon { width: 38px; height: 38px; }
	.button--link .button__icon--left { margin-right: -38px; }
	.button--link .button__label { font-size: 20px; line-height: 26px; }

	.button--link:hover .button__label { transform: translateX(48px); }
	
	.button--small .button__label { padding: 4px 24px; }
	.button--small .button__icon { width: 26px; height: 26px; }
	.button--small .button__icon--left { margin-right: -26px; }
	.button--small:hover .button__label { transform: translateX(26px); }

	.hidden { overflow: hidden !important; height: 100%; }



	/* ------------------------------ Header -------------------------------- */

	.header, .header .comm-width { position: static; }
	.header-wrap { padding: 16px 0; }
	.header .logo { font-size: 12px; line-height: 16px; gap: 8px; position: relative; z-index: 99; }

	.menu-wrap { display: flex; flex-direction: column; height: 100%; justify-content: space-between; gap: 40px; }

	.menu__burger { display: block; cursor: pointer; position: relative; top: -2px; z-index: 99; }
	.menu__burger svg,
	.menu__svg-title svg, 
	.menu__cube svg { display: block; margin: 0; }
	
	.menu__burger--close { display: block; position: absolute; top: 15px; right: 20px; cursor: pointer; z-index: 99; }
	.menu__svg-title { display: block; position: absolute; top: -2px; left: 17px; }
	
	.menu { display: none; position: absolute; top: 0; right: 0; left: 0; bottom: 0; background: #2D2D2D; z-index: 299; padding: 0 var(--page-padding); overflow-x: hidden !important; /* overflow: auto !important; */ }
	.menu ul { align-items: flex-start; gap: 28px; flex-direction: column; padding-top: 104px; position: relative; left: 100%; transform: translateX(-100%); width: var(--5column-width); }

	.menu__item a { color: #fff; font-size: 24px; line-height: 28px; }
	.menu__item .submenu a { font-size: 14px; line-height: 18px; }

	.menu__item .button,
	.menu__item .button *,
	.menu__item .button--filled,
	.menu__item .button--filled *,
	.menu__item .button--small,
	.menu__item .button--small * { all: unset; box-sizing: border-box; }


	.menu__item-dot,
	.menu__item .button__icon--left { left: -10px; width: 22px; height: 10px; }

	.menu__item-dot:before,
	.menu__item .button__icon--left:before { width: 10px; height: 10px; background: #fff; }

	.menu__item .button { display: flex; align-items: center; text-decoration: none; color: #fff; font-size: 24px; line-height: 28px; cursor: pointer; }
	.menu__item .button__label { position: relative; }
	.menu__item .button__icon--left { opacity: 0; transform: rotate(100deg); position: absolute; pointer-events: none; }
	.menu__item .button__icon--left:before { content: ""; position: absolute; border-radius: 50%; }

	.menu__item .button__icon--right { display: none; }

	.menu__item .button__icon--left,
	.menu__item .button__label { transition: all 0.3s cubic-bezier(0.2,-0.5,0.8,2); }

	.menu__item a:hover .button__icon--left { transform: rotate(-10deg); opacity: 1;}
	.menu__item a:hover .button__label { transform: translateX(8px); }

	.submenu { opacity: 1; visibility: visible; position: static; padding: 19px 19px 1px 19px; }
	.submenu .menu__item-dot { top: 6px; left: -6px; width: 18px; height: 8px; }
	.submenu .menu__item-dot:before { background: #fff; width: 6px; height: 6px; }

	.menu__footer { display: block; padding-bottom: 21px; color: #AFAFAF; font-size: 12px; line-height: 16px; font-weight: 400; position: relative; }
	.menu__footer .logo { display: inline-block; }
	.menu__footer .menu__copy { margin: 9px 0 6px 0; }
	.menu__footer .menu__policy { color: #AFAFAF; text-decoration: none; }

	.menu__cube { content: ""; position: absolute; right: -40px; bottom: 38px; width: 160px; height: 186px; background: url(/_data/objects/0000/0050/cube_s1_g5.svg) no-repeat 0 0; background-size: cover; }



	/* ------------------------------ Hero section -------------------------------- */

	.section--hero { padding-top: 0; padding-bottom: 0; }
	.comm-width--hero { min-height: calc(100vh - 54px); }
	.section--hero .header-spacer { display: none; /* height: 1px; */ }

	.hero__svg-title { margin-top: 58px; } /* 80 */
	.section--hero .section-header { margin-top: 50px; gap: 23px; }

	.hero__highlights { margin-top: 44px; padding-bottom: 45px; }
	.hero__highlights-list { flex-direction: column; align-content: flex-end; align-items: flex-end; gap: 6px; font-size: 12px; line-height: 16px; }
	.hero__highlights-item { width: 100%; }

	.section--hero .section-header + .button { margin-top: 32px; }



	/* ------------------------------ Approach section -------------------------------- */

	.section--approach .section-header { gap: 26px; }

	.section--approach .section-header__title,
	.section--approach .section-header__subtitle { width: 100%; margin-top: -7px; }

	.approach__slider-wrap { margin-top: 44px; }
	.approach__item { width: 100%; }

	.approach__content { padding: 20px; }
	.approach__title { font-size: 20px; line-height: 26px; }
	.approach__desc { font-size: 18px; line-height: 22px; }



	/* ------------------------------ Products section -------------------------------- */

	.section--products { --clip-radius: 150%; }
	.section--products-wrap .products__bg-after { top: 1px; bottom: -1px; }

	.section--products .section-header { width: 100%; gap: 26px; }
	.section--products .section-header + .products__list { margin-top: 44px; }

	.products__item { padding: 20px 0 20px 0; gap: 12px;  }
	.products__item:first-child { padding-top: 20px; }
	.products__desc { font-size: 14px; line-height: 18px; }



	/* ------------------------------ Ratings section -------------------------------- */

	.section--ratings .section-header__subtitle { margin-top: -7px; }

	.ratings__table { margin-top: 38px; }

	.ratings__row--head { padding-bottom: 7px; }

	.ratings__row--head.ratings__row .ratings__rating,
	.ratings__row--head.ratings__row .ratings__place { font-size: 12px; line-height: 16px; font-weight: 400; }

	.ratings__row--head.ratings__row .ratings__place { padding-top: 0; }
	.ratings__row--head .ratings__nomination { display: none; }

	.ratings__row { font-size: 14px; line-height: 18px; gap: 8px var(--grid-gap); flex-wrap: wrap; align-items: flex-start; align-content: flex-start; }
	.ratings__rating { font-size: 18px; line-height: 24px; font-weight: 500; width: var(--6column-width); order: 1; }
	.ratings__nomination { width: var(--6column-width); order: 3; }
	.ratings__place { width: var(--2column-width); order: 2; padding-top: 4px; }

	.ratings__table + .pagination .button, 
	.moreLoadedCell + .pagination .button { margin-top: 40px; transform: translateX(0px); }

	.ratings__cube { width: 160px; height: 186px; right: -93px; /* (/6*3.5) */ top: 0; }



	/* ------------------------------ Awards section -------------------------------- */

	.awards__svg-title + .awards__slider-wrap { margin-top: 50px; }

	.awards__item { /* min-height: 152px; */ min-heigh: 176px; gap: 8px; }
	.awards__title { font-size: 18px; line-height: 24px; }
	.awards__nomination,
	.awards__info { font-size: 14px; line-height: 18px; margin-top: 8px;}

	.awards__scrollbar { display: none; }



	/* ------------------------------ Team section -------------------------------- */

	.section--team { }
	.team__slider-wrap { margin-top: 4px; margin-left: calc(var(--grid-gap) * (-1)); margin-right: calc(var(--grid-gap) * (-1));  }
	.team__slider { padding-top: 40px; padding-bottom: 40px; position: static; gap: var(--grid-gap); padding-left: var(--grid-gap); padding-right: var(--grid-gap); overflow-x: auto; overflow-y: hidden; -ms-overflow-style: none; scrollbar-width: none; }

	.team__item { font-size: 12px; line-height: 16px; padding-top: 33px; gap: 4px; }
	.team__item:nth-child(odd) { transform: translateY(-40px); }

	.team__name, 
	.team__post { padding: 0 4px; }
	.team__post { margin-top: 4px; }
	.team__photo { margin-top: 8px; }



	/* ------------------------------ Cases section -------------------------------- */

	.cases__table { margin-top: 44px; }

	.cases__row { font-size: 14px; line-height: 18px; gap: 8px; padding-top: 20px; padding-bottom: 19px;  }
	.cases__client { margin-bottom: 4px; }
	.cases__result { order: 2; }
	.cases__metrics { order: 3; }
	.cases__row p + p { margin-top: 0; }

	.cases__row .button__label { font-size: 20px; line-height: 26px; }



	/* ------------------------------ Clients section -------------------------------- */

	.section--clients .section-header { gap: 26px; }

	.section--clients .section-header__title,
	.section--clients .section-header__subtitle { width: 100%; }

	.clients__list { margin-top: 34px; }
	.clients__item  { width: var(--2column-width); }



	/* ------------------------------ Group section -------------------------------- */

	.group__svg-title + .section-header { margin-top: -7px; }

	.group__slider-wrap { margin-top: 44px; }
	.group__item { width: var(--4column-width); }
	.group__item:before { padding-top: 100%; }
	.group__content { padding: 16px; }
	.group__desc { font-size: 12px; line-height: 16px; }

	.group__slider-wrap + .button { margin-top: 40px; }



	/* ------------------------------ Career section -------------------------------- */

	.career__image-wrap + .section-header { margin-top: 50px; }

	.section--career { padding-top: 100px; }
	.section--career .section-header { gap: 26px; }
	.section--career .section-header__subtitle { }

	.career__image-wrap { }
	.career__image-wrap:before { display: none; }
	.career__image-wrap:after { top: -94px; right: -56px; }

	.career__image { width: 100%; /* width: var(--6column-width); */ }
	.career__image img { /* height: 360px; */ aspect-ratio: 1 / 1 !important; }

	.section--career .section-header__title + .button { margin-top: 34px; }



	/* ------------------------------ Media section -------------------------------- */

	.section--media { padding-bottom: 0; }

	.media__svg-title { margin: 0; margin-left: 0 !important; margin-right: 0 !important; position: fixed; z-index: 0; will-change: left, position; }
	.media__svg-title.sticky { position: absolute; bottom: 0; }

	.media__list {
        width: auto;
        margin: 0 calc(var(--grid-gap) * (-1));
        padding: 0 var(--grid-gap);
        margin-top: 44px;
        flex-wrap: nowrap;
        gap: var(--grid-gap);
        justify-content: flex-start;
        align-content: flex-start;
        align-items: flex-start;
        overflow: auto;
        overflow-x: auto;
        overflow-y: hidden;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
	.media__item { width: var(--6column-width) !important; min-width: var(--6column-width); }
	.media__item .media__icon { width: 100% !important; }

	.media__title, 
	.media__source { font-size: 14px; line-height: 18px; }

	.media__source { margin-top: 12px; }
	.media__icon { margin-bottom: 23px; position: relative; }

	.media__item .media__icon img { aspect-ratio: 1 / 1 !important; }
	
	.section--media .pagination { display: none; }
	



	/* ------------------------------ Contacts section -------------------------------- */

	.section--contacts { padding-top: 0; padding-bottom: 73px; background: #2D2D2D;  }
	.contacts__svg-title + .contacts__group { margin-top: 50px; }
	.contacts__group { display: block; }

	.contacts__label, 
	.contacts__detail { width: 100%; }

	.contacts__label { margin-top: -7px;  }
	.contacts__detail { font-size: 20px; line-height: 26px; margin-top: 27px;}

	.contacts__detail strong,
	.contacts__detail a { display: block; margin-bottom: 1px; }
	.contacts__detail p + p { margin-top: 12px; }

	.contacts__group + .contacts__group { margin-top: 44px; }

	.contacts__cube { display: none; }



	/* ------------------------------ Footer -------------------------------- */
	
	.g-page1 .footer { margin-top: 0; }

	.footer { padding-top: 44px; background: #2D2D2D; font-size: 12px; line-height: 16px; position: relative; overflow: hidden;  }
	.footer .comm-width { position: relative; }
	.footer .comm-width:before { content: ""; position: absolute; top: -44px; left: var(--grid-gap); right: var(--grid-gap); height: 1px; background: #fff; }
	.footer__wrap { gap: 45px; }
	.footer__left { order: 2; }
	.footer__right { order: 1; justify-content: flex-start; flex-direction: column; gap: 10px; margin-top: 0; }
	.footer__copy { margin: 9px 0 6px 0; }

	.footer__cube { content: ""; position: absolute; right: -40px; top: 51px; width: 160px; height: 186px; background: url(/_data/objects/0000/0050/cube_s1_g5.svg) no-repeat 0 0; background-size: cover; }



	/* ------------------------------ 404 -------------------------------- */

	.section404 { min-height: calc(100vh - 64px); }
	.section-svg-title404 { padding-top: 50px; }
	.section404 .titles404 { display: flex; flex-direction: column; align-items: flex-start; padding-bottom: 80px; margin-top: 57px; }
	.titles404 p { position: static; order: 1; }
	.titles404 h1 { text-indent: 0; order: 2; font-size: 24px; line-height: 28px; }
	.titles404 .button--filled { order: 3; margin-top: 34px; }
	.titles404 .section-header__title-wrap { order: 2; }
	
	
	/* ------------------------------ cookie -------------------------------- */
	.cookie-agree { right: 0; bottom: 0; max-width: 100%; padding: 16px 20px; border-radius: 0; margin-bottom: -20px; }
	.cookie-wrap { text-align: center; }
	.cookie-wrap p { text-align: left; font-size: 12px; line-height: 16px; }
	.cookie-wrap p + .button { margin-top: 14px; }
	.cookie-wrap .button--filled .button__label { font-size: 14px; line-height: 18px; }
	
	
	/* ------------------------------ case -------------------------------- */
	.section--case-head h1 { font-size: 24px; line-height: 28px; }
	.section--case-head { gap: 0; padding-top: 47px; }
	.section--case-head .case--head-col { width: 100%; font-size: 14px; line-height: 18px; padding-top: 29px; }
	.section--case-head .case--head-col:first-child { width: 100%; margin-left: 0; padding-top: 37px; }
	.section--case-head .case--head-col:nth-child(2) { margin-bottom: 0; }
	.section--case-content .case--desc h2:last-child { margin-bottom: -7px; }
	.section--case-content .case--desc p:first-child { margin-top: 2px; }
	
	.section--case-icon { /*padding-bottom: 0;*/ }
	.section--case-solution.solution-cube-left:before,
	.section--case-solution.solution-cube-left-right:before	{ display: none; }
	.case--head-title { margin-bottom: 8px; }
	
	.section--case-icon img + .section--case-content, 
	.section--case-icon .case-icons + .section--case-content, 
	.section--case-icon .case-icon + .section--case-content { margin-top: 42px; }
	
	.section--case-content { flex-direction: column; gap: 17px; }
	.section--case-content .case--title,
	.section--case-content .case--desc { width: 100%; }
	.section--case-content .case--desc { font-size: 14px; line-height: 18px; }
	.section--case-content .case--desc h2:first-child { margin-top: 0; }
	
	.section--case-solution, .section--case-result { padding-top: 43px; }
	
	.result-list li, 
	.article .result-list li { font-size: 24px; line-height: 28px; }
	.result-list li strong { font-size: 24px; line-height: 28px; }
	.section--content-form .case--title { flex-direction: column; gap: 17px; }
	.section--content-form .case--title p,
	.section--content-form .case--title h2 { width: 100%; }
	.section--content-form .case--desc { margin-left: 0; margin-top: 27px; }
	.section--case-head .case--head-col:nth-child(1) .button { display: none; }
	.section--case-head .case--head-col:nth-child(2) .button { display: inline-flex; }
	
	.article p + h2, .article ul + h2, .article ol + h2 { margin-top: 37px; }
	.article h2 + p, .article h2 + ul, .article h2 + ol { margin-top: 17px; }
	.article p + p.picture, .article p + .picture, .article ul + p.picture, .article ul + .picture, .article ol + p.picture, .article ol + .picture { margin-top: 26px; }
	.article p.picture + p, .article .picture + p, .article p.picture + ul, .article .picture + ul, .article p.picture + ol, .article .picture + ol { margin-top: 23px; }
	
	.article ul li { padding-left: 38px; }
	.article ul li:before { left: 18px; top: 9px; }
	
	.article ol li { margin-left: 38px; }
	.article ol li:before { font-size: 14px; line-height: 18px; width: 22px; left: -34px; }
	
	.section--case-content .case--desc ul:last-child:last-child { margin-bottom: -5px; }
	.section--case-content .case--desc ul:last-child.result-list:last-child { margin-bottom: 0px; }
	
	.section--case-content .case--desc .result-list.result-list:first-child { margin-top: 9px; }
	.article .result-list + .picture, .article .result-list + p.picture { margin-top: 50px; }
	.section--content-form { padding-bottom: 17px; }
	.section--content-form .case--title h2 { margin-top: 0; }
	.g-case .contacts__svg-title g { /*stroke-width: 3px;*/ }
	
	.task-cube-left-bot:after,
	.task-cube-right-bot:after,
	.task-cube-right-top:after { width: 74px; height: 86px; }
	
	/* ------------------------------ form -------------------------------- */
	input[type=email], 
	input[type=tel], 
	input[type=password], 
	input[type=text], 
	input.input, select, textarea { font-size: 18px; line-height: 22px; padding: 11px 20px; }
	.form_row_footer { font-size: 12px; line-height: 16px; }
	.form_row + .form_row { margin-top: 36px; }
	.form_row + .form_row_submit { margin-top: 40px; }
	.form_row_submit + .form_row_footer { margin-top: 25px; }
	span.error { bottom: -22px; }
	.form_row__p__comment_phone span.error, .form_row__p__career_phone span.error { bottom: -60px; }
	.radio_elements label { font-size: 14px; line-height: 18px; gap: 6px; }
	.radio_elements { margin-top: 12px; }
	
	.form_result_content { right: 0; left: 0; width: 100%; padding: 16px 20px; border-radius: 0; transform: translate(0, -50%); }
	
	
	/* ------------------------------ cases list -------------------------------- */
/* 
	.g-cases .hero__svg-title { margin-top: 5px; }
 */
	.g-cases h1 { font-size: 24px; line-height: 28px; /* padding-top: 10px; */ }
	.g-cases .section--title { margin-top: -54px; }
	.section--title { /* padding-top: 0px;  */padding-bottom: 0; }
	.section--title .comm-width { position: static; }
	.section--title .section-header { /* margin-top: 50px;  */}
	.section--title .section-header { /* padding-top: 57px;  */gap: 26px; }
	.section--title .section-svg-title { /* top: 6px; margin: 0;  */}
	
	.cases__table + .pagination .button { margin-top: 40px; }
	.g-cases .filter { margin-top: -6px; }
	.filter form { flex-direction: column; }
	.filter .form_row { width: 100%; }
	.filter + .cases__table { margin-top: 40px; }
	.select2-container--default .select2-selection--single .select2-selection__rendered { font-size: 18px; line-height: 22px; }
	.select2-container .select2-selection--single .select2-selection__rendered { padding: 15px 56px 15px 20px; }
	.select2-container--default .select2-selection--single .select2-selection__arrow { top: 11px; }
	.g-cases .section--content-form, .g-career .section--content-form { padding-bottom: 76px; }
	
	.result-nofound { font-size: 18px; line-height: 22px; margin-top: 32px; margin-bottom: -5px; }
	
	
	/*===============================HR===============================*/
	.g-career .menu__burger svg line { stroke: #fff; }

	.section--cover { min-height: 1px; margin-top: -54px; /* padding-top: 104px; */ }
	.section--cover .section-header  { /* margin-top: 39px; *//*  margin-top: 50px; */ }

	.section--cover h1 { font-size: 24px; line-height: 28px; }
	.cover__content { margin: 28px 0 43px 0; gap: 36px 32px; }
	.cover__content p { font-size: 14px; line-height: 18px; width: 100%; }

	.highlights__desc { font-size: 14px; line-height: 18px; margin-top: 12px; }
	.cover__highlights-item { padding: 21px 0 19px 0; }

	.section--values .section-header__subtitle { width: 100%; margin-top: -7px; }
	.section--values:after { display: none; }
	.values__slider { margin-top: 44px; }
	.values__item { width: 100%; }
	

	.section--values + .section--partnership { margin-top: -50px; }
	
	.partnership__table { margin-top: 44px; }
	.partnership__row { flex-direction: column; font-size: 14px; line-height: 18px; }
	.partnership__client { width: 100%; font-size: 18px; line-height: 24px; }
	.partnership__result { width: 100%; }
	.partnership__icon, .partnership__row:hover .partnership__icon { opacity: 0; display: none; }
	.partnership__table + .button { margin-top: 40px; }
	
	.fancybox-container-center .fancybox-content { width: var(--8column-width); }
	.fancybox-container-center .fancybox-content h2 { margin-top: 27px; margin-bottom: 44px; }
	.file-upload i { font-size: 12px; line-height: 16px; margin-top: 5px; }
	.fancybox-container-center .fancybox-content .form_row + .form_row_submit { margin-top: 35px; }

	.file-upload .file-name { font-size: 18px; line-height: 26px; }

	.internship__svg-title { position: absolute; left: 0; bottom: 0; right: 0; margin: 0 0 -1px 0; }
	.internship__list { margin-left: 0; margin-top: 8px; gap: 0; }
	.internship__item { width: 100%; padding: 20px 0 19px 0; }
	.internship__image img { aspect-ratio: 1 / 1; }
	.internship__image + .section-header { margin-top: 50px; }
	.section-header__columns.section-header { gap: 20px; }
	.internship__text { font-size: 14px; line-height: 18px; }
	
	.section--moredetails { padding-top: 41px; padding-bottom: 46px; }
	.moredetails__wrap { margin-left: 0; width: 100%; font-size: 14px; line-height: 18px; }
	.moredetails__wrap strong { font-size: 18px; line-height: 24px; }
	
	.reviews__slider { margin-top: 38px; }
	.reviews__item:nth-child(3n + 1),
	.reviews__item:nth-child(3n + 2),
	.reviews__item:nth-child(3n) { width: var(--7column-width); }
	.reviews__item + .reviews__item { margin-left: var(--grid-gap); }
	.reviews__item p + p { margin-top: 8px; }
	.reviews__content { font-size: 12px; line-height: 16px; }
	.reviews__author { margin-top: 26px; gap: 22px; }
	.reviews__author_photo { width: 64px; }
	.reviews__author_title { font-size: 14px; line-height: 18px; }
	.reviews__author_post { font-size: 12px; line-height: 16px; }

	.section--faq { padding-top: 0; }
	.section--faq .section-header { margin-top: -7px; }
	.faq__list { margin-top: 38px; }
	.faq__item_question, .faq__item_answer { padding: 16px; font-size: 14px; line-height: 18px; }
	.faq__item_question { margin-right: 0; max-width: var(--7column-width); }
	.faq__item_answer {  width: var(--7column-width); margin-left: 0; margin-right: calc( var(--column-width) + var(--grid-gap) ); }
	.section--faq .button { margin-top: 40px; }
	

	

}
