/*
Theme Name: BSN
Theme URI: 
Author: infocount.cz
Author URI: https://infocount.cz/
Description: Theme for brnenska sprava nemovitosti
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bsn-theme
*/

/*
@font-face {
	font-family: 'DMSans';
	src: url('font/DMSans_18pt-Light.ttf') format('truetype');
	font-weight: 300;
}
@font-face {
	font-family: 'DMSans';
	src: url('font/DMSans_18pt-Regular.ttf') format('truetype');
	font-weight: 400;
}
@font-face {
	font-family: 'DMSans';
	src: url('font/DMSans_18pt--Medium.ttf') format('truetype');
	font-weight: 500;
}
@font-face {
	font-family: 'DMSans';
	src: url('font/DMSans_18pt-Bold.ttf') format('truetype');
	font-weight: 700;
}
*/

html, body, form, fieldset, legend, h1, h2, h3, ul, li, p {
	margin: 0;
	padding: 0;
}

body, h1, h2, h3, div, p, li, a, input, textarea, select, button {
	color: #000000;
	font-family: 'DM Sans', sans-serif;
	font-size: 22px;
	font-weight: 300;
	line-height: 30px;
}

body {
	background-color: #d1e4ed;
}

a {
	color: #448fb0;
	text-decoration: none;
	transition: color .5s ease;
}
a:hover {
	color: #ffffff;
	text-decoration: none;
}

.ekko-lightbox a {
	text-decoration: none;
	transition: none;
}
.ekko-lightbox a span {
	color: #ffffff;
}

img {
	display: block;
}

ul {
	list-style-type: none;
}

*, ::after, ::before {
	box-sizing: unset;
}

.container {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1720px;
	padding: 120px 60px;
	margin: 0 auto;
}

/* header */

header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background-color: #ffffff;
	border-radius: 0 0 80px 80px;
	z-index: 2;
}
.home header {
	background-color: unset;
	border-radius: 0;
}

header .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 40px;
	max-width: unset;
	padding-top: 40px;
	padding-bottom: 40px;
}

header .brand a {
	position: relative;
	display: block;
	width: 222px;
	height: 95px;
	overflow: hidden;
	text-indent: -99999px;
	background-size: cover;
}
header .brand a::before,
header .brand a::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition: background-color .5s ease;
}
header .brand a::before {
	background-color: #74b9d7;
}
header .brand a::after {
	background-color: transparent;
}
header .brand a:hover::before,
header .brand a:hover::after {
	background-color: #646363;
}

header .menu {
	display: flex;
	gap: 40px;
}
header .menu a {
	position: relative;
	display: block;
	color: #000000;
	font-size: 28px;
	font-weight: 700;
	line-height: 36px;
}
header .menu a:hover {
	color: #74b9d7;
}

.dark header .menu a {
	color: #ffffff;
}
.dark header .menu a:hover {
	color: #000000;
}

header .mobile {
	display: none;
}
header .mobile strong {
	position: relative;
	cursor: pointer;
	display: block;
	width: 48px;
	height: 48px;
}
header .mobile span {
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
	height: 10px;
	background-color: #74b9d7;
	margin: auto;
}
header .mobile span:nth-child(1) {
	top: 0;
}
header .mobile span:nth-child(2) {
	top: 0;
	width: 75%;
	bottom: 0;
	transition: width .2s ease;
}
header .mobile span:nth-child(3) {
	bottom: 0;
}
header.active .mobile span,
header .mobile:hover span {
	background-color: #000000;
}
header.active .mobile:hover span {
	background-color: #ffffff;
}
header .mobile:hover span:nth-child(2) {
	width: 100%;
}

header.active .mobile span {
	transition: transform .5s ease;
}
header.active .mobile span:nth-child(1) {
	bottom: 0;
	transform: rotate(45deg);
}
header.active .mobile span:nth-child(2) {
	display: none;
}
header.active .mobile span:nth-child(3) {
	top: 0;
	transform: rotate(-45deg);
}

/* main */

main .header {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

main .header .notitle {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	text-indent: -99999px;
}

main .header .title {
	color: #74b9d7;
	font-size: 44px;
	font-weight: 700;
	line-height: 60px;
}

main .header .description {
	color: #000000;
	font-size: 22px;
	font-weight: 700;
	line-height: 30px;
}
main .header .description a {
	color: #ffffff;
}
main .header .description a:hover {
	color: #000000;
}

main .button {
	overflow: hidden;
	line-height: 24px;
	background-color: #d1e4ed;
	border-radius: 15px;
}
main .button a {
	position: relative;
	display: inline-block;
	color: #000000;
	font-size: 20px;
	font-weight: 300;
	line-height: 24px;
	letter-spacing: 3px;
	text-transform: uppercase;
	padding: 25px 125px 25px 25px;
	border: none;
	transition: color .5s ease;
	z-index: 0;
}
main .button a::before,
main .button a::after {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
}
main .button a::before {
	width: 100px;
	background-color: #448fb0;
	border-radius: 15px;
	transition: width .5s ease;
	z-index: -1;
}
main .button a::after {
	left: calc(100% - 100px);
	margin: auto;
}
main .button a:hover {
	color: #ffffff;
}
main .button a:hover::before {
	width: 100%;
}

/* home */

#home {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* path */

#path .container {
	padding-top: 300px;
	padding-bottom: 0;
}

.error #path .container {
	padding-bottom: 120px;
}

.error #path .header {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.error #path .title.error {
	position: relative;
	width: 75vw;
	max-width: 750px;
	height: 30vw;
	max-height: 300px;
	overflow: hidden;
	text-indent: -99999px;
}
.error #path .title.error::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #74bad7;
}

.error #path .button {
	background-color: #448fb0;
}
.error #path .button a {
	color: #ffffff;
	padding-right: 25px;
}
.error #path .button a:hover {
	color: #000000;
}
.error #path .button a::before,
.error #path .button a::after {
	content: none;
}

/* important */

#important {
	position: absolute;
	display: flex;
	align-items: center;
	top: 0;
	right: 0;
	height: max(100vh - 120px, 700px);
}

#important .container {
	cursor: pointer;
	display: flex;
	align-items: center;
	width: auto;
	max-width: 60px;
	background-color: #74b9d7;
	padding: 0;
	overflow: hidden;
	border-radius: 40px 0 0 40px;
	transition: max-width 2s ease;
	z-index: 1;
}
#important.active .container {
	max-width: 100vw;
}

#important .header .title {
	position: relative;
	color: #ffffff;
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	writing-mode: sideways-lr;
	white-space: nowrap;
	transition: color .5s ease;
	padding: 0 13px 40px 13px;
}
#important .header .title::before {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: 0;
	width: 30px;
	height: 30px;
	background-color: #ffffff;
	transition: background-color .5s ease;
	margin: 0 auto;
}
#important:hover .header .title {
	color: #000000;
}
#important:hover .header .title::before {
	background-color: #000000;
}

