@font-face {
	font-family: 'Montserrat';
	src: url("../fonts/Montserrat-Regular.eot");
	src: url("../fonts/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Regular.woff2") format("woff2"), url("../fonts/Montserrat-Regular.woff") format("woff"), url("../fonts/Montserrat-Regular.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url("../fonts/Montserrat-Medium.eot");
	src: url("../fonts/Montserrat-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Medium.woff2") format("woff2"), url("../fonts/Montserrat-Medium.woff") format("woff"), url("../fonts/Montserrat-Medium.ttf") format("truetype");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url("../fonts/Montserrat-SemiBold.eot");
	src: url("../fonts/Montserrat-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/Montserrat-SemiBold.woff") format("woff"), url("../fonts/Montserrat-SemiBold.ttf") format("truetype");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url("../fonts/Montserrat-Bold.eot");
	src: url("../fonts/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Bold.woff2") format("woff2"), url("../fonts/Montserrat-Bold.woff") format("woff"), url("../fonts/Montserrat-Bold.ttf") format("truetype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url("../fonts/Montserrat-ExtraBold.eot");
	src: url("../fonts/Montserrat-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-ExtraBold.woff2") format("woff2"), url("../fonts/Montserrat-ExtraBold.woff") format("woff"), url("../fonts/Montserrat-ExtraBold.ttf") format("truetype");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

		

:root {
	--blue: #004D94;
	--white: #FFFFFF;
	--dark: #212121;
	--gray: #797979;
	--black: #000000;

	--primary-rgb: var(--blue);
	--light-rgb: var(--white);
	--dark-rgb: var(--dark);

		/* светлая тема */
	--body-color-rgb: var(--dark);
	--body-bg-rgb: var(--white);
	--body-color: var(--dark);
    --body-bg: var(--white);
	--cassiopeia-color-primary: var(--blue);

	/* ссылки */
	--cassiopeia-color-link: var(--blue);
	--cassiopeia-color-hover: var(--dark);

	--body-font-weight: 500;
	--body-line-height: 1.4;
	--body-font-family: "Montserrat","Roboto",sans-serif;
	--font-index: calc(1vw + 1vh);
	--border-radius: 3px;

	/* Размер шрифта основного текста */
	--body-font-size: clamp(16px, var(--font-index), 20px);

	/* Второстепенные подписи, примечания */
	--mini-font-size: max(calc( var(--font-index) * 1.1 ), 14px);
	--mini-line-height: 1.2;

	/* переменные для шапки */
	--header-height: 60px;
	--bg-header: var(--white);
	--color-header: var(--dark);
	--logo-header: var(--blue);
	--buttom-burger-menu: 25px;


	/* z-index list */
	--z-index-button-span: -1;
	--z-index-bg: 0;
	--z-index-text: 1;
	--z-index-up: 2;
	--z-index-header: 3;
	--z-index-show: 4;
	--z-index-up-show: 5;
	--z-index-ultra: 6;

	/* Параметры сетки */
	--colonca: minmax(0,50%);
	--template-full: [full-start] 0px [main-start] 1fr 1fr [main-end] 0px [full-end];
	--gutter-cof: 5px;
	--grid-gap: calc(var(--gutter-cof)*3);
	
	/* для дескрипта: */
	/* --colonca: minmax(0,8.3%);
	--template-full: [full-start] 50px [main-start] repeat(12,var(--colonca)) [main-end] 50px [full-end]; */
}

.site-grid {
	grid-gap: 0 var(--grid-gap);
  grid-template-columns: var(--template-full);
	grid-template-areas:
        ". banner banner ."
        ". top-a top-a ."
        ". top-b top-b ."
        ". comp comp ."
        ". side-r side-r ."
        ". side-l side-l ."
        ". bot-a bot-a ."
        "bot-b bot-b bot-b bot-b";

	position: relative;
	z-index: var(--z-index-text);
	overflow: hidden;
}

html {
	font-family: var(--font-family);
	font-style: normal;
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
}

main {
	padding-bottom: calc( var(--gutter-cof) * 14);
}

main>div{
	position: relative;
}

a, a:not([class]) {
	text-decoration: none;
}

item-page a:not([class]), .latestnews-main a, .custom-link {
	font-weight: 300;
	color: var(--blue);
	text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}


.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-family);
	font-weight: 600;
	line-height: 120%;
	margin-bottom: 0;
	margin-top: 0;
}

h1, .h1 {
	font-size: min(2.5em,34px);
	font-weight: 800;
	position: relative;
}

h2, .h2 {
	font-size: min(1.8em,28px);
	font-weight: 600;
}

h3, .h3 {
	margin-top: calc(var(--gutter-cof) * 2) ;
	display: block;
} 

p {
	margin-bottom: 0rem;
	margin-top: calc(var(--body-font-size) * 1.4) ;
}

.com-content-article ol, .com-content-article ul {
	margin-bottom: 0;
	margin-top: calc(var(--body-font-size) * 1.4) ;
}

picture>*{
	width: 100%;
}

.button {
	display: inline-block;
	color: var(--body-color);
	font-size: var(--mini-font-size);
	border: 1px solid var(--body-color);
	border-radius: var(--border-radius);
	text-transform: uppercase;
	letter-spacing: 1.65px;
	text-align: center;
	padding: calc(var(--gutter-cof)*3) calc(var(--gutter-cof)*7);
	position: relative;
	overflow: hidden;
	transition: 0.5s;
	background-color: var(--body-bg);
}

.button span {
	display: none;
}

.button-project {
	display: inline-block;
	color: var(--body-color);
	font-size: var(--mini-font-size);
	border: 1px solid var(--body-color);
	border-radius: var(--border-radius);
	letter-spacing: 1.65px;
	text-align: center;
	padding: calc(var(--gutter-cof)*3) calc(var(--gutter-cof)*7);
	position: relative;
	overflow: hidden;
	transition: 0.5s;
	background-color: rgba(var(--body-bg-rgb), 0.8);
}


.button-project:before{
	content: "";
	z-index: -1;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: -100%;
	background-color: #fcfdfd;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}


.button-project:hover{
	color: var(--white);
}

.button-project:hover:before{
	left: 0;

}


.button-search {
	color: white;
	padding: calc(var(--gutter-cof)*3);
	background-color: var(--blue);
	display: flex;
	align-items: center;
	justify-content: center;

	border: 0;
	border-bottom: solid black 1px;

	width: 15%;
}

.button-search svg {
	height: var(--mini-font-size);
}


.com-finder__search .input-group {
	width: 100%;
	flex-wrap: nowrap;
}

.awesomplete {
	width: 100%;
}

.com-finder__search .awesomplete .form-control {
	min-width: 100%;
}
label {
	position: relative;
	width: 100%;
	pointer-events: none;
}
.form-control-feedback {
	position: absolute;
    top: calc(var(--body-font-size)*2);
}

fieldset {
	position: relative;
}

form input[type="text"], form input[type="password"] , form input[type="email"]{
	border: none;
  border-bottom: 1px solid #000;
  width: 100%;
	border-radius: 0;
	background-color: rgba(0,0,0,0);
	padding: calc(var(--gutter-cof) * 3);
}

:focus-visible {
    outline: 0px;
}

input.form-control.snake {
	border-bottom: 1px solid rgb(0, 77, 148);
}

.password-group .input-group {
	display: flex;
	align-items: center;
}

.input-group .input-password-toggle {
    position: absolute;
    right: 0;
	border: 0;
}

.helper {
	margin-top: calc(var(--gutter-cof) * 1);
}

.helper div{
	background: rgb(0 77 148 / 10%);
	color:rgb(0 0 0 / 50%);

	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;

	transition: .3s;
}

.helper.active div{
	background: rgb(0 77 148 / 90%);
	color:white;
}

select, textarea{
	width: 100%;
    padding: calc(var(--gutter-cof) * 3);
    border: none;
    border-bottom: 1px solid #000;
    background-color: rgba(0,0,0,0);
}

textarea {
	max-width:100%;
	min-width: 100%;
}

.sf2-checkbox-label {
	pointer-events: all;
}

form .sf2-element-captcha-image, .sf2-element-captcha-image img {
	width: 200px!important;
    height: 80px;
}

.sf2-element-captcha-input input.sf2-element {max-width: 150px!important;}

.row-contact {
	margin-top: calc(var(--gutter-cof) * 6);
}

.view-article:not(.main-page) .com-content-article__body .helper  p {
	margin-top: 0;
}

.com-users-login__options a{
	padding: 0;
	border: 0;
	background: transparent;
}

.jform_password1 .small{
	display: none;
}

.form-control-danger {
	color:rgb(0 77 148 / 25%)
}

.svgFormSnake {
	position: absolute;
	top: 0;
	z-index: var(--z-index-bg);
	pointer-events: none;
}

.svgFormSnake line, .svgFormSnake path {
	stroke: #000;
	transition: .3s;
	stroke-width: 1px;
}

.offcanvas-backdrop {
	z-index: var(--z-index-show);
}

.offcanvas{
	z-index: var(--z-index-up-show);
}

.container-bottom-b {
	/* ревёрс темы на странице - из белой темы в голубую */
	--body-color-rgb: var(--white);
	--body-bg-rgb: var(--blue);
	--body-color: var(--white);
  --body-bg: var(--blue);
	--cassiopeia-color-primary: var(--white);
	
	--cassiopeia-color-link: var(--white);
	--cassiopeia-color-hover: var(--white);

	background-color: var(--body-bg);
	color: var(--body-color);
	padding: 0 var(--grid-gap);
	padding-bottom: calc(var(--gutter-cof)*16);

	overflow: hidden;
}

.blue-page {
	/* голубая тема */
	--body-color-rgb: var(--white);
	--body-bg-rgb: var(--blue);
	--body-color: var(--white);
  --body-bg: var(--blue);
	--cassiopeia-color-primary: var(--white);
	
	--cassiopeia-color-link: var(--white);
	--cassiopeia-color-hover: var(--white);

	--bg-header: transition;
	--color-header: var(--white);
	--logo-header: var(--white);
}

.blue-page .container-bottom-b {
	/* ревёрс темы на странице - из голубой темы в белую */
	--body-color-rgb: var(--dark);
	--body-bg-rgb: var(--white);
	--body-color: var(--dark);
  --body-bg: var(--white);
	--cassiopeia-color-primary: var(--blue);

	--cassiopeia-color-link: var(--blue);
	--cassiopeia-color-hover: var(--dark);
}

.item-page {
	z-index: var(--z-index-text);
	position: relative;
}

.blue-bg, .white-bg {
	position: absolute;
	right: 0;
	z-index: var(--z-index-bg);
	width: 95%;
	pointer-events: none;
}
.blue-bg>*{
	width: 100%;
}

.header {
	background: var(--bg-header);
	box-shadow: 0px 0px 0px 0px  var(--bg-header);
	color: var(--color-header);
	position: fixed!important;

	height: var(--header-height);
	width: 100%;
	padding: var(--gutter-cof) 0;

	z-index: var(--z-index-header);

	transition: .3s all;
}

.error_site .header {
	--bg-header: var(--blue);
}
.error_site  footer {
	margin-top: calc(var(--gutter-cof)*10);
}

.header .menu, .header .logo, .header .navbar {
	height: calc(var(--header-height) - 2*var(--gutter-cof));
}

.header .a-logo svg {
  width: 100%;
	height: 100%;
	max-height: calc(var(--header-height) - 2*var(--gutter-cof));

	z-index: var(--z-index-ultra);
	position: relative;
}

.header .a-logo svg>*{
	fill: var(--logo-header);
}

.header .a-logo svg>*:first-child{
	fill: var(--color-header);
}

.blue-page .header.header-sticky {
	--bg-header: var(--blue);
	background: var(--bg-header);
	box-shadow: 0px 5px 4px 3px  var(--bg-header);
}

.header-revers-active .header{
	--color-header: var(--white);
	--bg-header: var(--blue);
}

.header-revers-active .button-offcanvas span, .header-revers-active .header .a-logo svg>* {
	--logo-header: var(--blue);
	--color-header: var(--dark);
}

.blue-page.header-revers-active .header {
	--bg-header: var(--white);
	--color-header: var(--dark);
}

.page-hrevers.header-revers-active .header,  .page-hrevers.header-revers-active  .button-offcanvas span, .page-hrevers.header-revers-active  .header .a-logo svg>*{
	--logo-header: var(--white);
	--bg-header: var(--blue);
	--color-header: var(--white);
}

.blue-page.page-hrevers.header-revers-active .header, .blue-page.page-hrevers.header-revers-active .container-header .mod-menu>li,  .blue-page.page-hrevers.header-revers-active  .button-offcanvas span, .blue-page.page-hrevers.header-revers-active  .header .a-logo svg>*{
	--logo-header: var(--blue);
	--color-header: var(--dark);
	--bg-header: var(--white);
	color: var(--color-header);
}

.container-header .navbar-toggler, .header a, .container-header .mod-menu {
	color: var(--color-header);
}

.container-header nav {
	margin-top: 0;
}

.navbar {
	padding: 0;
}

.container-header nav {
	width: 100%;
	padding-right: max(var(--body-font-size),var(--buttom-burger-menu));
}

.navbar-menu {
	margin: 0 auto;
}

.blue-page.header-revers-active {
	--bg-header: var(--white);
	--color-header: var(--dark);
	--logo-header: var(--blue);
}

.button_search>*{
	stroke: var(--color-header);
}

.offcanvas .button_search {
	display: none;
}

.fnew-menu {
	padding: 0;
	margin: 0 auto;
	list-style: none;
}

.button-offcanvas {
	border: none;
	box-shadow: none;
	background-color: transparent;

	min-height: max(var(--body-font-size),var(--buttom-burger-menu));
	width: max(var(--body-font-size),var(--buttom-burger-menu));

	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: space-between;

	position: fixed;
	right: calc(1em*.5);
	top: calc(var(--header-height)/2 - var(--buttom-burger-menu)/2);
	z-index: var(--z-index-ultra);

	padding: calc(var(--gutter-cof)/2) 0;
}

.button-offcanvas span {
	height: .1rem;
	width: 100%;

	background-color: var(--color-header);

	transition: .3s;
}

.button-offcanvas.button-offcanvas-open span{
	background-color: var(--dark);
	position: absolute;
	top: 3px;
	left: calc(max(var(--body-font-size),var(--buttom-burger-menu))/3);

	transform: rotate(45deg) translateY(calc(max(var(--body-font-size),var(--buttom-burger-menu))/2));
}

.button-offcanvas.button-offcanvas-open span:last-child{
	transform: translateX(calc(max(var(--body-font-size),var(--buttom-burger-menu))/-2)) rotate(-45deg);
	transform-origin: right;
}

.offcanvas-end {
	width:  100%;
	border-left: none;
	padding: 0;

}

.offcanvas.show, .offcanvas.showing {
	visibility: visible;
	transition: .3s;
}

.offcanvas-body {
	padding: 0;
}

.offcanvas-body .fnew-menu {
	padding-top: calc(var(--gutter-cof)*24);
}

.offcanvas-body .fnew-menu-item {
	text-align: center;
	margin-bottom: calc(var(--gutter-cof) * 8);
}

.offcanvas-body .fnew-menu-item a {
	color: var(--dark);
	text-decoration: none;
	font-weight: 500;
	line-height: 140%;
}

.offcanvas-body .offcanvas-item-left {
	position: absolute;
	top: 1em;
  left: 1em;
}

.modal-dialog {
	margin: 0;
	padding: var(--grid-gap);
	
	background: var(--white);
	height: 100%;
	max-width: 100%;
}

.modal .btn-close {
	position: fixed;
  right: calc(1em*.5);
  top: calc(var(--header-height)/2 - max(var(--body-font-size),var(--buttom-burger-menu))/2);
	
	min-height: max(var(--body-font-size),var(--buttom-burger-menu));
	width: max(var(--body-font-size),var(--buttom-burger-menu));
	padding: 0;
}

.modal-search-content {
	padding-top: max(var(--body-font-size),var(--buttom-burger-menu));
}

.container-component>:first-child {
	margin-top: calc(var(--header-height) + var(--gutter-cof) * 4);
}

.modal-search-body {
	margin-top: calc(var(--gutter-cof)*16);
}

.modal-search-body input {
	text-align: center;
}

.modal-search-body .button{
	background-color: var(--white);
	color: var(--dark);
	border: 1px solid var(--dark);

	margin: calc(var(--gutter-cof)*14) auto auto;
	display: block;
}

.modal-search-body .button.search__btn-disabled {
	opacity: .5;
}

.modal-content {
	background-clip: padding-box;
	background-color: transparent;
	border: none;
	border-radius: 0;
	display: flex;
	flex-direction: column;
	outline: 0;
	pointer-events: auto;
	position: relative;
	width: 100%;
}

.form-control {
	font-size: var(--body-font-size);
}

.result__title-url {
	font-size: var(--mini-font-size);
}

.result__title-text {
	font-size: var(--body-font-size);
}

.container-bottom-b>* {
	margin: 0;
	background: transparent;
	border-radius: 0;
}

.container-bottom-b .row {
	z-index: var(--z-index-text);
	position: relative;
}

/* Кнопка вверх */
.back-to-top-link {
	position: fixed;
	background-color: transparent;
	border: none;
	z-index: var(--z-index-up);
	color: var(--white);
}

.back-to-top-link:focus, .back-to-top-link:hover {
	background-color: transparent;
	border-color: transparent;
	color: inherit;
}

.back-to-top-link.revers {
	color: var(--dark);
}

/* Стили для анимации первого окна */
.info-container, .page-header, .view-category h1, .pade-header-a, .view-article.layout-blog .article-info {
	position: relative;
  top: -100px;
	opacity: 0;
}

.info-content-container, .flabPortfolio,
.view-article:not(.main-page) .com-content-article__body,
.com-content-category-blog__items, .view-article .item-image img{
	opacity: 0;
	position: relative;
	bottom: -100px;
}

/* Стили для главной */
.flab-first {
	min-height: calc(90vh - var(--header-height) - var(--gutter-cof));
}

.main-page .logo>div{
	overflow: hidden;
}

.main-page .a-logo{
	position: relative;
	left: -100%;
  transition: .5s;
}

.main-page .header-sticky .a-logo {
	left: 0px;
}

.info-container .logo {
	background-image: url(../images/logo.svg);
	height: calc(var(--body-font-size)*3);
	background-size: contain;
	width: auto;
	background-repeat: no-repeat;
	margin-top: calc(var(--gutter-cof) * 6);
}

.info-container .logo-text {
	margin-top: calc(var(--gutter-cof) * 2);
}

.info-content-container {
	margin-top: calc(var(--gutter-cof) * 7);
}


/* Сервис */

.services-main {
	margin-top: calc(var(--gutter-cof) * 11);
	display: block;
}

.flab-anim-upBottom {
	opacity: 0;
	position: relative;
	bottom: -10px;
}

.services__image_intro {
	--services__image_intro: 150px;
	height: var(--services__image_intro);
	width: var(--services__image_intro);
	fill: none;
	transition: .5s;
}

.services__image_intro svg path{
	stroke: var(--white);
	stroke-width: 8px;
}

.services_col {
	margin-top: calc(var(--gutter-cof) * 11);
}

.services-page .services_col {
	margin-top: calc(var(--gutter-cof) * 0);
	margin-bottom: calc(var(--gutter-cof) * 11);
	display: flex;

}

.services_extensions {
	z-index: 1;
}

.services_extensions .services_col {
	margin-top: calc(var(--gutter-cof) * 0);
	margin-bottom: calc(var(--gutter-cof) * 11);
}

.services_extensions .services_col .services_card{
	display: flex;
	align-items: center;
    border-radius: 5px;
    background: white;
	padding: calc(var(--gutter-cof) * 4);
}


.services_extensions .services_col .services__title {
	margin-top: 0;
	color: var(--blue);
	font-size: .9em;
	padding-left: calc(var(--gutter-cof) * 4);
	text-align: center;
}

.services__image_intro {
	margin: 0 auto;
}

.services-page .services__image_intro {
	margin: 10px 20px 0px 5px;
	min-width: 70px;
}

.services-page .services__image_intro img {
	min-width: 70px;
}

.services-page .services__image_intro svg path{
	stroke: var(--blue);
}

.services_col svg path {
	transition: 1500ms;
	transition-delay: .5s;
}

.services_col.visible_user svg path{
stroke-dashoffset: 0!important;
}

.services_extensions .services_col .services__image_intro {
	min-width: 120px;
}

@keyframes dash {
to {
	stroke-dashoffset: 0;
}
}

@-webkit-keyframes dash{
	to {
			stroke-dashoffset: 0;
		}
}


/* Таймлайн */
.section__projects-header {
	margin-top: calc( var(--gutter-cof) * 16);
	transition: .3s opacity;
}

.timelineFlab.scroll-active .section__projects-header {
	position: fixed;
	transform: translateZ(0);-webkit-transform: translateZ(0);
	margin: 0;
}

.section__projects-gutter {
	display: none;
}

.timelineFlab.scroll-active .section__projects-gutter {
	display: block;
}

.section__projects-list {
	margin-top: calc( var(--gutter-cof) * 2);
		display: flex;
		flex-wrap: nowrap;
}

.section__projects-bg-text {
	display: none;
}

.section__projects-info-container {
	text-align: center;
}

.section__projects-tag {
	margin-top: calc(var(--gutter-cof) * 5);
	font-size: var(--mini-font-size);
	line-height: var(--mini-line-height);
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.section__projects-title {
	margin-top: calc(var(--gutter-cof) * 1);
	font-weight: 400;
	font-size: 1.5em;
	color: var(--dark);
	line-height: 110%;
}

.section__projects-title span {
	border-bottom: 1px solid #212121;
}

.section__projects-bg-wrapper {
	display: block;
	border-radius: 50%;
	overflow: hidden;
	
}

.section__projects-item:last-child{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
  left: 45px;
}

.section__projects-footer-text {
	margin-top: calc(var(--gutter-cof) * 6);
	text-align: center;
	font-style: italic;
	font-weight: 400;
	font-size: var(--mini-font-size);
	line-height: var(--mini-line-height);
}


/* Последние материалы на главной */
.latestnews-main {
	margin-top: calc(var(--gutter-cof)*13);
}
.last-blog-hr {
	background-color: black;
	opacity: 1;
	margin: 0;
}
.last-blog__title {
	margin-top: calc(var(--gutter-cof)*12);
	font-weight: 700;
}
.latestnews-main .col{
	flex: 1 0 100%;
	margin-top: calc(var(--gutter-cof)*6);
	opacity: 0;
}
.latestnews-main .col:first-child{
	margin-top: calc(var(--gutter-cof)*7);
}
.latestnews-main .col:last-child{
	margin-bottom: calc(var(--gutter-cof)*12);
}

/* Баннеры партнёров на главной */
.partners__title {
	padding: 0 var(--gutter-cof);
	margin-top: calc(var(--gutter-cof)*16);
}

.partners .partners__link {
	margin-top: calc(var(--gutter-cof)*2);
	display: block;
	opacity: 0;
}
.partners .partners__link:first-child {
	margin-top: calc(var(--gutter-cof)*3);
}


.footer {
	--body-font-weight: 400;
	--cassiopeia-color-primary: var(--blue);

	background-image: none;
	margin-top: 0;
	padding: calc(var(--gutter-cof)*16) var(--grid-gap) calc(var(--gutter-cof)*20);

	text-align: center;

	overflow: hidden;
  position: relative;
}

.footer .text-footer-banner {
	padding: calc(var(--gutter-cof)*5) 0;
	display: block;
	font-weight: 700;
}

.footer .blue-bg {
	transform: rotate(90deg);
	height: 100%;
	bottom: calc(var(--gutter-cof)*-20);
}

.footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer *:not(span) {
	--body-font-weight: 400;
	--body-line-height: 110%;
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
}

.sp-contact-email {
	margin-top: calc(var(--gutter-cof)*5);
}

.bottom-menu {
	margin-top: calc(var(--gutter-cof)*5);
	text-align: left;
}

.bottom-menu li {
	padding: var(--gutter-cof) 0;
}

.footer  .social-icons {
	margin-top: calc(var(--gutter-cof)*7);

	display: flex;
	align-items: center;
	justify-content: center;
}

.social-icons li:not(:first-child) {
	margin-left: calc(var(--gutter-cof)*6);
}

.copyright {
	margin-top: calc(var(--gutter-cof)*8);
}

.copyright>div>div {
	font-size: calc(var(--mini-font-size)*.9);
}

.copyright>div>div:not(:first-child){
	margin-top: calc(var(--gutter-cof)*4);
}

/* стили для списка блога */
.com-content-category-blog__item {
	margin-top: calc(var(--gutter-cof)*8);
}

.published {
	color: var(--black);
	line-height: 130%;
	font-size: var(--mini-font-size);
	font-weight: 400;
}

.page-header-blog {
	color: var(--dark);
	font-weight: 700;
	line-height: 140%;
	text-decoration: underline;
}

.com-content-category-blog__item p{
	font-weight: 400;
	line-height: 130%;
	margin-top: calc(var(--gutter-cof) * 3);
}

.item-content .item-image {
	margin-bottom:calc(var(--gutter-cof) * 3);margin-top: 0;
}

.layout-blog .item-image {
	margin: 0;
    width: 100%;
    max-width: 100%;
}

.layout-blog .item-image img{
    width: 100%;
}

.item-content .item-image.square img{
	max-width: 100%;
	height: 100%;
	left: 0;
}

.pagination {
	margin: 0;
	margin-top: calc(var(--gutter-cof) * 6);
	justify-content: center;
}

.com-content-category-blog__counter {
	text-align: center;
	margin-top: calc(var(--gutter-cof) * 3);
}

.tags {
	margin-top: calc(var(--gutter-cof) * 4);
}

.tags .tag-list {
	padding: var(--gutter-cof);
  border: 1px var(--blue) solid;
  border-radius: 5px;
  margin-left: calc(var(--gutter-cof) * 5);
	margin-top: calc(var(--gutter-cof) * 2);
  display: inline-flex;
  align-items: center;
	font-size: var(--mini-font-size);
	line-height: var(--mini-line-height);
}

.tags .tag-list::before{
	content: '';
	position: relative;
	left: calc(var(--gutter-cof) * -2);
	background: var(--blue);
	width: var(--gutter-cof);
	height: 1px;
	top: 0px;
}



.tags .tag-list::after {
	content: '';
	position: relative;
	left: calc(-100% - 10px);
	border: var(--blue) 1px solid;
	width: calc(var(--gutter-cof) * 3);
	height: calc(var(--gutter-cof) * 3);
	border-radius: 100%;
	background: var(--white);
}

/* Страница контента */
.pade-header-a {
	letter-spacing: 0.15em;
	font-weight: 400;
	line-height: 120%;
	font-size: min(1.5em,20px);
}

.view-article:not(.main-page) .article-info {
	margin: 0;
	margin-top: calc(var(--gutter-cof) * 3);
}

.view-article:not(.main-page) .com-content-article__body{
	margin-top: calc(var(--gutter-cof) * 7);
}

.view-article:not(.main-page) .com-content-article__body p {
	font-weight: 400;
	line-height: 1.3;
	margin-top: calc(var(--body-font-size) * 1.4) ;
}

.view-article:not(.main-page) .com-content-article__body img {
	font-weight: 400;
	line-height: 1.3;
	margin-top: calc(var(--body-font-size) * 1.4) ;
}

.view-article:not(.main-page) .com-content-article__body figcaption {
	margin-top: calc(var(--body-font-size) * 1.4 * 0.5);
    text-align: center;
}

.view-article:not(.main-page).com-content-article__body h2, .view-article:not(.main-page) .com-content-article__body h3 {
	font-weight: 500;
	font-size: 1.15em;
	line-height: 140%;
	margin-top: calc(var(--gutter-cof) * 5);
	margin-bottom: calc(var(--gutter-cof) * 3);
}

.com-content-article {
	margin-top: calc(var(--gutter-cof) * 8);
}

.footer-blue.view-article .container-bottom-b{
	position: relative;
	top: 1px;
}

.bottom-message {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 100000;
}

.bottom-message joomla-alert {
	border: 0!important;
	border-radius: 0!important;
	min-height: 100px!important;
	background-color: #004D94!important;
	color: white!important;
}

.blue-page .bottom-message joomla-alert {
	background-color: white!important;
	color: #004D94!important;
}

.bottom-message joomla-alert  .alert-heading {
	display: flex!important;
    flex-direction: column!important;
    justify-content: center!important;
		background: #004D94!important;
	color: white!important;
}

.blue-page .bottom-message joomla-alert, .blue-page .bottom-message joomla-alert  .alert-heading {
	background: white!important;
	color: #004D94!important;
}

#system-message-container  joomla-alert  .alert-heading .danger:before{
	color: white!important;
    font-family: Font Awesome\ 5 Free!important;
    font-weight: 900!important;
    content: "\f256"!important;
    font-size: 2em!important;
	background-image: none;
}
#system-message-container  joomla-alert .alert-heading .success:before {
	background-image: none;
	color: white!important;
    font-family: Font Awesome\ 5 Free!important;
    font-weight: 900!important;
    content: "\f00c"!important;
    font-size: 2em!important;
}
#system-message-container .bottom-message joomla-alert  .alert-heading .danger:before, #system-message-container  joomla-alert .alert-heading .success:before{
	color: #004D94!important;
}
#system-message-container joomla-alert .alert-wrapper {
	display: flex!important;
	justify-content: center!important;
	flex-direction: column!important;
}

