/* Base */



@font-face {

    font-family: 'BMWTypeNextTT';

    src: url('../fonts/BMWTypeNextTT-Bold.woff2') format('woff2'),

        url('../fonts/BMWTypeNextTT-Bold.woff') format('woff');

    font-weight: 700;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'BMWTypeNextTT';

    src: url('../fonts/BMWTypeNextTT-Regular.woff2') format('woff2'),

        url('../fonts/BMWTypeNextTT-Regular.woff') format('woff');

    font-weight: 400;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'BMWTypeNextTT';

    src: url('../fonts/BMWTypeNextTT-Light.woff2') format('woff2'),

        url('../fonts/BMWTypeNextTT-Light.woff') format('woff');

    font-weight: 300;

    font-style: normal;

    font-display: swap;

}



:root {

    --ff-base: 'BMWTypeNextTT';

    --color-white: #fff;

    --color-black: #000;

	--color-dark: #262626;

	--color-dark-2: #4D4D4D;

	--color-blue: #1C69D4;

	--color-silver: #8E8E8E;

    --transition-duration: .4s;

    --shell-width: 1180px;

    --shell-padding: 20px;

}



* {

	padding: 0;

	margin: 0;

	outline: 0;

	box-sizing: border-box;

}



*:before,

*:after {

	box-sizing: inherit;

}



html, body {

	margin: 0 !important;

	padding: 0;

}



body {

	margin: 0;

	text-size-adjust: none;

	min-width: 320px;

	font-family: var(--ff-base);

	font-size: 16px;

	font-weight: 400;

	line-height: 1.2;

	background: var(--color-white);

	color: var(--color-black);

}



h1,

h2,

h3,

h4,

h5,

h6,

.h1,

.h2,

.h3,

.h4,

.h5,

.h6 {

	font-weight: 700;

}



h1,

.h1 {

	font-size: 50px;

	line-height: 1.3;

}



h2,

.h2 {

	font-size: 35px;

	line-height: 1.34285;

	font-weight: 300;

	color: var(--color-dark);

}



h3,

.h3 {

	font-size: 30px;

	line-height: 1.3666;

	font-weight: 30;

	color: var(--color-dark);

}



h4,

.h4 {

}



h5,

.h5 {

}



h6,

.h6 {

	font-size: 20px;

	line-height: 1.08;

}



ul {

	list-style: none;

}



a {

	display: inline-block;

	text-decoration: none;

	color: inherit;

	transition: opacity var(--transition-duration);

}



a:hover {

    opacity: .7;

	}



img,

iframe {

	display: block;

	width: 100%;	

	height: auto; 

}



body.has-open-menu {

	overflow: hidden;

}



.wrapper {

    width: 100%;

    display: flex;

    flex-direction: column;

    min-height: 100vh;

}



body.admin-bar .wrapper {

    min-height: calc(100vh - 32px);

    margin-top: 32px;

}



.shell {

	max-width: calc(var(--shell-width) + var(--shell-padding) * 2);

	padding-inline: var(--shell-padding);

	margin: 0 auto;

	width: 100%;

}



.shell.shell--large {

	max-width: 1720px;

}



.shell--fluid {

	max-width: none;

}

/* Section default */

.section-default {
	margin-top: 62px;
}

.section-default:has( section ) {
	margin-top: 0;
}

/* Header */



.header {

	width: 100%;

	position: relative;

}

.header .header__inner {

	display: flex;

	justify-content: space-between;

	align-items: center;

	padding: 35px 0;

	border-bottom: 1px solid #E6E6E6;

}



.header .header__inner .nav .menu {

	display: flex;

	gap: 16px;

}



.header .header__inner .nav .menu > li > a {

	font-weight: 700;

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-dark-2);

	transition: color var(--transition-duration);

}



.header .header__inner .nav .menu > li > a:hover {

	color: var(--color-dark);

	opacity: 1;

}



.header .header__inner .nav .menu > li {

	padding: 0 10px;

	position: relative;

}



.header .header__inner .nav .menu > li.current-menu-item::after {

	opacity: 1;

}



.header .header__inner .nav .menu > li:after {

	content: '';

	position: absolute;

	height: 4px;

	width: 100%;

    left: 0;

	bottom: -40px;

	background-color: var(--color-blue);

	opacity: 0;

	transition: opacity .4s;

}



.header .header__inner .header__links ul {

	display: flex;

	gap: 33px;

	align-items: center;

}



.header .header__inner .header__links {

	display: flex;

	gap: 47px;

	align-items: center;

}



.header .header__inner .header__links ul li svg {

	max-width: 32px;

}



.header .header__inner .header__links ul li svg path {

	transition: fill var(--transition-duration);

}



.header .header__inner .header__links ul li a:hover {

	opacity: 1;

}



.header .header__inner .header__links ul li a:hover svg path {

	fill: var(--color-dark);

}



.header .header__inner .header__links > a {

	font-family: 'BMWTypeNextTT';

	font-weight: 700;

	font-size: 18px;

	line-height: 1.333;

	color: var(--color-silver);

	transition: color var(--transition-duration);

}



.header .header__inner .header__links > a:hover {

	color: var(--color-black);

	opacity: 1;

}



.nav-trigger {

	position: relative;

	width: 24px;

	height: 18px;

	z-index: 999;

	cursor: pointer;

	display: none;

}



.nav-trigger span {

	position: absolute;

	display: block;

	height: 1px;

	right: 0;

	width: 100%;

	border-radius: 99px;

	background: var(--color-black);

	transition: top .2s .25s, opacity .2s .25s, transform .2s 0s;

}



.nav-trigger span:nth-child(1) {

	top: 0;

}



.nav-trigger span:nth-child(2) {

	top: 9px;

}

