/*
Theme Name: TENZA energo
Theme URI: 
Author: infocount.cz
Author URI: https://infocount.cz/
Description: Theme for TENZA energo
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tenza-energo-theme
*/

html, body, form, h1, h2, h3, h4, ul, ol, li, p {
	margin: 0;
	padding: 0;
}

body, h1, h2, h3, h4, div, label, p, li, a {
	color: #A59790;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 400;
	line-height: 23px;
}

body {
	background-color: #FFFFFF;
}

a {
	color: #003876;
}
a:hover {
	color: #ED1C24;
	text-decoration: none;
}

ul {
	list-style-type: none;
}

*, ::after, ::before {
	box-sizing: unset;
}

.container {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1235px;
	padding: 70px 50px;
	margin: 0 auto;
}

/* header */

header {
	position: absolute;
	top: 30px;
	width: 100%;
	z-index: 5;
}

header .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1135px;
	background-color: #FFFFFF;
	padding: 18px 40px 18px 30px;
	border-radius: 10px;
}

header .brand a {
	display: block;
	width: 109px;
	height: 52px;
	overflow: hidden;
	text-indent: -99999px;
	background: url("img/logo.png") center no-repeat;
}

header nav {
	display: flex;
	gap: 60px;
}

header .menu {
	display: flex;
	gap: 35px;
}
header .menu .sub {
	position: absolute;
	visibility: hidden;
	opacity: 0;
	top: 50px;
	left: 0;
	width: 300px;
	background-color: #FFFFFF;
	border-radius: 0 0 10px 10px;
	box-shadow: 0px 20px 20px 0px #0000001A;
}
header .menu .active .sub {
	visibility: visible;
	opacity: 1;
}

header .sub ul {
	padding: 20px 0 30px 30px;
}

header li {
	position: relative;
	color: #565656;
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	padding-top: 10px;
}
header .sub li {
	border-bottom: 1px solid #E8E8E8;
}
header .sub li:last-child {
	border-bottom: none;
}

header li a {
	display: block;
	color: #565656;
	font-size: 14px;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
	padding-bottom: 10px;
}
header .menu li a:hover {
	color: #565656;
}
header .sub li a {
	font-size: 13px;
	font-weight: 400;
	line-height: 17px;
	padding-right: 30px;
}
header .sub li a:hover {
	color: #003876;
}
header .menu li a::after {
	position: absolute;
	content: "";
	left: 0;
	bottom: 0;
	width: 0;
	height: 4px;
	background-color: #ED1C24;
	border-radius: 4px;
}
header .menu li a:hover::after,
header .menu li a.active::after,
header .menu li.children.active > a::after {
	width: 100%;
}
header .sub li a::after {
	content: none;
}

header .mobile {
	display: none;
	cursor: pointer;
}

header .mobile strong {
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
}

header .mobile span {
	position: absolute;
	display: block;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 3px;
	background-color: #003876;
	margin: auto 0;
	border-radius: 3px;
}
header .mobile span:first-child {
	bottom: auto;
}
header .mobile span:last-child {
	top: auto;
}

header .mobile:hover span {
	background-color: #003876;
}

header.active .mobile span {
	display: none;
	top: 0;
	bottom: 0;
	transition: transform .3s;
}
header.active .mobile span:first-child {
	display: block;
	transform: rotate(45deg);
}
header.active .mobile span:last-child {
	display: block;
	transform: rotate(-45deg);
}

/* main */

main .columns .container {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

main .columns .title {
	position: relative;
	flex: 0 0 calc(25% - (3*30px/4));
	padding-top: 40px;
}
main .columns .title::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 60px;
	height: 8px;
	background-color: #ED1C24;
	border-radius: 4px;
}

main .columns .title h2 {
	color: #003876;
	font-size: 35px;
	font-weight: 700;
	line-height: 42px;
	margin-bottom: 20px;
}

main h2.title {
	color: #003876;
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	margin-bottom: 30px;
}

main .notitle {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	text-indent: -99999px;
}

main .columns .items {
	flex: 0 0 calc(75% - (30px/4));
}

main .more a {
	position: relative;
	display: inline-block;
	min-width: 150px;
	color: #003876;
	font-size: 11px;
	font-weight: 600;
	text-decoration: none;
	padding: 7px 40px 7px 18px;
	border: 1px solid #003876;
	border-radius: 20px;
}
main .more a:hover {
	color: #FFFFFF;
	background-color: #003876;
}

main .more a::after {
	position: absolute;
	content: "";
	top: 0;
	right: 13px;
	bottom: 0;
	width: 14px;
}

main .banner .title {
	background-color: #003876;
	padding: 35px 40px;
}

main .banner .block {
	display: flex;
	align-items: center;
	gap: 30px;
	padding: 35px 0;
	border: 1px solid #E5DCD7;
	border-radius: 10px;
}

main .banner .foto {
	flex: 0 0 125px;
	width: 125px;
	height: 125px;
	background: no-repeat;
	background-size: cover;
	border-radius: 50%;
}

main .banner .name {
	color: #003876;
	font-size: 20px;
	font-weight: 700;
	line-height: 25px;
	margin-bottom: 10px;
}

main .banner .block p {
	line-height: 19px;
}

main .banner .block a {
	color: #A59790;
}
main .banner .block a:hover {
	color: #FF8A00;
}
main .banner .more a, main .banner .more a:hover {
	color: #00AECB;
}

/* path */

#path {
	position: relative;
	background-color: #003876;
	overflow: hidden;
}
#path.image {
	background-size: 0;
}
#path.error {
	overflow: unset;
}
#path.image::before,
#path.image::after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	bottom: 0;
	width: 50%;
	z-index: -1;
}
#path.image::before {
	left: 0;
	background-color: #003876;
}
#path.image::after {
	right: 0;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

#path .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 100px;
	padding-bottom: 0;
}
#path .container::before,
.home #path .container::after {
	position: absolute;
	content: "";
	bottom: 0;
}
#path .container::before {
	top: 0;
	left: 50%;
	height: 100%;
	background-color: #003876;
	clip-path: polygon(0 0, 100% 0, 100% 0, 0 100%);
	aspect-ratio: .333334 / 1;
}
.home #path .container::after {
	top: 148px;
	right: 0;
	width: 50%;
	background: url('img/hero.png') center no-repeat;
	background-size: contain;
}

