/*!
Theme Name: seasystems
Theme URI: http://underscores.me/
Author: Shulepov Code
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: seasystems
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

seasystems is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {
	--font-family: "Roboto", sans-serif;
  	--second-family: "Oswald", sans-serif;
	
	--black: #333;
	--gray-blue: #dce4ef;
	--white: #fff;
	--blue: #044ac3;
	--light-blue: #bbd4ff;
	--light-gray: #d9d9d9;
	--grey: #979797;
}

html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	transition: all 0.4s ease;
	text-decoration: none;
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

svg path {
	transition: all 0.4s ease;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	font-family: var(--font-family);
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
	letter-spacing: 0.04em;
}

h1, .page-title {
	font-family: var(--second-family);
	font-weight: 700;
	text-transform: uppercase;
	font-size: 4.75rem;
	line-height: 158%;
}

h2, .section-title {
	font-family: var(--second-family);
	font-weight: 700;
	text-transform: uppercase;
	font-size: 2rem;
	line-height: 150%;
}

h3 {
	font-size: 1.25rem;
}

h3,
h4,
h5,
h6 {
	font-family: var(--second-family);
	font-weight: 700;
	text-transform: uppercase;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: var(--light-blue);
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
.primary-button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid var(--blue);
	border-radius: 6.25rem;
	padding: 1rem 2rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 700;
	font-size: 1rem;
	line-height: 1.62;
	text-decoration: none;
	text-transform: uppercase;
	color: var(--blue);
	cursor: pointer;
	background: var(--white);
	transition: all 0.4s ease;
	min-width: 196px;
}

.primary-button:hover,
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background: var(--blue);
	border-color: var(--blue);
	color: var(--white);
}

.secondary-button {
	border: 1px solid var(--light-blue);
	border-radius: 6.25rem;
	padding: 1rem 2rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 700;
	font-size: 1rem;
	line-height: 162%;
	text-decoration: none;
	text-transform: uppercase;
	color: var(--light-blue);
	cursor: pointer;
	background: transparent;
	transition: all 0.4s ease;
	min-width: 196px;
}

.secondary-button:hover {
	border-color: var(--white);
	color: var(--white);
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

#breadcrumbs {
	padding: 24px 0;
}

#breadcrumbs .bread_wrap,
#breadcrumbs .bread_wrap a{
	color: var(--blue);
}

#breadcrumbs .bread_wrap .current-item {
	color: var(--grey);
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	column-gap: 8px;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	padding: 23px 0;
	font-weight: 800;
	font-size: 1.12rem;
	line-height: 1;
	text-transform: uppercase;
	color: var(--white);
	transition: all 0.4s ease;
}

.main-navigation a:hover,
.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a {
	color: var(--light-blue);
}


/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

.text-blue {
	color: var(--blue);
}

.text-lblue {
	color: var(--light-blue);
}

.seo-text ul,
.entry-content ul {
	margin: 0 0 1.5em 20px;
	padding: 0;
	list-style: none;
}

.seo-text ul li,
.entry-content ul li {
	padding: 5px 0;
	position: relative;
}


.seo-text ul li::before,
.entry-content ul li:before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 8px;
	background: #DCE4EF;
	top: 11px;
	left: -14px;
	position: absolute;
}

.entry-content img {
	width: 100%;
}

/* Site Header
--------------------------------------------- */
.header {
	position: relative;
	z-index: 999;
	padding: 16px 0;
	background: var(--black);
	transition: all 0.4s ease;
}

.header-menu {
	position: sticky;
	top: 0;
	z-index: 99999;
	background: var(--black);
	transition: all 0.4s ease;
}

.header-menu.sticky {
	background: var(--black);
}

.home .header-menu,
.home .header {
	background: transparent;
}

.header-menu.sticky {
	background: var(--black);
}

.header__info-wrapper {
	display: flex;
	align-items: center;
	justify-content: end;
	column-gap: 48px;
}

.header__address {
	background: url(img/icon_map.svg) top left no-repeat;
	padding-left: 28px;	
	color: var(--white);
	max-width: 390px;
}

.header__contacts {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 2px;
}

.header__phone {
	text-transform: uppercase;
	color: var(--white);
}

.header__email {
	font-weight: 500;
	font-size: 0.88rem;
	line-height: 171%;
	color: var(--light-blue);
}

.logo {
	display: flex;
	align-items: center;
	column-gap: 30px;
}

.logo__description {
	max-width: 170px;
	color: var(--white);
	margin-bottom: 0;
}

.logo .custom-logo-link {
	position: relative;
}

.logo .custom-logo-link::before {
	content: "";
	width: 1px;
	height: 54px;
	background: #a9c8ff;
	position: absolute;
	top: 50%;
	right: -15px;
	transform: translatey(-50%);
}

.header__messangers {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	column-gap: 16px;
}

.header__messangers-link {
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	border-radius: 100%;
	border: 1px solid var(--light-blue);
	display: flex;
	align-items: center;
	justify-content: center;
}