.nav-trigger span:nth-child(3) {

	top: 18px;

}



body.has-open-menu .nav-trigger span {

	transition: top .2s, opacity .2s, transform .2s .25s;

}



body.has-open-menu .nav-trigger span:nth-child(1),

body.has-open-menu .nav-trigger span:nth-child(3) {

	top: 9px

}



body.has-open-menu .nav-trigger span:nth-child(1) {

	transform: rotate(45deg);

}



body.has-open-menu .nav-trigger span:nth-child(2) {

	opacity: 0;

}



body.has-open-menu .nav-trigger span:nth-child(3) {

	transform: rotate(-45deg);

	width: 100%;

}



/* Footer */



.footer {

	margin-top: auto;

	background-color: #E6E6E6;

}



.footer-nav > ul > li {

	display: flex;

	gap: 40px;

}



.footer-nav > ul > li > a {

	display: block;

	min-width: 171px;

	font-weight: 700;

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-dark);

	margin-bottom: 18px;

}



.footer-nav > ul> li > .sub-menu {

	flex-grow: 1;

	display: flex;

	flex-wrap: wrap;

	gap: 0 16px;

}



.footer-nav > ul> li > .sub-menu a {

	color: var(--color-dark-2);

	font-size: 16px;

	line-height: 1.375;

}



.footer-nav {

	padding: 25px 0 32px;

}



.footer hr {

	margin: 0 calc(-50vw + 50%);

	padding-top: 56px;

	border: none;

    border-bottom: 1px solid #BBBBBB;

}



.footer__copyright {

	background-color: var(--color-white);

	padding: 28px 0;

}



.tabs .tabs__head {

	display: flex;

	flex-wrap: wrap;

	gap: 0 20px;

	position: relative;

}



/* Buttons */



.btn,

.wp-btn a {

	display: inline-block;

	font-family: var(--ff-base);

	font-size: 16px;

	font-weight: 700;

	line-height: 1.375;

	color: var(--color-white);

	padding: 10px 42px;

	background-color: var(--color-blue);

	border-radius: 0;

}



.btn-arrow,

.wp-btn-arrow a {

	display: inline-block;

	font-size: 16px;

	font-weight: 700;

	line-height: 1.375;

	color: var(--color-dark);

	padding: 0;

	background-color: transparent;

	border-radius: 0;

	position: relative;

}



.wp-btn-arrow a::before {

	content: '';

	display: inline-block;

	width: 8px;

	height: 13px;

	background: url(../images/ico-arrow-right.svg) no-repeat 100%/100%;

	margin-right: 5px;

}



/* Section 404 */



.section-404 .section__inner {

    min-height: 400px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    text-align: center;

}



.section-404 .section__inner h1 {

		margin-bottom: 10px;

}



.section-404 .section__inner h1:last-child {

        margin-bottom: 0;

}



.section-404 .section__inner a {

    display: inline-block;

    text-decoration: underline;

    text-underline-offset: 3px;

}



/* Hero Slider */



.hero-slider {

	margin: 40px calc(-50vw + 50%);

}



.hero-slider:first-child {

	margin-top: 0;

}



.hero-slider h1 {

	font-size: 45px;

	line-height: 1.3555;

	color: var(--color-white);

	margin-bottom: 10px;

}



.hero-slider h1:last-child {

	margin-bottom: 0;

}



.hero-slider .slider__slide-inner > p {

	font-size: 25px;

	line-height: 1.36;

	text-transform: uppercase;

	color: var(--color-white);

	margin-bottom: 23px;

}



.hero-slider .slider__slide-inner > p:last-child {

	margin-bottom: 0;

}



.hero-slider .slider__slide-bg {

	position: absolute;

	left: 0;

	top: 0;

	width: 100%;

	height: 100%;

	z-index: -1;

}



.hero-slider .slider__slide-bg figure,

.hero-slider .slider__slide-bg figure img {

	height: 100%;

}



.hero-slider .slider__slide-bg figure img {

	object-fit: cover;

}



.hero-slider .slider__slide-inner {

	min-height: 611px;

	margin: 0 auto;

	padding: 102px 86px;

}



.hero-slider .slider__nav {

	position: absolute;

    top: 50%;

    left: 0;

    width: 100%;

    z-index: 1;

    transform: translateY(-50%);

	display: flex;

	justify-content: space-between;

}



.hero-slider .slider__nav .arrow-prev,

.hero-slider .slider__nav .arrow-next {

	background-color: rgba(255,255,255,.6);

	width: 45px;

	height: 45px;

	display: flex;

	align-items: center;

	justify-content: center;

	cursor: pointer;

	transition: background-color .4s;

}



.hero-slider .slider__nav .arrow-prev:hover,

.hero-slider .slider__nav .arrow-next:hover {

	background-color: rgba(255,255,255,.8);

}



.hero-slider .slider__pagination {

	text-align: center;

}



.hero-slider .slider__clip {

	margin-bottom: 12px;

}



.hero-slider .slider__clip:last-child {

	margin-bottom: 0;

}



.hero-slider .slider__pagination .swiper-pagination-bullet {

	width: 10px;

	height: 10px;

}



.hero-slider + .section-services-offers {

	margin-top: 40px;

}



/* Section services offers */



.section-services-offers {

	gap: 0;

	margin: 95px 0;

}



.section-services-offers:first-child {

	margin-top: 0;

}



.section-services-offers .section__inner .wp-block-group > p {

	font-size: 16px;

	line-height: 1.375;

	font-weight: 400;

	color: var(--color-dark);

}



.section-services-offers .section__inner {

	padding: 0 10px;

	gap: 50px;

}



.section-services-offers.wp-block-group h2 {

	margin-bottom: 24px;

}



.section-services-offers h2:last-child {

	margin-bottom: 0;

}