#important .important {
	display: flex;
	gap: 40px;
	padding: 40px;
}

#important article {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
#important article:first-child {
	width: 400px;
}
#important article:last-child {
	width: 500px;
}

#important .name {
	font-size: 22px;
	font-weight: 700;
	line-height: 30px;
}

#important table {
	border: none;
}
#important table td {
	font-size: 22px;
	font-weight: 300;
	line-height: 30px;
	padding: 5px 0;
}
#important table td:first-child {
	text-align: left;
}
#important table td:last-child {
	text-align: right;
	white-space: nowrap;
}
#important table a {
	color: #000000;
}
#important table a:hover {
	color: #ffffff;
}

/* hero */

#hero {
	position: relative;
}
#hero::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	height: max(100vh - 120px, 700px);
	background: url('img/hero.webp') center no-repeat;
	background-size: cover;
	border-radius: 0 0 80px 80px;
}

#hero .container {
	display: flex;
	flex-direction: column;
	gap: 120px;
	max-width: 1320px;
	padding-top: max(100vh - 240px, 580px);
}

#hero .header {
	gap: 40px;
	background-color: #ffffff;
	padding: 40px 120px 40px 180px;
	border-radius: 40px;
}

#hero .header .title {
	position: relative;
}
#hero .header .title::before {
	position: absolute;
	content: "";
	top: 0;
	left: -125px;
	right: 0;
	width: 100px;
	height: 83px;
	background-color: #73bad6;
	margin: auto 0;
}

#hero .footer .text p {
	font-size: 26px;
	font-weight: 300;
	line-height: 40px;
	text-align: center;
}

/* services */

#services {
	position: relative;
}
#services::before,
#services::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	height: 1px;
	background-color: #ffffff;
}
#services::before {
	top: 0;
}
#services::after {
	bottom: 0;
}

#services .container {
	display: flex;
	max-width: 1600px;
	padding: 0;
}
#services .container::before,
#services .container::after {
	position: absolute;
	content: "";
	bottom: 0;
	width: 1px;
	background-color: #ffffff;
	z-index: 1;
}
#services .container::before {
	top: 0;
	left: 0;
}
#services .container::after {
	top: -60px;
	left: 50%;
}

#services .header {
	justify-content: space-between;
	width: calc(50% - 120px);
	min-height: 600px;
	background-size: 0;
	padding: 40px 60px;
}
#services .header::before,
#services .header::after {
	position: absolute;
	content: "";
	top: 0;
	z-index: -1;
}
#services .header::before {
	left: 50%;
	bottom: 0;
	width: 50vw;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: opacity .5s ease;
	opacity: 1;
}
#services .header.transparent::before {
	opacity: 0;
}
#services .header::after {
	left: 50%;
	width: 608px;
	max-width: 50vw;
	height: 259px;
	background-color: #d1e4ed;
	mask-position: top left !important;
}

#services .titles {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
#services .titles li {
	position: relative;
	cursor: pointer;
	font-size: 30px;
	font-weight: 700;
	line-height: 46px;
	background-size: 0;
	transition: color .5s ease;
}
#services .titles li:hover,
#services .titles li.active {
	color: #74b9d7;
}
#services .titles li.active::before {
	position: absolute;
	content: "";
	left: -20px;
	top: 0;
	bottom: 0;
	width: 8px;
	background-color: #74b9d7;
}

#services .descriptions {
	position: relative;
}
#services .descriptions p {
	position: absolute;
	bottom: 0;
	font-size: 26px;
	font-weight: 300;
	line-height: 40px;
	overflow: hidden;
	transition: opacity .5s ease;
	opacity: 0;
}
#services .descriptions p.active {
	opacity: 1;
}

/* articles */

#articles .container {
	padding-top: 40px;
}

#articles article {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

#articles .articles {
	display: flex;
	flex-direction: column;
	gap: 120px;
}
#articles article {
	position: relative;
}
#articles article::before {
	position: absolute;
	content: "";
	top: -60px;
	left: calc(50% - 50vw);
	right: calc(50% - 50vw);
	height: 1px;
	background-color: #ffffff;
}
#articles article:first-child::before {
	content: none;
}

.contacts #articles .articles {
	flex-direction: row;
	justify-content: space-between;
	gap: 20px;
}
.contacts #articles article {
	flex: 0 0 calc(33.333334% - 2*20px/3);
	max-width: 330px;
}
.contacts #articles article::before {
	content: none;
}

#articles .date {
	color: #878787;
	font-size: 18px;
}
#articles .name {
	font-size: 30px;
	font-weight: 700;
	line-height: 30px;
}
#articles .noname {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	text-indent: -99999px;
}
#articles ul li {
	position: relative;
	padding-left: 22px;
}
#articles ul li::before {
	position: absolute;
	content: "–";
	top: 0;
	left: 0;
	color: #74b9d7;
}
#articles table {
	width: 100%;
}
#articles table td:first-child {
	text-align: left;
}
#articles table td:last-child {
	text-align: right;
}
#articles strong {
	font-weight: 700;
}
#articles .small {
	font-size: 18px;
}

#articles form {
	display: flex;
	flex-direction: column;
	gap: 30px;
}
#articles form .hidden-fields-container {
	display: none;
}

#articles form fieldset,
#articles form .fieldset {
	display: flex;
	flex-direction: column;
	gap: 15px;	
	border: none;
}
#articles form fieldset legend,
#articles form .fieldset .legend,
#articles form .fieldset .legend p {
	width: 100%;
	color: #000000;
	font-size: 22px;
	font-weight: 700;
	line-height: 30px;
}
#articles form fieldset .description {
}

#articles form .block {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
#articles form .block2 .wrapper {
	flex: 0 0 calc(50% - 30px/2);
}
#articles form .block3 .wrapper {
	flex: 0 0 calc(33.333334% - 2*30px/3);
}

#articles form .table {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
#articles form .table .tr p,
#articles form .table .labels p {
	display: flex;
	gap: 30px;
}
#articles form .table .tr .td,
#articles form .table .labels label {
	flex: 0 0 calc(33.333334% - 2*30px/3);
}

#articles form label {
	display: block;
	padding-bottom: 10px;
}
#articles form .table .labels label {
	padding-bottom: 0;
}