/* Hero
--------------------------------------------- */

.hero {
	position: relative;
}

.hero__slider > .hero__item:nth-child(n+1) {
	display: none !important;
}

.home .site-main {
	margin-top: -180px;
}

.hero .hero__item {
	padding: 6rem 0;
	max-height: 923px;
	height: 100vh;
	display: flex;
	align-items: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	position: relative;
}

.hero__item .container {
	z-index: 1;
	position: relative;
}

.hero__item::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--black);
	opacity: 0.4;
}

.hero__title {
	color: var(--white);
	font-size: clamp(3.5rem, 2.1638rem + 2.1552vw, 4.75rem);
}

.hero__navigation {
	position: absolute;
	bottom: 48px;
	left: 0;
	right: 0;
}

body .slick-dots {
	display: flex;
	position: static;
	width: auto;
}

body .slick-dots li button::before {
	display: none;
}

body .slick-dots li {
	width: 12px;
	height: 12px;
	line-height: 1;
}

body .slick-dots li button {
	width: 12px;
	height: 12px;
	padding: 0;
	background: var(--light-gray);
	min-width: inherit;
	line-height: 1;
}

.slick-dots li.slick-active button {
	background: var(--light-blue);
}

.hero__navigation .slick-dots {
	order: 2;
}

.hero__navigation .next-slick {
	order: 3;
}

/* Advantages
--------------------------------------------- */

.advantages {
	padding: 6rem 0;
}

.advantages__title {
	margin-bottom: 24px;
}

.advantages__item {
	display: flex;
	align-items: center;
	height: 100%;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
	border-radius: 20px;
	padding: 48px 24px;
	column-gap: 24px;
}

.advantages__item-icon {
	flex: 0 0 86px;
}

.advantages__item-text {
	font-weight: 600;
	font-size: 18px;
	line-height: 178%;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--black);
}

.advantages__item-text span {
	display: block;
}

/* About
--------------------------------------------- */

.about {
	padding: 6rem 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.about__block {
	border-radius: 20px;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
	padding: 48px;
	height: 100%;
}

.about__block-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 6rem;
}

.about__text {
	position: relative;
}

.about__block-columns .about__text:nth-child(2)::before {
	content: "";
	position: absolute;
	top: 0;
	left: -50px;
	height: 104px;
	background: var(--gray-blue);
	width: 1px;
}

.about__block-columns .primary-button {
	grid-column: 2 / 3;
	grid-row: 2  / 3;
	justify-self: flex-end;
}

/* Trust
--------------------------------------------- */

.navigation-slider {
	display: flex;
	align-items: center;
	column-gap: 1.5rem;
	justify-content: center;
}

body .slick-arrow,
.navigation-slider .slick-arrow {
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

body .slick-arrow svg path,
.navigation-slider .slick-arrow svg path {
	transition: all 0.4s ease;
}

body .slick-arrow:hover svg path,
.navigation-slider .slick-arrow:hover svg path,
.trust__navigation .slick-arrow:hover svg path {
	fill: var(--blue);
}

.trust {
	padding: 6rem 0;
}

.trust__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.trust__title {
	margin-bottom: 0;
}

.trust__slider .slick-list {
	display: flex;
	padding: 1.5rem 0;
}

.trust__slider .slick-track {
	display: flex;
	align-items: stretch;
}

.trust__slider-item {
	box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.15);
	background: var(--white);
	padding: 24px 48px;
	border-radius: 16px;
	min-height: 192px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.trust--about {
	padding: 6rem 0;
	background: var(--gray-blue);
}

.trust--about .trust__slider-item {
	min-height: 107px;
	box-shadow: none;
	margin: 0 8px;
	padding: 16px;
}

body .trust--about .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
}

body .trust--about .prev-slick {
	left: 0;
}

body .trust--about .next-slick {
	right: 0;
}

.certificates--about {
	padding-top: 6rem;
}

/* Reference
--------------------------------------------- */

.reference {
	padding-bottom: 6rem;
}

.reference__title {
	margin-bottom: 1.5rem;
}

.reference__text {
	font-size: 18px;
	line-height: 144%;
	margin-bottom: 1.5rem;
}

.reference__images {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.reference__image {
	border-radius: 8px;
	overflow: hidden;
	position: relative;
}

.reference__image::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--black);
	opacity: 0.4;
}

.reference__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Certificates
--------------------------------------------- */

.certificates {
	padding-bottom: 6rem;
}

.certificates__title {
	margin-bottom: 1.5rem;
}

.certificates__text {
	margin: 0;
}

.certificates__slider .slick-list {
	display: flex;
}

.certificates__slider .slick-track {
	display: flex;
	align-items: stretch;
}

.certificates__slider .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 999;
}

.certificates__slider .prev-slick {
	left: 0;
}

.certificates__slider .next-slick {
	right: 0;
}

.certificates__slider .slick-slide {
	padding: 0 12px;
}