.section-services-offers .section__inner .wp-block-group {

	gap: 0;

}



.section-services-offers .section__inner .wp-block-group figure {

	margin-bottom: 12px;

}



.section-services-offers .section__inner .wp-block-group > h3 {

	margin-bottom: 5px;

}



.section-services-offers .section__inner .wp-block-group > p {

	margin-bottom: 10px;

}



/* Section services contacts */



.section-services-contacts {

	margin: 40px 0;

}



.section-services-contacts:last-child, 

.section-services-contacts:has(+p:last-child) {

	margin-bottom: 0;

}



.section-services-contacts.wp-block-group h2 {

	text-transform: uppercase;

	margin-bottom: 32px;

}



.section-services-contacts .section__inner {

	gap: 45px;

	padding: 0 12px;

}



.section-services-contacts .section__inner .wp-block-group {

	gap: 0;

}



.section-services-contacts .section__inner .wp-block-group h3 {

	font-size: 25px;

	line-height: 1.36;

	font-weight: 300;

	line-height: 1.2;

	color: var(--color-dark);

	margin-bottom: 10px;

}



.section-services-contacts .section__inner .wp-block-group > p {

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-dark);

	margin-bottom: 10px;

}



.section-services-contacts .section__inner figure {

	width: 100%;

	margin-bottom: 12px;

}



/* Section boxes */



.section-boxes {

	margin: 90px 0 62px;

}



.section-boxes ul {

	display: flex;

	flex-wrap: wrap;

	justify-content: center;

	gap: 14px;

}



.section-boxes ul li {

	width: calc(25% - 11px);

}



.section-boxes ul li a {

	background-color: #F2F2F2;

	width: 100%;

	height: 100%;

	display: flex;

	flex-direction: column;

	align-items: center;

	justify-content: center;

	text-align: center;

	padding: 10px;

	min-height: 143px;

}



.section-boxes ul li a svg {

	display: block;

	width: 48px;

	height: 48px;

	object-fit: contain;

	margin-bottom: 12px;

}



.section-boxes ul li a p {

	font-size: 14px;

	line-height: 1.13571;

	color: var(--color-dark);

}



/* Tabs */



.tabs .tabs__head a {

	font-weight: 700;

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-dark-2);

	transition: color var(--transition-duration);

	position: relative;

}



.tabs hr {

	margin: 0 calc(-50vw + 50%);

	border: none;

	border: 1px solid #E6E6E6;

}



.tabs .tabs__head a {

	padding: 26px 8px;

}



.tabs .tabs__head a:after {

	content: '';

	position: absolute;

	height: 4px;

	width: 100%;

    left: 0;

	bottom: -2px;

	background-color: var(--color-blue);

	opacity: 0;

	transition: opacity .4s;

}



.tabs .tabs__head a.is-active {

	color: var(--color-dark);

}



.tabs .tabs__head a.is-active:after {

	opacity: 1;

}



.tabs .tabs__head hr {

	width: 100%;

}



.tabs .tabs__body {

	position: relative;

	/* overflow: hidden; */

}



.tab {

	opacity: 0;

    pointer-events: none;

    position: absolute;

	top: 0;

	left: 0;

	transition: opacity .4s;

}



.tab.is-active {

	opacity: 1;

	position: static;

	pointer-events: auto;

	transition: opacity .4s .4s;

}



/* Section heading */



.section-heading {

	margin-block: 20px;

	margin-bottom: 28px;

}



.section-heading p {

	font-weight: 300;

	font-size: 25px;

	line-height: 1.36;

	color: var(--color-dark);

}



/* Section content contacts */



.section-content-contacts {

	gap: 12px;

	width: calc(100% + 8px);

	margin-bottom: 20px;

}



.section-content-contacts .column-image-content {

	padding: 16px 16px 16px 15px;

	border: 1px solid #E6E6E6;

}



.section-content-contacts .column-image-content figure:last-child {

	margin-bottom: 0;

}



.section-content-contacts .column-contact {

	flex-shrink: 0;

}



.section-content-contacts .column-image-content .wp-block-columns {

	margin-bottom: 0;

}



.section-content-contacts .column-image-content h3 {

	font-weight: 400;

	font-size: 25px;

	line-height: 1.2;

	color: var(--color-dark);

	margin-bottom: 24px;

}



.section-content-contacts .column-image-content p {

	margin-bottom: 15px;

}



.section-content-contacts .column-image-content p a {

	font-weight: 700;

}



.section-content-contacts .column-image-content .wp-btn a {

	padding: 9px 46px;

	font-weight: 700;

}



.section-content-contacts p {

	font-weight: 400;

	font-size: 14px;

	line-height: 1.5;

	color: var(--color-dark);

}



.section-content-contacts .column-image-content .wp-block-group {

	padding-left: 22px;

	display: flex;

	flex-direction: column;

	height: 100%;

}



.section-content-contacts .column-image-content .wp-block-buttons {

	margin-top: auto;

}





/* Section contact block */



.section-contact-block {

	background-color: #F2F2F2;

	padding: 22px 20px 13px;

	display: flex;

	flex-direction: column;

	height: 100%;

}



.section-contact-block h3 {

	font-weight: 300;

	font-size: 25px;

	line-height: 1.08;

	color: var(--color-black);

	margin-bottom: 6px;

}



.section-contact-block > p {

	font-weight: 400;

	font-size: 16px;

	line-height: 1.3125;

	color: var(--color-dark);

	margin-bottom: 23px;

}



.section-contact-block > ul {

	margin-bottom: 32px;

}



.section-contact-block > ul li,

.section-contact-block > ul li a {

	font-family: 'BMWTypeNextTT';

	font-weight: 400;

	font-size: 16px;

	line-height: 1.3125;

	color: var(--color-black);

}