#path .title {
	flex: 0 0 calc(100% - 60px);
	position: relative;
	padding-left: 60px;
	margin-top: 90px;
	margin-bottom: 100px;
}
#path.image .title {
	flex-basis: calc(50% - 60px);
}
#path.error .title {
	flex-basis: 100%;
	padding-left: 0;
	padding-bottom:  100px;
	margin-bottom: -4px;
}
#path .title::before {
	position: absolute;
	content: "";
	left: 0;
	width: 8px;
	height: 100%;
	background-color: #ED1C24;
	border-radius: 4px;
}
#path.error .title::before {
	right: 0;
	bottom: 0;
	width: 210px;
	height: 8px;
	margin: 0 auto;
}

#path h1 {
	color: #FFFFFF;
	font-size: 34px;
	font-weight: 700;
	line-height: 42px;
}
.home #path h1 {
	font-size: 55px;
	line-height: 67px;
}
#path.error h1 {
	font-size: 90px;
	text-align: center;
}

#path p {
	color: #4997CD;
	font-size: 20px;
	font-weight: 400;
	line-height: 30px;
	padding-top: 20px;
}

/* error */

#error .links {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 20px;
	max-width: 330px;
	margin: 0 auto;
}

#error .title {
	color: #565656;
	font-size: 38px;
	font-weight: 700;
	line-height: normal;
	text-align: center;
	margin-bottom: 30px;
}

#error .more a {
	display: block;
}

/* areas */

#areas .items {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

#areas .item {
	position: relative;
	flex: 0 0 calc(25% - (3*30px/4));
	background-size: 0;
	padding-top: 60px;
}
#areas .items3 .item {
	flex-basis: calc(33.333334% - (2*30px/3));
}
#areas .item::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	background-image: inherit;
	background-position: left bottom;
	background-repeat: no-repeat;
}

#areas .name {
	color: #565656;
	font-size: 20px;
	font-weight: 700;
	line-height: 24px;
	margin-bottom: 10px;
}

/* services */

#services {
	position: relative;
}
#services::after {
	position: absolute;
	content: "";
	left: 50%;
	top: 0;
	width: 100%;
	max-width: 1335px;
	transform: translateX(-50%);
	border-top: 1px solid #E5DCD7;
}

#services .items {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

#services .item {
	position: relative;
	flex: 0 0 calc(33.333334% - (2*30px/3));
	display: flex;
	flex-direction: column;
}

#services .image {
	position: relative;
	flex: 0 0 130px;
	width: 100%;
	background-color: #E7E7E7;
	border-radius: 10px 10px 0 0;
	overflow: hidden;
}

#services .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	max-width: 100%;
	min-height: 130px;
	transform: translate(-50%, -50%);
}

#services .text {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 15px;
	padding: 25px 30px;
	border: 1px solid #E7E7E7;
	border-top: 0;
	border-radius: 0 0 10px 10px;
}

#services .name a {
	display: inline-block;
	color: #565656;
	font-size: 13px;
	font-weight: 700;
	line-height: 18px;
	text-decoration: none;
}
#services .name a:hover {
	color: #ED1C24;
}

#services .more a {
	display: block;
	min-width: unset;
}

/* banner */

#banner {
	position: relative;
	background-size: 0;
	border-top: 1px solid #E5DCD7;
	border-bottom: 1px solid #E5DCD7;
}
#banner::before,
#banner::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	z-index: -1;
}
#banner::before {
	left: 0;
	width: max(50% - 1105px/4, 25% + 130px/4);
	background-color: #003876;
}
#banner::after {
	right: 0;
	width: 50%;
	background-image: inherit;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: cover;
}
#banner .container {
	gap: 100px;
	padding-top: 50px;
	padding-bottom: 50px;
}
#banner .container::before {
	position: absolute;
	content: "";
	top: 0;
	left: calc(25% + 130px/4);
	height: 100%;
	background-color: #003876;
	clip-path: polygon(0 0, 100% 0, 100% 0, 0 100%);
	aspect-ratio: .333334 / 1;
}

#banner .title {
	flex-basis: calc(25% + 30px/4);
	padding-top: 0;
}
#banner .title::before {
	content: none;
}

#banner .title h2 {
	color: #FFFFFF;
	font-size: 20px;
	font-weight: 700;
	line-height: 25px;
}

#banner .title p {
	color: #4997CD;
}

#banner .title a {
	color: #4997CD;
}
#banner .title a:hover {
	color: #FFFFFF;
}

#banner .block {
	display: flex;
	align-items: center;
	gap: 30px;
}

#banner .foto {
	width: 126px;
	height: 126px;
	border-radius: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}

#banner .text .name {
	color: #003876;
	font-size: 20px;
	font-weight: 700;
	line-height: 20px;
	margin-bottom: 10px;
}

#banner .text p {
	line-height: 20px;
	margin-bottom: 20px;
}

#banner .text a {
	color: #A59790;
}
#banner .text a:hover {
	color: #ED1C24;
}
#banner .text .more a:hover {
	color: #FFFFFF;
}

/* news */

#news .container {
	padding-bottom: 30px;
}

#news .items {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 40px 0;
}

#news .item {
	flex: 0 0 calc(50% - (40px/2));
}

#news .image {
	position: relative;
	overflow: hidden;
	margin-bottom: 35px;
	border-radius: 10px;
}

#news .image a {
	display: block;
	height: 222px;
}
#news .image a::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: 0;
	height: 16px;
	background-color: #003876;
}
#news .image a:hover::after {
	background-color: #ED1C24;
}

#news .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	min-width: 100%;
	min-height: 222px;
	transform: translate(-50%, -50%);
	transition: all .3s;
}

#news .date {
	color: #003876;
	margin-bottom: 10px;
}

#news .name {
	margin-bottom: 10px;
}

#news .name a {
	display: block;
	color: #565656;
	font-size: 20px;
	font-weight: 700;
	line-height: 25px;
	text-decoration: none;
}
#news .name a:hover {
	color: #565656;
	text-decoration: underline;
}

/* references */

#references .items {
	display: flex;
	flex-wrap: wrap;
	gap: 60px 30px;
}

#references .item {
	flex: 0 0 calc(33.333334% - (2*30px/3));
}

#references .logo {
	width: 180px;
	height: 100px;
	background-repeat: no-repeat;
	background-position: left center;
	margin-bottom: 10px;
}

#references .name {
	color: #565656;
	font-size: 15px;
	font-weight: 700;
	line-height: 20px;
	margin-bottom: 10px;
}

/* cube */