#articles form .checkboxs .wpcf7-checkbox {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 30px;
}
#articles form .checkboxs .wpcf7-list-item {
	flex: 0 0 calc(33.333334% - 2*30px/3);
}
#articles form .checkbox .wpcf7-list-item-label {
	position: relative;
	cursor: pointer;
	width: auto;
	font-size: 18px;
	font-weight: 300;
	line-height: 32px;
	text-transform: none;
	padding-left: 35px;
	z-index: 0;
}
#articles form .checkboxs .wpcf7-list-item-label {
	text-transform: uppercase;
}
#articles form .checkbox .wpcf7-list-item-label::before,
#articles form .checkbox .wpcf7-list-item-label::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto 0;
}
#articles form .checkbox .wpcf7-list-item-label::before {
	left: 0;
	width: 22px;
	height: 22px;
	background-color: #ffffff;
	border-radius: 3px;
}
#articles form .checkbox .wpcf7-list-item-label::after {
	left: 4px;
	width: 18px;
	height: 18px;
	background-color: transparent;
}
#articles form .checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	background-color: #448fb0;
}

#articles form .radio wpcf7-radio {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
#articles form .radio .wpcf7-list-item {
	display: block;
}
#articles form .radio .wpcf7-list-item-label {
	position: relative;
	cursor: pointer;
	width: auto;
	font-size: 18px;
	font-weight: 300;
	line-height: 32px;
	text-transform: none;
	padding-left: 35px;
	z-index: 0;
}
#articles form .radio .wpcf7-list-item-label::before,
#articles form .radio .wpcf7-list-item-label::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto 0;
	border-radius: 50%;
}
#articles form .radio .wpcf7-list-item-label::before {
	left: 0;
	width: 22px;
	height: 22px;
	background-color: #ffffff;
}
#articles form .radio .wpcf7-list-item-label::after {
	left: 5px;
	width: 12px;
	height: 12px;
	background-color: transparent;
}
#articles form .radio input[type="radio"]:checked + .wpcf7-list-item-label::after {
	background-color: #448fb0;
}


#articles form input,
#articles form select,
#articles form textarea {
	display: block;
	width: calc(100% - 50px);
	font-size: 22px;
	font-weight: 300;
	line-height: 30px;
	background-color: #ffffff;
	padding: 15px 25px;
	outline: none;
	border: none;
	border-radius: 15px;
}
#articles form .wrapper.small input {
	display: inline-block;
	width: auto;
}
#articles form .table input {
	display: inline-block;
	max-width: 400px;
}
#articles form .table .unit input {
	max-width: min(400px, 100% - 100px);
}
#articles form input[type="radio"],
#articles form input[type="checkbox"] {
	position: absolute;
	width: 0;
	height: 0;
	opacity: 0;
}
#articles form input[type="submit"] {
	cursor: pointer;
	display: inline-block;
	width: auto;
	color: #ffffff;
	font-size: 20px;
	font-weight: 300;
	line-height: 24px;
	letter-spacing: 3px;
	text-transform: uppercase;
	background-color: #448fb0;
	transition: color .5s ease;
	padding: 25px;
	border: none;
	border-radius: 15px;
}
#articles form input[type="submit"]:hover {
	color: #000000;
}

#articles form .select .wpcf7-form-control-wrap {
	position: relative;
	display: block;
	background-color: #ffffff;
	border-radius: 15px;
}
#articles form .select .wpcf7-form-control-wrap::before {
	position: absolute;	
	content: "";
	top: 0;
	right: 15px;
	bottom: 0;
	width: 18px;
	height: 18px;
	background-color: #448fb0;
	margin: auto 0;
}
#articles form .select select {
	position: relative;
	background-color: transparent;
	appearance: none;
}

#articles .gallery {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
#articles .gallery .item {
	flex: 0 0 calc(25% - 3*40px/4);
}
#articles .gallery a {
	display: block;
	overflow: hidden;
	background-color: #ffffff;
	border-radius: 20px;
}
#articles .gallery img {
	width: 100%;
	transition: opacity .5s ease;
}
#articles .gallery a:hover img {
	opacity: .5;
}

#articles .files {
	position: relative;
	z-index: 1;
}
#articles .files .item {
	position: relative;
	padding-left: 35px;
}
#articles .files .item::before {
	position: absolute;	
	content: "";
	top: 0;
	left: 0;
	width: 26px;
	height: 26px;
	background-color: #74b9d7;
}
#articles .files span {
	color: #878787;
}
#articles .files span::before {
	content: "[";
}
#articles .files span::after {
	content: "]";
}

/* call */

#services + #call {
	padding-top: 120px;
}
#call:last-child {
	padding-bottom: 120px;
}

#call .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 40px;
	max-width: 1600px;
	background-color: #74b9d7;
	padding-top: 40px;
	padding-bottom: 40px;
	border-radius: 20px;
}

#call .header .title {
	color: #ffffff;
}

#call .header .description a {
	color: #000000;
	font-weight: 700;
}
#call .header .description a:hover {
	color: #ffffff;
}

#call .button a::after {
	width: 52px;
	height: 48px;
	background-color: #ffffff;
}

/* news */

#news .container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

#news .news {
	display: flex;
	gap: 40px;
}
#news .news article {
	flex: 0 0 calc(33.333334% - 2*40px/3);
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#news .date {
	color: #878787;
	font-size: 18px;
}

#news .name {
	position: relative;
	font-weight: 700;
}
#news .name::before {
	position: absolute;
	content: "";
	top: 0;
	left: -20px;
	bottom: 0;
	width: 8px;
	background-color: #74b9d7;
}

/* map */

#map {
	position: relative;
	background-color: #f8f8f8;
}
#map::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 60px;
	height: 76px;
	background: url("img/marker.svg") no-repeat;
	background-size: cover;
	transform: translateY(-38px);
	margin: auto;
}

#map .container {
	cursor: pointer;
	max-width: none;
	padding: 0;
}

#map iframe {
	display: block;
	pointer-events: none;
	filter: grayscale(1);
	margin-bottom: -12px;
}

/* footer */

#footer {
	background-color: #74b9d7;
}

#footer .container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

#footer .brand a {
	position: relative;
	display: block;
	width: 184px;
	height: 78px;
	overflow: hidden;
	text-indent: -99999px;
}
#footer .brand a::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ffffff;
}
#footer .brand a:hover::before {
	background-color: #000000;
}

#footer .footer {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 40px;
}
#footer .footer > div {
	flex: 0 0 calc(25% - 3*40px/4);
}

#footer .address,
#footer .menu ul,
#footer .contact,
#footer .hours {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#footer .hours {
	position: relative;
	padding: 40px 0;
}
#footer .hours::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 1px solid #ffffff;
	border-radius: 20px;
}
#footer .hours p {
	padding: 0 40px;
}

#footer .name,
#footer p,
#footer a {
	color: #ffffff;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}
#footer a:hover {
	color: #000000;
}

/* copy */

#copy {
	position: relative;
	background-color: #74b9d7;
}
#copy::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background-color: #d1e4ed;
}

#copy .container {
	padding-top: 40px;
	padding-bottom: 40px;
}

#copy .header {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#copy .copy,
#copy p,
#copy a {
	color: #ffffff;
	font-size: 16px;
	font-weight: 300;
	line-height: 22px;
	text-transform: uppercase;
}
#copy a:hover {
	color: #000000;
}