.section-contact-block > ul li {

	margin-bottom: 8px;

}



.section-contact-block > ul li:last-child {

	margin-bottom: 0;

}



.section-contact-block > h4 {

	font-weight: 300;

	font-size: 21px;

	line-height: 1;

	color: var(--color-black);

	margin-bottom: 12px;

}



.section-contact-block > h4 + ul li {

	margin-bottom: 18px;

}



.section-contact-block > h4 + ul li:last-child {

	margin-bottom: 0;

}



.section-contact-block > h4 + ul {

	margin-bottom: 43px;

}





.section-contact-block .btn {

	font-weight: 700;

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-white);

	background-color: #666666;

	padding: 9px 30px;

	margin-top: auto;

}



/* Section services */



.section-services {

	display: grid;

	grid-template-columns: repeat(4, 1fr);

	gap: 14px;

}



.section-services .wp-block-group {

	padding: 17px 16px;

	border: 1px solid #E6E6E6;

	height: 100%;

	display: flex;

    flex-direction: column;

	gap: 0;

}



.section-services .wp-block-group h3 {

	font-weight: 300;

	font-size: 25px;

	line-height: 1.08;

	color: var(--color-black);

}



.section-services .wp-block-group p,

.section-services .wp-block-group ul li {

	font-size: 14px;

	line-height: 1.5;

	color: var(--color-dark);

}



.section-services .wp-block-group figure {

	margin-bottom: 18px;

}



.section-services .wp-block-group h3 {

	margin-bottom: 25px;

}



.section-services p {

	margin-bottom: 15px;	

}



.section-services p:has(+ .service__price) {

	margin-bottom: 42px;

}



.section-services h3 + p {

	margin-bottom: 14px;

}



.section-services ul {

	list-style: none;

	margin-bottom: 15px;

}



.section-services li {

	position: relative;

	padding-left: 20px;

}



.section-services li::after {

	content: '';

    position: absolute;

    top: 8px;

    left: 5px;

    width: 5px;

    height: 5px;

    background-color: var(--color-dark);

    border-radius: 99em;

}



.section-services .service__price {

	padding: 0;

	border: none;

	margin-top: auto;

	display: block;

	height: auto;

}



.section-services .service__price p {

	margin-bottom: 2px;

}



.section-services .service__price p strong {

	font-weight: 400;

	font-size: 36px;

	line-height: 1.3666;

	color: var(--color-dark);

}



.section-services .service__price .wp-btn a {

	padding: 9px 37px;

}



/* Section services links */



.section-services-links {

	gap: 15px;

	margin: 43px 0;

}



.section-services-links:last-child {

	margin-bottom: 0;

}



.section-services-links .column__links > .wp-block-group {

	max-width: 565px;

}


.section-services-links .column__links .wp-block-column {

	border-bottom: 1px solid #E6E6E6;

}



.section-services-links .column__links .wp-block-columns {

	gap: 17px;

	margin-bottom: 0;

}

.section-services-links .column__links .wp-block-details summary {
	list-style: none;
	position: relative;
}

.section-services-links .column__links .wp-block-details {
	padding: 0;
	background: transparent;
	border: none;
	color: var(--color-dark);
	padding-left: 20px;
	padding-block: 13px 25px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.875;
	position: relative;
	display: block;
	text-align: left;
}

.section-services-links .column__links .wp-block-details summary:after {
	content: '';
	position: absolute;
	right: 0;
	top: 4px;
	width: 14px;
	height: 22px;
	background: url(../images/ico-arrow-right-big.svg) no-repeat 100%/100%;
}

.section-services-links .column__links .wp-block-details summary + p {
	font-weight: 400;
	display: none;
}

/* Section team contacts */



.section-team-contacts {

	gap: 35px;

}



.section-team-contacts .column__contacts {

	flex-shrink: 0;

}



/* Hero */



.hero {

	margin: 0 calc(-50vw + 50%);

	height: 598px;

}



.hero.wp-block-image img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	display: block;

}



/* accordions */



.accordion .accordion__head {

	cursor: pointer;

}



.accordion .accordion__section {

	display: grid;

	grid-template-rows: auto 0fr;

	overflow: hidden;

	align-content: start;

	transition: grid-template-rows var(--transition-duration);

}



.accordion .accordion__section.is-active {

	grid-template-rows: auto 1fr;

}



.accordion .accordion__body {

	min-height: 0;

}



.accordion .accordion__head {

	display: flex;

	flex-wrap: wrap;

	gap: 6px;

	align-items: center;

	border-bottom: 1px solid #E6E6E6;

	padding: 13px 1px;

}



.accordion .accordion__section.is-active .accordion__head svg {

	transform: rotate(180deg);

}



.accordion .accordion__head svg {

	max-width: 22px;

	transition: transform var(--transition-duration);

}



.accordion .accordion__head h3 {

	font-weight: 400;

	font-size: 18px;

	line-height: 1.3333;

	color: var(--color-dark);

}



/* Section team */



.section-team .members {

	display: flex;

	flex-wrap: wrap;

	gap: 11px 20px;

	padding: 0 17px;

	margin-block: 18px 8px;

}



.section-team .member {

	display: flex;

	flex-wrap: wrap;

	gap: 0 20px;	

	width: calc(50% - 10px);

}



.section-team .member .member__image {

	width: calc(47% - 10px);

}



.section-team .member .member__image img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	display: block;

}



.section-team .member .member__content {

	width: calc(53% - 10px);

}



.section-team .member .member__content h4 {

	font-weight: 700;

	font-size: 18px;

	line-height: 1.333;

	color: var(--color-dark);

	margin-bottom: 2px;

	margin-top: 8px;

}