#cube {
	position: relative;
}
#cube::after {
	position: absolute;
	content: "";
	left: 50%;
	top: 0;
	width: 100%;
	max-width: 1335px;
	transform: translateX(-50%);
	border-top: 1px solid #E5DCD7;
}

#cube .block {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
#cube.columns .block {
	flex: 0 0 calc(75% - (30px/4));
}

#cube .text {
	flex: 0 0 calc(50% - (30px/2));
}
#cube .text li {
	position: relative;
	padding: 0 0 15px 25px;
}
#cube .text li::before {
	position: absolute;
	content: "";
	top: 10px;
	left: 0;
	width: 8px;
	height: 8px;
	background-color: #ED1C24;
	border-radius: 50%;
}

#cube .image {
	flex: 0 0 calc(50% - 30px/2);
}
#cube .image img {
	width: 100%;
	border-radius: 10px;
}

/* jobs */

#jobs .container {
	padding-top: 20px;
	padding-bottom: 20px;
}

#jobs .item {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 30px 35px;
	padding: 50px 0;
}
#jobs .item::after {
	position: absolute;
	content: "";
	left: -50px;
	right: -50px;
	bottom: 0;
	border-bottom: 1px solid #E5DCD7;
}
#jobs .item:last-child::after {
	content: none;
}

#jobs .desc {
	flex: 0 0 calc(50% - (35px/2));
}

#jobs .desc h2 {
	position: relative;
	color: #003876;
	font-size: 38px;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 40px;
}

#jobs .desc h3 {
	color: #565656;
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 10px;
}

#jobs .desc li {
	position: relative;
	padding-left: 20px;
}
#jobs .desc li::before {
	position: absolute;
	content: "";
	top: 8px;
	left: 0;
	width: 5px;
	height: 10px;
	background-color: #ED1C24;
	border-radius: 4px;
}

#jobs .desc .title {
	margin-bottom: 40px;
}

#jobs .short {
	position: relative;
	background-size: 0;
	background-repeat: no-repeat;
	padding: 20px 0;
}
#jobs .short::before {
	position: absolute;
	content: "";
	top: 0;
	left: -50px;
	right: calc(-100% - 80px);
	bottom: 0;
	background-color: #F4F4F4;
	border-radius: 10px;
	z-index: -1;
}

#jobs .spec {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 40px;
}

#jobs .demand, #jobs .offer {
	flex: 0 0 calc(50% - (20px/2));
}

#jobs .image {
	flex: 0 0 calc(50% - (35px/2));
}

#jobs .image img {
	width: 100%;
	display: block;
	border-radius: 10px 10px 0 0;
}

#jobs .banner .title h3 {
	color: #FFFFFF;
	font-size: 20px;
	font-weight: 700;
	line-height: 25px;
}

#jobs .banner .block {
	padding: 30px;
	border-top: none;
	border-radius: 0 0 10px 10px;
}

/* detail */

#detail .blocks {
	display: flex;
	gap: 50px;
}

#detail .blocks .item {
	flex: 1;
}

#detail h3 {
	color: #565656;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 26px;
}

#detail h4 {
	color: #003876;
	font-size: 14px;
	font-weight: 700;
	line-height: 26px;
}

#detail p {
	font-size: 14px;
	line-height: 26px;
	margin-bottom: 26px;
}
#detail p.small {
	font-size: 11px;
	line-height: 17px;
}

#detail ul {
	margin-bottom: 20px;
}
#detail li {
	position: relative;
	padding: 0 0 5px 25px;
}
#detail li::before {
	position: absolute;
	content: "";
	top: 10px;
	left: 0;
	width: 8px;
	height: 8px;
	background-color: #ED1C24;
	border-radius: 50%;
}

#detail a {
	color: #003876;
	font-size: 14px;
	line-height: 26px;
}
#detail a:hover {
	color: #565656;	
}

/* files */

#files .container {
	padding-top: 0;
}

#files .items {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#files .item {
	display: flex;
	overflow: hidden;
	border: 1px solid #E5DCD7;
	border-radius: 10px;
}

#files .type {
	flex: 0 0 calc(25% + (30px/4 - 100px));
	position: relative;
	color: #FFFFFF;
	font-size: 20px;
	font-weight: 700;
	line-height: 40px;
	background-color: #003876;
	padding: 25px 30px 25px 80px;
}
#files .type::before {
	position: absolute;
	content: "";
	left: 30px;
	width: 30px;
	height: 40px;
	background-repeat: no-repeat;
}
#files .type.pdf::before {
	background-image: url("img/pdf.svg");
}

#files .file {
	flex: 0 0 calc(75% - (30px/4 + 60px));
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 20px 30px;
}

#files .name {
	color: #565656;
	font-size: 16px;
	line-height: 21px;
}

#files .more a::after {
	transform: rotate(90deg);
}

/* gallery */

#gallery .container {
	padding-bottom: 50px;
}

#gallery .items {
	position: relative;
	overflow: hidden;
	height: 400px;
}

#gallery .inner {
	position: absolute;
	display: flex;
	gap: 20px;
	top: 0;
	left: 0;
	transition: left .3s;
}

#gallery .item {
	flex: 1;
	overflow: hidden;
	width: 430px;
	max-width: calc(100vw - 40px);
	height: 400px;
	background-color: #F6F6F6;
	border-radius: 10px;
}

#gallery .image {
	position: relative;
	width: 100%;
	height: 280px;
	overflow: hidden;
}
#gallery .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	opacity: .2;
}
#gallery .active .image img, #gallery .associate .image img {
	opacity: 1;
}

#gallery .text {
	padding: 20px;
}

#gallery .arrows {
	position: absolute;
	top: 115px;
	left: 0;
	right: 0;
}

#gallery .arrows .prev, #gallery .arrows .next {
	position: absolute;
	display: block;
	cursor: pointer;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-indent: -99999px;
	background-color: #FFFFFF;
	margin: auto 0;
	border: 1px solid #E9E9E9;
	border-radius: 50%;
	z-index: 1;
}
#gallery .arrows .prev {
	left: 50px;
}
#gallery .arrows .next {
	right: 50px;
}
#gallery .arrows .prev::after, #gallery .arrows .next::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 20px;
	height: 20px;
	text-indent: 0;
	margin: auto;
}

/* blocks */

#blocks .items {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

#blocks .item {
	flex: 1;
	overflow: hidden;
	background-color: #003876;
	border-radius: 10px;
}
#blocks.columns .item {
	background-color: #F6F6F6;
}