.certificates__slider-item {
	background: var(--gray-blue);
	border-radius: 16px;
	padding: 24px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.certificates__slider-item img {
	width: 100%;
	object-fit: cover;
}

.certificates__logos {
	display: flex;
	justify-content: end;
	column-gap: 32px;
	align-items: center;
}

.certificates__logo-item {
	display: block;
	text-align: center;
}

.news {
	padding-bottom: 6rem;
}

/* Footer
--------------------------------------------- */

.footer {
	background: var(--black);
	padding: 3rem 0 6rem;
}

.footer .logo {
	margin-bottom: 1.5rem;
}

.footer .logo .custom-logo-link::before {
	display: none;
}

.footer__privacy {
	display: inline-block;
	margin-bottom: 8px;
	color: var(--light-blue);
}

.footer__copyright {
	color: var(--white);
}

.footer__title {
	font-weight: 800;
	font-size: 18px;
	line-height: 144%;
	text-transform: uppercase;
	color: var(--light-gray);
	margin-bottom: 1.5rem;
}

.footer__navigation ul.menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	row-gap: 8px;
}

.footer__navigation ul.menu li {
	max-width: 306px;
}

.footer__navigation ul.menu a {
	color: var(--white);
}

.footer__navigation ul.menu a:hover,
.footer__navigation ul.menu .current-menu-item a,
.footer__navigation ul.menu .current-menu-item a {
	color: var(--light-blue);
}

#footer_navigation ul.menu {
	row-gap: 24px;
}

#footer_navigation ul.menu a {
	font-weight: 800;
	font-size: 18px;
	line-height: 144%;
	text-transform: uppercase;
}

.footer__contacts {
	display: grid;
	row-gap: 1rem;
}

.footer__phone {
	color: var(--white);
	padding-left: 28px;
	background: url(img/icon_phone.svg) left center no-repeat;
}

.footer__email {
	color: var(--white);
	padding-left: 28px;
	background: url(img/icon_email.svg) left center no-repeat;
}

.footer__address {
	color: var(--white);
	padding-left: 28px;
	background: url(img/icon_map.svg) top 4px left no-repeat;
}

.footer__phone:hover,
.footer__email:hover {
	color: var(--light-blue);
}

.footer__contacts .header__messangers {
	justify-content: flex-start;
}

/* Error 404
--------------------------------------------- */

.error-404 {
	padding: 6rem 0;
}

.error-404__body {
	display: grid;
	justify-content: center;
}

.error-404__number {
	margin-bottom: 48px;
}

.error-404__text {
	text-align: center;
	margin-bottom: 24px;
}

.error-404__body .primary-button {
	justify-self: center;
}


/* Contacts Page
--------------------------------------------- */

.contacts {
	padding-bottom: 6rem;
}

.g-x-3 {
	column-gap: 1.5rem;
}

.contacts__block {
	padding: 24px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
	border-radius: 10px;
	height: 100%;
}

.contacts__block:has(.contacts__messangers) {
	max-width: 120px;
	width: 100%;
}

.contacts__block-title {
	font-size: 18px;
	line-height: 144%;
	letter-spacing: 0.04em;
	color: var(--grey);
}

.contacts__block-link {
	color: var(--dark);
}

.contacts__block-icon {
	flex: 0 0 40px;
	margin-bottom: 16px;
}

.contacts__messangers {
	display: grid;
	row-gap: 16px;
}

.contacts__map {
	border-radius: 20px;
	overflow: hidden;
}

.contacts__map iframe {
	height: 470px;
	width: 100%;
}

.questions {
	margin-bottom: 6rem;
}

.questions__block {
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--gray-blue);
}

.questions__block-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 3rem 6rem;
}

.questions__block-image {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--white);
}

.questions__title {
	margin-bottom: 1rem;
}

.questions__text {
	font-size: 18px;
	line-height: 144%;
	letter-spacing: 0.04em;
	color: var(--black);
	margin-bottom: 1.5rem;
}

.questions__link {
	font-weight: 500;
	font-size: 16px;
	line-height: 150%;
	color: var(--black);
	display: inline-flex;
	margin-bottom: 20px;
	padding-left: 28px;
}

.questions__link--email {
	background: url(img/icon_email_blue.svg) left center no-repeat;
}

.questions__link--phone {
	background: url(img/icon_phone_blue.svg) left center no-repeat;
}

/* About Page
--------------------------------------------- */

.intro {
	padding-bottom: 6rem;
}

.intro__description,
.intro__text {
	font-size: 1.125rem;
	line-height: 1.44;
}

.intro__description span {
	color: var(--blue);
}

.advantages.advantages--about {
	padding-top: 0;
}

.steps {
	padding: 6rem 0;
	background: var(--gray-blue);
}

.steps__item {
	position: relative;
	padding-bottom: 1.5rem;
	display: flex;
	align-items: start;
	column-gap: 1.5rem;
}