.section-team .member .member__content > p {

	font-weight: 400;

	font-size: 14px;

	line-height: 1.28571428571;

	color: var(--color-dark);

	margin-bottom: 12px;

}



.section-team .member .member__content .member__contacts ul li,

.section-team .member .member__content .member__contacts ul li a {

	font-size: 16px;

	line-height: 1.5;

	color: var(--color-dark);

}



.section-team .member .member__content .member__contacts ul li a[href^="mailto:"] {

	font-size: 14px;

	line-height: 1.7142;

	color: var(--color-dark);

}



/* Section team contacts */



.section-team-contacts {

	margin: 59px 0;

}



.section-team-contacts:last-child {

	margin-bottom: 0;

}



.section-team-contacts .section-contact-block {

	height: auto;

}



.section-team-contacts .column__team > .wp-block-group > h2 {

	font-size: 36px;

	line-height: 1.36111;

	text-transform: uppercase;

	color: var(--color-black);

	margin-bottom: 54px;

}



.section-team-contacts .column__team > .wp-block-group > p {

	font-weight: 300;

	font-size: 16px;

	line-height: 1.5;

	color: var(--color-black);

	margin-bottom: 86px;

}



/* Section contacts map */



.section-contacts-map {

	margin: 59px 0;

}



.section-contacts-map .section__inner {

	display: flex;

	flex-wrap: wrap;

}



.section-contacts-map .section__contacts {

	width: 51.18%;

	padding-right: 43px;

}



.section-contacts-map .section__contacts h2 {

	font-weight: 300;

	font-size: 36px;

	line-height: 1.361111;

	text-transform: uppercase;

	color: var(--color-black);

	margin-bottom: 45px;

}



.section-contacts-map .section__contacts h3 {

	font-weight: 300;

	font-size: 28px;

	line-height: 1.3571;

	color: var(--color-black);

	margin-bottom: 27px;

}



.section-contacts-map .section__map {

	width: 48.82%;

	height: 353px;

}



.section-contacts-map .section__contacts-inner {

	display: flex;

	gap: 50px;

	flex-wrap: wrap;

}



.section-contacts-map .section__contacts p,

.section-contacts-map .section__contacts ul li,

.section-contacts-map .section__contacts ul li a {

	font-weight: 400;

	font-size: 16px;

	line-height: 1.3125;

	color: var(--color-dark);

}





.section-contacts-map .section__contacts p {

	margin-bottom: 25px;

}



.section-contacts-map .section__contacts p + ul li {

	margin-bottom: 6px;

}



.section-contacts-map .section__contacts ul li {

	margin-bottom: 21px;

}



.section-contacts-map .section__contacts ul li:last-child {

	margin-bottom: 0;

}



.section-contacts-map .section__contacts-inner .section__contact {

	width: calc(50% - 25px);

}



.section-contacts {

	margin: 77px 0;

}



.section-contacts:last-child {

	margin-bottom: 0;

}



.section-contacts .column__image {

	flex-shrink: 0;

}



.section-contacts .column__contacts {

	padding-left: 30px;

}



.section-contacts .column__contacts h2 {

	font-weight: 300;

	font-size: 36px;

	line-height: 1.611111;

	text-transform: uppercase;

	color: var(--color-black);

	margin-top: 7px;

	margin-bottom: 32px;

}



.section-contacts .column__contacts > .wp-block-group > p {

	font-style: normal;

	font-weight: 400;

	font-size: 14px;

	line-height: 1.35714;

	color: #232323;

	margin-bottom: 32px;

}



.section-contacts .column__contacts form {

	display: flex;

	flex-wrap: wrap;

	gap: 19px 14px;

}



.section-contacts .column__contacts form p {

	width: calc(50% - 7px);

}



.section-contacts .column__contacts form label {

	font-weight: 700;

	font-size: 14px;

	line-height: 1.3571;

	color: #232323;

}



.section-contacts .wpcf7-form-control-wrap {

	margin-top: 5px;

	display: block;

	width: 100%;

}



.section-contacts .column__contacts form input[type=text],

.section-contacts .column__contacts form input[type=email],

.section-contacts .column__contacts form select {

	width: 100%;

	height: 39px;

	line-height: 1;

	padding: 0 14px;

	font-family: var(--ff-base);

	font-weight: 300;

	font-size: 14px;

	color: #757575;

	border: 1px solid #E8E8E8;

}



.section-contacts .column__contacts form form select {

	-webkit-appearance: none;

	appearance: none;

}



.section-contacts .column__contacts form .wpcf7-form-control-wrap:has( select ) {

	position: relative;

}



.section-contacts .column__contacts form .wpcf7-form-control-wrap:has( select )::after {

	content: '';

	position: absolute;

	right: 0;

	top: 0;

	width: 41px;

	height: 100%;

	pointer-events: none;

	background: url(../images/ico-arrow-down.svg) no-repeat 100%;

	background-color: var(--color-blue);

	background-position: center;

}



.section-contacts .column__contacts form br {

	display: none;

}



.section-contacts .column__contacts form textarea {

	resize: none;

	width: 100%;

	height: 130px;

	border: 1px solid #E8E8E8;

	padding: 9px 13px;

	font-family: var(--ff-base);

	font-size: 14px;

	color: #757575;

}



.section-contacts .column__contacts form textarea::placeholder {

	font-family: var(--ff-base);

	font-size: 14px;

	color: #757575;

}



.section-contacts .column__contacts form input[type=text]::placeholder,

.section-contacts .column__contacts form input[type=email]::placeholder { 

	font-family: var(--ff-base);

	font-weight: 300;

	font-size: 14px;

	color: #757575;

}



.section-contacts .column__contacts form > p:has( .form__comment ) {

	width: 100%;

}



.section-contacts .column__contacts form .btn {

	font-style: normal;

	font-weight: 700;

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-white);

	border: none;

	padding: 10px 37px;

	display: inline-block;

	cursor: pointer;

}