#blocks .image {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-top: 50%;
}
#blocks.columns .image {
	padding-top: 67.5%;
}
#blocks .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
}

#blocks .noimage {
	height: 16px;
	background-color: #003876;
}

#blocks .text {
	padding: 20px;
}

#blocks .name {
	color: #FFFFFF;
	font-size: 15px;
	font-weight: 700;
	line-height: 19px;
	margin-bottom: 15px;
}
#blocks.columns .name {
	color: #565656;
}

#blocks .text p {
	color: #A0F1FF;
}
#blocks.columns .text p {
	color: #A59790;
}

/* posts */

#posts .items {
	display: flex;
	flex-wrap: wrap;
	gap: 40px 20px;
}

#posts .item {
	flex: 1;
}

#posts .text {
	padding-top: 20px;
}
#posts .text li {
	position: relative;
	padding-left: 10px;
}
#posts .text li::before {
	position: absolute;
	content: "";
	top: 10px;
	left: 0;
	width: 3px;
	height: 3px;
	background-color: #A59790;
	border-radius: 50%;
}

#posts .image {
	overflow: hidden;
	border-radius: 10px;
}
#posts .image img {
	display: block;
	width: 100%;
}

#posts .name {
	color: #565656;
	font-size: 20px;
	font-weight: 700;
	line-height: 25px;
	margin-bottom: 15px;
}

/* poster */

#poster {
	position: relative;
	background-size: 0;
	overflow: hidden;
}
#poster::before,
#poster::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	z-index: -1;
}
#poster::before {
	left: 0;
	width: 50%;
	background-color: #003876;
}
#poster::after {
	right: 0;
	width: 50%;
	background-image: inherit;
	background-position: left;
	background-repeat: no-repeat;
	background-size: cover;
}

#poster .container {
	padding: 0;
}

#poster .block {
	position: relative;
	display: flex;
}
#poster .block::before {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	height: 100%;
	background-color: #003876;
	clip-path: polygon(0 0, 100% 0, 100% 0, 0 100%);
	aspect-ratio: .333334 / 1;
}

#poster .text {
	flex: 0 0 calc(50% - 50px);
	padding: 70px 0 70px 50px;
}

#poster .title {
	color: #FFFFFF;
	max-width: 400px;
}

#poster .text p {
	color: #4997CD;
	line-height: 22px;
	margin-bottom: 22px;
}
#poster .text p:last-child {
	margin-bottom: 0;
}

/* accordion */

#accordion .container {
	padding-bottom: 30px;
}

#accordion .items {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#accordion .item {
	cursor: pointer;
	overflow: hidden;
	padding: 20px;
	border: 1px solid #DEDEDE;
	border-radius: 10px;
}
#accordion .item:hover {
	border-color: #003876;
}

#accordion .name {
	position: relative;
	color: #303030;
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
	padding-right: 30px;
}
#accordion .name::after {
	position: absolute;
	content: "";
	top: 5px;
	right: 0;
	width: 20px;
	height: 12px;
	background: url("img/arrow2.svg") no-repeat;
}
#accordion .active .name::after {
	transform: rotate(180deg);
}

#accordion .text {
	display: none;
	padding: 20px 40px 0 40px;
}
#accordion .active .text {
	display: block;
}

#accordion .text p {
	position: relative;
	color: #7E7E7E;
	padding-left: 20px;
	margin-bottom: 20px;
}
#accordion .text p:last-child {
	margin-bottom: 0;
}
#accordion .text p::before {
	position: absolute;
	content: "";
	top: 6px;
	left: 0;
	width: 5px;
	height: 10px;
	background-color: #ED1C24;
	border-radius: 4px;
}

/* social */

#social .container {
	padding-top: 0;
	padding-bottom: 0;
}

#social .items {
	display: flex;
	gap: 20px;
}

#social .item {
	flex: 1;
}

#social a {
	position: relative;
	display: block;
	color: #A59790;
	font-size: 14px;
	line-height: 30px;
	background-color: #F4F4F4;
	padding: 40px 40px 40px 80px;
	border-radius: 10px;
}
#social a:hover {
	color: #FFFFFF;
	background-color: #003876
}
#social a::before {
	position: absolute;
	content: "";
	left: 40px;
	width: 30px;
	height: 30px;
	background-repeat: no-repeat;
}
#social .facebook a::before {
	background-image: url("img/facebook.svg");
}
#social .instagram a::before {
	background-image: url("img/instagram.svg");
}
#social a:hover::before {
	filter: brightness(0) invert(1);
}

/* map */

#map {
	position: relative;
	cursor: pointer;
}
#map::before {
	position: absolute;
	content: "";
	top: -76px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 49px;
	height: 76px;
	background: url("img/marker.svg") no-repeat;
	margin: auto;
	z-index: 1;
}

#map .container {
	max-width: none;
	padding: 0;
}

#map iframe {
	margin-bottom: -10px;
	filter: grayscale(100%);
	opacity: .5;
	pointer-events: none;
}

/* footer */

footer {
	background-color: #003876;
}

footer .container {
	display: flex;
	align-items: center;
	gap: 30px;
}

footer .brand {
	flex: 0 0 calc(25% - (3*30px/4));
}
footer .brand a {
	display: block;
	width: 109px;
	height: 52px;
	overflow: hidden;
	text-indent: -99999px;
	background: url("img/logo.png") center no-repeat;
	filter: brightness(0) invert(1);
}

footer .footer {
	flex: 0 0 calc(75% - (3*30px/4));
}

footer .block {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 20px 50px;
	padding-bottom: 20px;
}
footer .block::after {
	position: absolute;
	content: "";
	bottom: 0;
	width: 100%;
	height: 3px;
	background-color: #21538C;
}

footer .info {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px 50px;
	align-items: center;
	padding-top: 20px;
}

footer .menu {
	display: flex;
	gap: 20px 40px;
}
footer .contact, footer .address {
	display: flex;
	flex-wrap: wrap;
}
footer .contact {
	gap: 15px 20px;
}
footer .address {
	gap: 0 20px;
}

footer a {
	text-decoration: none;
}
footer .menu a {
	color: #FFFFFF;
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
}
footer .menu a:hover {
	color: #4997CD;
}
footer .contact a {
	position: relative;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: 700;
	line-height: normal;
	padding-left: 33px;
}
footer .contact a:hover {
	color: #4997CD;
}
footer .contact a::before {
	position: absolute;
	display: block;
	content: "";
	top: -3px;
	left: 0;
	width: 25px;
	height: 23px;
	background-color: #4997CD;
}