#system-message-container joomla-alert .joomla-alert--close, #system-message-container joomla-alert .joomla-alert-button--close {
	--alert-close-button: var(--white);
}

.blue-page #system-message-container joomla-alert .joomla-alert--close, .blue-page #system-message-container joomla-alert .joomla-alert-button--close {
	--alert-close-button: var(--blue);
}

.sidebar-right ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;
}

.sidebar-right ul li {
	padding-left: .5em;
}

.sidebar-right ul li a {
	font-size: .8em;
    cursor: pointer;
    padding: var(--gutter-cof) calc(var(--gutter-cof)*2);
    margin: calc(var(--gutter-cof) / 2);
    border-radius: var(--gutter-cof);
    background-color: rgba(0 77 148 / .1);
    transition: .3s;
    pointer-events: all;
}

.sidebar-right ul li:first-child a{
	margin-left: calc(var(--gutter-cof)*0);
}

.sidebar-right ul li.active a {
	background-color: rgba(0 77 148 / .8);
	color: var(--white);
}

.sidebar-right li.active>a {
    text-decoration: none;
}

.sidebar-right  li a:hover {
    text-decoration: none;
}

.profile {
	margin-top: calc(var(--gutter-cof)*3);
}

.list-group-item {
	background-color: transparent;
	padding: 0;
	margin-top:calc(var(--gutter-cof)*3);
	padding: 0;
	border: none;
}
.list-group-item:hover {
	background-color: transparent;
}