.section-contacts .column__contacts form > p:has( .btn ) {

	display: flex;

	gap: 17px;

	width: 100%;

	position: relative;

	align-items: center;

}

.section-contacts .column__contacts form > p:has( .btn ) .wpcf7-spinner {

	position: absolute;

	left: 0;

	left: 5px;

    margin: 0;

}



/* Modal */



.modal.is-active {

	opacity: 1;

	pointer-events: auto;

}



.modal {

	position: fixed;

	left: 0;

	top: 0;

	width: 100%;

	height: 100%;

	z-index: 9999;

	display: flex;

	align-items: center;

	justify-content: center;

	opacity: 0;

	pointer-events: none;

	transition: opacity var(--transition-duration);

}



.modal__bg {

	position: absolute;

	width: 100%;

	height: 100%;

	left: 0;

	top: 0;

	z-index: 1;

	background-color: rgba(0,0,0, .6);

}



.modal .modal__inner {

	background-color: var(--color-white);

	max-width: 749px;

	margin: 0 auto;

	position: relative;

	z-index: 2;

}



.modal .modal__head {

	background-color: var(--color-black);

	display: flex;

	justify-content: space-between;

	align-items: center;

	gap: 10px;

	padding: 22px 18px;

}



.modal .modal__body {

	padding: 18px 19px 18px 22px;

}



.modal .modal__head h2 {

	font-weight: 700;

	font-size: 18px;

	line-height: 1.33333;

	color: var(--color-white);

}



.modal .modal__body h3 {

	font-weight: 300;

	font-size: 24px;

	line-height: 1.375;

	color: #232323;

	margin-bottom: 8px;

}



.modal .modal__body > p {

	font-weight: 400;

	font-size: 14px;

	line-height: 1.35714;

	color: #232323;

	margin-bottom: 33px;

}





.modal .modal__body form {

	display: flex;

	flex-wrap: wrap;

	gap: 19px 14px;

}



.modal .modal__body form p {

	width: calc(50% - 7px);

}



.modal .modal__body form label {

	font-weight: 700;

	font-size: 14px;

	line-height: 1.3571;

	color: #232323;

}



.modal .modal__body form .wpcf7-form-control-wrap {

	margin-top: 5px;

	display: block;

	width: 100%;

}



.modal .modal__body form input[type=text],

.modal .modal__body form input[type=email],

.modal .modal__body form select {

	width: 100%;

	height: 39px;

	line-height: 1;

	padding: 0 9px;

	font-family: var(--ff-base);

	font-weight: 300;

	font-size: 14px;

	color: #757575;

	border: 1px solid #E8E8E8;

}



.modal .modal__body form select {

	    -webkit-appearance: none;

		appearance: none;

}



.modal .wpcf7-form-control-wrap:has( select ) {

	position: relative;

}



.modal .wpcf7-form-control-wrap:has( select )::after {

	content: '';

	position: absolute;

	right: 0;

	top: 0;

	width: 41px;

	height: 100%;

	pointer-events: none;

	background: url(../images/ico-arrow-down.svg) no-repeat 100%;

	background-color: var(--color-blue);

	background-position: center;

}



.modal .modal__body form br {

	display: none;

}



.modal .modal__body form textarea {

	resize: none;

	width: 100%;

	height: 130px;

	border: 1px solid #E8E8E8;

	padding: 9px;

	font-family: var(--ff-base);

	font-size: 14px;

	color: #757575;

}



.modal .modal__body form textarea::placeholder {

	font-family: var(--ff-base);

	font-size: 14px;

	color: #757575;

}



.modal .modal__body form input[type=text]::placeholder,

.modal .modal__body form input[type=email]::placeholder { 

	font-family: var(--ff-base);

	font-weight: 300;

	font-size: 14px;

	color: #757575;

}



.modal .modal__body form > p:has( .form__comment ) {

	width: 100%;

}



.modal .modal__body .wpcf7-response-output {

	order: -1;

    text-align: center;

    margin: 0 auto 10px;

}



.modal .modal__body form .btn {

	font-style: normal;

	font-weight: 700;

	font-size: 16px;

	line-height: 1.375;

	color: var(--color-white);

	border: none;

	padding: 9px 50px;

	display: inline-block;

	cursor: pointer;

}



.modal .modal__body form > p:has( .btn ) {

	display: flex;

	flex-direction: column;

	gap: 13px;

	width: 100%;

	position: relative;

	align-items: center;

	padding-top: 7px;

}

.modal .modal__body form > p:has( .btn ) .wpcf7-spinner {

	position: absolute;

	left: 0;

	left: 5px;

    margin: 0;

}




#wpcf7-f449-o2 .wpcf7-form .gcdm-usage-text p,
#wpcf7-f449-o2 .wpcf7-form #content-1,
#wpcf7-f449-o2 .wpcf7-form #content-2{
    width: 100% !important;
}
#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-1 .text_heading {
	font-weight: bold;
	margin-bottom: 10px;
}
#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-1 .text_content {
	margin-bottom: 10px;
	font-size: 14px;
    font-weight: 400;
	position: relative;
}
#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-2 .text_heading {
	font-size: 14px;
    font-weight: 400;
	margin-bottom: 10px;
	position: relative;
}
#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-2 .text_content {
	margin-bottom: 10px;
	font-size: 14px;
    font-weight: 400;
}

#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-1 .text_content svg,
#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-2 .text_heading svg{
	position: absolute;
    right: -25px;
    bottom: 0;
	width: 15px;
}
#wpcf7-f449-o2 .wpcf7-form #content-1 p,
#wpcf7-f449-o2 .wpcf7-form #content-2 p{
	position: relative;
	width: 100%;
	font-size: 13px;
    margin-bottom: 10px;
}