footer .address li {
	color: #4997CD;
	font-size: 12px;
	font-weight: 400;
	line-height: 24px;
}

footer .address strong {
	color: #FFFFFF;
	font-weight: 700;
}

footer .copy {
	color: #4997CD;
	font-size: 12px;
	font-weight: 400;
	line-height: 24px;
}

footer .by a {
	display: block;
	width: 97px;
	height: 14px;
	overflow: hidden;
	text-indent: -99999px;
	background-color: #21548C;
}
footer .by a:hover {
	background-color: #FFFFFF;
}

/* media */

@media (max-width: 1230px) {
	header {
		top: 0;
	}
	header .container {
		max-width: unset;
		border-radius: 0;
	}

	#path .container {
		padding-top: 88px;
	}
}

@media (max-width: 1200px) {
	header nav {
		position: absolute;
		display: block;
		top: 80px;
		left: 0;
		right: 0;
		visibility: hidden;
		opacity: 0;
		background-color: #FFFFFF;
		padding: 20px 0 30px 30px;
		border-top: 1px solid #003876;
		box-shadow: 0px 20px 20px 0px #0000001A;
	}
	header.active nav {
		visibility: visible;
		opacity: 1;
	}
	header .menu {
		display: block;
		border-top: 1px solid #E8E8E8;
	}
	header .menu .sub {
		width: auto;
		margin-left: -30px;
		border-radius: none;
		box-shadow: unset;
	}
	header .menu .active .sub {
		position: static;
	}
	header .sub ul {
		background-color: #F6F6F6;
		padding: 0 0 0 30px;
		border-top: 1px solid #E8E8E8;
		border-bottom: 1px solid #E8E8E8;
	}
	header .menu li {
		padding: 0;
		border-bottom: 1px solid #E8E8E8;
	}
	header .sub li {
		border-bottom: 2px solid #FFFFFF;
	}
	header .menu li:last-child,
	header .menu li.children.active {
		border-bottom: none;
	}
	header .menu li a {
		font-size: 18px;
		font-weight: 600;
		line-height: 30px;
		padding: 10px 30px 10px 0;
	}
	header .menu li a:hover,
	header .menu li.children.active > a {
		color: #ED1C24;
	}
	header .sub li a {
		position: relative;
		font-size: 15px;
		font-weight: 400;
		line-height: 20px;
		padding: 15px 30px 15px 20px;
	}
	header .sub li a:hover {
		color: #003876;
	}
	header .sub li a::before {
		position: absolute;
		content: "";
		top: 15px;
		left: 0;
		bottom: 15px;
		width: 7px;
		background-color: #D9D9D9;
	}
	header .sub li a:hover::before {
		background-color: #ED1C24;
	}
	header .menu li a::after {
		content: none;
	}
	header .mobile {
		display: block;
	}

	main .columns .title, main .columns .items {
		flex-basis: 100%;
	}
	main .columns .title h2 {
		font-size: 32px;
		margin-bottom: 20px;
	}
	main .banner .title {
		padding-left: 30px;
		padding-right: 30px;
	}

	#path h1 {
		font-size: 32px;
	}
	.home #path h1 {
		font-size: 32px;
		line-height: 42px;
	}
	#path.error h1 {
		font-size: 70px;
	}

	#error .title {
		font-size: 32px;
	}

	#cube.columns .block {
		flex-basis: 100%;
	}

	#jobs .desc h2 {
		font-size: 32px;
	}

	#gallery .associate .image img {
		opacity: .2;
	}

	footer .container {
		flex-direction: column;
		align-items: stretch;
	}
	footer .brand a {
		margin: 0 auto;
	}

}

@media (max-width: 1000px) {
	#path .title {
		margin-top: 50px;
		margin-bottom: 50px;
	}
	#path.error .title {
		padding-bottom: 50px;
	}

	#banner::before {
		width: 33.333334%;
	}
	#banner .container::before {
		left: 33.333334%;
	}
	#banner .title {
		flex-basis: calc(33.333334% - 50px/3);
	}

	#jobs .desc, #jobs .image {
		flex-basis: 100%;
	}
	#jobs .short {
		background-size: 50%;
		background-position: right;
	}
	#jobs .short::before {
		right: -50px;
	}
	#jobs .short ul {
		width: 50%;
	}
	#jobs .image img {
		display: none;
	}
	#jobs .banner .title {
		border-radius: 10px 10px 0 0;
	}

	#detail .blocks {
		flex-wrap: wrap;
		gap: 20px;
	}
	#detail .blocks .item {
		flex: 0 0 calc(50% - (20px/2));
	}
}

@media (max-width: 900px) {
	#files .type {
		flex-basis: calc(25% + (30px/4 - 80px));
		padding-left: 60px;
		padding-right: 20px;
	}
	#files .type::before {
		left: 20px;
	}
	#files .file {
		flex-basis: calc(75% - (30px/4 + 40px));
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media (max-width: 800px) {
	main .banner .block {
		align-items: flex-start;
		gap: 20px;
	}
	main .banner .foto {
		flex-basis: 45px;
		width: 45px;
		height: 45px;
	}
	main .banner .more a {
		display: block;
		min-width: auto;
	}

	#areas .item,
	#areas .items3 .item {
		flex-basis: calc(50% - (30px/2));
	}

	#services .item {
		flex-basis: calc(50% - (30px/2));
	}

	#banner {
		border: none;
	}
	#banner::before,
	#banner::after,
	#banner .container::before {
		content: none;
	}
	#banner .container {
		flex-direction: column;
		gap: 0;
		padding-top: 0;
		padding-bottom: 0;
	}
	#banner .title {
		background-color: #003876;
		padding: 30px 25px 25px 25px;
		border-radius: 10px 10px 0 0;
	}
	#banner .block {
		padding: 25px 25px 30px 25px;
		border: 1px solid #E5DCD7;
		border-top: none;
		border-radius: 0 0 10px 10px;
	}

	#references .item {
		flex-basis: calc(50% - (30px/2));
	}

	#jobs .desc h2 {
		font-size: 28px;
		margin-bottom: 20px;
	}

	#files .type {
		flex-basis: calc(50% - 80px);
	}
	#files .file {
		flex-basis: calc(50% - 40px);
		flex-direction: column;
		align-items: stretch;
	}
	#files .more a {
		display: block;
		min-width: auto;
	}

	#poster::before, 
	#poster .block::before {
		content: none;
	}
	#poster::after {
		position: relative;
		display: block;
		left: 50px;
		right: 50px;
		width: calc(100% - 100px);
		padding-top: 55%;
		border-radius: 0 0 10px 10px;
	}
	#poster .container {
		padding-left: 50px;
		padding-right: 50px;
	}
	#poster .block {
		background-color: #003876;
		border-radius: 10px 10px 0 0;
	}
	#poster .text {
		flex-basis: calc(100% - 100px);
		padding: 50px;
	}

	footer .container {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	footer .menu,
	footer .contact {
		flex-basis: 100%;
	}
	footer .menu,
	footer .contact,
	footer .info,
	footer .address {
		justify-content: center;
	}
	footer .menu {
		position: relative;
		padding-bottom: 20px;
	}
	footer .menu::after {
		position: absolute;
		content: "";
		bottom: 0;
		width: 100%;
		height: 3px;
		background-color: #21538C;
	}
}