.steps__item::before {
	content: "";
	width: 2px;
	background: var(--blue);
	position: absolute;
	left: 6px;
	top: 6px;
	height: 100%;
}

.steps__item:last-child::before {
	display: none;
}

.steps__date {
	font-weight: 500;
	font-size: 1.25rem;
	line-height: 1.40;
	letter-spacing: 0.04em;
	color: var(--black);
	position: relative;
	display: inline-flex;
	align-items: center;
	column-gap: 1.5rem;
	flex: 0 0 196px;
}

.steps__date::before {
	content: "";
	background: #044AC3;
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	display: inline-flex;
	border-radius: 100%;	
}

.steps__info {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	padding-left: 1.5rem;
	position: relative;
}

.steps__info::before {
	content: "";
	background: #044AC3;
	width: 16px;
	height: 2px;
	position: absolute;
	left: 0;
	top: 12px;
}

.steps__item-title {
	font-weight: 500;
	font-size: 1.125rem;
	line-height: 1.44;
	color: var(--black);
	margin-bottom: 0.5rem;
}

.target {
	padding: 6rem 0;
}

.target__text {
	font-weight: 400;
	font-size: 1.125rem;
	line-height: 1.44;
	letter-spacing: 0.04em;
	color: var(--black);
}

.target__text span {
	font-weight: 500;
	color: var(--blue);
}

.worth {
	background: var(--gray-blue);
	padding: 6rem 0;
}

.worth__text {
	font-weight: 400;
	font-size: 1.125rem;
	line-height: 1.44;
	letter-spacing: 0.04em;
	color: var(--black);
}

.worth__images {
	display: flex;
	align-items: center;
	column-gap: 1.5rem;
	justify-content: space-between;
}

.worth__images img {
	border-radius: 20px;
}

.target__image {
	border-radius: 20px;
	overflow: hidden;
}

.target__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.direction {
	padding: 6rem 0;
}

.direction__block {
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
	border-radius: 20px;	
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 3rem;
}

.direction:has(.direction__quote) .direction__block {
	margin-bottom: 6rem;
}

.direction__title {
	max-width: 300px;
	width: 100%;
	position: relative;
}

.direction__title::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -23px;
	width: 36px;
	height: 60px;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url('data:image/svg+xml,<svg width="36" height="60" viewBox="0 0 36 60" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.60072 60C4.52228 60 5.44383 59.6733 6.1458 59.0233L34.9444 32.357C36.3519 31.0537 36.3519 28.9471 34.9444 27.6438L6.1458 0.977486C4.73827 -0.325829 2.46318 -0.325829 1.05565 0.977486C-0.351883 2.2808 -0.351883 4.38744 1.05565 5.69075L27.3091 30.0004L1.05565 54.3101C-0.351883 55.6134 -0.351883 57.72 1.05565 59.0233C1.75761 59.6733 2.67917 60 3.60072 60Z" fill="%23DCE4EF" /></svg>');
}

.direction__text {
	max-width: 760px;
	width: 100%;
	font-weight: 500;
	font-size: 1.125rem;
	line-height: 1.44;
	color: var(--black);
	margin: 0;
}

.direction__text ul li {
	padding: 12px 0;
}

.direction__text ul li::before {
	top: 18px;
}

.direction__quote {
	padding: 3rem;
	position: relative;
	font-weight: 800;
	font-size: 1.125rem;
	line-height: 1.44;
	text-transform: uppercase;
	text-align: center;
	color: var(--black);
}

.direction__quote::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 2.46913580247%;
	height: 32px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url('data:image/svg+xml,<svg width="37" height="32" viewBox="0 0 37 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 32V23.3016C0 20.5926 0.447323 17.8201 1.34197 14.9841C2.23661 12.1058 3.45078 9.3545 4.98446 6.73016C6.56074 4.10582 8.35003 1.86243 10.3523 0L17.7651 4.8254C16.3166 7.44974 15.1238 10.2434 14.1865 13.2063C13.2493 16.1693 12.7807 19.4921 12.7807 23.1746V32H0ZM19.2349 32V23.3016C19.2349 20.5926 19.6822 17.8201 20.5769 14.9841C21.4715 12.1058 22.6857 9.3545 24.2193 6.73016C25.7956 4.10582 27.5849 1.86243 29.5872 0L37 4.8254C35.5515 7.44974 34.3587 10.2434 33.4214 13.2063C32.4842 16.1693 32.0155 19.4921 32.0155 23.1746V32H19.2349Z" fill="%23DCE4EF" /></svg>');
}