#wpcf7-f449-o2 .wpcf7-form svg {
    pointer-events: all;
    cursor: pointer;
}
#wpcf7-f449-o2 .wpcf7-form .text_content .toggle-icon.opened svg,
#wpcf7-f449-o2 .wpcf7-form .text_heading .toggle-icon.opened svg{
    transform: rotate(180deg);
}
@media(max-width: 1230px) {
	#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-1 .text_content svg, 
	#wpcf7-f449-o2 .wpcf7-form #gcdm-usage-text-2 .text_heading svg {
		right: 0;
	}
}





@media(max-width: 1500px) {

	.hero-slider .slider__slide-inner {

		min-height: 500px;

	}



	.hero-slider {

		margin: 50px 0;

	}



	.section-services-offers {

		margin: 50px 0;

	}



	.section-services-contacts {

		margin: 50px 0;

	}



	.section-boxes {

		margin: 50px 0;

	}



	.section-content-contacts .column-image-content .wp-btn a {

		padding: 9px 40px;

	}



}



@media(max-width: 1200px) {

	/* Header */

	.header .header__inner {

		padding: 25px 0;

	}
	
	.header .header__inner .nav .menu > li:after {

		bottom: -30px;

	}

	/* Section default */

	.section-default {
		margin-top: 50px;
	}

	.section-default:has( section ) {
		margin-top: 0;
	}

	/* Hero Slider */

	.hero-slider .slider__slide-inner {

		min-height: 400px;

	}



	.hero-slider .shell {

		padding: 0;

	}



	/* Secion contacts map */

	.section-contacts-map {

		margin-block: 40px 0;

	}



	.section-contacts-map .section__contacts h2 {

		margin-bottom: 20px;

	}



	/* Section team contacts */

	.section-team-contacts {

		margin-block: 40px;

	}



	.section-team-contacts .column__team > .wp-block-group > h2 {

		margin-bottom: 20px;

	}



	.section-team-contacts .column__team > .wp-block-group > p {

		margin-bottom: 20px;

	}



	.section-contacts-map .section__contacts h3{

		margin-bottom: 20px;

	}

}



@media(max-width: 1024px) {

	/* Base */

	body.admin-bar .wrapper {

		margin-top: 46px;

		min-height: calc(100vh - 46px);

	}



	#wpadminbar {

		position: fixed;

	}



	/* Header */



	.header .nav-trigger {

		display: block;

	}



	.header .header__inner {

		padding: 20px 0;

	}



	.header .nav {

		position: absolute;

		top: 100%;

		left: 0;

		width: 100%;

		z-index: 999;

		padding: 0 20px 0;

		background-color: var(--color-white);

		display: grid;

		grid-template-rows: 0fr;

		overflow: hidden;

		align-content: start;

		transition: grid-template-rows var(--transition-duration);

	}



	.header .nav .menu {

		min-height: 0;

	}



	body.has-open-menu .header .nav {

		grid-template-rows: 1fr;

		padding-bottom: 20px;

	}



	.header .nav .menu {

		flex-direction: column;

	}



	.header .header__inner .nav .menu > li {

		padding: 0;

	}



	.header .header__inner .nav .menu > li.current-menu-item::after {

		display: none;

	}



	.header .nav-trigger,

	.header .header__links,

	#wpadminbar {

		z-index: 1000;

	}



	.header .header__inner .header__links ul {

		gap: 15px;

	}



	.header .header__inner .header__links {

		gap: 20px;

	}



	/* Tabs */



	.tabs .tabs__head {

		flex-wrap: nowrap;

		overflow: auto;

		gap: 10px;

	}



	.tabs .tabs__head a {

		flex: auto 0 0;

	}



	.tabs .tabs__head a:after {

		bottom: 0;

	}



	/* Section services contacts */

	

	.section-services-contacts {

		overflow: auto;

		padding-bottom: 10px;

	}



	.section-services-contacts .section__inner {

		display: flex;

		flex-wrap: nowrap;

		overflow: auto;

	}



	.section-services-contacts .section__inner .wp-block-group {

		width: auto;

		min-width: 200px;

	}



	/* Section services offers */



	.section-services-offers .section__inner {

		gap: 20px;

	}



	.section-services-offers .section__inner.wp-block-columns .wp-block-column {

		flex-basis: min-content !important;

	}



	/* Hero slider */

	

	.hero-slider .shell {

		padding: 0;

	}

	

	.hero-slider .slider__slide-inner {

		min-height: 300px;

		padding: 60px;

	}



	.hero-slider .slider__slide-inner h1 {

		font-size: 40px

	}



	.hero-slider {

		margin: 40px calc(-50vw + 50%);

	}

	

	/* Section 404 */



	.section-404 .section__inner {

        min-height: 200px;

    }



    .section-404 .section__inner h1 {

        margin-bottom: 0;

    }



	/* Section content contacts */



	.section-content-contacts .wp-block-column.column-image-content .wp-block-column.column__image {

		flex-basis: 53% !important;

	}



	.section-content-contacts .wp-block-column.column-image-content .wp-block-column#column__content {

		flex-basis: 47% !important;

	}



	.section-content-contacts .column-image-content h3 {

		margin-bottom: 10px;

	}



	.section-content-contacts .column-image-content h3 {

		margin-bottom: 10px;

	}



	.section-content-contacts .wp-block-column.column-image-content .wp-block-column.column__image figure {

		height: 100%;

	}



	.section-content-contacts .wp-block-column.column-image-content .wp-block-column.column__image figure img {

		height: 100%;

		object-fit: cover;

	}



	/* Section contact block */



	.section-contact-block {

		text-align: center;

	}



	.section-contact-block > ul {

		margin-bottom: 15px;

	}



	.section-contact-block > h4 + ul {

		margin-bottom: 20px;

	}



	.section-contact-block > p {

		margin-bottom: 15px;

	}



	/* Section services */



	.section-services {

		display: flex;

		flex-wrap: nowrap;

		overflow: auto;

		padding-bottom: 10px;

	}



	.section-services .wp-block-group {

		min-width: 290px;

		height: auto;

	}



	/* Section services links */



	.section-services-links:last-child .column__links > .wp-block-group {

		max-width: unset;

	}



	.section-services-links .column__links .wp-block-details {

		padding: 15px;

	}



	.section-services-links .column__links .wp-block-columns {

		gap: 0;

	}



	/* Section contacts map */

	.section-contacts-map .section__contacts {

		padding-right: 10px;

	}



	.section-contacts-map .section__contacts-inner {

		gap: 20px;

	}



	.section-contacts-map .section__contacts-inner .section__contact {

		width: calc(50% - 10px);

	}



	.section-contacts-map .section__contacts p {

		margin-bottom: 10px;

	}



	.section-contacts-map .section__contacts p, .section-contacts-map .section__contacts ul li, .section-contacts-map .section__contacts ul li a {

		font-size: 15px;

	}



	.section-contacts-map .section__contacts {

		width: 55%;

	}



	.section-contacts-map .section__map {

		width: 45%;

	}



	.section-contacts-map .section__contacts h3 {

		font-size: 24px;

		margin-bottom: 10px;

	}



	/* Section contacts */

	.section-contacts {

		margin: 40px 0;

	}



	.section-contacts .column__image img {

		max-height: 500px;

		object-fit: cover;

	}

}