@media (max-width: 700px) {
	main .columns .title h2 {
		font-size: 28px;
	}
	main .banner .block {
		align-items: center;
	}
	main .banner .foto {
		flex-basis: 125px;
		width: 125px;
		height: 125px;
	}

	#path.image::before {
		width: 100%;
	}
	#path.image::after {
		top: unset;
		width: 100%;
		padding-bottom: 55%;
	}
	#path.image .container {
		padding-bottom: 55%;
	}
	#path .container::before {
		content: none;
	}
	.home #path .container::after {
		top: unset;
		left: 0;
		width: auto;
		height: calc(55vw + 75px);
	}
	#path.image .title {
		flex-basis: calc(100% - 50px);
	}
	.home #path .title {
		margin-bottom: 100px;
	}
	#path h1 {
		font-size: 28px;
	}
	#path.error h1 {
		font-size: 50px;
	}

	#error .title {
		font-size: 28px;
	}
}

@media (max-width: 600px) {
	.container {
		padding-left: 20px;
		padding-right: 20px;
	}

	header .container {
		padding-left: 20px;
		padding-right: 20px;
	}

	#path .title,
	#path.image .title {
		flex-basis: 0 0 calc(100% - 30px);
		padding-left: 30px;
	}

	#services .text {
		padding: 20px;
	}

	#news .item {
		flex-basis: 100%;
	}

	#cube .text,
	#cube .image {
		flex-basis: 100%;
	}

	#jobs .item::after, #jobs .short::before {
		left: -20px;
		right: -20px;
	}
	#jobs .desc .title {
		margin-bottom: 20px;
	}
	#jobs .short {
		background-size: 0;
		padding-bottom: 220px;
	}
	#jobs .short::after {
		position: absolute;
		content: "";
		left: 0;
		right: 0;
		bottom: 0;
		height: 200px;
		background-image: inherit;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	#jobs .short ul {
		width: auto;
	}
	#jobs .spec {
		margin-top: 20px;
	}
	#jobs .demand, #jobs .offer {
		flex-basis: 100%;
	}

	#detail .blocks .item {
		flex-basis: 100%;
		border-bottom: 1px solid #E5DCD7;
	}
	#detail .blocks .item:last-child {
		border: none;
	}

	#files .item {
		flex-direction: column;
	}

	#gallery .arrows .prev {
		left: 10px;
	}
	#gallery .arrows .next {
		right: 10px;
	}

	#blocks .item {
		flex-basis: 100%;
	}

	#poster::after {
		left: 20px;
		right: 20px;
		width: calc(100% - 40px);
	}
	#poster .container {
		padding-left: 20px;
		padding-right: 20px;
	}
	#poster .text {
		flex-basis: calc(100% - 50px);
		padding: 30px 25px;
	}

	#posts .item {
		flex-basis: 100%;
	}

	#accordion .text {
		padding-left: 0;
		padding-right: 0;
	}

	#social .items {
		flex-wrap: wrap;
	}
	#social .item {
		flex-basis: 100%;
	}
	#social a {
		padding: 20px 20px 20px 60px;
	}
	#social a::before {
		left: 20px;
	}
}

@media (max-width: 500px) {
	main .banner .block {
		align-items: flex-start;
	}
	main .banner .foto {
		flex-basis: 45px;
		width: 45px;
		height: 45px;
	}

	#areas .item,
	#areas .items3 .item {
		flex-basis: calc(100% - 75px);
		padding-top: 0;
		padding-left: 75px;
	}

	#services .item {
		flex-basis: 100%;
	}

	#banner .block {
		align-items: flex-start;
	}
	#banner .foto {
		flex-basis: 45px;
		width: 45px;
		height: 45px;
	}

	#references .item {
		flex-basis: 100%;
	}
}

@media (max-width: 400px) {
	footer .menu {
		flex-direction: column;
		align-items: center;
	}
}

@media (max-width: 300px) {
	#jobs .banner .title, #jobs .banner .block {
		padding: 20px;
	}
}

/* svg */

main .more a::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 12">\
			<path d="M7 1L12 6L7 11" stroke="%23ED1C24" stroke-width="2" stroke-linecap="round"/>\
			<path d="M11 6L1 6" stroke="%23ED1C24" stroke-width="2" stroke-linecap="round"/>\
		</svg>');
}

main .arrows .prev::after, main .arrows .next::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 11 19">\
			<path d="M1 18L9.5 9.5L0.999999 1" stroke="%23ED1C24" stroke-width="2" stroke-linecap="round"/>\
		</svg>');
}
main .arrows .prev:hover::after, main .arrows .next:hover::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 11 19">\
			<path d="M1 18L9.5 9.5L0.999999 1" stroke="%23003876" stroke-width="2" stroke-linecap="round"/>\
		</svg>');
}