.direction__quote::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 2.46913580247%;
	height: 32px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url('data:image/svg+xml,<svg width="37" height="32" viewBox="0 0 37 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M37 1.90735e-06L37 8.69841C37 11.4074 36.5527 14.1799 35.658 17.0159C34.7634 19.8942 33.5492 22.6455 32.0155 25.2698C30.4393 27.8942 28.65 30.1376 26.6477 32L19.2349 27.1746C20.6834 24.5503 21.8762 21.7566 22.8135 18.7937C23.7507 15.8307 24.2193 12.5079 24.2193 8.8254L24.2193 3.02467e-06L37 1.90735e-06ZM17.7651 3.58892e-06L17.7651 8.69842C17.7651 11.4074 17.3178 14.1799 16.4231 17.0159C15.5285 19.8942 14.3143 22.6455 12.7807 25.2698C11.2044 27.8942 9.41508 30.1376 7.41278 32L-4.2185e-07 27.1746C1.44847 24.5503 2.64133 21.7566 3.57858 18.7937C4.51583 15.8307 4.98445 12.5079 4.98445 8.8254L4.98445 4.70624e-06L17.7651 3.58892e-06Z" fill="%23DCE4EF" /></svg>');
}


/* News Category
--------------------------------------------- */

.news--category {
	padding: 1.5rem 0 6rem;
}

.news__item {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 16px;	
}

.news__item-link {
	display: flex;
	height: 100%;
	min-height: 272px;
}

.news__item-content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: start;
	padding: 1rem;
	flex: 1;
}

.news__item-date {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.50;
	color: var(--black);
	padding: 4px 8px;
	background: var(--white);
	border-radius: 100px;
}

.news__item-title {
	font-weight: 500;
	font-size: 18px;
	line-height: 1.44;
	color: var(--white);
	margin-top: auto;
	margin-bottom: 16px;
}

.news__item-arrow {
	display: inline-flex;
	align-items: center;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5;
	color: var(--white);
	column-gap: 10px;
	align-self: end;
}

#load-more-button {
	column-gap: 10px;
}

#load-more-button:hover svg path {
	fill: var(--white);
}

/* News Single
--------------------------------------------- */

.single__news {
	padding-bottom: 6rem;
}

.news__date {
	background: var(--lgray);
	border-radius: 100px;
	padding: 4px 8px;
	font-weight: 400;
	font-size: 12px;
	line-height: 150%;
	color: var(--black);
}

.other-news__title {
	font-weight: 800;
	font-size: 18px;
	line-height: 1.44;
	text-transform: uppercase;
	color: var(--black);
	margin-bottom: 1.5rem;
}

.other-news__list {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	row-gap: 1.5rem;
}

/* Reference page
--------------------------------------------- */

.reference {
	padding-bottom: 6rem;
}

.reference__info {
	max-width: 306px;
}

.reference__info-title {
	margin-bottom: 1.5rem;
}

.reference__info-text {
	font-weight: 400;
	font-size: 18px;
	line-height: 1.44;
	letter-spacing: 0.04em;
	color: var(--black);
	margin-bottom: 1.5rem;
}

.reference__item {
	display: flex;
	flex-direction: column;
	height: 100%;
	border-radius: 20px;
	overflow: hidden;
	background: var(--gray-blue);
}

.reference__item-image {
	height: 182px;
}

.reference__item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.reference__item-text {
	padding: 16px;
}

.reference__button {
	padding: 13px 26px;
	column-gap: 10px;
}

.reference__button:hover svg path {
	fill: var(--white);
}

/* Services page
--------------------------------------------- */

.services {
	padding-bottom: 6rem;
}

.services__title {
	margin-bottom: 3rem;
}

.services__item {
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
	border-radius: 20px;
	overflow: hidden;
	height: 100%;
}

.services__item-link {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	height: 100%;
}

.services__item-content {
	padding: 24px;
	display: flex;
	flex-direction: column;
	align-items: start;
}

.services__item-title {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: 0.04em;
	color: var(--black);
	margin-bottom: 16px;
}

.services__item-text {
	color: var(--grey);
	margin: 0;
}

.services__item-image {
	flex: 1 0 320px;
}

.services__item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Production page
--------------------------------------------- */

.production {
	padding-bottom: 6rem;
}

.production__content,
.production__content p:last-child {
	margin: 0;
}

.production__content h2 {
	margin-bottom: 1.5rem;
}

.produce {
	padding-bottom: 6rem;
}

.produce__title {
	margin-bottom: 1.5rem;
}

.produce__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.produce__item-image {
	border-radius: 20px;
	overflow: hidden;
	margin-bottom: 16px;
}

.produce__item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.produce__item-title {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: 0.04em;
	color: var(--black);
}

.why-we {
	padding-bottom: 6rem;
}

.why-we__title {
	max-width: 258px;
}

.why-we__block {
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
	column-gap: 96px;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
	padding: 48px;
}

.why-we__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.why-we__item {
	background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.25872 14.5796L3.08958 9.41045C2.76414 9.08502 2.23651 9.08502 1.91107 9.41045C1.58563 9.73589 1.58563 10.2635 1.91107 10.589L7.7444 16.4223C8.09768 16.7756 8.68026 16.7407 8.98892 16.3479L18.1556 4.68123C18.4399 4.31933 18.3771 3.79546 18.0152 3.51111C17.6533 3.22677 17.1294 3.28963 16.8451 3.65153L8.25872 14.5796Z" fill="%23BBD4FF" /></svg>');
	background-position: top 6px left;
	background-repeat: no-repeat;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.78;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--black);
	padding-left: 28px;
}