/* media */

@media (max-width: 1600px) {
	#call .container {
		border-radius: unset;;
	}
}

@media (max-width: 1200px) {
	.container {
		padding: 100px 35px;
	}

	header {
		border-radius: 0 0 60px 60px;
	}
	header .container {
		gap: 35px;
		padding-top: 35px;
		padding-bottom: 35px;
	}
	header .brand a {
		width: 164px;
		height: 70px;
	}
	header .menu {
		gap: 35px;
	}
	header .menu a {
		font-size: 24px;
		line-height: 30px;
	}

	#path .container {
		padding-top: 260px;
	}

	body:not(.home) #important {
		display: none;
	}
	#important article:first-child {
		width: 350px;
	}
	#important article:last-child {
		width: 450px;
	}
	#important table td {
		font-size: 20px;
		line-height: 28px;
	}

	#hero::before {
		border-radius: 0 0 40px 40px;
	}
	#hero .container {
		gap: 100px;
	}
	#hero .footer .text p {
		font-size: 24px;
		line-height: 38px;
	}

	#services .container {
		padding: 66.666667vw 35px 0 35px;
	}
	#services .container::before {
		top: -50px;
		left: 35px;
	}
	#services .container::after {
		top: 0;
		left: unset;
		right: 35px;
	}
	#services .header {
		width: 100%;
		min-height: unset;
	}
	#services .header::before {
		left: 35px;
		right: 35px;
		bottom: unset;
		width: unset;
		height: 66.666667vw;
	}
	#services .header::after {
		left: 35px;
	}
	#services .descriptions p {
		position: static;
		display: none;
		font-size: 24px;
		line-height: 38px;
	}
	#services .descriptions p.active {
		display: block;
	}

	#services + #call {
		padding-top: 100px;
	}
	#call:last-child {
		padding-bottom: 100px;
	}

	#articles .gallery .item {
		flex-basis: calc(33.333334% - 2*40px/3);
	}

	#news .news article {
		flex-basis: calc(50% - 40px/2);
	}
	#news .news article:nth-child(n + 3) {
		display: none;
	}
}

@media (max-width: 1000px) {
	.container {
		padding: 60px 20px;
	}

	header {
		border-radius: 0 0 40px 40px;
	}
	header .container {
		gap: 20px;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	header .menu {
		position: absolute;
		display: none;
		flex-direction: column;
		gap: 35px;
		top: 0;
		left: 0;
		right: 0;
		background-color: #74b9d7;
		padding: 60px 40px;
	}
	header.active .menu {
		display: flex;
	}
	header .menu a {
		display: inline-block;
		font-size: 44px;
		line-height: 56px;
	}
	header .menu a:hover {
		color: #ffffff;
	}
	header .mobile {
		display: block;
	}

	main .header .description,
	main .header .description a {
		font-size: 18px;
		line-height: 26px;
	}

	#path .container {
		padding-top: 220px;
	}

	#important {
		height: max(100vh - 90px, 700px);
	}
	#important .container {
		transition-duration: 1s;
	}
	#important .important {
		flex-direction: column;
		gap: 20px;
	}
	#important article {
		gap: 5px;
	}
	#important article:first-child {
		width: 450px;
	}

	#hero::before {
		height: max(100vh - 90px, 700px);
		border-radius: 0 0 20px 20px;
	}
	#hero .container {
		gap: 60px;
		padding-top: max(100vh - 210px, 610px);
	}
	#hero .header {
		padding-left: 140px;
		padding-right: 60px;
	}
	#hero .header .title {
		font-size: 30px;
		line-height: 38px;
	}
	#hero .header .title::before {
		left: -100px;
		width: 80px;
		height: 66px;
	}
	#hero .footer .text p {
		font-size: 22px;
		line-height: 34px;
	}

	#services .container {
		padding: 66.666667vw 20px 0 20px;
	}
	#services .container::before {
		top: -30px;
		left: 20px;
	}
	#services .container::after {
		right: 20px;
	}
	#services .header {
		padding: 40px;
	}
	#services .header::before {
		left: 20px;
		right: 20px;
	}
	#services .header::after {
		left: 20px;
	}
	#services .descriptions p {
		font-size: 22px;
		line-height: 34px;
	}

	#services + #call {
		padding-top: 60px;
	}
	#call:last-child {
		padding-bottom: 60px;
	}

	#call .container {
		flex-direction: column;
		align-items: flex-start;
	}

	.contacts #articles .articles {
		flex-direction: column;
		gap: 60px;
	}
	.contacts #articles article {
		flex-direction: row;
		flex-wrap: wrap;
		max-width: unset;
	}
	.contacts #articles article .name {
		flex: 0 0 100%;
	}
	.contacts #articles article p {
		flex: 0 0 calc(50% - 30px/2);
	}

	#articles form p,
	#articles form label,
	#articles form fieldset legend,
	#articles form .fieldset .legend,
	#articles form .fieldset .legend p,
	#articles form .table .tr .td,
	#articles form .radio .wpcf7-list-item-label,
	#articles form .checkbox .wpcf7-list-item-label {
		font-size: 18px;
		line-height: 26px;
	}
	#articles form .block {
		flex-direction: column;
	}
	#articles form .table .tr p,
	#articles form .table .labels p {
		gap: 10px;
	}
	#articles form .table .tr .td,
	#articles form .table .labels label {
		flex-basis: calc(33.333334% - 2*10px/3 - 50px/3);
	}
	#articles form .table .tr .unit {
		flex-basis: calc(33.333334% - 2*10px/3 - 50px/3 + 50px);
	}
	#articles form .checkboxs .wpcf7-list-item {
		flex-basis: auto;
	}
	#articles .gallery .item {
		flex-basis: calc(50% - 40px/2);
	}

	#news .container {
		gap: 20px;
	}
	#news .name::before {
		content: none;
	}
	#news .description,
	#news .description a {
		font-size: 18px;
		line-height: 26px;
	}

	#footer .footer > div {
		flex-basis: calc(50% - 40px/2);
	}
}

@media (max-width: 800px) {
	#hero .header .description br {
		display: none;
	}
}