@media(max-width: 767px) {

	h2 {

		font-size: 30px;

	}



	h3 {

		font-size: 28px;

	}

	/* Section default */

	.section-default {
		margin-top: 30px;
	}

	.section-default:has( section ) {
		margin-top: 0;
	}


	/* Section 404 */

	

	.section-404 .section__inner h1 {

		font-size: 40px;

		margin-bottom: 10px;

	}



	/* Hero Slider */



	.hero-slider .slider__slide-inner {

		padding: 40px 60px;

	}



	.hero-slider .slider__slide-inner h1 {

		font-size: 35px

	}



	.hero-slider .slider__slide-inner > p {

		font-size: 18px;

	}



	/* Section services offers */



	.section-services-offers .section__inner.wp-block-columns .wp-block-column {

        flex-basis: 100% !important;

        margin-bottom: 10px;

    }



	.section-services-offers .section__inner {

		padding: 0;

	}



	.section-services-offers.wp-block-group h2 {

		margin-bottom: 10px;

	}



	.section-services-offers {

		margin: 30px 0;

	}



	/* Section services contacts */



	.section-services-contacts .section__inner {

		padding: 0;

	}



	.section-services-contacts.wp-block-group h2 {

		margin-bottom: 10px;

	}



	.section-services-contacts {

		margin: 30px 0;

	}



	/* Hero slider */

	.hero-slider {

		margin: 30px calc(-50vw + 50%);

	}



	/* Section boxes */

	.section-boxes {

		margin: 30px 0;

	}



	.section-boxes ul li {

		width: calc(50% - 7px);

	}



	/* Footer */



	.footer-nav > ul > li {

		flex-direction: column;

		gap: 0;

		margin-bottom: 15px;

	}

	.footer-nav > ul > li > a {

		margin-bottom: 5px;

	}



	.footer-nav > ul> li > .sub-menu {

		flex-direction: column;

		gap: 5px;

	}



	.footer-nav > ul > li:last-child {

		margin-bottom: 0;

	}



	/* Hero */



	.hero {

		height: 300px;

	}



	/* Section heading */



	.section-heading h2 {

		margin-bottom: 10px;

	}



	.section-heading p {

		font-size: 22px;

	}



	/* Section content contacts */



	.section-content-contacts .wp-block-column.column-image-content .wp-block-column.column__image,

	.section-content-contacts .wp-block-column.column-image-content .wp-block-column.column__content {

		flex-basis: 100% !important;

	}



	.section-content-contacts .wp-block-column.column-image-content .wp-block-column.column__image figure {

		margin-bottom: 10px;

		height: auto;

	}



	.section-content-contacts .column-image-content .wp-block-group {

		padding-left: 0;

	}



	.section-content-contacts .column-image-content .wp-btn, 

	.section-content-contacts .column-image-content .wp-btn a {

		width: 100%;

	}



	/* Section services links */



	.section-services-links figure {

		margin-bottom: 0;

	}



	/* Section team contacts */

	.section-team-contacts {

		margin-block-start: 30px;

	}



	.section-team-contacts .column__team > .wp-block-group > h2 {

		margin-bottom: 10px;

	}



	.section-team .members {

		padding: 0;

		flex-wrap: nowrap;

		overflow: auto;

		padding-bottom: 10px;

	}



	.section-team .member {

		min-width: 300px;

	}



	.section-team .accordion__body {

		overflow: auto;

	}



	/* Section contacts map */

	.section-contacts-map {

		margin-block: 30px;

	}



	.section-contacts-map .section__contacts {

		width: 100%;

	}



	.section-contacts-map .section__map {

		width: 100%;

	}



	.section-contacts-map .section__contacts-inner {

		margin-bottom: 20px;

	}



	.section-contacts-map .section__contacts h2 {

		margin-bottom: 10px;

	}



	/* section-contacts */



	.section-contacts .column__contacts h2 {

		margin-bottom: 10px;

		line-height: 1.2;

	}



	.section-contacts .column__contacts {

		padding-left: 0;

	}



	.section-contacts .column__contacts form > p:has( .btn ) {

		flex-direction: column;

	}

}