/* Boring page
--------------------------------------------- */
.boring {
	padding-bottom: 6rem;
}

.boring__item img {
	border-radius: 20px;
}

.why-we--boring .why-we__block {
	flex-direction: column;
	column-gap: 0;
}

.why-we--boring .why-we__title {
	margin-bottom: 24px;
	max-width: inherit;
}

.why-we--boring .why-we__list {
	display: flex;
	flex-direction: column;
}

/* Products page
--------------------------------------------- */

.products--page {
	padding-bottom: 6rem;
}

.products__title {
	margin-bottom: 3rem;
}

.products__item-link {
	border-radius: 20px;
	background: var(--gray-blue);
	padding: 48px;
	position: relative;
	min-height: 246px;
	transition: all 0.4s ease;
	display: flex;
}

.products__item-title {
	font-weight: 500;
	font-size: 20px;
	line-height: 140%;
	letter-spacing: 0.04em;
	color: var(--black);
	transition: all 0.4s ease;
}

.products__item-link:hover {
	background: var(--blue);
}

.products__item-link:hover .products__item-title {
	color: var(--white);
}

.products__item-image {
	position: absolute;
	bottom: 0;
	right: 0;
	max-width: 220px;
	width: 100%;
	height: 149px;
	display: flex;
	align-items: end;
	justify-content: end;
}

/* Products single
--------------------------------------------- */
.products-main {
	padding-bottom: 6rem;
}

.product-main__content {
	font-weight: 400;
	font-size: 18px;
	line-height: 144%;
	letter-spacing: 0.04em;
	color: var(--black);
}

.products-slider {
	border-radius: 20px;
	padding: 24px 48px;
	box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.1);
	background: var(--white);
}

.products-slider__main {
	margin-bottom: 24px;
}

.products-slider__main .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	cursor: pointer;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
}

.products-slider__main .prev-slick {
	left: -24px;
}

.products-slider__main .next-slick {
	right: -24px;
}

.products-slider__main-item a {
	min-height: 317px;
	display: flex !important;
	justify-content: center;
}

.products-slider__main-item img {
	object-fit: contain;
}

.products-slider__navigation-item {
	width: 95px !important;
	height: 74px;
	border-radius: 8px;	
	overflow: hidden;
	border: 1px solid transparent;
	margin: 0 8px;
	cursor: pointer;
	padding: 4px;
}

.products-slider__navigation-item.slick-current {
	border: 1px solid var(--light-blue);
}

.products-slider__navigation-item img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.product-content {
	padding-bottom: 6rem;
}

.image-description {
	padding-bottom: 6rem;
}

.image-description__wrapper {
	border-radius: 20px;
	overflow: hidden;
}

.image-description__wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.image-description__title {
	margin-bottom: 24px;
}

.image-description__content {
	font-weight: 400;
	font-size: 18px;
	line-height: 144%;
	letter-spacing: 0.04em;
	color: var(--black);
	margin: 0;
}

.image-description__content p {
	margin-bottom: 8px;
}

.image-description__content p:last-child {
	margin-bottom: 0;
}

.product-specifications {
	padding-bottom: 3rem;
}

.product-specifications + .product-content {
	padding-bottom: 3rem;
}

.product-specifications__item {
	display: flex;
	align-items: center;
	padding: 8px 16px;
}

.product-specifications__item:nth-child(odd) {
	background: var(--gray-blue);
}

.product-specifications__item-title,
.product-specifications__item-text {
	flex: 0 0 50%;
	font-weight: 500;
	font-size: 16px;
	line-height: 150%;
	color: var(--black);
}

.product-table {
	padding-bottom: 6rem;
}

.product-table__title {
	margin-bottom: 24px;
}

.table-product th {
	padding: 0 16px 8px;
	font-weight: 500;
	font-size: 16px;
	line-height: 150%;
	color: var(--grey);
	max-width: 306px;
}

.table-product th:nth-child(1) {
	max-width: 180px;
}

.table-product th:nth-child(2) {
	max-width: 206px;
}

.table-product th:nth-child(3) {
	max-width: 306px;
}

.table-product th:nth-child(4) {
	max-width: 196px;
}

.table-product th:nth-child(5) {
	max-width: 306px;
}

.table-product tbody tr:nth-child(odd) {
	background: var(--gray-blue);
}

.table-product td:first-child {
	text-align: left;
}

.table-product td {
	padding: 8px 16px;
	font-weight: 500;
	font-size: 16px;
	line-height: 150%;
	color: var(--black);
	text-align: center;
}


/* MOBILE MENU */

.mobile__wrapper {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease;
}

.mobile__menu {
	padding-bottom: 3rem;
}

.mobile__info {
	border-top: 1px solid var(--blue);
	padding: 1.5rem 0;
	display: grid;
	row-gap: 1rem;
}