footer .phone a::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 23">\
			<path d="M15.9722 15.0938H14.5833C14.1997 15.0938 13.8889 15.4154 13.8889 15.8125V17.25C13.8889 17.6471 14.1997 17.9688 14.5833 17.9688H15.9722C16.3559 17.9688 16.6667 17.6471 16.6667 17.25V15.8125C16.6667 15.4154 16.3559 15.0938 15.9722 15.0938ZM13.8889 11.5V12.9375C13.8889 13.3346 14.1997 13.6562 14.5833 13.6562H15.9722C16.3559 13.6562 16.6667 13.3346 16.6667 12.9375V11.5C16.6667 11.1029 16.3559 10.7812 15.9722 10.7812H14.5833C14.1997 10.7812 13.8889 11.1029 13.8889 11.5ZM18.75 17.9688H20.1389C20.5226 17.9688 20.8333 17.6471 20.8333 17.25V15.8125C20.8333 15.4154 20.5226 15.0938 20.1389 15.0938H18.75C18.3663 15.0938 18.0556 15.4154 18.0556 15.8125V17.25C18.0556 17.6471 18.3663 17.9688 18.75 17.9688ZM18.75 13.6562H20.1389C20.5226 13.6562 20.8333 13.3346 20.8333 12.9375V11.5C20.8333 11.1029 20.5226 10.7812 20.1389 10.7812H18.75C18.3663 10.7812 18.0556 11.1029 18.0556 11.5V12.9375C18.0556 13.3346 18.3663 13.6562 18.75 13.6562ZM22.2222 1.4375H11.678C11.3911 0.601953 10.628 0 9.72222 0H6.25C5.34418 0 4.58116 0.601953 4.29427 1.4375H2.77778C1.24349 1.4375 0 2.72451 0 4.3125V20.125C0 21.713 1.24349 23 2.77778 23H22.2222C23.7565 23 25 21.713 25 20.125V4.3125C25 2.72451 23.7565 1.4375 22.2222 1.4375ZM6.25 2.15625H9.72222V16.5312H6.25V2.15625ZM22.9167 20.125C22.9167 20.5212 22.605 20.8438 22.2222 20.8438H2.77778C2.39497 20.8438 2.08333 20.5212 2.08333 20.125V4.3125C2.08333 3.91629 2.39497 3.59375 2.77778 3.59375H4.16667V16.5312C4.16667 17.7221 5.09939 18.6875 6.25 18.6875H9.72222C10.8728 18.6875 11.8056 17.7221 11.8056 16.5312V3.59375H13.8889V6.82812C13.8889 7.8191 14.6675 8.625 15.625 8.625H22.9167V20.125ZM22.9167 6.46875H15.9722V3.59375H22.2222C22.605 3.59375 22.9167 3.91629 22.9167 4.3125V6.46875Z"/>\
		</svg>');
}

footer .email a::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 19">\
			<path d="M22.6562 0H2.34375C1.04932 0 0 1.06331 0 2.375V16.625C0 17.9367 1.04932 19 2.34375 19H22.6562C23.9507 19 25 17.9367 25 16.625V2.375C25 1.06331 23.9507 0 22.6562 0ZM22.6562 2.375V4.394C21.5614 5.29744 19.816 6.70225 16.0846 9.66303C15.2623 10.3185 13.6334 11.8932 12.5 11.8748C11.3668 11.8934 9.73735 10.3182 8.91538 9.66303C5.18457 6.7027 3.43872 5.29759 2.34375 4.394V2.375H22.6562ZM2.34375 16.625V7.44157C3.4626 8.34461 5.04927 9.61182 7.46768 11.5308C8.53491 12.3821 10.4039 14.2614 12.5 14.25C14.5858 14.2614 16.4311 12.4094 17.5319 11.5312C19.9502 9.61227 21.5374 8.34471 22.6562 7.44162V16.625H2.34375Z"/>\
		</svg>');
}

