:root {
	--rootFontSize: calc((75vmax + 25vmin + 1715px) / 300);
	--adjustFont: calc((1vh + 1vw) / 2);
	--header-height: 6em;
	--sticky-shift: 2em;
	--control-height: 3.8rem;
	--button-height: 2.8rem;
	--button-text: calc(1rem - 1px);
	--x-pad: calc(var(--adjustFont) * 3);
	--max-width: 2400px;
	--menu-width: 30em;
	--big-width: calc(min(50vw, var(--max-width) / 2) - var(--x-pad) + var(--menu-width) / 2);
	--inner-aside-width: calc(100% - var(--big-width) - var(--x-pad));
	--stoVH: 100vh;
	color-scheme: dark;
	--color-body: #111213;
	--color-font: #edeeef;
	--color-back: #333435;
	--color-deep: #dddedf;
	--color-acnt: #ff9400;
	--color-invt: #fff;
	--color-link: color-mix(in lab, var(--color-acnt) 88%, #ffd700);
	--color-scrl: rgba(255,255,255,0.1);
	--color-scrt: rgba(255,255,255,0.1);
}
:root:has(#tTrig:checked) {
	color-scheme: light;
	--color-body: #fff;
	--color-font: #111;
	--color-back: #edeeef;
	--color-deep: #222324;
	--color-acnt: #f80;
	--color-invt: #000;
	--color-link: color-mix(in lab, var(--color-acnt) 80%, #f00);
	--color-scrl: rgba(0,0,0,0.1);
	--color-scrt: rgba(0,0,0,0.1);
}
@supports (height: 100dvh) {
	:root {
		--stoVH: 100dvh;
	}
}
.clearfix:before,
.clearfix:after {
	content: '';
	display: table;
	line-height: 0;
	height: 0;
	border-spacing: 0;
}
.clearfix:after {
	clear: both;
}
.clear {
	clear: both;
}
.clear:before {
	content: '';
	display: block;
	overflow: hidden;
}
.vis-hide {
	position: absolute;
	width: 1px;
	height: 1px;
	-webkit-clip-path: inset(0 100% 100% 0);
	clip-path: inset(0 100% 100% 0);
	margin: 0;
	padding: 0;
	overflow: hidden;
}
*,
:before,
:after {
	box-sizing: border-box;
	scrollbar-width: thin;
	scrollbar-color: var(--color-scrt) var(--color-scrl);
}
:focus,
:active {
	outline: 0 none;
}
::selection {
	color: #000;
	background: #ffd700;
	text-shadow: none;
}
[hidden] {
	display: none;
}
ARTICLE,
ASIDE,
DETAILS,
FIGCAPTION,
FIGURE,
FOOTER,
HEADER,
HGROUP,
MAIN,
NAV,
SECTION,
SUMMARY {
	display: block;
	margin: 0;
	padding: 0;
}
TABLE {
	font-family: inherit;
}
HR {
	background-color: transparent;
	height: 0;
	border: 0 none;
	border-top: 1px dashed #999;
	margin: 1em 0;
}
.img-holder {
	display: flex;
	overflow: hidden;
	background-color: var(--color-back);
	aspect-ratio: 16 / 9;
}
.img-holder > * {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.img-holder.rnd-holder {
	border-radius: 100vmax;
	aspect-ratio: 1;
}
.ar-1x1 {
	aspect-ratio: 1;
}
.ar-1x2 {
	aspect-ratio: 1 / 2;
}
.ar-2x1 {
	aspect-ratio: 2;
}
.ar-2x3 {
	aspect-ratio: 2 / 3;
}
.ar-3x1 {
	aspect-ratio: 3;
}
.ar-3x2 {
	aspect-ratio: 3 / 2;
}
.ar-3x4 {
	aspect-ratio: 3 / 4;
}
.ar-4x1 {
	aspect-ratio: 4;
}
.ar-4x3 {
	aspect-ratio: 4 / 3;
}
.ar-5x6 {
	aspect-ratio: 5 / 6;
}
.ar-8x5 {
	aspect-ratio: 8 / 5;
}
.ar-16x9 {
	aspect-ratio: 16 / 9;
}
.arx {
	aspect-ratio: unset;
}
IMG,
VIDEO {
	max-width: 100%;
	height: auto;
}
IMG[class^='ar-'],
VIDEO[class^='ar-'] {
	object-fit: cover;
}
IMG[data-fancybox],
VIDEO[data-fancybox] {
	cursor: zoom-in;
}
HTML,
BODY {
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 100%;
	min-width: 280px;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	background-color: var(--color-body);
	-webkit-overflow-scrolling: touch;
}
HTML {
	height: 100%;
	font-size: clamp(8px, var(--rootFontSize), 12px);
	overflow-y: scroll;
}
HTML.modal-opened:not(.modal-preopened) {
	overflow: clip;
	padding-right: var(--opr);
}
BODY {
	min-height: var(--stoVH);
	max-width: var(--max-width);
	margin: 0 auto;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.6rem;
	line-height: 1.33;
	color: var(--color-font);
	position: relative;
	z-index: 1;
}
.modal-opened:not(.modal-preopened) BODY {
	height: 100%;
	overflow: clip;
}
BODY.ajx-prepare:after,
.is-loading BODY:after {
	content: '';
	position: fixed;
	top: 1ex;
	right: 0.5ex;
	width: 3ex;
	height: 3ex;
	border-radius: 50%;
	z-index: 9998;
	transform: translateZ(0);
	background-color: var(--color-acnt);
	-webkit-clip-path: url("#pixLod");
	clip-path: url("#pixLod");
	animation: rotation 3s linear infinite;
}
.is-loading BODY:before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: color-mix(in srgb, var(--color-body) 25%, transparent);
	z-index: 9998;
	opacity: 0;
	animation: fadein 0.2s linear forwards;
}
.measure {
	position: absolute;
	left: -100px;
	height: 1em;
	overflow-y: scroll;
}
.stakkan {
	width: min(var(--big-width), 100%);
	margin-left: auto;
	margin-right: auto;
}
#bx-panel-back {
	display: none !important;
}
#bx-panel-back[style*='147px'] + #bx-panel {
	transform: translateY(0);
}
HTML #bx-panel {
	position: fixed !important;
	left: 0;
	top: 0;
	width: 100% !important;
	transform: translateY(-42px);
	transition: transform 0.2s ease-out 0.2s;
}
HTML #bx-panel:hover {
	transform: translateY(0);
}
HTML #bx-panel:after {
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	height: 1.25em;
}
PRE {
	font-size: 11px;
	white-space: break-spaces;
	word-break: break-word;
}
A {
	color: var(--color-link);
	text-decoration: underline dotted 1px;
	text-underline-offset: 0.3ex;
	text-decoration-color: color-mix(in srgb, currentColor 75%, var(--color-body));
	transition: color 0.2s linear;
	-webkit-tap-highlight-color: transparent;
}
A:hover {
	color: var(--color-font);
}
INPUT[type='tel']::placeholder,
INPUT[type='text']::placeholder,
INPUT[type='date']::placeholder,
INPUT[type='email']::placeholder,
INPUT[type='number']::placeholder {
	color: #999 !important;
	font-style: normal;
	font-size: 1em;
	opacity: 1;
	transition: opacity 0.2s linear;
}
INPUT[type='tel']:focus::placeholder,
INPUT[type='text']:focus::placeholder,
INPUT[type='date']:focus::placeholder,
INPUT[type='email']:focus::placeholder,
INPUT[type='number']:focus::placeholder {
	opacity: 0;
}
INPUT,
BUTTON,
SELECT,
TEXTAREA {
	font-size: inherit;
	font-family: inherit;
	color: inherit;
	-webkit-tap-highlight-color: transparent;
}
/* flex */
.flex {
	display: flex;
}
.flex-col {
	display: flex;
	flex-direction: column;
}
.flex-col-rev {
	display: flex;
	flex-direction: column-reverse;
}
.flex-row-rev {
	display: flex;
	flex-direction: row-reverse;
}
.flex-wrap {
	display: flex;
	flex-wrap: wrap;
}
.flex-shrink {
	flex-grow: 0;
	flex-shrink: 1;
}
.flex-auto {
	flex: 1;
}
.flex-grow {
	flex-grow: 1;
	flex-shrink: 0;
}
.flex-nosh {
	flex-grow: 0;
	flex-shrink: 0;
}
.flex-order-first {
	order: -1;
}
.flex-start {
	display: flex;
	align-items: flex-start;
}
.flex-end {
	display: flex;
	align-items: flex-end;
}
.flex-cent {
	display: flex;
	align-items: center;
}
.flex-just {
	display: flex;
	justify-content: space-between;
}
.flex-jent {
	display: flex;
	justify-content: center;
}
.flex-jart {
	display: flex;
	justify-content: flex-start;
}
.flex-jend {
	display: flex;
	justify-content: flex-end;
}
.flex-cm {
	display: flex;
	align-items: center;
	justify-content: center;
}
.flex-ca {
	display: flex;
	align-items: center;
	justify-content: space-around;
}
.flex-inline {
	display: inline-flex;
}
.grid {
	display: grid;
}
.grid-cols-2 {
	display: grid;
	grid-template: auto / repeat(auto-fill, minmax(clamp(50% - var(--x-gap, 1em), 14em, 100%), 1fr));
}
.grid-cols-3 {
	display: grid;
	grid-template: auto / repeat(auto-fill, minmax(clamp(33.33% - var(--x-gap, 1em), 14em, 100%), 1fr));
}
.grid-cols-4 {
	display: grid;
	grid-template: auto / repeat(auto-fill, minmax(clamp(25% - var(--x-gap, 1em), 14em, 100%), 1fr));
}
.grid-cols-5 {
	display: grid;
	grid-template: auto / repeat(auto-fill, minmax(clamp(20% - var(--x-gap, 1em), 14em, 100%), 1fr));
}
.grid-cols-6 {
	display: grid;
	grid-template: auto / repeat(auto-fill, minmax(clamp(16.66% - var(--x-gap, 1em), 14em, 100%), 1fr));
}
[class*='grid-cols-'] IMG[class^='ar-'],
[class*='grid-cols-'] VIDEO[class^='ar-'] {
	width: 100%;
	height: 100%;
}
.mrg-ta {
	margin-top: auto;
}
.mrg-ba {
	margin-bottom: auto;
}
.mrg-la {
	margin-left: auto;
}
.mrg-ra {
	margin-right: auto;
}
.mrg-ha {
	margin-top: auto;
	margin-bottom: auto;
}
.mrg-wa {
	margin-left: auto;
	margin-right: auto;
}
.mrg-aa {
	margin: auto;
}
.gap-1em {
	gap: 1em;
	--x-gap: 1em;
}
.gap-1ex {
	gap: 1ex;
	--x-gap: 1ex;
}
.gap-1emx {
	column-gap: 1em;
	--x-gap: 1em;
}
.gap-1exx {
	column-gap: 1ex;
	--x-gap: 1ex;
}
.gap-1emy {
	row-gap: 1em;
}
.gap-1exy {
	row-gap: 1ex;
}
.gap-1var {
	--x-gap: calc(var(--adjustFont) * 1.4);
	gap: var(--x-gap);
}
.inline-cols-2 {
	--cols: 2;
}
.inline-cols-3 {
	--cols: 3;
}
.inline-cols-4 {
	--cols: 4;
}
.inline-cols-5 {
	--cols: 5;
}
.inline-cols-6 {
	--cols: 6;
}
[class*='inline-cols-'] > * {
	flex: 1;
	max-width: calc((100% - var(--x-gap) * (var(--cols) - 1) - 1px) / var(--cols));
}
[class*='inline-cols-'] IMG[class^='ar-'],
[class*='inline-cols-'] VIDEO[class^='ar-'] {
	width: 100%;
	height: 100%;
}
@media (max-width: 1140px) {
	[class*='grid-cols-'] > [style] {
		grid-column: unset !important;
		grid-row: unset !important;
	}
}
.obhelper {
	position: absolute;
	top: 0;
	width: 1px;
	height: 1px;
	z-index: 200;
	transform: translateY(3em);
}
H1:first-child,
H2:first-child,
H3:first-child,
H4:first-child,
H5:first-child,
H6:first-child,
P:first-child,
PRE:first-child {
	margin-top: 0;
}
H1:last-child,
H2:last-child,
H3:last-child,
H4:last-child,
H5:last-child,
H6:last-child,
P:last-child,
PRE:last-child {
	margin-bottom: 0;
}
H1 {
	font-size: 1.5em;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: 0.5px;
	margin-bottom: 1em;
}
.theme-trigger,
.smartfilter-trigger {
	cursor: pointer;
	color: var(--color-link);
	text-decoration: underline dotted 1px;
	text-underline-offset: 0.3ex;
	text-decoration-color: color-mix(in srgb, currentColor 75%, var(--color-body));
	transition: color 0.2s linear;
}
.theme-trigger:hover,
.smartfilter-trigger:hover {
	color: var(--color-font);
}
.theme-trigger:after {
	content: 'светло';
}
.theme-trigger:has(INPUT:checked):after {
	content: 'темно';
}
HTML[lang='en'] .theme-trigger:after {
	content: 'light';
}
HTML[lang='en'] .theme-trigger:has(INPUT:checked):after {
	content: 'dark';
}
.smartfilter-trigger {
	display: inline-block;
	margin-bottom: 1em;
	transform: translateY(-25%);
}
.smartfilter-trigger:before {
	content: 'фильтр';
}
HTML[lang='en'] .smartfilter-trigger:before {
	content: 'filter';
}
#sTrig:checked + .smartfilter-trigger:after {
	content: ' x';
}
.cp-100 {
	transform: scale(calc(1 / 100));
}
.cp-80x100 {
	transform: scale(calc(1 / 84), calc(1 / 100));
}
.cp-24 {
	transform: scale(calc(1 / 24));
}
MENU {
	margin: 0;
	padding: 0;
	list-style: none;
}
MENU UL {
	margin: 0;
	padding: 0;
	list-style: none;
}
.small-text {
	font-size: 1rem;
}
.smidl-text {
	font-size: 1.2rem;
}
.midle-text {
	font-size: 1.4rem;
}
/* button */
.baton,
[class^='baton-'] {
	position: relative;
	display: inline-flex;
	vertical-align: middle;
	align-items: center;
	justify-content: center;
	height: var(--button-height);
	padding: 0.1rem 1em 0;
	border: 1px solid transparent;
	border-radius: calc(var(--button-height) / 5);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
	font-size: var(--button-text);
	text-transform: uppercase;
	text-decoration: none;
	color: var(--color-invt);
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	-webkit-user-select: none;
	user-select: none;
	transform: translateZ(0);
	transition: color 0.2s linear, border-color 0.2s linear, background-color 0.2s linear;
}
.baton:empty:before,
[class^='baton-']:empty:before,
.baton:has(.vis-hide):before,
[class^='baton-']:has(.vis-hide):before {
	margin-right: 0;
}
.baton:hover,
[class^='baton-']:hover {
	color: var(--color-body);
	background-color: var(--color-acnt);
}
.baton-big {
	font-size: 1.3rem;
	height: calc(var(--button-height) * 1.33);
	padding: 0.1rem 1.5ex 0;
}
.baton-sml {
	height: calc(var(--button-height) / 1.25);
	padding: 0 1ex;
}
.baton-smp {
	border-color: color-mix(in lab, var(--color-acnt) 50%, var(--color-body));
	background-color: var(--color-body);
	color: var(--color-link);
}
.baton-smp:hover {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-body) 92%, var(--color-font));
}
.icon {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	height: 1.33em;
	aspect-ratio: 1;
	transition: color 0.2s linear;
}
.icon:before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: currentColor;
	transform: translateZ(0);
}
.icon-sel:before {
	-webkit-clip-path: url("#pixSel");
	clip-path: url("#pixSel");
}
.icon-pdf:before {
	-webkit-clip-path: url("#pixPdf");
	clip-path: url("#pixPdf");
}
/* corner */
.corner {
	position: absolute;
	width: var(--brd-rad-main, 1em);
	height: var(--brd-rad-main, 1em);
	color: var(--color-body);
	overflow: hidden;
}
.corner:before {
	content: '';
	position: absolute;
	width: 200%;
	height: 200%;
	background-color: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' width='100%25' height='100%25'%3E%3Cpath d='M 0 0 L 100 0 L 100 100 L 0 100 Z M 50 0 C 22.386 0 0 22.386 0 50 C 0 77.614 22.386 100 50 100 C 77.614 100 100 77.614 100 50 C 100 22.386 77.614 0 50 0 Z' /%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' width='100%25' height='100%25'%3E%3Cpath d='M 0 0 L 100 0 L 100 100 L 0 100 Z M 50 0 C 22.386 0 0 22.386 0 50 C 0 77.614 22.386 100 50 100 C 77.614 100 100 77.614 100 50 C 100 22.386 77.614 0 50 0 Z' /%3E%3C/svg%3E");
}
.corner-top-left {
	left: 0;
}
.corner-top-left:before {
	top: 0;
	left: 0;
}
.corner-top-right {
	right: 0;
}
.corner-top-right:before {
	top: 0;
	right: 0;
}
.corner-bottom-left {
	left: 0;
}
.corner-bottom-left:before {
	bottom: 0;
	left: 0;
}
.corner-bottom-right {
	right: 0;
}
.corner-bottom-right:before {
	bottom: 0;
	right: 0;
}
/* form */
FORM LEGEND {
	margin: 0;
	padding: 0;
}
FORM FIELDSET {
	margin: 0;
	padding: 0;
	border: 0 none;
}
.forma {
	position: relative;
	width: var(--big-width);
	transition: opacity 0.2s linear;
}
.forma LEGEND {
	margin-bottom: 1.25em;
	font-size: 1.25em;
	font-weight: 600;
	transform-origin: left bottom;
}
.forma FIELDSET {
	margin-bottom: 1em;
}
.is-sucs .forma,
.forma.is-sending {
	opacity: 0.5;
	-webkit-user-select: none;
	user-select: none;
	pointer-events: none;
}
.forma.is-sending:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 2em;
	height: 2em;
	border-radius: 50%;
	z-index: 10;
	transform: translateZ(0);
	background-color: var(--color-acnt);
	-webkit-clip-path: url("#pixLod");
	clip-path: url("#pixLod");
	animation: rotation 3s linear infinite;
}
.modalko .forma {
	margin: auto;
}
.forma BUTTON[type="submit"] {
	flex-shrink: 0;
}
.f-split {
	flex-wrap: wrap;
	gap: 0 1em;
}
.t-wrap,
.f-wrap,
.i-wrap {
	display: flex;
	flex: 1;
	position: relative;
	margin-bottom: 1.5em;
}
.t-wrap LABEL,
.f-wrap LABEL,
.i-wrap LABEL {
	font-size: 0.875em;
	font-weight: 500;
}
.t-wrap {
	flex-direction: column;
}
.t-wrap LABEL {
	margin-bottom: 0.75ex;
}
.i-wrap {
	align-items: center;
}
.i-wrap LABEL {
	position: absolute;
	left: 1.25ex;
	pointer-events: none;
	transform: scale(1) translateY(0);
	transform-origin: left;
	transition: opacity 0.2s linear, transform 0.2s linear;
}
.i-wrap:has(INPUT[required]) LABEL:after {
	content: '*';
	margin-left: 0.25ex;
}
.i-wrap:has(INPUT:focus-visible) LABEL,
.i-wrap:has(INPUT:not(:placeholder-shown)) LABEL {
	transform: scale(0.75) translateY(calc(var(--control-height) / -1));
	opacity: 0.75;
}
.s-wrap {
	max-width: 40%;
}
.f-wrap {
	flex-shrink: 0;
	overflow: hidden;
	max-width: max-content;
	padding-right: 1px;
	padding-bottom: 1px;
}
.f-wrap LABEL {
	pointer-events: none;
	font-size: var(--button-text);
	font-weight: 600;
	height: var(--control-height);
}
.f-wrap INPUT {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	font-size: 8rem;
	cursor: pointer;
}
.f-wrap INPUT:hover + LABEL {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-body) 92%, var(--color-font));
}
.f-grave {
	gap: 1ex;
	padding-top: calc(var(--control-height) - 2px - var(--button-height) / 1.25);
}
.f-grave:empty:before {
	content: attr(data-description);
	font-size: 0.75em;
	opacity: 0.75;
}
.file-span {
	color: var(--color-font);
	cursor: default;
}
.file-span B {
	display: inline-block;
	padding: 0.5ex 1ex;
	margin: -0.5ex -1ex;
	color: var(--color-acnt);
	font-weight: 600;
	cursor: pointer;
}
.input-text {
	font-size: 0.875em;
	font-weight: 500;
	border: 0 none;
	background-color: var(--color-back);
	margin: 0;
	padding: 0 1.25ex;
	height: var(--control-height);
	width: 100%;
	border-radius: 0.7rem;
}
.input-text:focus-visible,
.input-text:not(:placeholder-shown) {
	background-color: var(--color-back);
}
TEXTAREA.input-text {
	padding: 1.25ex;
	height: 10em;
	resize: vertical;
}
.is-focused .input-text {
	background-image: linear-gradient(to left, #ee82ee, #4b0082, #00f, #008000, #ff0, #ffa500, #f00);
}
.forminfo {
	width: 100%;
	font-size: 0.875em;
	font-weight: 500;
	flex-direction: column;
	justify-content: space-around;
	gap: 1ex;
}
.forminfo:not([hidden]),
.f-request .forminfo {
	display: flex;
}
.forminfo H1 {
	font-size: 1.25em;
	line-height: 1.2;
	margin: 0;
	font-weight: 800;
}
.forminfo BUTTON {
	margin-right: 2em;
}
.forminfo P + DIV {
	margin-top: -1em;
	margin-bottom: 1em;
}
.forminfo PRE {
	max-height: calc((100vh - 14em) / 2);
	overflow: auto;
}
.f-request {
	display: flex;
	align-items: center;
	position: fixed;
	width: calc(100% - 2em);
	max-width: 24em;
	min-height: 16em;
	max-height: calc(100% - 12em);
	overflow: auto;
	inset: 0 0 auto;
	margin: 7em auto auto;
	padding: 1em 1.5em 1.5em;
	border-radius: 1ex;
	background-color: var(--color-back);
	color: var(--color-font);
	opacity: 0;
	transform: scaleY(0.75) translateY(-14em);
	transform-origin: top;
	box-shadow: 0 0.5ex 1ex rgba(0,0,0,0.5);
	z-index: 9999;
	transition: transform 0.2s ease-out, opacity 0.2s linear;
}
.is-sucs .f-request {
	opacity: 1;
	transform: scaleY(1) translateY(0);
	transition-delay: 0.3s;
}
.modal-preopened .is-sucs .f-request {
	display: none;
}
.menu-opened .is-sucs .f-request {
	transform: scaleY(1) translateY(0) translateX(100vw);
	transition-delay: 0s;
}
.form-desc {
	opacity: 0.75;
	text-wrap: balance;
}
.search-block {
	position: relative;
	--control-height: 6rem;
}
.search-block INPUT {
	position: relative;
	height: var(--control-height);
	margin: 0;
}
.search-block .input-text {
	width: 100%;
	padding: 0 var(--control-height) 0 1em;
	margin-right: calc(var(--control-height) / -1);
}
.search-block .baton {
	padding: 0;
	aspect-ratio: 1;
	background-color: transparent;
	z-index: 10;
}
.search-block:before {
	content: '';
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	height: calc(var(--control-height) - 3rem);
	aspect-ratio: 1;
	background-color: var(--color-acnt);
	-webkit-clip-path: url("#pixLup");
	clip-path: url("#pixLup");
	transform: translateZ(0);
	z-index: 1;
	transition: background-color 0.2s linear;
}
[inert] .search-block:before {
	background-color: var(--color-body);
}
.search-block:has(.baton:hover):before {
	background-color: var(--color-font);
}
MAIN {
	position: relative;
	padding: 1em var(--x-pad) 2em;
}
.main-wrapper {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow-x: clip;
}
.text-page {
	background-color: #eee;
	color: #111;
	border-radius: 1em;
}
.text-page A:not([class^='baton-']):not(.policy-menu A) {
	color: #f50;
}
HTML:has(#tTrig:checked) .text-page {
	background-color: var(--color-body);
}
.logotype {
	width: 9em;
	transform: scale(1);
	transform-origin: left;
	transition: transform 0.2s linear;
}
.logotype svg {
	width: 100%;
	height: auto;
}
.isSticky .logotype {
	transform: scale(0.75);
}
.preload .logotype {
	transition: none !important;
}
.main-menu {
	font-weight: 500;
}
.main-menu LI {
	font-size: calc(1em - 1px);
}
.main-menu LI.is-active > A:not(.baton) {
	color: var(--color-acnt);
	text-shadow: 0 0 1px var(--color-acnt);
}
.main-menu LI > A {
	text-decoration: none;
	color: currentColor;
}
.main-menu LI > A:hover {
	color: var(--color-acnt);
}
.main-menu LI > A.baton {
	font-size: inherit;
	font-weight: inherit;
	text-transform: none;
	padding: 0 1.5ex;
	height: calc(var(--button-height) + 2px);
	color: var(--color-invt);
}
.main-menu LI > A.baton:hover {
	color: var(--color-body);
}
.main-header {
	position: sticky;
	width: 100%;
	left: 0;
	top: 0;
	height: var(--header-height);
	padding: 0 var(--x-pad);
	background-color: var(--color-body);
	z-index: 100;
	-webkit-user-select: none;
	user-select: none;
	transition: height 0.2s linear, margin 0.2s linear;
}
.main-header NAV {
	width: var(--big-width);
}
.isSticky .main-header {
	height: calc(var(--header-height) - var(--sticky-shift));
	margin-bottom: var(--sticky-shift);
}
.main-header .corner {
	top: 100%;
}
.isSticky .main-header .corner {
	color: var(--color-body);
}
.preload .main-header {
	transition: none !important;
}
.main-footer {
	position: sticky;
	bottom: 0;
	padding: 4px var(--x-pad);
	background-color: var(--color-body);
	z-index: 111;
	-webkit-user-select: none;
	user-select: none;
}
.main-footer .text-bar {
	padding: 2px 1ex;
	border-radius: 0.5ex;
	background-color: var(--color-back);
}
.main-footer P {
	margin: 0;
}
.main-footer A {
	color: currentColor;
}
.main-footer A:hover {
	color: var(--color-acnt);
}
.main-footer .corner {
	bottom: 100%;
}
/* list */
.list-wrapper {
	flex: 1;
	transition: opacity 0.3s linear;
}
.list-page .list-wrapper {
	max-width: var(--big-width);
	margin-left: auto;
}
.ajx-prepare .list-wrapper {
	opacity: 0.5;
}
.list-trigger:after {
	content: 'плитка';
}
.list-trigger:before {
	content: 'список';
	color: var(--color-acnt);
	cursor: pointer;
}
#lTrig:checked + DIV .list-trigger:after {
	color: var(--color-acnt);
	cursor: pointer;
}
#lTrig:checked + DIV .list-trigger:before {
	color: var(--color-font);
	cursor: default;
}
.list-trigger-holder {
	position: relative;
	height: 0;
	margin-bottom: 1em;
	margin-top: -1em;
	z-index: 99;
	align-items: flex-end;
}
HTML[lang="en"] .list-trigger:after {
	content: 'tile';
}
HTML[lang="en"] .list-trigger:before {
	content: 'list';
}
.uni-list {
	--list-gap: 1.25em;
	display: grid;
	gap: 0 var(--list-gap);
	grid-template: auto / repeat(auto-fill, minmax(clamp(25% - var(--list-gap), 16em, 100%), 1fr));
	grid-auto-flow: dense;
	counter-reset: item;
}
#lTrig:checked ~ .uni-list {
	grid-template: auto/1fr;
}
#lTrig:checked ~ .uni-list.port-list .uni-item {
	grid-row: unset;
	grid-column: unset;
}
#lTrig:checked ~ .uni-list.port-list .uni-item H2 {
	font-size: 1em;
}
#lTrig:checked ~ .uni-list.port-list .uni-item P {
	display: block;
}
#lTrig:checked ~ .uni-list.port-list .uni-item .viz-wrap,
#lTrig:checked ~ .uni-list.port-list .uni-item .viz-wrap IMG,
#lTrig:checked ~ .uni-list.port-list .uni-item .viz-wrap VIDEO {
	display: none;
}
#lTrig:checked ~ .uni-list.port-list .uni-item FIGCAPTION {
	position: relative;
	transform: none;
}
#lTrig:checked ~ .uni-list.port-list .uni-item:before {
	content: unset;
}
.uni-item {
	--bord-rad: 1ex;
	--item-pad: 1em;
	--meti-dap: calc(var(--item-pad) / -1);
	position: relative;
	display: flex;
	border-radius: var(--bord-rad);
	border: 1px solid transparent;
	background-color: var(--color-back);
	overflow: hidden;
	z-index: 1;
	transform: translateZ(0);
	margin-bottom: calc(var(--list-gap) + 0.25em);
}
.uni-item:before {
	counter-increment: item;
	position: absolute;
	left: 1ex;
	top: 1ex;
	font-weight: 800;
	z-index: 10;
	text-shadow: 0 0 1px #000;
}
.uni-item H2 {
	font-size: 1em;
	line-height: 1.25;
	margin: 0;
	text-shadow: 0 0 0.5px var(--color-body);
	transition: color 0.2s linear;
}
.uni-item P {
	font-size: 0.75em;
	font-weight: 500;
	color: var(--color-font);
	margin-bottom: 0;
}
.uni-item .viz-wrap {
	position: relative;
	border-radius: var(--bord-rad);
	overflow: hidden;
	display: flex;
	flex: 1;
	aspect-ratio: 8 / 5;
}
.uni-item .viz-wrap > * {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.uni-item A {
	display: flex;
	flex-direction: column;
	width: 100%;
	color: var(--color-font);
	text-decoration: none;
}
.uni-item FIGCAPTION {
	padding: var(--item-pad);
	background-color: var(--color-back);
	transition: transform 0.3s ease-out 0.1s;
}
.uni-item FIGCAPTION .corner {
	--brd-rad-main: calc(var(--bord-rad) + 1px);
	bottom: 100%;
	color: var(--color-back);
}
.port-list .uni-item H2 {
	font-size: calc(0.75em + 1px);
	font-weight: 600;
}
.port-list .uni-item P {
	display: none;
	font-size: calc(0.75em + 1px);
}
.port-list .uni-item A {
	color: var(--color-acnt);
}
.port-list .uni-item:first-of-type {
	grid-row: span 2;
	grid-column: span 2;
}
.port-list .uni-item:nth-of-type(3),
.port-list .uni-item:nth-of-type(9) {
	grid-row: span 2;
}
.port-list .uni-item:nth-of-type(7),
.port-list .uni-item:nth-of-type(8),
.port-list .uni-item:nth-of-type(15) {
	grid-column: span 2;
}
.ajx-done .uni-item {
	transition: opacity 0.3s linear;
	opacity: 0;
}
.seq-load .uni-item {
	opacity: 0;
	animation: fadein 0.5s linear forwards;
	animation-delay: 0.8s;
}
.seq-load .uni-item:nth-of-type(1) {
	animation-delay: 0.2s;
}
.seq-load .uni-item:nth-of-type(2) {
	animation-delay: 0.3s;
}
.seq-load .uni-item:nth-of-type(3) {
	animation-delay: 0.4s;
}
.seq-load .uni-item:nth-of-type(4) {
	animation-delay: 0.5s;
}
.seq-load .uni-item:nth-of-type(5) {
	animation-delay: 0.6s;
}
.seq-load .uni-item:nth-of-type(6) {
	animation-delay: 0.7s;
}
@media (hover: hover) {
	.uni-item A:hover H2 {
		color: var(--color-acnt);
	}
	.port-list .uni-item FIGCAPTION {
		position: absolute;
		inset: auto 0 0 0;
		transform: translateY(103%);
	}
	.port-list .uni-item A:hover FIGCAPTION {
		transform: translateY(1px);
	}
	.port-list .uni-item.v-fig H2 {
		width: 1em;
		word-break: break-all;
		line-height: 1;
		text-align: center;
	}
	.port-list .uni-item.v-fig FIGCAPTION {
		inset: 0 0 0 auto;
		transform: translateX(101%);
	}
	.port-list .uni-item.v-fig A:hover FIGCAPTION {
		transform: translateX(1px);
	}
	#lTrig:checked ~ .port-list .uni-item A:hover H2 {
		color: var(--color-font);
	}
}
.search-page FORM {
	margin: 1em auto;
	width: 44em;
	max-width: 100%;
}
.search-body > P {
	width: 44em;
	max-width: 100%;
	margin: 1em auto;
}
.search-item B {
	color: #ffd700;
}
.modalko {
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	inset: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
	background-color: var(--color-body);
	overflow: hidden;
	z-index: 9999;
	transition: opacity 0.3s linear;
}
.modal-opened .modalko,
.modal-preopened .modalko {
	width: 100%;
	height: 100%;
	padding: var(--x-pad);
}
.modal-opened .modalko {
	opacity: 1;
}
.modal-preopened .modalko {
	padding-right: calc(var(--x-pad) - var(--opr));
}
.modal-opened:not(.modal-preopened) .modalko {
	overflow-y: auto;
	overflow-x: clip;
}
.modalko DIV[id^="comp_"] {
	width: 100%;
	height: 100%;
	flex: 1;
	display: flex;
}
.modalko .search-page {
	width: 100%;
	height: 100%;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.modalko .search-body {
	flex: 1;
	overflow: auto;
	margin-right: calc(var(--x-pad) / -1);
	padding-right: var(--x-pad);
}
.nax-modal {
	position: fixed;
	top: 2em;
	right: 2em;
	display: flex;
	height: 4rem;
	aspect-ratio: 1;
	color: var(--color-acnt);
	background-color: transparent;
	border: 0 none;
	margin: 0;
	padding: 0;
	cursor: pointer;
	z-index: 100;
}
.nax-modal:before {
	content: '';
	position: absolute;
	inset: 1rem;
	background-color: currentColor;
	transform: translateZ(0);
	-webkit-clip-path: url("#pixNax");
	clip-path: url("#pixNax");
}
.modal-preopened .nax-modal {
	opacity: 0.1;
}
.block-title {
	font-weight: normal;
	font-size: 2.25em;
	line-height: 1.1;
	margin: 0;
}
.accent-main {
	color: var(--color-acnt);
}
EM[class^="accent-"] {
	font-style: inherit;
}
.text-crop {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
}
.grid-column-span_2 {
	grid-column: span 2;
}
.bq {
	position: relative;
	margin: 0 0 3em;
	padding-left: 2em;
	font-size: 0.875em;
	font-style: italic;
	width: min(36em, 100%);
	text-wrap: balance;
}
.bq:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 1.25em;
	aspect-ratio: 1;
	background-color: var(--color-acnt);
	-webkit-clip-path: url("#pixQuo");
	clip-path: url("#pixQuo");
	transform: translateZ(0);
}
.bq A {
	text-decoration: none;
}
.bx_filter {
	max-width: var(--inner-aside-width);
	position: sticky;
	top: calc(var(--header-height) - var(--sticky-shift) + 1ex);
}
.bx_filter:before {
	content: '';
	position: absolute;
	left: -1px;
	top: -1ex;
	right: -1px;
	bottom: 0;
	background-color: var(--color-body);
	z-index: -1;
}
.bx_filter_title {
	display: none;
}
.bx_filter_parameters_box {
	margin-bottom: 1.5em;
}
.bx_filter_parameters_box_title {
	font-size: 1em;
	font-weight: 600;
	margin-bottom: 1em;
}
.bx_filter_block {
	height: auto !important;
}
.bx_filter_param_label {
	display: inline-flex;
	margin-bottom: 1ex;
	-webkit-user-select: none;
	user-select: none;
}
.bx_filter_param_label INPUT {
	position: absolute;
	width: 1px;
	height: 1px;
	-webkit-clip-path: inset(0 100% 100% 0);
	clip-path: inset(0 100% 100% 0);
	margin: 0;
	padding: 0;
	overflow: hidden;
}
.bx_filter_param_label INPUT:checked + .bx_filter_param_text {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.bx_filter_param_label.disabled {
	opacity: 0.5;
	pointer-events: none;
}
.bx_filter_param_text {
	display: inline-flex;
}
.bx_filter_button_box INPUT {
	display: none;
}
.bx_filter_popup_result {
	font-size: 1rem;
	opacity: 0.88;
}
.bx_filter SPAN[data-role^='count_'] {
	font-size: calc(1em - 1px);
	font-weight: normal;
	color: color-mix(in lab, var(--color-font) 88%, var(--color-body));
}
.ajx-prepare .bx_filter {
	pointer-events: none;
}
.list-page .content {
	position: relative;
}
.pro-paginator {
	padding: 1em 1.25em;
	border-radius: 1ex;
	background-color: var(--color-back);
}
.pro-paginator H4 {
	font-size: 1em;
	margin: 1em 0 1ex;
}
.pro-paginator P {
	margin: 0;
}
.pro-item {
	max-width: 33em;
}
.pro-item .text-crop {
	-webkit-line-clamp: 3;
}
.right-content {
	width: min(var(--big-width), 100%);
}
.text-width-wrapper {
	max-width: 77ch;
	font-weight: 500;
}
.left-aside {
	width: var(--inner-aside-width);
	order: -1;
}
.sticky-aside {
	position: sticky;
	top: calc(var(--header-height) - var(--sticky-shift) + 1em);
}
.polnav-inside:before {
	content: '';
	position: absolute;
	inset: -1em -1px 0;
	background: #eee;
	z-index: -1;
}
HTML:has(#tTrig:checked) .polnav-inside:before {
	background: var(--color-body);
}
.polnav-wrap {
	margin-right: 2em;
}
.policy-menu {
	font-size: 0.8125em;
	overflow: hidden;
}
.policy-menu LI {
	margin: 1ex 0;
}
.policy-menu LI:first-of-type {
	margin-top: 1em;
}
.policy-menu A {
	color: #333;
}
.policy-menu A:hover {
	color: #f50;
}
.corp-info-list {
	margin: 0;
	padding: 0;
}
.corp-info-list DT,
.corp-info-list DD {
	margin: 0;
	padding: 0;
	font-size: 0.875em;
}
.corp-info-list DT:first-of-type {
	display: none;
}
.corp-info-list DD {
	margin-bottom: 1em;
}
.corp-info-list IMG {
	display: block;
	margin: auto;
	width: 66%;
	height: auto;
	padding: 1em;
	margin-bottom: 1ex;
	border-radius: 1ex;
	background-color: #eee;
}
.back-link A {
	display: inline-flex;
	gap: 1ex;
	align-items: center;
	text-decoration: none;
}
.back-link A:before {
	content: '←';
}
.back-link SPAN {
	text-decoration: underline dotted 1px;
	text-underline-offset: 0.3ex;
	text-decoration-color: color-mix(in srgb, currentColor 75%, var(--color-body));
}
.project-detail {
	--color-proj: var(--color-back);
}
.project-detail-header {
	position: relative;
	margin-bottom: 1.75em;
	padding-top: 1ex;
	z-index: 1;
}
.project-detail-header H1 {
	font-size: clamp(1.25em, calc(var(--adjustFont) * 4.25), 3em);
	font-weight: 900;
	margin-bottom: 1ex;
}
.project-detail-header P {
	font-size: calc(1em - 1px);
	font-weight: 500;
	width: var(--big-width);
	max-width: 100%;
	text-wrap: balance;
}
.project-detail-mainviz {
	position: relative;
	background-color: var(--color-proj);
	padding: calc(var(--x-pad) * 1.5) var(--x-pad);
	border-radius: 1ex;
	margin-bottom: calc(var(--x-pad) * 2);
}
.project-detail-mainviz:after {
	position: absolute;
}
.project-detail-mainviz .img-holder {
	position: relative;
	overflow: visible;
	width: var(--big-width);
	max-width: 100%;
	border-radius: 1ex;
	box-shadow: 0 0.5ex 1.5em -0.5ex rgba(0,0,0,0.5);
	z-index: 1;
}
.project-detail-mainviz .img-holder > * {
	object-position: top;
	border-radius: 1ex;
}
.project-detail-mainviz .img-holder:after {
	z-index: -1;
}
.project-detail-body {
	position: relative;
	margin-bottom: var(--x-pad);
	z-index: 1;
}
.project-detail-body > SECTION {
	display: flex;
	align-items: start;
	margin-bottom: calc(var(--x-pad) * 2);
	padding-bottom: calc(var(--x-pad) * 2);
	border-bottom: 1px solid var(--color-back);
}
.project-detail-body > SECTION:last-of-type:not(.project-detail-mainviz) {
	margin-bottom: 0;
	padding-bottom: 0;
	border: 0 none;
}
.project-detail-body > SECTION > HEADER {
	width: var(--inner-aside-width);
	padding-left: var(--x-pad);
	position: sticky;
	top: calc(var(--header-height) - var(--sticky-shift) + 1em);
}
.project-detail-body > SECTION > HEADER H2 {
	font-size: 1.25em;
	font-weight: 600;
	text-wrap: balance;
}
.project-detail-body > SECTION > HEADER P {
	font-size: 0.875em;
	margin-left: 1em;
	text-wrap: balance;
}
.project-detail-body > SECTION > HEADER UL {
	list-style: circle;
	font-size: 0.875em;
	padding-left: 1em;
}
.project-detail-body > SECTION > HEADER LI {
	margin-bottom: 1ex;
}
.project-detail-body > SECTION > HEADER + DIV {
	width: var(--big-width);
	max-width: 100%;
	margin-left: auto;
}
.project-detail-body > SECTION > HEADER + DIV > P {
	width: 50em;
	max-width: 100%;
	text-wrap: balance;
}
.project-detail-body .mid-text-block {
	width: var(--big-width);
	margin: auto;
}
.project-detail-body .middle-word {
	font-size: clamp(1em, calc(var(--adjustFont) * 2), 1.25em);
	text-wrap: unset;
}
.cool-pix IMG,
.cool-pix VIDEO {
	border: 0.4rem solid var(--color-back);
	border-radius: calc(var(--adjustFont) * 1.25);
}
.rund-ecke,
.fancybox__image {
	--brd-rad-main: calc(var(--adjustFont) * 1.25);
	border-radius: var(--brd-rad-main, 1em);
}
.article-body P > IMG {
	margin-top: 1.75em;
	margin-bottom: 1.75em;
}
.article-body H2 {
	font-size: 1.25em;
	margin-top: 1.5em;
	margin-bottom: 1ex;
}
.article-body H3 {
	font-size: 1em;
	margin-top: 1.5em;
	margin-bottom: 1ex;
}
.article-body BLOCKQUOTE {
	display: flex;
	flex-direction: column;
	position: relative;
	padding: 1em 1em 1em 3em;
	margin: 1.25em 0;
	border: 1px solid #eee;
	box-shadow: 0 2px 2px rgba(0,0,0,0.1);
	border-radius: 1em;
	background-color: #fff;
}
.article-body BLOCKQUOTE P {
	margin: 0 0 1ex;
	font-size: 0.875em;
	font-weight: 600;
}
.article-body BLOCKQUOTE EM {
	text-align: right;
	font-size: 0.75em;
}
.article-body BLOCKQUOTE:before {
	content: '';
	position: absolute;
	left: 1em;
	top: 1em;
	width: 1.25em;
	aspect-ratio: 1;
	background-color: var(--color-acnt);
	-webkit-clip-path: url("#pixQuo");
	clip-path: url("#pixQuo");
	transform: translateZ(0);
}
.pomogalka {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	align-content: start;
	justify-content: space-between;
	gap: 1em;
	padding: 1em;
	margin: 1.25em 0;
	border: 1px solid #eee;
	box-shadow: 0 2px 2px rgba(0,0,0,0.1);
	border-radius: 1em;
	background-color: #fff;
}
.pomogalka P {
	margin: 0;
	font-size: 0.875em;
	font-weight: 700;
	text-wrap: balance;
	width: min(40ch, 100%);
}
.pomogalka SPAN {
	display: grid;
	grid-template: auto 1fr/auto 1fr;
	align-content: start;
	font-size: 0.875em;
	gap: 1ex 1em;
	font-weight: 600;
}
.pomogalka SPAN:before {
	content: '';
	width: 3em;
	aspect-ratio: 6 / 7;
	background-color: #666;
	grid-row: 1/3;
	grid-column: 1/2;
	transform: translateY(0.25ex);
	-webkit-clip-path: url("#pixDcm");
	clip-path: url("#pixDcm");
}
.pomogalka SPAN:after {
	content: attr(type);
	grid-row: 2/3;
	grid-column: 1/2;
	color: #fff;
	text-align: center;
	z-index: 1;
	font-weight: 900;
}
.pomogalka SPAN A {
	justify-self: start;
}
.i-pad {
	padding: calc(var(--adjustFont) * 2);
}
.type-comp-bar {
	padding-top: 1.5ex;
	border-top: 1px solid var(--color-acnt);
	margin-bottom: var(--x-pad);
}
.type-comp-comp {
	padding-top: 0.25ex;
}
.type-comp-comp IMG {
	width: 2.75ex;
	height: auto;
}
.type-comp-comp IMG[alt='ai'] {
	border: 1px solid var(--color-back);
}
.type-comp-comp IMG[alt='php'] {
	width: 3.75ex;
}
.type-comp-comp IMG[alt='3ds'] {
	width: auto;
	height: 3ex;
}
.type-comp-comp IMG[alt='figma'] {
	width: auto;
	height: 3.25ex;
}
.type-comp-comp IMG[src=''] {
	width: auto;
	height: auto;
	padding: 4px;
	font-size: 10px;
	font-weight: 500;
	background-color: var(--color-acnt);
	color: #111;
	border-radius: 3px;
	aspect-ratio: unset;
}
.person {
	position: relative;
	width: 16em;
	max-width: 100%;
	flex-shrink: 0;
}
.person FIGCAPTION {
	font-size: 0.875em;
	text-align: center;
	margin-top: 1em;
}
.person-pic {
	display: flex;
	position: relative;
	aspect-ratio: 5 / 6;
	border-radius: 0 0 100vw 100vw;
	overflow: hidden;
	transition: transform 0.3s ease-out;
	transform-origin: bottom;
	transform: scale(1) translateY(0) translateZ(0);
}
.person-pic:hover {
	transform: scale(1.1);
}
.person-pic:hover .person-dude {
	transform: scale(1.08) translateY(-5%) translateZ(0);
}
.person-pic:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	aspect-ratio: 1;
	border-radius: 50%;
	background-color: var(--color-back);
	background-image: radial-gradient(rgba(255,255,255,0.75), transparent);
}
.person-dude {
	position: absolute;
	bottom: -10%;
	left: 0;
	width: 100%;
	height: auto;
	transition: transform 0.3s ease-out;
}
.person-name {
	display: inline-block;
	white-space: nowrap;
}
.person-arutyun .person-dude {
	left: -7%;
}
.links-pocket {
	font-weight: normal;
}
.mob-dop-links {
	gap: 1em;
}
.mob-dop-links A {
	color: var(--color-deep);
}
/* tabs */
.grid-tabs {
	--y-shift: 3em;
	--t-trans: 0.5s;
	display: grid;
	gap: 1em 1ex;
	grid-template: repeat(2, auto) / repeat(var(--tabs-count, 1), auto) 1fr;
	justify-content: start;
	z-index: 1;
}
.preload .grid-tabs {
	--t-trans: 0s;
}
.grid-tabs > INPUT[type='radio'] {
	position: absolute;
	visibility: hidden;
}
.grid-tabs > INPUT[type='radio']:checked + .tabs-tab {
	z-index: 1;
}
.grid-tabs > INPUT[type='radio']:nth-of-type(1):checked ~ .tab-selector .tabs-label:nth-of-type(1) {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.grid-tabs > INPUT[type='radio']:nth-of-type(2):checked ~ .tab-selector .tabs-label:nth-of-type(2) {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.grid-tabs > INPUT[type='radio']:nth-of-type(3):checked ~ .tab-selector .tabs-label:nth-of-type(3) {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.grid-tabs > INPUT[type='radio']:nth-of-type(4):checked ~ .tab-selector .tabs-label:nth-of-type(4) {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.grid-tabs > INPUT[type='radio']:nth-of-type(5):checked ~ .tab-selector .tabs-label:nth-of-type(5) {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.grid-tabs > INPUT[type='radio']:nth-of-type(6):checked ~ .tab-selector .tabs-label:nth-of-type(6) {
	color: var(--color-font);
	border-color: var(--color-acnt);
	background-color: color-mix(in lab, var(--color-acnt) 88%, var(--color-body));
}
.grid-tabs .tabs-label {
	cursor: pointer;
	flex-shrink: 0;
}
.grid-tabs .tabs-tab {
	position: relative;
	grid-row-start: 2;
	grid-column: 1/-1;
	display: flex;
	gap: 0 var(--x-pad);
	align-content: flex-start;
	flex-wrap: wrap;
}
.grid-tabs .tab-content > * {
	font-size: calc(1em - 1px);
}
.grid-tabs .tab-selector {
	grid-row-start: 1;
	grid-column: 1/-1;
	display: flex;
	gap: 1ex;
	max-width: 100%;
	overflow: auto;
	padding: 1px 0 1ex;
}
.how-pracue .grid-tabs {
	margin: 2em 0;
	row-gap: 2em;
}
.how-pracue .grid-tabs .tab-header {
	flex: 1;
	max-width: calc(100% - var(--big-width) - var(--x-pad));
}
.how-pracue .grid-tabs .tab-content {
	width: var(--big-width);
	max-width: 100%;
}
.how-pracue .grid-tabs .tab-selector {
	width: var(--big-width);
	justify-self: end;
}
.how-pracue .grid-tabs H2 {
	font-size: clamp(1.125em, var(--x-pad), 2em);
	font-weight: 900;
	margin: 0;
	line-height: 1.1;
	max-width: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
@media (min-width: 821px) {
	.grid-tabs > INPUT[type='radio']:checked + .tabs-tab .tab-header {
		animation: move-up-in var(--t-trans) ease-out forwards;
	}
	.grid-tabs > INPUT[type='radio']:checked + .tabs-tab .tab-content {
		animation: move-down-in var(--t-trans) ease-out forwards;
	}
	.grid-tabs .tab-header,
	.grid-tabs .tab-content {
		opacity: 0;
	}
	.grid-tabs .tab-header {
		animation: move-up-out var(--t-trans) ease-out;
	}
	.grid-tabs .tab-content {
		animation: move-down-out var(--t-trans) ease-out;
	}
	.how-pracue .grid-tabs .tab-header {
		text-align: right;
	}
}
@media (max-width: 820px) {
	.grid-tabs .tabs-tab {
		opacity: 0;
		animation: move-down-out var(--t-trans) ease-out;
	}
	.grid-tabs > INPUT[type='radio']:checked + .tabs-tab {
		animation: move-down-in var(--t-trans) ease-out forwards;
	}
	.how-pracue .grid-tabs .tab-header {
		max-width: unset;
		margin-bottom: 1em;
	}
}
@media (max-width: 640px) {
	.how-pracue .grid-tabs {
		row-gap: 1em;
	}
	.grid-tabs .tab-selector {
		position: sticky;
		top: calc(var(--header-height) - var(--sticky-shift));
		background-color: var(--color-body);
		z-index: 10;
	}
}
@keyframes move-down-in {
	0% {
		opacity: 0;
		transform: translateY(calc(var(--y-shift, 2em) / -1));
	}
	75% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes move-down-out {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
		transform: translateY(var(--y-shift, 2em));
	}
}
@keyframes move-up-in {
	0% {
		opacity: 0;
		transform: translateY(var(--y-shift, 2em));
	}
	75% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes move-up-out {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
		transform: translateY(calc(var(--y-shift, 2em) / -1));
	}
}
.full-height-block {
	height: calc(var(--stoVH) - var(--header-height) - 5em);
}
.xutroxon {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template: 1fr auto/auto 1fr;
	border-bottom-left-radius: 0;
}
.xutroxon-viz {
	grid-row: 1/-1;
	grid-column: 1/-1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.xutroxon FIGCAPTION {
	grid-row-start: 2;
	grid-column-end: 2;
	background-color: var(--color-body);
	border-top-right-radius: var(--brd-rad-main, 1em);
	padding: 1em 1.25em 0 0;
	position: relative;
}
.xutroxon FIGCAPTION P {
	margin: 0;
	font-size: 1.5em;
	line-height: normal;
	font-weight: 600;
}
.xutroxon .corner:first-of-type {
	bottom: 100%;
}
.xutroxon .corner:last-of-type {
	left: 100%;
	bottom: 0;
}
.prul {
	margin: 1.25em 0;
	padding-left: 1.75em;
}
.prul LI {
	margin: 1ex 0;
	padding-left: 0.25ex;
}
.prul LI::marker {
	color: var(--color-acnt);
}
.resizable {
	position: relative;
	overflow: hidden;
	resize: horizontal;
	max-width: 100%;
	container: resizearea/inline-size;
	scrollbar-width: none;
	padding: 2em 1em;
	border: 1px solid var(--color-back);
}
.resizable:before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: var(--color-back);
	transition: opacity 0.5s linear;
}
.resizable:after {
	content: 'xxx';
	margin: auto;
	position: relative;
}
@container resizearea (max-width: 1000px) {
	*:before {
		opacity: 0.8;
	}
}
@container resizearea (max-width: 900px) {
	*:before {
		opacity: 0.6;
	}
}
@container resizearea (max-width: 800px) {
	*:before {
		opacity: 0.4;
	}
}
@container resizearea (max-width: 700px) {
	*:before {
		opacity: 0.2;
	}
}
@container resizearea (max-width: 600px) {
	*:before {
		opacity: 0;
	}
}
@media (min-width: 821px) {
	.only-mob {
		display: none;
	}
	.small-scroll {
		scrollbar-width: thin;
		scrollbar-color: var(--color-link) var(--color-back);
	}
	.small-scroll::-webkit-scrollbar {
		width: 8px;
		height: 8px;
	}
	.small-scroll::-webkit-scrollbar-track {
		background-color: var(--color-back);
		border-radius: 100vw;
	}
	.small-scroll::-webkit-scrollbar-thumb {
		background-color: var(--color-link);
		border-radius: 100vw;
	}
	.main-menu {
		min-width: var(--menu-width);
		justify-content: space-between;
	}
}
@media (max-width: 820px) {
	:root {
		--big-width: 100%;
		--inner-aside-width: 100%;
	}
	.only-dsk {
		display: none;
	}
	.small-scroll {
		-webkit-overflow-scrolling: touch;
	}
	.main-header:after,
	.main-header:before {
		position: absolute;
		z-index: -1;
	}
	.main-header:before {
		inset: 0;
		background-color: var(--color-body);
	}
	.main-header:after {
		width: calc(100% - var(--x-pad) * 2);
		left: var(--x-pad);
		bottom: 0;
		border-bottom: 1px solid var(--color-back);
		transition: border 0.3s linear;
	}
	.menu-opened .main-header:after {
		border-color: var(--color-acnt);
	}
	.main-header .corner {
		z-index: -1;
		display: none;
	}
	.main-menu {
		position: absolute;
		left: 0;
		top: 100%;
		width: 100%;
		overflow: hidden;
		background-color: var(--color-body);
		padding: 1em;
		border-radius: 0 0 1em 1em;
		z-index: -10;
		justify-content: center;
		transform: translateY(-110%);
	}
	.menu-preopened .main-menu {
		transition: transform 0.3s ease;
	}
	.menu-opened .main-menu {
		transform: translateY(0);
	}
	.main-menu + DIV {
		margin-left: auto;
	}
	.main-footer .corner {
		display: none;
	}
	.content {
		flex-wrap: wrap;
	}
	.bq {
		margin-bottom: 2em;
	}
	.polnav-inside {
		padding-bottom: 1em;
	}
	.polnav-inside LABEL {
		transform: translateY(-50%);
	}
	.polnav-inside LABEL:after {
		content: ' ↓';
	}
	.polnav-inside LABEL B {
		text-decoration: underline dotted 1px;
		text-underline-offset: 0.5ex;
	}
	.polnav-inside INPUT[name="navy"]:checked + LABEL:after {
		content: ' ↑';
	}
	.polnav-inside + SECTION TABLE,
	.polnav-inside + SECTION TBODY,
	.polnav-inside + SECTION TR,
	.polnav-inside + SECTION TD {
		display: block;
	}
	.polnav-wrap {
		margin-right: 0;
		display: grid;
		grid-template-rows: 0fr;
		transition: grid-template-rows 0.3s ease;
	}
	INPUT[name="navy"]:checked ~ .polnav-wrap {
		grid-template-rows: 1fr;
	}
	.policy-menu LI {
		margin: 1em 0;
	}
	.bx_filter {
		width: 100%;
		background-color: var(--color-body);
		z-index: 10;
	}
	.bx_filter_parameters_box {
		margin-bottom: 1.5ex;
	}
	.bx_filter_popup_result {
		font-size: 0.75em;
		padding-bottom: 1.5em;
	}
	.bx_filter_section {
		display: grid;
		grid-template-rows: 0fr;
		transition: grid-template-rows 0.3s ease;
	}
	#sTrig:checked ~ .bx_filter_section {
		grid-template-rows: 1fr;
	}
	.bx_filter .smartfilter {
		overflow: hidden;
	}
	.forma {
		margin-left: 0;
	}
	.corp-info-list {
		display: grid;
		grid-template-columns: 1fr 3fr;
		grid-template-rows: repeat(6, auto);
		align-items: start;
		align-content: start;
		margin-bottom: 1em;
	}
	.corp-info-list DT,
	.corp-info-list DD {
		grid-column: 2;
	}
	.corp-info-list DD:first-of-type {
		grid-column: 1;
		grid-row: 1/-1;
	}
	.corp-info-list IMG {
		margin: 0;
		width: calc(100% - 2em);
	}
	.project-detail-mainviz {
		padding: var(--x-pad);
	}
	.project-detail-body > SECTION {
		flex-wrap: wrap;
	}
	.project-detail-body > SECTION > HEADER {
		position: static;
		width: 100%;
		padding-left: 0;
		margin-bottom: 1em;
	}
	.project-detail-body > SECTION > HEADER + DIV > P {
		margin-left: auto;
	}
	.xutroxon {
		aspect-ratio: 2;
	}
	.list-trigger-holder {
		position: sticky;
		top: 7.5em;
	}
	.text-page {
		border-radius: 0;
	}
}
@media (min-width: 641px) {
	.links-pocket {
		display: none;
	}
}
@media (max-width: 640px) {
	:root {
		--header-height: 4em;
		--sticky-shift: 1em;
		--control-height: 5rem;
		--button-height: 3.2rem;
		--button-text: calc(1rem + 1px);
	}
	HTML.menu-opened:not(.menu-preopened) {
		overflow: clip;
		padding-right: var(--opr);
	}
	BODY {
		font-size: 2rem;
	}
	.menu-opened:not(.menu-preopened) BODY {
		overflow: clip;
	}
	MAIN {
		padding-bottom: 2.25em;
	}
	.corp-info-list {
		grid-template-columns: 1fr;
		background-color: var(--color-back);
		border-radius: 1ex;
		padding: 1.25em 2em 1ex;
		width: 100%;
	}
	.corp-info-list DT,
	.corp-info-list DD {
		grid-column: 1;
	}
	.corp-info-list DD:first-of-type {
		display: none;
	}
	.bq {
		margin-bottom: 1.5em;
	}
	.logotype {
		position: absolute;
		inset: auto 0;
		margin: auto;
		width: 8em;
		transform-origin: center;
	}
	.main-menu {
		height: calc(100svh);
		flex-direction: column;
		align-items: center;
		align-content: center;
		gap: 1em 0;
		padding-bottom: var(--header-height);
	}
	.menu-preopened .main-menu {
		transition-duration: 0.6s;
	}
	.main-menu + DIV {
		margin: 0;
		flex: 1;
		justify-content: space-between;
	}
	.main-footer {
		padding: 0;
	}
	.main-footer .text-bar {
		padding: 4px 1rem 5px;
		background-color: transparent;
	}
	.main-footer .text-bar P:last-of-type {
		flex: 1;
	}
	.migrate-to-menu {
		display: none;
	}
	.mob-menu {
		position: absolute;
		bottom: 0;
		opacity: 0;
		transform: translateY(0);
		z-index: -2;
		transition: opacity 0.3s linear, transform 0.3s ease;
	}
	.mob-menu-left {
		left: var(--x-pad);
	}
	.mob-menu-right {
		right: var(--x-pad);
	}
	.menu-opened .mob-menu {
		opacity: 1;
		transform: translateY(2.5em);
	}
	.small-text {
		font-size: 1.25rem;
	}
	.smidl-text {
		font-size: 1.5rem;
	}
	.midle-text {
		font-size: 1.75rem;
	}
	.port-list .uni-item {
		grid-column: unset !important;
		grid-row: unset !important;
	}
	.port-list .uni-item:first-of-type .viz-wrap {
		aspect-ratio: 4 / 3;
	}
	.list-trigger-holder {
		top: 6.25em;
	}
	.nax-modal {
		top: 1ex;
		right: 1ex;
	}
	.modalko .search-page {
		padding-top: 1em;
	}
	.s-wrap {
		max-width: none;
	}
	.i-wrap {
		min-width: 100%;
	}
	.project-detail-mainviz {
		margin-top: 1.5em;
		background-color: transparent !important;
		padding: 0;
	}
	.project-detail-body > SECTION > HEADER {
		margin-bottom: 1.5em;
	}
	.project-detail-body > SECTION > HEADER P {
		margin-left: 0;
	}
	.xutroxon {
		aspect-ratio: 0.75;
		border-radius: var(--brd-rad-main, 1em);
		grid-template: 1fr auto 1em/1em 1fr 1em;
	}
	.xutroxon FIGCAPTION {
		grid-row-start: 2;
		grid-row-end: 3;
		grid-column-start: 2;
		grid-column-end: 3;
		background-color: var(--color-body);
		border-radius: var(--brd-rad-main, 1em);
		padding: 1ex;
	}
	.xutroxon FIGCAPTION P {
		font-size: 1em;
	}
	.xutroxon .corner {
		display: none;
	}
}
@media (max-width: 640px) and (orientation: portrait) {
	.main-menu {
		padding-bottom: calc(var(--header-height) * 2);
	}
}
@keyframes rotation {
	to {
		transform: translateZ(0) rotate(1turn);
	}
}