.mobile__close {
	position: fixed;
	top: 28px;
	right: 16px;
	z-index: 1;
	background: transparent;
	padding: 0;
	border: none;
	display: none;
}

.open--bottom .mobile__close {
	display: block;
}

.mobile__wrapper.open {
	opacity: 1;
	visibility: visible;
}

.mobile__navigation {
	background: var(--white);
	padding: 48px 12px 12px;
	z-index: 999;
	width: 75%;
	overflow-y: scroll;
	transition: all 0.4s ease;
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.07);
	z-index: 1;
	position: relative;
	height: 100%;
	transform: translateX(-100%);
}

.mobile__navigation .header__messangers-link {
	border-color: var(--blue);
}

.mobile__navigation .header__messangers-link svg path {
	fill: var(--blue);
}

.mobile__wrapper.open .mobile__navigation {
	transform: translateX(0);
}

.mobile-active {
	overflow: hidden;
}

.mobile__logo a {
	display: block;
	margin: 0 auto 20px;
	max-width: 100px;
	width: 100%;
}

.header__messangers--mobile {
	justify-content: start;
	list-style: none;
	padding: 0;
	margin: 0;
}

#mobile_menu {
	padding: 0;
	margin: 0;
	list-style: none;
	display: grid;
	row-gap: 16px;
}

.mobile__menu ul a {
	font-weight: 400;
	font-size: 16px;
	line-height: 162%;
	color: var(--dark);
}

.mobile__menu .sub-menu {
	margin: 0;
	padding: 0;
	list-style: none;
	height: 0;
	opacity: 0;
	visibility: hidden;
	transition: all 0.4s ease;
	display: grid;
	row-gap: 16px;
}

.mobile__menu ul.sub-menu a {
	font-weight: 500;
	font-size: 14px;
	line-height: 150%;
	padding-left: 8px;
	color: var(--black);
	display: block;
}

.mobile__button {
	width: 25px;
	flex: 0 0 25px;
	height: 20px;
	position: relative;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
 	display: none;
	padding: 0;
	border: none;
	background: transparent;
}

.mobile__button-line {
	display: block;
  	position: absolute;
	height: 3px;
	width: 100%;
	background: var(--white);
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

.single:has(.hero) .mobile__button-line,
.page:has(.hero) .mobile__button-line,
.home .mobile__button-line {
	background: var(--light-blue);
}

.mobile__button span:nth-child(1) {
	top: 0px;
}

.mobile__button span:nth-child(2) {
	top: 10px;
}

.mobile__button span:nth-child(3) {
	top: 20px;
}

.mobile__button.open span:nth-child(1) {
	width: 0%;
}

.mobile__button.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mobile__button.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 10px;
}

.mobile__toggle {
	height: auto;
	line-height: 1;
	width: auto;
	padding: 0;
	border: none;
	background: transparent;
	position: absolute;
	top: 0;
	right: 0;
}

.menu-item-has-children {
	position: relative;
}

.menu-item-has-children.open .sub-menu {
	height: auto;
	opacity: 1;
	visibility: visible;
	padding-top: 1rem;
}

.menu-item-has-children.open .mobile__toggle {
	rotate: -90deg;
}

.mobile__social {
	padding-top: 20px;
}

.mobile__social-title {
	font-size: 14px;
	line-height: 24px;
	margin-bottom: 0.5rem;
	display: block;
}

.mobile__overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	background: rgba(255,255,255,0.4);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.mobile__wrapper.open .mobile__overlay {
	opacity: 1;
}

.mobile__address,
.mobile__worktime,
.mobile__phone a,
.mobile__email a {
	font-weight: 600;
    font-size: 1rem;
    line-height: 1.62;
    color: var(--dark);
}

.site-main__content {
	padding-bottom: 6rem;
}

@media(max-width: 1440px) {
	.advantages__item-icon { flex: 0 0 64px; }
}

@media (max-width: 1199px) {
	.main-navigation a { font-size: 1rem; }
	.products__item-link { padding: 24px 24px 48px; }
	.advantages__item { padding: 24px; column-gap: 16px; }
	.advantages__item-icon { flex: 0 0 48px; }
	.advantages__item-text { font-size: 16px; }
	.why-we__block { column-gap: 48px; }
}

@media (max-width: 991px) {
	h1, .page-title { font-size: 3.75rem; }
	h2, .section-title { font-size: 1.75rem;}
	.header { position: sticky; top: 0; }
	.header-menu, .header__address { display: none; }
	.mobile__button { display: flex; min-width: inherit; background: transparent !important; }
	.produce__item { align-items: stretch; }
	.why-we__block { flex-direction: column; row-gap: 24px; }
	.direction__block { flex-direction: column; align-items: start; }
	.image-description__wrapper { margin-bottom: 24px; }
	.header.sticky { background: var(--black); }
	.certificates__text { margin-bottom: 1.5rem; }
	.certificates__logos { justify-content: center; }
}