@media (max-width: 600px) {
	.container {
		padding: 40px 10px;
	}

	header {
		border-radius: 0 0 20px 20px;
	}
	header .menu a {
		font-size: 30px;
		line-height: 38px;
	}

	main .header .title {
		font-size: 30px;
		line-height: 38px;
	}
	main .header .description,
	main .header .description a {
		font-size: 16px;
		line-height: 24px;
	}

	#path .container {
		padding-top: 180px;
	}

	#important {
		height: max(100vh - 80px, 700px);
	}
	#important .important {
		padding: 20px 20px 20px 10px;
	}
	#important article:first-child,
	#important article:last-child {
		width: calc(100vw - 88px);
	}
	#important .name {
		font-size: 20px;
		line-height: 22px;
	}
	#important table td {
		font-size: 16px;
		line-height: 20px;
		padding: 3px 0;
	}
	#important table a {
		font-size: 16px;
		line-height: 20px;
	}

	#hero::before {
		height: max(100vh - 80px, 700px);
	}
	#hero .container {
		gap: 40px;
		padding-top: max(100vh - 200px, 620px);
	}
	#hero .header {
		padding-left: 30px;
		padding-right: 30px;
	}
	#hero .header .title {
		font-size: 26px;
		line-height: 32px;
		padding-left: 80px;
	}
	#hero .header .title::before {
		left: 0;
		width: 60px;
		height: 50px;
	}
	#hero .footer .text p {
		font-size: 18px;
		line-height: 30px;
	}

	#services .container {
		padding-left: 10px;
		padding-right: 10px;
	}
	#services .container::before {
		top: -20px;
		left: 10px;
	}
	#services .container::after {
		right: 10px;
	}
	#services .header {
		padding: 30px;
	}
	#services .header::before {
		left: 10px;
		right: 10px;
	}
	#services .header::after {
		left: 10px;
	}
	#services .titles li {
		font-size: 20px;
		line-height: 30px;
	}
	#services .titles li.active::before {
		left: -15px;
	}
	#services .descriptions p {
		font-size: 18px;
		line-height: 30px;
	}

	#services + #call {
		padding-top: 40px;
	}
	#call:last-child {
		padding-bottom: 40px;
	}

	#call .button a span {
		display: none;
	}

	#articles .articles {
		gap: 80px;
	}
	#articles article {
		gap: 20px;
	}
	#articles article::before {
		top: -40px;
	}
	.contacts #articles article {
		flex-direction: column;
	}
	#articles article .name {
		font-size: 20px;
	}
	#articles article p,
	#articles article li,
	#articles article td,
	#articles article a,
	#articles .files .item {
		font-size: 18px;
	}
	#articles .small {
		font-size: 16px;
	}
	#articles .gallery {
		gap: 20px;
	}
	#articles .gallery .item {
		flex-basis: 100%;
	}

	#news .news {
		flex-direction: column;
	}
	#news .description,
	#news .description a {
		font-size: 16px;
		line-height: 24px;
	}

	#footer .footer {
		flex-direction: column;
	}
}

@media (max-width: 500px) {
	#important {
		height: max(100vh - 140px, 700px);
	}

	#hero::before {
		height: max(100vh - 140px, 700px);
	}
	#hero .container {
		padding-top: max(100vh - 260px, 580px);
	}
}

/* svg */

header .brand a::before,
#services .header::after,
#footer .brand a::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 614 260">\
			<path d="M97.387,65.053c-18.721,0-36.221,5.315-51.081,14.507V0H.086v158.516c-.052,1.302-.086,2.609-.086,3.924,0,53.699,43.687,97.387,97.387,97.387s97.387-43.688,97.387-97.387-43.687-97.387-97.387-97.387ZM97.387,212.705c-27.716,0-50.265-22.549-50.265-50.265s22.549-50.265,50.265-50.265,50.265,22.549,50.265,50.265-22.549,50.265-50.265,50.265Z"/>\
			<path d="M309.892,70.126c-44.007,0-74.079,22.788-74.079,55.5,0,33.447,31.172,46.311,57.943,52.559,26.038,5.881,48.041,9.556,48.041,25.361,0,12.129-12.468,20.95-30.072,20.95-19.07,0-32.272-9.924-33.372-24.626h-46.208c0,34.55,33.005,58.808,79.947,58.808,45.841,0,78.113-23.156,78.113-56.603,0-37.49-37.406-48.516-63.811-54.03-25.671-5.513-43.64-10.292-43.64-24.626,0-11.761,11.368-19.848,27.504-19.848,17.603,0,29.705,9.924,30.805,24.258h43.641c0-33.815-30.805-57.705-74.813-57.705Z"/>\
			<path d="M607.962,147.238c-.054-47-38.302-85.22-85.308-85.22s-85.253,38.22-85.308,85.22h-.002v111.387h47.122v-111.31c.012-21.052,17.138-38.175,38.188-38.175s38.176,17.123,38.189,38.175h.02v111.31h47.122v-111.387h-.022Z"/>\
			<path d="M21.5,32.8L13,41.3V1.2h-2v40.2l-8.5-8.5l-1.4,1.4L12,45.2l10.9-10.9L21.5,32.8z"/>\
		</svg>');
}