.com_tags .container-bottom-b {
	display: none;
}

.view-category.itemid-278 .item-image {
	display: none;
}

.item-image {
     
}

.view-article .item-image img {
	width: 100%;
	margin-top: calc(var(--gutter-cof) * 7);
	opacity: 1;
}

.view-radar .radarbody {
    min-height: 800px;
	width: 100%;
}

.view-radar #radar {
    position: absolute;
	left: 0;
    right: 0;
    top: 150px;
}

.view-radar .radarbody table {
	width: 100%;
    margin: 0 50px 0 50px;
    margin-top: 1000px;
	text-align: left;
}

.img-blog-intro:empty {
	display: none;
}


.main-top .card-body  {
	width: 100%;
	background-color: var(--blue);
	color: var(--white);
	display: flex;
	flex-direction: column;
	align-items: center;
}


/* Code Block */
.mdinsert-code-wrapper { position: relative; margin: 1.2em 0; }
.mdinsert-code-block {
	background: #f8f9fa;
	color: #1e1e1e;
	border: 1px solid #1e1e1e;
	border-radius: 6px;
	padding: 16px; overflow-x: auto; font-size: 0.9em; line-height: 1.5;
	margin: 0 !important; /* сброс стандартных отступов <pre> */
}
.mdinsert-copy-btn {
	position: absolute; top: 8px; right: 8px;
	background: #555555;
	color: #f8f9fa;
	border: 1px solid #555555;
	border-radius: 4px; padding: 5px 12px; font-size: 12px;
	cursor: pointer; opacity: 0.85; transition: all 0.2s;
}
.mdinsert-copy-btn:hover {
	color: #ffffff; opacity: 1; background: #0c0c0c; }
.mdinsert-copy-btn.copied {
	background: #013cfa;
	border-color: #013cfa; }
.mdinsert-error { color: #dc3545; font-style: italic; }


@media (min-width: 445px) {
	:root {
		--body-font-size: max(var(--font-index)*1.7, 16px);
    --mini-font-size: max(calc(var(--font-index)*1.4), 14px);
	}
}

@media (min-width: 570px) {
	:root{
		--header-height: 70px;
		--grid-gap: calc(var(--gutter-cof)*8);
	}
	.section__projects-bg-wrapper {
		width: 60%;
		margin: 0 auto;
	}
	.navbar-menu {
		margin: 0 calc(var(--gutter-cof)*6) 0 auto;
	}

	.offcanvas-body .navbar-menu {
		margin: 0 auto;
	}
	
	.section__projects-item:last-child{
		padding-right: 126px;
	}

	.form-control {
		font-size: var(--body-font-size);
	}

	.button {
		font-size: var(--mini-font-size);
		padding: calc(var(--gutter-cof)*3) calc(var(--gutter-cof)*15);
	}

	.button-search {
		width: auto;
	}

	.button-search svg {
		min-width: calc(var(--mini-font-size)*1.5);
	}

	.button-search span {
		margin-left: calc(var(--gutter-cof)*1.5);
	}

	.item-content .item-image  {
		margin-left:  calc(var(--gutter-cof)*3);
	}

	.item-content .item-image img {
		max-width: 150%;
		position: relative;
		
	}

}

@media (min-width: 576px) and (max-width: 1050px) {
	.container, .container-sm {
			max-width: 100%;
	}
}

@media (min-width: 768px) {
	:root{
		--header-height: 90px;
		--grid-gap: calc(var(--gutter-cof)*16);
	}
	.h3, h3 {
		font-size: 1.17em;
	}
	.form-control{
		font-size: min(1.8em,28px);
	}

	.helper div {
		height: 100%;
		padding: var(--gutter-cof);
	}
	.item-image {
		margin: 0 0 2em;
		float: right;
		max-width: 35%;
		margin-left: calc(var(--gutter-cof) * 7);
	}
}

@media (min-width: 992px) {
	:root {
		--body-font-size: max(var(--font-index)*1, 16px);
    --mini-font-size: max(calc(var(--font-index)*.9), 14px);
		--body-font-weight: 400;
	}

	h1, .h1, .article-header h2 {
    font-size: 60px;
	}

	.descript-menu {
		justify-content: flex-end;
	}

	.descript-menu li{
		display: flex;
		align-items: center;
		justify-content: center;

		margin: 0;
		padding: 0;
	}

	.descript-menu li:first-child{
		padding-left: 0;
	}

	.container-header .mod-menu>li+li {
    margin-left: 0;
	}

	.info-container .logo {
		 margin-top: 0;
		 height: 5em;
	}

	.info-container .logo-text {
		font-size: 4em;
    text-transform: uppercase;
	}

	.grid-child{
		flex-direction: column;
	}

	.flab-first {
		display: flex;
    flex-direction: column;
    justify-content: center;
	}

	.logo {
		align-items: center;
    display: flex;
	}

	.info-container .logo-text {
    margin-top: 0;
	}

	.info-content-container {
		margin-top: calc(var(--gutter-cof) * 14);
		padding-bottom: 4em;
	}

	.section__arrow {
    writing-mode: vertical-rl;
    font-weight: 300;
    color: #fff;
    top: 50vh;
    right: 0;
    margin-top: -50px;
    position: absolute;
    opacity: 0;
	}

	
	.section__arrow:before {
		content: '';
		display: block;
		height: 50px;
		width: 1px;
		position: absolute;
		left: 10px;
		top: calc(100% + 10px);
		animation: arrowAnimation 2s ease 0s infinite normal;
		background-color: #fff;
	}

	.section__arrow:after {
		content: '';
		display: block;
		height: 60px;
		width: 15px;
		position: absolute;
		left: 3px;
		top: calc(100% + 12px);
		animation: arrowAnimation 2s ease 0s infinite normal;
		background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTEiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMSAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuNSA1TDUuNSAxMEwxMC41IDUiIHN0cm9rZT0id2hpdGUiLz4KPC9zdmc+Cg==);
		background-repeat: no-repeat;
		background-position: bottom center;
	}

	@keyframes arrowAnimation {
		0% {
				height: 50px; }
		50% {
				height: 100px; }
		100% {
				height: 50px; } }


		.services_col {
			margin-top: calc(var(--gutter-cof) * 18);
		}

		.services_col:nth-child(odd) {
			padding-right: calc(var(--gutter-cof) * 8);
		}

		.services_col:nth-child(even) {
			padding-left: calc(var(--gutter-cof) * 8);
		}

		.services-page .services_col {
			margin-top: calc(var(--gutter-cof) * 0);
			margin-bottom: calc(var(--gutter-cof) * 8);
		}

		.services_extensions .services_col {
			margin-top: calc(var(--gutter-cof) * 0);
			margin-bottom: calc(var(--gutter-cof) * 0);
		}

		.services_extensions .services_col {
			margin-top: calc(var(--gutter-cof) * 8);
			margin-bottom: calc(var(--gutter-cof) * 0);
			padding-right: calc(var(--gutter-x)*.5);
			padding-left: calc(var(--gutter-x)*.5);
		}

		.section__projects-list {
			flex-wrap: wrap;
		}

		.section__projects-item {
			display: flex;
			z-index: var(--z-index-text);
			overflow: hidden;
		}

		.section__projects-item>div {
			flex-basis: 50%;
			z-index: var(--z-index-text);
		}

		.offset-lg-1 {
			margin-left: 8.33333333%;
		}

		.section__projects-header {
			font-size: 4em;
			max-height: calc(var(--gutter-cof) * 14);
			opacity: 0;
		}

		.section__projects-tag {
			font-size: .7em;
			opacity: 0;
		}

		.section__projects-title {
			font-size: 2em;
			opacity: 0;
		}

	.section__projects-bg-wrapper {
    width: 100%;
    margin: 0 auto;
		opacity: 0;
	}

	.section__projects-item:nth-child(odd) {
		flex-direction: row-reverse;
	}

	.section__projects-item:last-child {
		position: static;
		padding: 0;
		padding-top: calc(var(--gutter-cof)*35);
	}

	.section__projects-footer-text {
		margin-top: calc(var(--gutter-cof)*8);
	}

	.section__projects-item .section__projects-info {
		align-items: center;
		justify-content: flex-end;
    display: flex;
		text-align: right;
	}

	.section__projects-info-container {
		text-align: right;
	}

	.section__projects-item:nth-child(odd) .section__projects-info-container {
		text-align: left;
	}

	.section__projects-item:nth-child(odd) .section__projects-info {
		justify-content: flex-start;
	}

	.section__projects-item:nth-child(odd) .section__projects-bg-container {
		padding-right: calc(var(--gutter-cof)*5);
	}

	.section__projects-item:nth-child(odd) .section__projects-info {
		padding-left: calc(var(--gutter-cof)*8);
	}

	.section__projects-item:nth-child(even) .section__projects-bg-container {
		padding-left: calc(var(--gutter-cof)*5);
	}

	.section__projects-item:nth-child(even) .section__projects-info {
		padding-right: calc(var(--gutter-cof)*8);
	}

	.svgTimeLineFlab{
		position: absolute;
		top: 0;
		z-index: var(--z-index-bg);
		pointer-events: none;
	}

	.svgTimeLineFlab line {
		stroke: #000;
		transition: .3s;
	}

	.section__projects-bg-text {
		display: inline;
		position: absolute;
		z-index: var(--z-index-bg);

		font-weight: 800;
		font-size: 11em;
		opacity: .2;

		color: var(--white);
		text-shadow: 1px 0 0 var(--blue), -1px 0 0 var(--blue), 0 1px 0 var(--blue), 0 -1px 0 var(--blue), 1px 1px var(--blue), -1px -1px 0 var(--blue), 1px -1px 0 var(--blue), -1px 1px 0 var(--blue);
		white-space: nowrap;

		padding-top: 0.8em;
		pointer-events: none;
	}

	.section__projects-item:last-child {
		flex-basis: 100%;
		flex-direction: column;
	}

	.section__projects-item .button{
		display: inline-table;
	}

	.radar__content {
		margin-top: calc(var(--gutter-cof)*32);
	}

	.radar__title {
		font-size: 4em;
	}
	
	.latestnews-main {
		margin-top: calc(var(--gutter-cof)*26);
	}

	.last-blog__title {
		font-size: 2em;
	}

	.latestnews-main .col {
		flex: 1 0 33.3%;
	}

	.footer {
		text-align: left;
	}

	.sp-contact-phone, .sp-contact-email {
		font-size: 1.8em;
	}

	.copyright {
    	margin-top: calc(var(--gutter-cof)*24);
		flex-direction: row;
    	display: flex;
    	align-items: center;
    	justify-content: space-between;
	}

	.bottom-menu {
		margin-top: calc(var(--gutter-cof)*0);
		padding-left: calc(var(--gutter-x)*3);
	}

	.sp-bottom2 {
		display: flex;
    align-items: start;
    justify-content: flex-end;
	}

	.footer .social-icons {
    margin-top: calc(var(--gutter-cof)*0);
		font-size: 2em;
	}

	.copyright>div>div:not(:first-child) {
    margin-top: calc(var(--gutter-cof)*0);
	}

	.container-header .mod-menu>li:after {
		display: none;
		bottom: 4px;
	}

	.blue-bg, .white-bg {
		right: -100px;
    top: 300px;
	}

	.white-bg {
		top: 100vh;
		max-width: 60vw;
	}

	main {
		padding-bottom: calc( var(--gutter-cof) * 28);
	}

	.page-header-revers *{
		-ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-smoothing: subpixel-antialiased;
    text-transform: uppercase;
	}

	.page-header-revers h1 {
		font-size: min(1.5em,20px);
	}

	.com-content-article {
    margin-top: calc(var(--gutter-cof) * 0);
	}

	.com-content-category-blog__item {
    margin-top: calc(var(--gutter-cof)*0);
	}


	.item-image img {
		height: 100%;
		max-width: 200%;
		position: relative;
	}

	.page-header-blog {
		font-size: 1.5em;
		line-height: 130%;
		text-decoration: none;
	}

	.article-info {
		margin: 0;
	}

	.com-content-category-blog__item p {
		margin-top: calc(var(--gutter-cof) * 6);
	}

	.com-content-category-blog__item:not(:first-child){
		margin-top: calc(var(--gutter-cof) * 22);
	}

	.pagination {
		margin-top: calc(var(--gutter-cof) * 24);
	}

	.pagination * {
		border: 0;
	}

	.pade-header-a {
	flex-direction: row-reverse;
    display: flex;
	}

	.pade-header-a-arrow {
		-ms-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		padding-top: 1em;
	}

	body:not(.main-page) .item-page, .com-content-category-blog {
		max-width: 80%;
		margin: 0 auto;
	}
	.container-header nav {
		padding: 0;
	}
	.navbar-menu {
    margin: 0;
	}
	.fnew-menu {
		display: flex;
	}

	.partners .partners__link:first-child {
		margin-top: calc(var(--gutter-cof)*8);
	}

	.footer-blue footer .blue-bg {
		display: none;
	}

	.footer .text-footer-banner {
		padding: calc(var(--gutter-cof)*9) 0;
		padding-bottom: calc(var(--gutter-cof)*3);
		margin-bottom: calc(var(--gutter-cof)*6);
		font-size: 2em;
		display: flex;
	}

	/* .footer .text-footer-banner::after {
		content: '→';
		padding: calc(var(--gutter-cof)*5) calc(var(--gutter-cof)*6);
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--blue);
		background-color: var(--white);
		border-radius: 50%;
	} */

	.com-content-category-blog__item p {
		margin-top: calc(var(--gutter-cof) * 0);
	}

	.item-content .item-image img {
		width: 255px;
		height: 170px;
		object-fit: cover;
	}

	.item-blog-textintro {
		margin-top: calc(var(--gutter-cof) * 6);
	}

	.blog .item-content h3 {
		margin-top: 0;
	}

	.item-blog-textintro-content {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
}




/* 1. Переопределение .btn-success */
.btn-success {
	background-color: var(--blue);
	border-color: var(--blue);
	color: #ffffff;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn-success:hover,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
.show > .btn-success.dropdown-toggle {
	background-color: #ffffff;
	border-color: var(--btnactivefs, rgb(1, 60, 250));
	color: var(--btnactivefs, rgb(1, 60, 250));
	box-shadow: none; /* Убираем стандартное свечение Bootstrap для чистоты */
}

/* 2. Переопределение .btn-outline-secondary */
.btn-outline-secondary {
	background-color: transparent;
	border-color: var(--blue);
	color: var(--blue);
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active,
.btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
	background-color: var(--blue);
	border-color: var(--blue);
	color: #ffffff;
	box-shadow: none;
}




@media (hover: hover) {
	
		.tags .tag-list {
			-webkit-box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			-moz-box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			transition: .3s;
		}

		.tags .tag-list:hover {
			-webkit-box-shadow: 0px -50px 0px 0px rgb(0 77 148 / 25%) inset;
			-moz-box-shadow: 0px -50px 0px 0px rgb(0 77 148 / 25%) inset;
			box-shadow: 0px -50px 0px 0px rgb(0 77 148 / 25%) inset;
			transition: .3s;
		}

		a, a:not([class]) {
			vertical-align: baseline;
			text-decoration: none;
			-webkit-box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			-moz-box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			transition: .3s;
		}

		.item-page a:not([class]), .latestnews-main a, .custom-link, .page-header-blog {
			-webkit-box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			-moz-box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			box-shadow: 0px 0px 0px 0px rgb(0 77 148 / 25%) inset;
			transition: .3s;
		}
		.item-page a:not([class]):hover, .latestnews-main a:hover, .custom-link:hover{
			color: var(--dark);
			-webkit-box-shadow: 0px -8px 0px 0px rgb(0 77 148 / 25%) inset;
    	-moz-box-shadow: 0px -8px 0px 0px rgb(0 77 148 / 25%) inset;
    	box-shadow: 0px -8px 0px 0px rgb(0 77 148 / 25%) inset;
		}

		.page-header-blog:hover {
			color: var(--dark);
			-webkit-box-shadow: 0px -12px 0px 0px rgb(0 77 148 / 25%) inset;
    	-moz-box-shadow: 0px -12px 0px 0px rgb(0 77 148 / 25%) inset;
    	box-shadow: 0px -12px 0px 0px rgb(0 77 148 / 25%) inset;
		}

		.container-header .mod-menu>li:after {
			display: block;
		}
		.container-header .mod-menu>li:hover:after, .container-header .mod-menu>li:hover:after {
			background: var(--color-header);
			opacity: 1;
		}

		.button {
			transition: color .3s;
			cursor: pointer;
			z-index: var(--z-index-text);
			background-color: transparent;
		}

		.button span {
			display: inline;
			position: absolute;
			width: 25%;
			height: 100%;
			background-color: var(--blue);
			transform: translateY(150%);
			border-radius: 50%;
			left: calc((var(--n)) * 25%);
			transition: 0.5s;
			transition-delay: calc((var(--n)) * 0.1s);
			z-index: var(--z-index-button-span);
		}
	
		.button span:nth-child(1) {
			--n: 0;
		}
	
		.button span:nth-child(2) {
			--n: 1;
		}
	
		.button span:nth-child(3) {
			--n: 2;
		}
	
		.button span:nth-child(4) {
			--n: 3;
		}
	
		.button:hover {
			color: var(--white);
		}
	
		.button:hover span {
			transform: translateY(0) scale(2);
		}

		.descript-menu li {
			position: relative;
		}

		.descript-menu li:not(:nth-last-child(2)):before {
			content: '';
			height: 1px;
			width: 0%;
			background-color: var(--color-header);
			position: absolute;
			bottom: 0;
			left: 0;
			transition: .3s;
		}

		.descript-menu li:not(:nth-last-child(2)):hover:before {
			width: 100%;
		}

		.flabPortfolio-filter ul li:hover {
			background-color: rgba(255,255,255,.1);
		}
		.button_search {
			cursor: pointer;
		}
	}

	@media (min-width: 1400px) {
		:root {
			--grid-gap: calc(var(--gutter-cof)*25);
			
		}

		body.layout-blog  main {
			font-size: 16px;
			--mini-font-size: 14px;
		}

		.layout-blog .page-header-blog {
			font-size: 36px;
			line-height: 130%;
		}

		.descript-menu {
			font-size: .8em;
		}

		.menu.col-lg-9 {
			padding: 0;
		}

		.main-page .container-component>:first-child {
			margin-top: calc(var(--header-height) - var(--gutter-cof) *2);
		}

		.sp-contact-phone, .sp-contact-email, .footer .social-icons {
			font-size: 1.2em;
		}
		.footer .mod-list li, .copyright {
			font-size: .7em;
		}
	}