footer .by a {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 97 14">\
			<path d="M89.6736 13.8144H91.8613V5.65125L95.2987 13.815H97.0004V0.152139H94.8821V7.94466L91.462 0.152139H89.6736V13.8144ZM83.5028 14C84.6491 14 85.4418 13.4939 85.8821 12.4824L86.0559 13.815H87.7226V6.88185H83.9021V8.45071H85.4133V9.73256C85.4133 10.5424 85.3003 11.1493 85.0748 11.5545C84.8482 11.9591 84.4467 12.1614 83.8682 12.1614C83.2778 12.1614 82.8752 11.9704 82.661 11.5879C82.4468 11.2059 82.3403 10.6265 82.3403 9.85071V4.13256C82.3403 3.62651 82.372 3.21649 82.4355 2.90143C82.499 2.5869 82.6352 2.32794 82.8435 2.12563C83.0523 1.92277 83.3704 1.82189 83.7988 1.82189C84.2035 1.82189 84.5075 1.90066 84.7094 2.05819C84.9123 2.21572 85.0457 2.44015 85.1087 2.73256C85.1722 3.02497 85.2045 3.41827 85.2045 3.91299V4.68879H87.6527V3.98096C87.6527 2.66566 87.3518 1.67353 86.7496 1.00401C86.1474 0.334489 85.1528 0 83.7638 0C82.2935 0 81.258 0.396532 80.6558 1.18906C80.0546 1.98212 79.7538 3.16039 79.7538 4.72277V9.31067C79.7538 10.8288 80.046 11.9909 80.6305 12.7942C81.2144 13.5981 82.1724 14 83.5028 14ZM75.2755 13.8144H77.8104V0.152139H75.2755V13.8144ZM70.0374 14C70.7322 14 71.3457 13.8565 71.878 13.57C72.4103 13.283 72.8247 12.8865 73.119 12.381C73.415 11.8749 73.5625 11.2955 73.5625 10.6432C73.5625 9.81133 73.3768 9.08031 73.0066 8.45071C72.6363 7.82112 72.1207 7.23091 71.4614 6.67954L69.7075 5.17919C69.3017 4.84146 69.0095 4.52424 68.8308 4.22536C68.651 3.92755 68.5617 3.55961 68.5617 3.12046C68.5617 2.74929 68.665 2.44339 68.8739 2.20116C69.0821 1.95946 69.3711 1.83861 69.7419 1.83861C70.2624 1.83861 70.6127 2.0269 70.7919 2.40401C70.9717 2.78058 71.0788 3.34004 71.1132 4.08185L73.3182 3.71067C73.238 2.57557 72.9334 1.67299 72.4076 1.00347C71.8807 0.335029 71.0099 0 69.7942 0C68.6602 0 67.7717 0.295106 67.1296 0.886397C66.4876 1.47661 66.1657 2.30582 66.1657 3.37349C66.1657 4.09318 66.3013 4.71198 66.5737 5.22883C66.846 5.7462 67.2539 6.2296 67.798 6.679L69.5686 8.18042C70.1009 8.63037 70.4922 9.04416 70.7414 9.42019C70.9895 9.79676 71.1138 10.2553 71.1138 10.7954C71.1138 11.1887 71.0185 11.501 70.8275 11.7309C70.6369 11.9612 70.3447 12.0772 69.9508 12.0772C69.418 12.0772 69.0272 11.849 68.7786 11.3937C68.5294 10.9378 68.3873 10.278 68.3534 9.41156L66.1485 9.83345C66.2061 11.2162 66.55 12.2563 67.1813 12.9539C67.812 13.652 68.7641 14 70.0374 14ZM58.8163 13.8144H64.7535V12.1107H61.3678V7.57349H64.0071V5.8363H61.3678V1.90605H64.7196V0.152139H58.8163V13.8144ZM51.6907 12.0778V1.92277H52.455C53.0104 1.92277 53.4183 1.99884 53.6788 2.15098C53.9393 2.30258 54.1099 2.53619 54.1906 2.85071C54.2713 3.16578 54.3128 3.62651 54.3128 4.23399V9.46227C54.3128 10.1366 54.2783 10.6459 54.2089 10.9885C54.1389 11.3316 53.9769 11.5987 53.7224 11.7897C53.4678 11.9807 53.0572 12.0767 52.4894 12.0767H51.6907V12.0778ZM49.1387 13.8144H52.5583C53.6465 13.8144 54.5092 13.6542 55.1459 13.3332C55.7825 13.0127 56.2362 12.5326 56.5091 11.8911C56.7809 11.2502 56.917 10.4129 56.917 9.37757V4.40231C56.917 3.39021 56.7809 2.57827 56.5091 1.96539C56.2362 1.35198 55.7766 0.897187 55.1287 0.598844C54.4801 0.30104 53.5889 0.152139 52.455 0.152139H49.1387V13.8144Z"/>\
			<path d="M45.7397 13.8144H47.8644V11.5037H45.7397V13.8144ZM39.4365 9.07492L40.3621 3.34005L41.2873 9.07492H39.4365ZM36.2897 13.8144H38.6286L39.184 10.6605H41.5564L42.0951 13.8144H44.4001L41.6742 0.152151H39.0156L36.2897 13.8144ZM30.2884 12.0778V1.92279H31.0284C31.5671 1.92279 31.9622 1.99886 32.2146 2.15099C32.467 2.30259 32.6327 2.5362 32.7113 2.85072C32.7894 3.16579 32.8292 3.62706 32.8292 4.23454V9.46282C32.8292 10.1372 32.7953 10.6465 32.728 10.9891C32.6607 11.3322 32.5036 11.5992 32.2571 11.7902C32.0101 11.9812 31.6118 12.0772 31.0623 12.0772L30.2884 12.0778ZM27.8149 13.8144H31.1296C32.1839 13.8144 33.0197 13.6542 33.6365 13.3332C34.2532 13.0127 34.694 12.5326 34.9577 11.8911C35.2209 11.2502 35.3527 10.4129 35.3527 9.37758V4.40232C35.3527 3.39022 35.2209 2.57828 34.9577 1.96541C34.694 1.352 34.2478 0.897199 33.6198 0.598856C32.9912 0.301053 32.1279 0.152151 31.0284 0.152151H27.8149V13.8144ZM21.0155 6.00464V1.85589H21.9412C22.6252 1.85589 23.0988 2.01936 23.3625 2.34521C23.6262 2.67107 23.7581 3.19385 23.7581 3.91354C23.7581 4.65535 23.6096 5.18999 23.3125 5.51639C23.0149 5.84225 22.5133 6.00464 21.8061 6.00464H21.0155ZM18.542 13.8144H21.0155V7.55623H22.1936L23.8254 13.8144H26.3155L24.4147 7.08363C25.0314 6.83654 25.4663 6.44055 25.7187 5.89512C25.9706 5.34968 26.097 4.64456 26.097 3.77812C26.097 2.45096 25.7435 1.51546 25.0368 0.969492C24.3302 0.424058 23.2592 0.151611 21.8233 0.151611H18.542V13.8144ZM13.01 14C13.9965 14 14.771 13.8198 15.3318 13.46C15.8926 13.1007 16.2849 12.586 16.5098 11.917C16.7337 11.2486 16.8462 10.4075 16.8462 9.39539V0.152151H14.44V9.68186C14.44 10.469 14.3474 11.0765 14.1623 11.5037C13.9772 11.931 13.5929 12.1447 13.01 12.1447C12.438 12.1447 12.0591 11.931 11.8739 11.5037C11.6888 11.0765 11.5962 10.469 11.5962 9.68186V0.152151H9.17333V9.39539C9.17333 10.4188 9.28528 11.2621 9.51024 11.9251C9.73412 12.5881 10.127 13.1007 10.6878 13.46C11.2486 13.8198 12.0225 14 13.01 14ZM2.47349 12.06V7.45535H3.34858C4.07728 7.45535 4.59609 7.64417 4.905 8.02074C5.21338 8.39731 5.3673 8.9967 5.3673 9.81674C5.3673 10.6152 5.22737 11.1887 4.94698 11.5372C4.66659 11.8857 4.16177 12.06 3.43253 12.06H2.47349ZM2.47349 5.73489V1.88934H2.97831C3.77482 1.88934 4.34368 2.01558 4.68596 2.26861C5.02825 2.52163 5.19939 2.99747 5.19939 3.6945C5.19939 4.41419 5.06753 4.93427 4.80382 5.25473C4.54011 5.57519 4.04929 5.73543 3.33135 5.73543L2.47349 5.73489ZM0 13.8144H3.93735C5.19347 13.8144 6.14175 13.4799 6.78111 12.811C7.42047 12.142 7.74015 11.1493 7.74015 9.834C7.74015 7.88857 6.95494 6.76371 5.38452 6.46051C6.02389 6.35909 6.51148 6.07531 6.84838 5.60864C7.18475 5.14198 7.3532 4.49242 7.3532 3.66051C7.3532 2.37866 7.01091 1.47338 6.32634 0.944675C5.64231 0.416505 4.65529 0.152151 3.36526 0.152151H0V13.8144Z"/>\
		</svg>');
}

main .more a::after, main .arrows .prev::after, main .arrows .next::after {
	background-image: var(--svg);
	background-repeat: no-repeat;
	background-position: center;
}
main .arrows .prev::after {
	transform: rotate(180deg);
}

footer .phone a::before, footer .email a::before, footer .by a {
	mask-image: var(--svg);
	mask-repeat: no-repeat;
	mask-position: center;
}