header .brand a::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 614 260">\
			<path d="M81.598,32.071h10.217c6.701,0,10.879-2.985,10.879-8.996,0-3.317-1.572-5.638-4.344-6.923,2.151-1.285,3.268-3.317,3.268-5.846,0-5.514-3.888-8.499-10.589-8.499h-9.431v30.264ZM91.526,19.219c4.219,0,5.378,1.286,5.378,3.732s-1.737,3.814-5.088,3.814h-4.467v-7.545h4.178ZM91.071,7.114c3.392,0,4.757.995,4.757,3.192,0,2.115-1.241,3.524-4.798,3.524h-3.682v-6.716h3.723Z"/>\
			<path d="M104.97,32.071h5.667v-9.784c0-3.855,1.324-5.431,4.343-5.431h3.599v-5.514h-2.275c-2.813,0-4.674,1.244-5.709,3.4v-3.4h-5.625v20.729Z"/>\
			<path d="M121.145,32.071h5.667v-11.318c0-3.482,1.779-4.975,3.929-4.975,2.523,0,3.806,1.617,3.806,4.395v11.898h5.75v-12.644c0-5.348-2.937-8.499-7.818-8.499-2.358,0-4.385,1.037-5.709,2.736v-2.322h-5.625v20.729Z"/>\
			<path d="M153.493,32.486c4.591,0,7.859-2.28,9.638-5.514l-4.509-2.695c-.91,1.99-2.813,3.234-5.088,3.234-2.978,0-4.84-1.493-5.501-3.773h15.967v-2.073c0-5.97-4.343-10.738-10.672-10.738-5.957,0-10.755,4.809-10.755,10.779s4.467,10.779,10.921,10.779ZM151.631,9.27h3.516l4.923-7.048h-4.261l-2.441,3.648-2.399-3.648h-4.261l4.923,7.048ZM153.368,15.903c2.399,0,4.178,1.12,4.922,3.275h-10.01c.869-1.949,2.689-3.275,5.088-3.275Z"/>\
			<path d="M166.317,32.071h5.667v-11.318c0-3.482,1.779-4.975,3.929-4.975,2.523,0,3.806,1.617,3.806,4.395v11.898h5.75v-12.644c0-5.348-2.937-8.499-7.818-8.499-2.358,0-4.385,1.037-5.709,2.736v-2.322h-5.625v20.729Z"/>\
			<path d="M196.638,32.486c5.956.083,8.769-3.897,8.769-6.923,0-4.477-4.012-5.721-7.487-6.426-3.102-.622-4.302-.953-4.302-1.866s.827-1.7,2.689-1.7,3.268.912,3.806,2.28l5.005-2.114c-1.489-2.902-4.136-4.809-8.769-4.809-5.129-.083-8.48,3.026-8.48,6.509,0,4.436,3.723,5.721,7.446,6.385,2.399.456,4.426.787,4.426,1.907,0,.995-.992,1.866-2.854,1.866-2.027,0-3.599-.912-4.344-2.819l-5.419,2.114c1.489,3.648,4.509,5.597,9.514,5.597Z"/>\
			<path d="M221.747,32.071h6.205l-7.942-11.774,7.528-8.955h-6.577l-7.611,9.162V1.807h-5.667v30.264h5.667v-5.016l2.772-3.275,5.626,8.291Z"/>\
			<path d="M236.763,32.486c2.689,0,4.881-1.119,6.246-2.736v2.322h5.667V11.343h-5.667v2.031c-1.365-1.451-3.475-2.446-6.163-2.446-4.674,0-10.052,3.441-10.052,10.779,0,7.297,5.584,10.779,9.969,10.779ZM237.88,27.262c-3.144,0-5.543-2.405-5.543-5.597s2.399-5.556,5.543-5.556c3.061,0,5.294,2.488,5.294,5.556s-2.234,5.597-5.294,5.597ZM234.653,9.27h3.806l6.205-7.048h-5.295l-4.716,7.048Z"/>\
			<path d="M269.98,32.486c5.956.083,8.769-3.897,8.769-6.923,0-4.477-4.013-5.721-7.487-6.426-3.102-.622-4.302-.953-4.302-1.866s.827-1.7,2.689-1.7,3.268.912,3.806,2.28l5.005-2.114c-1.489-2.902-4.136-4.809-8.769-4.809-5.129-.083-8.48,3.026-8.48,6.509,0,4.436,3.723,5.721,7.446,6.385,2.399.456,4.426.787,4.426,1.907,0,.995-.992,1.866-2.854,1.866-2.027,0-3.599-.912-4.344-2.819l-5.419,2.114c1.489,3.648,4.509,5.597,9.514,5.597Z"/>\
			<path d="M292.98,32.486c4.385,0,9.927-3.482,9.927-10.779,0-7.338-5.336-10.779-10.01-10.779-2.772,0-4.881,1.161-6.205,2.778v-2.363h-5.667v30.264h5.667v-11.567c1.324,1.534,3.557,2.446,6.288,2.446ZM291.821,27.262c-3.061,0-5.295-2.529-5.295-5.597s2.234-5.556,5.295-5.556c3.144,0,5.543,2.363,5.543,5.556s-2.399,5.597-5.543,5.597Z"/>\
			<path d="M305.018,32.071h5.667v-9.784c0-3.855,1.323-5.431,4.343-5.431h3.599v-5.514h-2.275c-2.813,0-4.674,1.244-5.709,3.4v-3.4h-5.625v20.729Z"/>\
			<path d="M329.713,32.486c2.689,0,4.881-1.119,6.246-2.736v2.322h5.667V11.343h-5.667v2.031c-1.365-1.451-3.475-2.446-6.163-2.446-4.674,0-10.052,3.441-10.052,10.779,0,7.297,5.584,10.779,9.969,10.779ZM330.83,27.262c-3.144,0-5.543-2.405-5.543-5.597s2.399-5.556,5.543-5.556c3.061,0,5.294,2.488,5.294,5.556s-2.234,5.597-5.294,5.597ZM327.603,9.27h3.806l6.205-7.048h-5.295l-4.716,7.048Z"/>\
			<path d="M351.555,32.071h5.709l7.611-20.729h-5.75l-4.716,13.474-4.84-13.474h-5.832l7.818,20.729Z"/>\
			<path d="M374.554,32.486c2.689,0,4.881-1.119,6.246-2.736v2.322h5.667V11.343h-5.667v2.031c-1.365-1.451-3.475-2.446-6.163-2.446-4.674,0-10.052,3.441-10.052,10.779,0,7.297,5.584,10.779,9.969,10.779ZM375.671,27.262c-3.144,0-5.543-2.405-5.543-5.597s2.399-5.556,5.543-5.556c3.061,0,5.294,2.488,5.294,5.556s-2.234,5.597-5.294,5.597Z"/>\
			<path d="M399.498,32.071h5.667v-11.318c0-3.482,1.779-4.975,3.929-4.975,2.523,0,3.806,1.617,3.806,4.395v11.898h5.75v-12.644c0-5.348-2.937-8.499-7.818-8.499-2.358,0-4.385,1.037-5.709,2.736v-2.322h-5.625v20.729Z"/>\
			<path d="M431.847,32.486c4.591,0,7.859-2.28,9.638-5.514l-4.509-2.695c-.91,1.99-2.813,3.234-5.088,3.234-2.978,0-4.84-1.493-5.501-3.773h15.967v-2.073c0-5.97-4.343-10.738-10.672-10.738-5.957,0-10.755,4.809-10.755,10.779s4.467,10.779,10.92,10.779ZM431.722,15.903c2.399,0,4.178,1.12,4.923,3.275h-10.01c.869-1.949,2.689-3.275,5.088-3.275Z"/>\
			<path d="M444.671,32.071h5.667v-11.318c0-3.482,1.572-4.975,3.723-4.975,2.523,0,3.599,1.617,3.599,4.395v11.898h5.75v-11.318c0-3.482,1.572-4.975,3.723-4.975,2.523,0,3.598,1.617,3.598,4.395v11.898h5.75v-12.644c0-5.348-2.606-8.499-7.859-8.499-2.689,0-5.046,1.285-6.453,3.275-1.241-2.114-3.433-3.275-6.37-3.275-2.317,0-4.219.995-5.502,2.612v-2.197h-5.625v20.729Z"/>\
			<path d="M489.47,32.486c5.957,0,10.714-4.809,10.714-10.779s-4.757-10.779-10.714-10.779-10.713,4.809-10.713,10.779,4.757,10.779,10.713,10.779ZM489.47,27.097c-2.937,0-5.171-2.446-5.171-5.39s2.234-5.389,5.171-5.389c2.896,0,5.212,2.446,5.212,5.389s-2.316,5.39-5.212,5.39Z"/>\
			<path d="M507.63,32.071h5.709l7.611-20.729h-5.75l-4.716,13.474-4.84-13.474h-5.832l7.818,20.729Z"/>\
			<path d="M523.142,32.071h5.667V11.343h-5.667v20.729ZM523.142,9.27h5.667V3.59h-5.667v5.679Z"/>\
			<path d="M531.291,16.442h3.516v6.633c0,6.757,2.151,8.996,8.728,8.996h.827v-5.306c-3.475,0-3.888-.497-3.888-3.731v-6.592h3.888v-5.099h-3.888V3.383l-5.667,3.11v4.85h-3.516v5.099Z"/>\
			<path d="M556.318,32.486c5.956,0,10.714-4.809,10.714-10.779s-4.757-10.779-10.714-10.779-10.714,4.809-10.714,10.779,4.757,10.779,10.714,10.779ZM556.318,27.097c-2.937,0-5.171-2.446-5.171-5.39s2.234-5.389,5.171-5.389c2.895,0,5.212,2.446,5.212,5.389s-2.317,5.39-5.212,5.39Z"/>\
			<path d="M577.58,32.486c5.956.083,8.769-3.897,8.769-6.923,0-4.477-4.013-5.721-7.487-6.426-3.102-.622-4.302-.953-4.302-1.866s.827-1.7,2.689-1.7,3.268.912,3.806,2.28l5.005-2.114c-1.489-2.902-4.136-4.809-8.769-4.809-5.129-.083-8.48,3.026-8.48,6.509,0,4.436,3.723,5.721,7.446,6.385,2.399.456,4.426.787,4.426,1.907,0,.995-.993,1.866-2.854,1.866-2.027,0-3.599-.912-4.344-2.819l-5.419,2.114c1.489,3.648,4.509,5.597,9.514,5.597Z"/>\
			<path d="M587.798,16.442h3.516v6.633c0,6.757,2.151,8.996,8.728,8.996h.827v-5.306c-3.475,0-3.888-.497-3.888-3.731v-6.592h3.888v-5.099h-3.888V3.383l-5.667,3.11v4.85h-3.516v5.099Z"/>\
			<path d="M603.559,32.071h5.667V11.343h-5.667v20.729ZM603.724,9.27h3.806l6.205-7.048h-5.295l-4.715,7.048Z"/>\
		</svg>');
}