@media (max-width: 768px) {
	h1, .page-title { font-size: 2.75rem; }
	h2, .section-title { font-size: 1.5rem; }
	.logo > img, .logo .custom-logo-link::before { display: none; }
	.advantages, .about, .trust { padding: 3rem 0; }
	.questions, .direction:has(.direction__quote) .direction__block { margin-bottom: 3rem; }
	.reference, .certificates, .news, .contacts, .single__news, .services, .produce, .production, .why-we, .boring, .intro, .products--page, .products-main, .product-table, .product-content { padding-bottom: 3rem; }
	.footer, .steps, .target, .worth, .direction, .error-404 { padding: 3rem 0; }
	.questions__block-info { padding: 3rem; }
	#footer_navigation ul.menu { row-gap: 16px; }
	.about__block-columns { grid-template-columns: 1fr; row-gap: 16px; }
	.about__block-columns .primary-button { grid-column: inherit; grid-row: inherit; justify-self: inherit; }
	.about__block { padding: 24px; }
	.services__item-link { flex-direction: column-reverse; }
	.services__item-image { height: 200px; flex: 1 1 auto; }
	.why-we__block { padding: 24px; }
	.why-we__list { grid-template-columns: 1fr; gap: 8px; }
	.why-we__block { row-gap: 8px; }
	.steps__item { column-gap: 1rem; }
	.steps__date { flex: 0 0 100px; }
	.steps__item-title { font-size: 16px; }
	.steps__item-text { font-size: 14px; }
	.direction__text { margin-top: 16px; }
	.direction__text ul li { padding: 0 0 12px; font-size: 16px; }
	.products-slider { padding: 24px 16px; }
	.site-main__content { padding-bottom: 3rem; }
	.certificates--about { padding-top: 3rem; }
}

@media (max-width: 576px) {
	.primary-button, button, input[type="button"], input[type="reset"], input[type="submit"] { width: 100%; }
	h1, .page-title { font-size: 1.75rem; }
	h2, .section-title { font-size: 1.25rem;}
	.gallery { column-gap: 1rem; }
	.header__info-wrapper { column-gap: 24px; }
	.header__email { display: none; }
	.header__phone { background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M9.55079 9.83303C9.82899 9.64756 9.99609 9.33533 9.99609 9.00098V5.00098C9.99609 3.34412 8.65295 2.00098 6.99609 2.00098H2.99609C2.44381 2.00098 1.99609 2.44869 1.99609 3.00098C1.99609 12.9421 11.055 22.001 20.9961 22.001C21.5484 22.001 21.9961 21.5533 21.9961 21.001V17.001C21.9961 15.3441 20.6529 14.001 18.9961 14.001H14.9961C14.6617 14.001 14.3495 14.1681 14.164 14.4463L12.2587 17.3043C10.1835 15.9625 8.36534 14.1902 6.96683 12.1499L6.69278 11.7384L9.55079 9.83303ZM15.5313 16.001H18.9961C19.5484 16.001 19.9961 16.4487 19.9961 17.001V19.9663C18.0589 19.8323 16.1682 19.3141 14.4048 18.4925L14.0002 18.2976L15.5313 16.001ZM4.03077 4.00098H6.99609C7.54838 4.00098 7.99609 4.44869 7.99609 5.00098V8.46579L5.69947 9.99687C4.76492 8.11942 4.17513 6.08724 4.03077 4.00098Z" fill="white" /><path d="M8 3H3L3.5 7L5.5 11L8 9.5L9 8V4.5L8 3Z" fill="white" /><path d="M15.0039 15L13.0039 18.5L15.5039 20.5L20.5039 21L21.5039 17L20.0039 15H15.0039Z" fill="white" /></svg>'); font-size: 0; width: 24px; height: 24px; background-position: center; background-repeat: no-repeat; }
	.logo .custom-logo-link { max-width: 156px; }
	.home .site-main { margin-top: -100px; }
	.hero .hero__item { height: auto; min-height: 421px; }
	.products__item-link { min-height: 172px; }
	.products__item-title { max-width: 304px; }
	.products__item-image { max-width: 156px; }
	.questions__block-info, .about__block { padding: 24px 16px; }
	.contacts__block:has(.contacts__messangers), .reference__info { max-width: inherit; }
	.contacts__messangers { display: flex; column-gap: 16px; }
	.contacts__map iframe { height: 350px; }
	.services__item-content { padding: 24px 16px; }
	.why-we__item { font-size: 16px; }
	.why-we--boring .why-we__title { margin-bottom: 8px; }
	.worth__images { flex-wrap: wrap; row-gap: 16px; }
	.worth__images img { width: 100%; }
	.direction__quote { padding: 1rem; }
	.direction__block { padding: 24px 16px; }
	.direction__title::after { display: none; }
	.error-404__number { text-align: center; }
	.error-404__number svg { max-width: 80%; }
	.hero__navigation { bottom: 24px; }
}