#path .title.error::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 796.266 289.852">\
			<path d="M197.928,0h-62.939L0,192.959v44.306h142.028v52.587h55.9v-52.587h37.681v-48.447h-37.681V0ZM145.754,188.818H59.627l86.128-127.121v127.121Z"/>\
			<path d="M758.585,188.818V0h-62.939l-134.988,192.959v44.306h142.028v52.587h55.9v-52.587h37.681v-48.447h-37.681ZM706.411,188.818h-86.128l86.128-127.121v127.121Z"/>\
			<path d="M398.664,6.338c-77.233,0-140.066,62.833-140.066,140.066s62.833,140.066,140.066,140.066,140.066-62.833,140.066-140.066S475.897,6.338,398.664,6.338ZM398.664,54.527c15.75,0,30.586,3.986,43.556,10.999l-124.435,124.435c-7.013-12.97-10.999-27.806-10.999-43.556,0-50.661,41.216-91.877,91.877-91.877ZM398.664,238.281c-16.41,0-31.827-4.329-45.176-11.899l125.154-125.155c7.57,13.349,11.899,28.765,11.899,45.176,0,50.661-41.216,91.877-91.877,91.877Z"/>\
		</svg>');
}

#important .header .title::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">\
			<path d="M12,24C5.383,24,0,18.617,0,12S5.383,0,12,0s12,5.383,12,12-5.383,12-12,12Zm0-21C7.038,3,3,7.038,3,12s4.038,9,9,9,9-4.038,9-9S16.962,3,12,3ZM6,15.827l1.378,1.378c.539,.54,1.249,.795,1.957,.795,3.634,0,8.666-4.752,8.666-8.666,0-.708-.256-1.418-.795-1.957l-1.378-1.378-2.712,2.712,1.775,1.775c-.882,2.195-2.376,3.629-4.403,4.403l-1.775-1.775-2.712,2.712Z"/>\
		</svg>');
}

#hero .header .title::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 372 312">\
			<path d="M257.677,231.748c.731-3.431,5.901-4.081,6.036-4.574-1.015-21.163,1.033-42.095,8.173-62.059,2.855-7.983,8.798-17.383,9.652-25.529,1.687-16.096-1.322-34.645.065-50.836,1.063-12.416,10.863-20.622,23.231-19.817l-17.438-41.315c-5.703-26.882,28.856-38.109,41.299-15.1,10.866,31.553,25.444,62.672,36.036,94.21,4.644,13.828,7.555,28.002,6.755,42.711-1.505,27.666-16.703,52.484-26.222,77.825,2.362-.159,8.226,1.611,8.226,4.483v79.719h-11.977v-71.86h-71.86v71.86h-11.977v-79.719ZM332.531,227.631c10.264-29.957,29.087-57.171,26.94-90.191-.638-9.803-3.576-19.255-6.716-28.465-10.549-30.945-24.361-61.618-35.619-92.381-6.365-8.955-19.708-3.791-18.313,7.076,5.804,16.746,14.363,32.488,20.585,49.037,1.224,3.256,4.141,9.899,4.141,13.076v75.977h-11.977v-73.731c0-1.308-2.903-4.833-4.115-5.616-5.444-3.519-11.6-.523-13.527,5.19-1.644,17.142,1.135,35.751-.419,52.727-.921,10.062-6.268,17.841-9.648,27.03-7.138,19.407-9.191,39.63-8.221,60.271h56.889Z"/>\
			<path d="M18.145,231.748c.751-3.526,5.366-4.274,8.226-4.483C17.056,202.306,1.787,177.341.149,150.188-2.511,106.121,31.268,54.653,42.939,12.519c12.443-23.009,47.002-11.782,41.299,15.1l-17.438,41.315c12.299-.931,22.177,7.593,23.232,19.817,1.396,16.184-1.622,34.739.065,50.836.854,8.146,6.797,17.546,9.652,25.529,7.173,20.053,9.088,40.811,8.173,62.059,1.762.528,6.036,2.469,6.036,4.574v79.719h-11.977v-71.86H30.121v71.86h-11.977v-79.719ZM48.086,161.759v-75.977c0-3.176,2.916-9.82,4.141-13.076,6.223-16.549,14.781-32.291,20.585-49.037,1.395-10.867-11.947-16.031-18.313-7.076-11.259,30.763-25.071,61.436-35.619,92.381-3.14,9.21-6.078,18.662-6.716,28.465-2.15,33.055,16.652,60.217,26.94,90.191h56.889c.874-20.833-1.013-40.674-8.221-60.271-3.38-9.189-8.727-16.968-9.648-27.03-1.554-16.976,1.225-35.586-.419-52.727-1.927-5.713-8.083-8.709-13.527-5.19-1.212.783-4.115,4.308-4.115,5.616v73.731h-11.977Z"/>\
			<path d="M197.794,47.982v17.965h-11.977v-17.965h-59.883v107.789h41.918v-35.93c0-.446-5.283.626-6.005-5.598-.572-4.931-.678-20.706.061-25.423.306-1.95,1.405-3.441,3.137-4.348l85.557-12.558c4.702-.175,6.696,1.77,7.11,6.347.761,8.403.934,27.769-.019,35.982-.681,5.866-5.824,5.215-6.052,6.054l.064,41.852c-.153,3.46-2.893,5.799-6.343,5.633l-127.701-.371c-2.187-.868-3.662-2.872-3.72-5.263l.064-113.712c-.204-.751-5.225-.457-5.992-5.366-.52-3.333-.53-24.693.291-27.317.529-1.69,2.245-3.129,3.969-3.517L196.707.055c3.411-.406,6.484,1.435,7.031,4.929,1.038,6.64.868,30.435.061,37.399-.406,3.501-2.439,5.538-6.005,5.598ZM191.806,12.8l-71.86,10.48v12.725h71.86V12.8ZM245.7,84.66l-71.86,10.48v12.725h71.86v-23.205ZM239.712,119.841h-59.883v35.93h59.883v-35.93Z"/>\
			<rect x="137.911" y="59.958" width="11.977" height="11.977"/>\
			<rect x="161.864" y="59.958" width="11.977" height="11.977"/>\
			<rect x="137.911" y="83.911" width="11.977" height="11.977"/>\
			<rect x="137.911" y="107.865" width="11.977" height="11.977"/>\
			<rect x="137.911" y="131.818" width="11.977" height="11.977"/>\
			<rect x="78.028" y="251.584" width="11.977" height="11.977"/>\
			<rect x="281.63" y="251.584" width="11.977" height="11.977"/>\
			<rect x="191.806" y="131.818" width="11.977" height="11.977"/>\
			<rect x="215.759" y="131.818" width="11.977" height="11.977"/>\
		</svg>');
}

#call .button a::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 340 310">\
			<path d="M324.198,85.353l-109.051,85.194c-11.971,7.738-21.739,6.929-33.418-.737-26.571-17.439-51.464-43.098-77.955-61.274l-3.401-5.22c-7.719,5.284-20.164,8.387-21.63,19.154-.614,4.51-.236,10.76,1.291,15.046,13.258,20.017,23.804,46.507,37.701,65.598,5.816,7.99,16.678,14.515,26.572,10.37,15.178-6.358,22.425-18.394,42.152-10.977,20.366,7.657,49.151,55.602,47.197,77.121-1.218,13.418-21.751,21.797-33.142,25.244-63.071,19.085-111.743-20.617-142.645-71.084C20.112,172.129-33.877,88.757,28.506,22.831,35.34,15.608,55.046.118,64.866.001c20.531-.245,39.121,38.022,46.062,54.224l1.18,1.066,208.005.089c9.759,1.167,18.736,8.274,19.796,18.379l-.503,155.924c-3.225,9.628-11.592,15.1-21.543,15.884-24.296,1.914-51.067-1.485-75.628-.028-10.663-1.218-10.93-14.997.831-16.384,23.403-2.761,52.227,2.647,75.536-.067,1.949-.227,5.598-2.151,5.598-4.133V85.353h-.002ZM64.272,16.613c-2.628.445-14.087,8.246-16.637,10.376C4.657,62.899,11.891,118.364,35.621,163.217c10.648,20.126,23.792,42.093,35.721,61.589,28.654,46.831,78.306,88.797,136.1,60.048,9.396-4.674,12.036-5.093,9.177-15.944-3.262-12.38-24.958-48.946-37.615-52.208-9.509-2.451-18.987,7.255-27.212,11.005-17.483,7.972-37.187-.535-47.532-15.607-10.488-22.178-28.562-44.343-38.443-66.352-6.544-14.577-4.616-35.328,8.435-45.732,8.679-6.919,26.103-10.124,26.124-23.27.02-12.688-21.079-53.952-32.671-59.387-1.349-.632-1.768-1.026-3.432-.745h0ZM315.216,71.131H116.104c.38,7.734-.131,15.884-5.169,22.203l80.071,63.456c4.31,2.738,7.847,3.737,12.854,1.724l111.355-87.383h.001Z"/>\
		</svg>');
}

#articles form .select .wpcf7-form-control-wrap::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 10">\
			<path d="M2.161.371C1.667-.124.865-.124.371.371-.124.865-.124,1.667.371,2.161l7.234,7.234c.494.494,1.296.494,1.79,0l7.234-7.234c.494-.494.494-1.296,0-1.79-.494-.494-1.296-.494-1.79,0l-6.342,6.342L2.161.371Z"/>\
		</svg>');
}

#articles form .checkbox .wpcf7-list-item-label::after {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 10">\
			<path d="M2.161,3.232c-.494-.494-1.296-.494-1.79,0-.494.494-.494,1.296,0,1.79l4.373,4.373c.494.494,1.296.494,1.79,0l7.234-7.234c.494-.494.494-1.296,0-1.79-.494-.494-1.296-.494-1.79,0l-6.342,6.342-3.474-3.481Z"/>\
		</svg>');
}

#articles .files .item::before {
	--svg: url('data:image/svg+xml; utf8,\
		<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 340 310">\
			<path d="M161.454,227.256c1.165,1.165,2.331,1.942,3.885,2.719s3.108.777,4.662.777,3.108-.388,4.662-.777c1.554-.777,2.719-1.554,3.885-2.719l85.075-85.075c4.662-4.662,4.662-12.431,0-17.093s-12.431-4.662-17.093,0l-64.486,64.486V12.043c0-6.604-5.439-12.043-12.043-12.043s-12.043,5.439-12.043,12.043v177.143l-64.486-64.098c-4.662-4.662-12.431-4.662-17.093,0s-4.662,12.431,0,17.093l85.075,85.075Z"/>\
			<path d="M313.346,206.667c-6.604,0-12.043,5.439-12.043,12.043,0,36.905-29.912,66.817-66.817,66.817H105.902c-36.905,0-66.817-29.912-66.817-66.817,0-6.604-5.439-12.043-12.043-12.043s-12.431,5.439-12.431,12.043c0,50.113,40.789,91.291,91.291,91.291h128.584c50.113,0,90.902-40.789,90.902-91.291,0-6.604-5.439-12.043-12.043-12.043Z"/>\
		</svg>');
}

header .brand a::before,
header .brand a::after,
#path .title.error::after,
#important .header .title::before,
#hero .header .title::before,
#call .button a::after,
#services .header::after,
#articles form .select .wpcf7-form-control-wrap::before,
#articles form .checkbox .wpcf7-list-item-label::after,
#articles .files .item::before,
#footer .brand a::before {
	mask-image: var(--svg);
	mask-repeat: no-repeat;
	mask-position: center;
}