/*
Theme Name: KovoNovak
Theme URI: 
Author: infocount.cz
Author URI: https://infocount.cz/
Description: Theme for agriculture machinery company
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kovonovak-theme
*/

html, body, h1, h2, h3, h4, blockquote, ul, li, p {
	margin: 0;
	padding: 0;
}

html {
	margin-top: 0 !important;
}

body, h1, h2, h3, h4, input, textarea, div, p, li, a {
	color: #000000;
	font-family: 'Outfit', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
}

body {
	background-color: #F9F7EF;
}

a {
	color: #48AC34;
	text-decoration: none;
	transition: color .5s ease;
}
a:hover {
	color: #93C122;
	text-decoration: none;
}

img {
	display: block;
}

ul {
	list-style-type: none;
}

*, ::after, ::before {
	box-sizing: unset;
}

.container {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1680px;
	padding: 80px 40px;
	margin: 0 auto;
}

/* header */

header {
	position: relative;
	z-index: 1;
}

header .container {
	padding-top: 0;
	padding-bottom: 70px;
}

header .header {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	height: 125px;
}
header .header::before {
	position: absolute;
	content: "";
	left: 50%;
	bottom: 0;
	width: 100vw;
	height: 1px;
	background-color: #CCCCCC;
	transform: translateX(-50%);
}

header .brand a {
	display: block;
	width: 254px;
	height: 60px;
	overflow: hidden;
	text-indent: -99999px;
	background: url('img/logo.svg') center no-repeat;
	background-size: cover;
}

header .nav {
	display: flex;
	align-items: center;
	gap: 30px;
}
header .nav.search {
	flex-grow: 1;
}

header .top {
	display: flex;
	gap: 40px;
}
header .search .top {
	display: none;
}
header .top a {
	color: #000000;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	text-transform: uppercase;
}
header .top a:hover {
	color: #93C122;
}

header .control {
	display: flex;
	background-color: #FFFFFF;
	border-radius: 10px;
}
header .search .control {
	flex-grow: 1;
}

header .lang {
	display: flex;
	padding: 15px 0 15px 5px;
}
header .search .lang {
	display: none;
}
header .lang li {
	position: relative;
	padding: 0 10px;
}
header .lang li::after {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	width: 1px;
	background-color: #E7EBE3;
}
header .lang a {
	color: #878787;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	text-transform: uppercase;
}
header .lang a:hover {
	color: #93C122;
}

header .form {
	flex-grow: 1;
	padding: 10px;
}
header .form form {
	display: flex;
	align-items: center;
	height: 34px;
}
header .form .wrapper {
	display: none;
}
header .search .form .wrapper {
	flex-grow: 1;
	position: relative;
	display: block;
	padding-right: 10px;
	margin-right: 10px;
}
header .form .wrapper::after {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	width: 1px;
	background-color: #E7EBE3;
}
header .form input {
	width: 100%;
	color: #000000;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	text-align: right;
	padding: 0;
	margin: 0;
	outline: none;
	border: none;
}
header .form input:focus {
	outline: none;
}
header .form input::placeholder {
	color: #878787;
	text-transform: uppercase;
	opacity: 1;
}
header .form input:focus::placeholder {
	opacity: 1;
}
header .form button {
	flex: 0 0 27px;
	cursor: pointer;
	width: 27px;
	height: 26px;
	overflow: hidden;
	text-indent: -99999px;
	background: url('img/search.svg') center no-repeat;
	outline: none;
	border: none;
	padding: 0;
}
header .form button:hover {
	filter: grayscale(1);
}

header .burger {
	display: none;
	cursor: pointer;
	background-color: #1F4D3E;
	padding: 15px 10px;
	border-radius: 10px;
}
header .burger strong {
	position: relative;
	display: block;
	width: 34px;
	height: 24px;
}
header .burger span {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background-color: #DCE25A;
	margin: auto 0;
	border-radius: 2px;
}
header .burger span:first-child {
	bottom: unset;
}
header .burger span:last-child {
	top: unset;
}
header .burger:hover span {
	background-color: #FFFFFF;
}

header.active .burger span {
	display: none;
	top: 0;
	bottom: 0;
	transition: transform .5s ease;
}
header.active .burger span:first-child {
	display: block;
	transform: rotate(45deg);
}
header.active .burger span:last-child {
	display: block;
	transform: rotate(-45deg);
}

header .footer {
	position: absolute;
	left: 0;
	right: 0;
}
header.fixed .footer {
	position: fixed;
	top: 0;
	background-color: #F9F7EF;
}

header .menu {
	display: flex;
	gap: 13px;
	max-width: 1600px;
	padding: 20px 40px;
	margin: 0 auto;
}
header .menu li {
	position: relative;
	flex: 1 0 auto;
	text-align: center;
}
header .menu li:first-child {
	flex-grow: .5;
	text-align: left;
}
header .menu li:last-child {
	flex-grow: .5;
	text-align: right;
}
header .menu li::after {
	position: absolute;
	content: "";
	top: 0;
	right: -13px;
	bottom: 0;
	width: 13px;
	height: 5px;
	background: url('img/grain.svg') center no-repeat;
	background-size: contain;
	margin: auto 0;
}
header .menu li:last-child::after {
	content: none;
}
header .menu a {
	display: inline-block;
	color: #1F4D3E;
	font-size: 24px;
	font-weight: 600;
	line-height: 30px;
	text-transform: lowercase;
}
header .menu a:hover {
	color: #93C122;
}

/* main */

main .container {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

main .notitle {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

main .header .title {
	color: #000000;
	font-size: 60px;
	font-weight: 500;
	line-height: 80px;
}

main .header .label {
	color: #48AC34;
	font-size: 28px;
	font-weight: 400;
	line-height: 36px;
}

main input {
	font-size: 16px;
	font-weight: 400;
	line-height: 20px;
	padding: 0 20px;
	outline: none;
	border: none;
}
main input:focus {	
	outline: none;
}
main input::placeholder {
	color: #878787;
	text-transform: uppercase;
	opacity: 1;
}

main .button {
	display: flex;
}
main .button a,
main button {
	cursor: pointer;
	position: relative;
	display: inline-block;
	color: #FFFFFF;
	font-size: 20px;
	font-weight: 500;
	line-height: 24px;
	text-transform: uppercase;
	background-size: 0;
	padding: 24px 124px 24px 24px;
	overflow: hidden;
	outline: none;
	border: none;
	border-radius: 15px;
	z-index: 0;
}
main .button a::before,
main .button a::after,
main button::before,
main button::after {
	position: absolute;
	content: "";
	top: 0;
	height: 100%;
	z-index: -1;
}
main .button a::before,
main button::before {
	left: 0;
	width: 100%;
	background-color: #48AC34;
}
main .button a::after,
main button::after {
	right: 0;
	width: 100px;
	background-color: #1F4D3E;
	background-image: inherit;
	background-position: right 19px center;
	background-repeat: no-repeat;
	background-size: 62px 44px;
	border-radius: 15px;
	transition: width .5s ease;
}
main .button a:hover::after,
main button:hover::after {
	width: 100%;
}

/* slider */

@keyframes render {
	0%   { opacity: 0; }
	100% { opacity: 1; }
}

#slider .mark {
	position: absolute;
	top: 50%;
	left: 22vw;
	width: 78vw;
	height: 63.9vw;
	overflow: hidden;
	padding: 0;
	transform: translateY(-50%);
}
#slider .mark::before,
#slider .mark::after,
#slider .mark span::before,
#slider .mark span::after {
	position: absolute;
	content: "";
	mask-repeat: no-repeat;
	mask-position: center;

	opacity: 0;
	animation: render 1s linear;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
#slider .mark::before {
	top: 0;
	left: 11.2vw;
	bottom: 0;
	width: 104.3vw;
	background-color: #FFFFFF;
	mask-image: var(--mark1);
	animation-delay: 1s;
	z-index: -1;
}
#slider .mark::after {
	top: 15.6vw;
	left: 0;
	width: 30vw;
	height: 28.8vw;
	background-color: #94C123;
	mask-image: var(--mark2);
	animation-delay: 2s;
}
#slider .mark span::before {
	top: 14.5vw;
	left: 13.8vw;
	width: 66.8vw;
	height: 40.9vw;
	background: url('img/slider.webp') center no-repeat;
	background-size: cover;
	mask-image: var(--mark1);
	animation-delay: 3s;
}
#slider .mark span::after {
	top: 24.9vw;
	left: 14vw;
	width: 44.8vw;
	height: 27.7vw;
	background: var(--border) center no-repeat;
	animation-delay: 4s;
}

#slider .container {
	justify-content: center;
	min-height: calc(100vh - 195px);
}

#slider .header {
	position: relative;
}
#slider .header .title {
	font-size: 80px;
	line-height: 100px;
}
#slider .header .label {
	color: #1F4D3E;
	font-family: 'Licorice', sans-serif;
	font-size: 64px;
	font-weight: 400;
	line-height: 48px;
}
#slider .header .desc {
	max-width: 520px;
	line-height: 34px;
	padding: 40px 0;
}
#slider .header .button a {
	background-image: url('img/button1.svg');
}

/* path */

#path {
	position: relative;
	background-size: 0;
}
#path::after {
	position: absolute;
	display: block;
	content: "";
	left: 0;
	bottom: 0;
	width: 100vw;
	height: 1px;
	background-color: #CCCCCC;
}
#path.image::after {
	position: static;
	height: 35vw;
	background-color: transparent;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

#path .container {
	padding-bottom: 40px;
}
#path.error .container {
	justify-content: center;
	min-height: calc(100vh - 395px);
}

#path .header {
	display: flex;
	flex-direction: column-reverse;
}
#path.error .header {
	flex-direction: column;
	align-items: center;
}
#path.error .title {
	position: relative;
	width: 600px;
	font-size: 200px;
	line-height: normal;
	overflow: hidden;
	text-indent: -99999px;
}
#path.error .title::before,
#path.error .title::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#path.error .title::before {
	width: 570px;
	height: 220px;
	background: url('img/404.svg') center no-repeat;
	background-size: contain;
}
#path.error .title::after {
	width: 170px;
	height: 85px;
	background: url('img/wheel1.svg') top no-repeat;
	background-size: 170px 170px;
}
#path.error .desc {
	font-size: 28px;
	font-weight: 400;
	line-height: 36px;
}
#path.error .buttons {
	display: flex;
	gap: 60px;
	padding-top: 60px;
}
#path.error .buttons a {
	position: relative;
	display: block;
	color: #48AC34;
	text-transform: uppercase;
	padding-right: 30px;
}
#path.error .buttons a:hover {
	color: #DCE25A;
}
#path.error .buttons a::after {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto 0;
	border-top: 3px solid #DCE25A;
	border-right: 3px solid #DCE25A;
	transform: rotate(45deg);
}

#path .header ul {
	display: flex;
}
#path .header li {
	color: #878787;
}
#path .header li::after {
	content: "/";
	padding: 0 10px;
}
#path .header li:last-child::after {
	content: none;
}
#path .header li a {

}

/* fields */

#fields .fields {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
#fields .fields .item {
	flex: 0 0 calc(25% - 3*40px/4);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-color: #FFFFFF;
	overflow: hidden;
	border-radius: 15px;
}
#fields .fields .header {
	background-color: #FBFCFB;
	padding: 40px;
}
#fields .fields .name {
	color: #48AC34;
	font-size: 28px;
	font-weight: 400;
	line-height: 36px;
	background-size: 0;
}
#fields .fields .name::before {
	display: block;
	content: "";
	width: 80px;
	height: 80px;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 auto 25px auto;
}
#fields .fields ul {
	padding: 40px 25px 40px 40px;
}
#fields .fields li {
	position: relative;
	overflow: hidden;
}
#fields .fields li::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background-color: #E7EBE3;
}
#fields .fields li a {
	display: block;
	color: #1F4D3E;
	white-space: nowrap;
	padding: 13px 0;
	transition: all .5s ease;
}
#fields .fields li a:hover {
	color: #93C122;
	padding-left: 10px;
}
#fields .fields li a::before {
	content: "›";
	padding-right: 5px;
}

@keyframes move {
	0%   { left: unset; right: 20px; }
	49%  { right: -20px; content: none; }
	50%  { content: ""; left: -20px; right: unset; }
	100% { left: 20px; }
}

#fields .button {
	justify-content: center;
}
#fields .button a {
	justify-content: center;
	width: 100%;
	padding: 20px;
	margin: 0 20px;
	border-radius: 15px 15px 0 0;
}
#fields .button a:hover {
	padding-left: 40px;
	transition: padding .25s linear;
	transition-delay: .75s;
}
#fields .button a:hover::before {
	background-color: #1F4D3E;
	transition: background 1s ease;
}
#fields .button a::after {
	top: 0;
	bottom: 0;
	right: 20px;
	width: 10px;
	height: 10px;
	background: none;
	margin: auto 0;
	border-top: 3px solid #DCE25A;
	border-right: 3px solid #DCE25A;
	border-radius: 0;
	transform: rotate(45deg);
}
#fields .button a:hover::after {
	animation: move 1s linear;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}

/* news */

#news {
	background-color: #E7EBE3;
}

#news .news {
	display: flex;
	flex-wrap: wrap;
	gap: 50px;
}
#news .news .item {
	flex: 0 0 calc(33.333334% - 2*50px/3);
}

#news .news a {
	position: relative;
	display: flex;
	flex-direction: column;
	background-size: 0;
	z-index: 0;
}
#news .news a::before {
	content: "";
	width: 100%;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	padding-top: 75%;
	transition: opacity 1s ease;
}
#news .news a::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	bottom: 0;
	width: 1px;
	background-color: #BFD788;
	transition: width 1s ease;
	z-index: -1;
}
#news .news a:hover::before {
	opacity: .75;
}
#news .news a:hover::after {
	width: 100%;
}
#news .news .text {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 30px;
}
#news .news .date {
	color: #878787;
	font-size: 16px;
	font-weight: 400;
	line-height: 20px;
}
#news .news .name {
	color: #48AC34;
	font-size: 28px;
	font-weight: 400;
	line-height: 36px;
	transition: color 1s ease;
}
#news .news .more {
	color: #1F4D3E;
	font-size: 14px;
	font-weight: 500;
	line-height: 18px;
	text-transform: uppercase;
	transition: color 1s ease;
}
#news .news .more::before {
	content: "–";
	padding-right: 5px;
}
#news .news a:hover .name,
#news .news a:hover .more {
	color: #FFFFFF;
}

/* category */

#category .container {
	flex-direction: row;
	align-items: flex-start;
	gap: 35px;
	padding-top: 60px;
}

#category .header {
	flex: 0 0 calc(25% - 3*35px/4);
	background-color: #FFFFFF;
	overflow: hidden;
	border-radius: 15px;
}

#category .submenu {
	padding: 25px 25px 35px 25px;
}
#category .submenu li {
	position: relative;
}
#category .submenu li::before,
#category .submenu li::after {
	position: absolute;
	content: "";
	bottom: 0;
}
#category .submenu li::before {
	top: 0;
	left: -25px;
	right: -25px;
}
#category .submenu li.active::before {
	background-color: #E7EBE3;
}
#category .submenu li::after {
	left: 0;
	right: 0;
	height: 1px;
	background-color: #E7EBE3;
}
#category .submenu a {
	position: relative;
	display: block;
	color: #1F4D3E;
	padding: 13px 0;
}
#category .submenu a:hover {
	color: #93C122;
}

#category .category {
	flex: 0 0 calc(75% - 35px/4);
	display: flex;
	flex-wrap: wrap;
	gap: 35px;
}
#category .category .item {
	flex: 0 0 calc(33.333334% - 2*35px/3);
	background-color: #FFFFFF;
	overflow: hidden;
	border-radius: 15px;
	transition: box-shadow .5s ease;
}
#category .category .item:hover {
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

#category .description {
	flex: 0 0 100%;
}
#category .description p {
	line-height: 32px;
	padding-bottom: 32px;
}
#category .description p:last-child {
	padding-bottom: 12px;
}

#category .image {
	position: relative;
	overflow: hidden;
	padding-top: 75%;
}
#category .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translate(-50%, -50%);
	transition: transform .5s ease;
}
#category a:hover .image img {
	transform: translate(-50%, -50%) scale(1.1);
}

#category .name {
	color: #FFFFFF;
	font-size: 20px;
	background-color: #48AC34;
	padding: 25px;
	transition: background .5s ease;
}
#category a:hover .name {
	background-color: #1F4D3E;
}

#category .properties {
	padding-top: 15px;
	padding-bottom: 25px;
}
#category .properties ul {
	margin: 0 25px;
}
#category .properties li {
	position: relative;
	padding: 13px 0;
}
#category .properties li::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background-color: #E7EBE3;
}
#category .properties strong {
	color: #000000;
	font-weight: 400;
}
#category .properties span {
	color: #878787;
}

#category .button {
	position: relative;
	display: block;
	color: #48AC34;
	font-weight: 500;
	text-transform: uppercase;
	padding: 13px 0;
	margin: 0 25px;
	transition: color .5s ease;
}
#category a:hover .button {
	color: #1F4D3E;
}
#category .button::before,
#category .button::after {
	position: absolute;
	content: "";
	bottom: 0;
}
#category .button::before {
	top: 0;
	right: 5px;
	width: 10px;
	height: 10px;
	margin: auto 0;
	border-top: 3px solid #DCE25A;
	border-right: 3px solid #DCE25A;
	transform: rotate(45deg);
}
#category .button::after {
	left: 0;
	right: 0;
	height: 1px;
	background-color: #E7EBE3;
}

/* parts */

#parts .container {
	padding-top: 60px;
}

#parts .parts {
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
}
#parts .parts .item {
	flex: 0 0 calc(25% - 3*60px/4);
}

#parts .image img {
	width: 100%;
	border-radius: 15px;
	transition: box-shadow .5s ease;
}
#parts a:hover .image img {
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

#parts .text {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 20px;
}

#parts .name {
	position: relative;
	color: #48AC34;
	font-size: 20px;
	transition: color .5s ease;
}
#parts a:hover .name {
	color: #1F4D3E;
}
#parts .name::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: -10px;
	height: 1px;
	background-color: #E9EAE2;
	transition: background .5s ease;
}
#parts a:hover .name::after {
	background-color: #1F4D3E;
}

#parts .desc {
	line-height: 30px;
}

/* product */

#product .container {
	flex-direction: row;
	gap: 35px;
	padding-top: 60px;
}

#product .header {
	flex: 0 0 calc(25% - 3*35px/4);
}
#product .sticky {
	position: sticky;
	display: flex;
	flex-direction: column;
	gap: 25px;
	top: 70px;
}
#product .properties {
	background-color: #FFFFFF;
	overflow: hidden;
	padding: 25px 25px 35px 25px;
	border-radius: 15px;
}
#product .properties li {
	position: relative;
	padding: 13px 0;
}
#product .properties li::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background-color: #E7EBE3;
}
#product .properties strong {
	color: #000000;
	font-weight: 400;
}
#product .properties span {
	color: #878787;
}

#product .header .button a {
	width: 100%;
	background-image: url('img/button5.svg');
}

#product .product {
	flex: 0 0 calc(75% - 35px/4);
	display: flex;
	flex-direction: column;
	gap: 30px;
}

#product .name,
#product .desc h3,
#product .desc h4 {
	font-size: 28px;
	line-height: 32px;
}
#product .desc p {
	line-height: 32px;
	padding-bottom: 32px;
}
#product .desc p:last-child {
	padding-bottom: 12px;
}

#product .image a {
	position: relative;
	display: block;
	overflow: hidden;
	padding-top: 75%;
}
#product .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	object-fit: cover;
	transform: translate(-50%, -50%);
}

#product .gallery,
#articles .gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
#product .gallery .item,
#articles .gallery .item {
	flex: 0 0 calc(33.333334% - 2*30px/3);
}
#product .image a,
#product .gallery a,
#articles .gallery a {
	position: relative;
	display: block;
	overflow: hidden;
	padding-top: 75%;
}
#product .image a::before,
#product .image a::after,
#product .gallery a::before,
#product .gallery a::after,
#articles .gallery a::before,
#articles .gallery a::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#product .image a:hover::before,
#product .gallery a:hover::before,
#articles .gallery a:hover::before {
	background-color: #1F4D3E;
	opacity: .75;
	z-index: 1;
}
#product .image a:hover::after,
#product .gallery a:hover::after,
#articles .gallery a:hover::after {
	width: 52px;
	height: 52px;
	background: url('img/plus.svg') center no-repeat;
	background-size: cover;
	margin: auto;
	z-index: 1;
}
#product .image img,
#product .gallery img,
#articles .gallery img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translate(-50%, -50%);
}

#product .video img {
	width: 100%;
}

/* history */

#history {
	position: relative;
	background-color: #E7EBE3;
	overflow: hidden;
}
#history::after {
	display: block;
	content: "";
	width: 100%;
	background: url('img/about.png') center no-repeat;
	background-size: cover;
	padding-top: 50%;
	margin-top: -50px;
}

#history .container {
	max-width: 1340px;
	padding-bottom: 0;
}

#history .header {
	position: relative;
}
#history .header::after {
	display: block;
	content: "";
	width: 60px;
	height: 30px;
	background: url('img/mark.svg') center no-repeat;
	background-size: contain;
	margin: 25px auto 0 auto;
}
#history .header .title,
#history .header .label {
	text-align: center;
}

#history .history {
	display: flex;
	gap: 80px;
}
#history .history p {
	flex: 0 0 calc(50% - 80px/2);
	color: #000000;
	font-size: 28px;
	font-weight: 100;
	line-height: 36px;
}

/* banner */

#history + #banner {
	margin-bottom: -50px;
	transform: translateY(-50%);
}

#banner .container {
	flex-direction: row;
	gap: 0;
	max-width: 1340px;
	background-size: 0;
	padding-top: 0;
	padding-bottom: 0;
}
#banner .container::after {
	display: block;
	content: "";
	width: 33.333334%;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 0 15px 15px 0;
}

#banner .header {
	position: relative;
	width: calc(66.666667% - 150px);
	background-color: #48AC34;
	padding: 50px 100px 50px 50px;
	border-radius: 15px 0 0 15px;
}
#banner .header {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
#banner .header .title {
	color: #FFFFFF;
	font-size: 40px;
	line-height: 50px;
}
#banner .header .desc,
#banner .header .desc a {
	color: #000000;
	font-size: 28px;
	font-weight: 400;
	line-height: 42px;
}
#banner .header .desc a:hover {
	color: #FFFFFF;
}

#banner .footer {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	top: 0;
	left: 66.666667%;
	bottom: 0;
	transform: translateX(-50%);
}
#banner .footer .button a {
	background-image: url('img/button2.svg');
}
#banner .footer .button a::before {
	background-color: #93C122;
}

/* slogans */

#slogans {
	overflow: hidden;
}

#slogans .container {
	max-width: none;
	padding-top: 0;
	padding-bottom: 0;
}

#slogans ul {
	display: flex;
	justify-content: center;
}
#slogans ul li {
	position: relative;
	color: #FAF7F0;
	font-size: 60px;
	font-weight: 400;
	line-height: 80px;
	white-space: nowrap;
	text-shadow: -1px -1px 0 #DCE25A, 1px -1px 0 #DCE25A, -1px 1px 0 #DCE25A, 1px 1px 0 #DCE25A;
	padding: 0 50px;
}
#slogans ul li::after {
	position: absolute;
	content: "";
	top: 0;
	right: -20px;
	bottom: 0;
	width: 31px;
	height: 13px;
	background: url('img/grain.svg') center no-repeat;
	background-size: contain;
	margin: auto 0;
}

/* about */

#about .container {
	padding-top: 60px;
}

#about .description {
	max-width: 800px;
	font-size: 28px;
	font-weight: 100;
	line-height: 42px;
	text-align: center;
	margin: 0 auto;
}

#about .about {
	display: flex;
	flex-direction: column;
	gap: 60px;
}
#about .about .item {
	display: flex;
	flex-direction: row-reverse;
	gap: 20px;
}

#about .about .image {
	flex: 0 0 25%;
}
#about .about .image img {
	width: 100%;
	max-width: 300px;
}

#about .about .text {
	flex: 0 0 calc(75% - 20px);
	display: flex;
	flex-wrap: wrap;
}

#about .about .name {
	position: relative;
	flex: 0 0 calc(33.333334% - 60px);
	font-family: 'Licorice', sans-serif;
	font-size: 50px;
	font-weight: 400;
	line-height: 38px;
	text-align: right;
	padding-top: 10px;
	padding-right: 60px;
}
#about .about .name::before,
#about .about .name::after {
	position: absolute;
	content: "";
}
#about .about .name::before {
	top: -30px;
	right: 30px;
	bottom: -30px;
	width: 1px;
	background-color: #CCCCCC;
}
#about .about .name::after {
	top: 15px;
	right: 20px;
	width: 20px;
	height: 20px;
	background-color: #48AC34;
	border-radius: 50%;
}

#about .about .desc {
	flex: 0 0 calc(66.666667% - 60px);
	line-height: 34px;
	padding-right: 60px;
}

/* sellers */

#sellers form {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	background-color: #FFFFFF;
	padding: 40px;
	border-radius: 15px;
}
#sellers form .wrapper {
	flex: 0 0 calc(33.333334% - 2*40px/3);
	position: relative;
	border-radius: 15px;
}
#sellers form .wrapper::before,
#sellers form .wrapper::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
}
#sellers form .wrapper::before {
	left: 0;
	right: 0;
	border: 1px solid #CCCCCC;
	border-radius: 15px;
}
#sellers form .wrapper.active::before {
	border-bottom-width: 0;
	border-radius: 15px 15px 0 0;
}
#sellers form .wrapper::after {
	margin: auto 0;
}
#sellers form .wrapper.select::after {
	right: 20px;
	width: 10px;
	height: 10px;
	border-right: 1px solid #94C123;
	border-bottom: 1px solid #94C123;
	border-radius: 0;
	transform: rotate(45deg);
}
#sellers form .wrapper.select.active::after {
	transform: rotate(-135deg);
}
#sellers form .wrapper.search::after {
	right: 20px;
	width: 27px;
	height: 26px;
	background: url('img/search.svg') center no-repeat;
}
#sellers form label {
	display: none;
}
#sellers form input {
	position: relative;
	width: calc(100% - 75px);
	line-height: 50px;
	text-transform: uppercase;
	background-color: transparent;
	padding: 10px 50px 10px 25px;
	outline: none;
	border: none;
}

#sellers form .select .items {
	position: absolute;
	display: none;
	left: 0;
	right: 0;
	background-color: #FFFFFF;
	overflow: hidden;
	padding: 25px;
	border: 1px solid #CCCCCC;
	border-top-width: 0;
	border-radius: 0 0 15px 15px;
	z-index: 1;
}
#sellers form .select.active .items {
	display: block;
}
#sellers form .select ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-height: 300px;
	overflow: scroll;
}
#sellers form .select li {
	cursor: pointer;
	color: #878787;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	text-transform: uppercase;
}
#sellers form .select li:hover {
	color: #94C123;
}
#sellers form .button {
	flex: 0 0 calc(33.333334% - 2*40px/3);
}
#sellers form button {
	display: block;
	width: 100%;
	text-align: left;
	padding-right: 114px;
}
#sellers form button::after {
	background-image: url('img/search.svg')
}

#sellers .sellers {
	display: flex;
	flex-direction: column;
	gap: 60px;
}
#sellers .sellers .item {
	position: relative;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 30px;
}
#sellers .sellers .item::after {
	position: absolute;
	content: "";
	bottom: -30px;
	width: 100%;
	height: 1px;
	background-color: #CCCCCC;
}
#sellers .sellers .item:last-child::after {
	content: none;
}

#sellers .name {
	flex: 0 0 100%;
	color: #1F4D3E;
	font-size: 28px;
	font-weight: 400;
	line-height: 40px;
}
#sellers .countries {
	flex: 0 0 25%;
	line-height: 26px;
}

#sellers .contact {
	flex: 0 0 calc(75% - 30px);
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 10px;
}

#sellers .slags,
#sellers .address,
#sellers .email,
#sellers .phone {
	flex: 0 0 calc(33.333334% - 2*10px/3);
	text-align: right;
}
#sellers .slags {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 10px;
}
#sellers .slags li {
	color: #1F4D3E;
	text-transform: uppercase;
	background-color: #E7EBE3;
	padding: 15px 25px;
	border-radius: 15px;
}
#sellers .email a {
	color: #1F4D3E;
}
#sellers .email a:hover {
	color: #93C122;
}

/* articles */

#articles .container {
	padding-top: 60px;
}

#articles h3 {
	font-size: 28px;
	line-height: 32px;
}
#articles .excerpt {
	color: #1F4D3E;
}
#articles strong,
#articles .excerpt {
	font-weight: 700;
}
#articles p,
#articles ul {
	padding-bottom: 32px;
}
#articles a,
#articles p,
#articles li {
	line-height: 32px;
}
#articles li::before {
	content: "›";
	padding-right: 5px;
}

#articles .columns {
	display: flex;
	gap: 0 70px;
}
#articles .columns .item {
	flex-basis: -moz-available;
}

/* form */

#form .container {
	gap: 20px;
}

#form .title {
	font-size: 28px;
	font-weight: 400;
	line-height: 40px;
}

#form form {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

#form .form {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

#form .wrapper {
	position: relative;
	flex: 0 0 calc(50% - 30px/2);
}
#form .wrapper.textarea {
	flex-basis: 100%;
}

#form label {
	position: absolute;
}

#form input,
#form textarea {
	position: relative;
	display: block;
	width: calc(100% - 40px);
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	background-color: #FFFFFF;
	overflow: hidden;
	outline: none;
	padding: 24px 20px;
	border: none;
	border-radius: 15px;
}
#form input:focus,
#form textarea:focus {
	outline: none;
}
#form input::placeholder,
#form textarea::placeholder {
	color: #878787;
	text-transform: uppercase;
	opacity: 1;
}
#form input:focus::placeholder,
#form textarea:focus::placeholder {
	opacity: 1;
}

#form .buttons {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 30px;
}
#form button {
	background-image: url('img/button4.svg');
}
#form button::before {
	background-color: #93C122;
}
#form .message,
#form .error {
	color: #48AC34;
	font-size: 16px;
	text-transform: uppercase;
}
#form .error {
	color: #B31412;
}

/* map */

#map {
	position: relative;
	cursor: pointer;
	filter: grayscale(1);
}
#map:hover {
	filter: grayscale(0);
}
#map::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 65px;
	height: 105px;
	background: url("img/marker.svg") center no-repeat;
	transform: translateY(-28px);
	margin: auto;
}

#map .container {
	max-width: none;
	padding: 0;
}

#map iframe {
	display: block;
	pointer-events: none;
	margin-bottom: -12px;
}

/* world */

#world {
	position: relative;
	overflow: hidden;
}

#world .header {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-height: calc(28.75vw + 100px);
}
#world .header .title {
	font-size: 80px;
	line-height: 100px;
}
#world .header .desc {
	max-width: 520px;
	line-height: 34px;
}
#world .header .button a {
	background-image: url('img/button3.svg');
}

#world .world {
	position: absolute;
	top: 180px;
	left: max(33.333334vw, 500px);
	width: 72.2vw;
	height: 28.75vw;
	background: url('img/world.svg') no-repeat;
	background-size: cover;
	z-index: -1;
}
#world .world span {
	position: absolute;
	width: 3.39vw;
	height: 5.47vw;
	background: url('img/marker.svg') no-repeat;
	background-size: cover;
}
#world .world span:nth-child(1) {
	top: 0.3vw;
	left: 37.65vw;
}
#world .world span:nth-child(2) {
	top: 4.5vw;
	left: 13.333334vw;
}
#world .world span:nth-child(3) {
	top: 14.37vw;
	left: 19.11vw;
}
#world .world span:nth-child(4) {
	top: 9.2vw;
	left: 40.2vw;
}
#world .world span:nth-child(5) {
	top: 6.46vw;
	left: 56.25vw;
}

/* newsletter */

#newsletter {
	position: relative;
}
#newsletter::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background-color: #CCCCCC;
}

#newsletter .header .title {
	font-size: 40px;
	line-height: 50px;
}
#newsletter .header .title span {
	color: #48AC34;
}
#newsletter .header .title span::first-letter {
	text-transform: lowercase;
}
#newsletter .header .title span::before {
	content: "/ ";
}

#newsletter .form {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 40px;
}
#newsletter .form .desc {
	flex: 0 0 calc(50% - 40px);
	max-width: 620px;
	line-height: 34px;
}
#newsletter .form form {
	flex: 0 0 50%;
	display: flex;
	flex-direction: column;
	gap: 15px;
}
#newsletter .form .wrapper {
	display: flex;
	background-color: #FFFFFF;
	overflow: hidden;
	border-radius: 15px;
}
#newsletter .form input {
	flex: 1 0 auto;
}
#newsletter .form button {
	background-image: url('img/button4.svg');
}
#newsletter .form .agree,
#newsletter .form .agree a {
	color: #000000;
	font-size: 14px;
	line-height: 18px;
}
#newsletter .form .agree a {
	text-decoration: underline;
}
#newsletter .form .agree a:hover {
	color: #93C122;
}

/* copyright */

#copyright {
	position: relative;
	background: url('img/footer.jpg') center no-repeat;
	background-size: cover;
}
#copyright::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #1F4D3E;
	opacity: .75;
}

#copyright .container {
	display: flex;
	flex-direction: column;
	gap: 100px;
	padding-top: 100px;
	padding-bottom: 100px;
}

#copyright .header .title {
	color: #93C122;
	font-family: 'Licorice', sans-serif;
	font-size: 64px;
	font-weight: 400;
	line-height: 48px;
}
#copyright .header .title span::before {
	content: "/ ";
}

#copyright p,
#copyright strong,
#copyright a {
	color: #FFFFFF;
	font-size: 18px;
	font-weight: 400;
	line-height: 40px;
}
#copyright a:hover {
	color: #48AC34;
}

#copyright .menus {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
#copyright .menus .item {
	flex: 0 0 calc(25% - 3*40px/4);
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#copyright .brand {
	flex: 0 0 calc(25% - 3*40px/4);
}
#copyright .brand a {
	display: block;
	width: 254px;
	height: 60px;
	overflow: hidden;
	text-indent: -99999px;
	background: url('img/logo2.svg') center no-repeat;
}

#copyright .name {
	color: #48AC34;
	font-size: 28px;
	font-weight: 400;
	line-height: 40px;
}

#copyright .footer {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	flex-wrap: wrap;
	gap: 40px;
}

#copyright .contact {
	flex: 0 0 calc(75% - 40px/4 - 80px);
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 40px;
}
#copyright .contact::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 1px solid #48AC34;
	border-radius: 20px;
}
#copyright .contact .desc,
#copyright .contact .desc a {
	position: relative;
	font-size: 60px;
	font-weight: 100;
	line-height: 80px;
}

#copyright .social {
	display: flex;
}
#copyright .social li {
	margin: 0 -5px;
}
#copyright .social a {
	position: relative;
	display: block;
	width: 55px;
	height: 55px;
	overflow: hidden;
	text-indent: -99999px;
	border: 1px solid #DCE25A;
	border-radius: 50%;
	transition: border .5s ease;
}
#copyright .social a:hover {
	border-color: #FFFFFF;
}
#copyright .social a::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 25px 25px;
	margin: auto;
	transition: filter .5s ease;
}
#copyright .social .facebook a::before {
	background-image: url('img/facebook.svg');
}
#copyright .social .youtube a::before {
	background-image: url('img/youtube.svg');
}
#copyright .social a:hover::before {
	filter: brightness(0) invert(1);
}

#copyright .copyright {
	flex: 0 0 calc(25% - 3*40px/4);
}
#copyright .copyright span {
	display: block;
}
#copyright .copyright span:nth-child(2)::first-letter {
	text-transform: uppercase;
}

/* media */

@media (max-width: 1500px) {
	#fields .fields .item {
		flex-basis: calc(33.333334% - 2*40px/3);
	}
	#fields .fields .item:last-child {
		display: none;
	}

	#news .news {
		gap: 40px;
	}
	#news .news .item {
		flex-basis: calc(33.333334% - 2*40px/3);
	}
}

@media (max-width: 1400px) {
	.container {
		padding-left: 30px;
		padding-right: 30px;
	}

	header .burger {
		position: absolute;
		display: block;
		top: 140px;
		right: 0;
		z-index: 1;
	}
	header .burger.fixed {
		position: fixed;
		top: 15px;
		right: 30px;
	}
	header .footer {
		display: none;
		background-color: #93C122;
	}
	header.fixed .footer {
		background-color: #93C122;
	}
	header.active .footer {
		display: block;
	}
	header .menu {
		display: flex;
		flex-direction: column;
		padding: 80px 30px;
		margin: 0;
	}
	header .menu li,
	header .menu li:first-child,
	header .menu li:last-child {
		flex-grow: 0;
		text-align: left;
	}
	header .menu li {
		padding-left: 25px;
	}
	header .menu li::after {
		left: 0;
		right: unset;
		filter: brightness(0) invert(1);
	}
	header .menu li:last-child::after {
		content: "";
	}
	header .menu li a {
		padding: 5px 0;
	}
	header .menu li a:hover {
		color: #FFFFFF;
	}

	#product .sticky {
		top: 15px;
	}
}

@media (max-width: 1200px) {
	#parts .parts {
		gap: 40px;
	}
	#parts .parts .item {
		flex-basis: calc(33.333334% - 2*40px/3);
	}

	#history .history {
		gap: 60px;
	}
	#history .history p {
		flex-basis: calc(50% - 60px/2);
	}

	#newsletter .form {
		gap: 30px;
	}
	#newsletter .form .desc {
		flex-basis: calc(40% - 30px/2);
	}
	#newsletter .form form {
		flex-basis: calc(60% - 30px/2);
	}
	#newsletter .form .agree {
		text-align: right;
	}

	#copyright .container {
		gap: 60px;
		padding-top: 80px;
		padding-bottom: 80px;
	}
	#copyright .brand {
		flex-basis: 100%;
	}
	#copyright .menus .item {
		flex-basis: calc(33.333334% - 2*40px/3);
	}
	#copyright .footer {
		flex-direction: row;
	}
	#copyright .contact {
		flex-basis: calc(100% - 80px);
	}
	#copyright .copyright {
		flex-basis: 100%;
	}
	#copyright .copyright span:nth-child(1),
	#copyright .copyright span:nth-child(2) {
		display: inline;
	}
	#copyright .copyright span:nth-child(2)::before {
		content: "/ ";
	}
	#copyright .copyright span:nth-child(2)::first-letter {
		text-transform: lowercase;
	}
}

@media (max-width: 1100px) {
	.container {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	#fields .fields .item {
		flex-basis: calc(50% - 40px/2);
	}
	#fields .fields .item:last-child {
		display: block;
	}

	#category .container {
		gap: 20px;
		padding-top: 40px;
	}
	#category .header {
		flex-basis: calc(33.333334% - 2*20px/3);
	}
	#category .submenu {
		padding: 20px 20px 30px 20px;
	}
	#category .submenu li::before {
		left: -20px;
		right: -20px;
	}
	#category .category {
		flex-basis: calc(66.666667% - 20px/3);
		gap: 20px;
	}
	#category .category .item {
		flex-basis: calc(50% - 20px/2);
	}
	#category .name {
		padding: 20px;
	}
	#category .properties {
		padding-top: 10px;
		padding-bottom: 20px;
	}
	#category .properties ul,
	#category .button {
		margin: 0 20px;
	}

	#parts .container {
		padding-top: 40px;
	}

	#product .container {
		gap: 20px;
		padding-top: 40px;
	}
	#product .header {
		flex-basis: calc(33.333334% - 2*20px/3);
	}
	#product .properties {
		padding: 20px 20px 30px 20px;
	}
	#product .product {
		flex-basis: calc(66.666667% - 20px/3);
		gap: 20px;
	}
	#product .gallery,
	#articles .gallery {
		gap: 20px;
	}
	#product .gallery .item,
	#articles .gallery .item {
		flex-basis: calc(50% - 20px/2);
	}

	#news .news .item {
		flex-basis: calc(50% - 40px/2);
	}
	#news .news .item:last-child {
		display: none;
	}

	#history .history {
		gap: 40px;
	}
	#history .history p {
		flex-basis: calc(50% - 40px/2);
		font-size: 24px;
	}

	#about .container {
		padding-top: 40px;
	}

	#banner .container {
		flex-direction: column;
	}
	#banner .container::after {
		position: absolute;
		top: 0;
		right: 30px;
		bottom: 0;
		width: calc(33.333334% - 2*30px/3);
	}
	#banner .header {
		gap: 10px;
		width: calc(66.666667% - 100px);
		padding-right: 50px;
		padding-bottom: 10px;
		border-radius: 15px 0 0 0;
	}
	#banner .header .title {
		font-size: 30px;
		line-height: 36px;
	}
	#banner .header .desc,
	#banner .header .desc a {
		font-size: 20px;
		line-height: 32px;
	}
	#banner .footer {
		position: static;
		width: calc(66.666667% - 100px);
		background-color: #48AC34;
		padding: 10px 50px 50px 50px;
		border-radius: 0 0 0 15px;
		transform: none;
	}

	#sellers form {
		gap: 30px;
		padding: 30px;
	}
	#sellers form .wrapper,
	#sellers form .button {
		flex-basis: calc(33.333334% - 2*30px/3);
	}
	#sellers .countries {
		flex-basis: calc(50% - 30px/2);
	}
	#sellers .contact {
		flex-basis: calc(50% - 30px/2);
		flex-direction: column;
		align-items: flex-end;
	}

	#articles .container {
		padding-top: 40px;
	}
	#articles .columns {
		flex-wrap: wrap;
		gap: 0 30px;
	}
	#articles .columns .item {
		flex: 0 0 calc(50% - 30px/2);
	}
}

@media (max-width: 1000px) {
	header .container {
		padding-bottom: 0;
	}
	header .top {
		position: absolute;
		display: none;
		flex-direction: column;
		gap: 10px;
		top: 125px;
		right: 0;
		width: calc(100vw/3 - 30px);
		padding-top: 90px;
		z-index: 1;
	}
	header.fixed .top {
		position: fixed;
		top: 0;
		right: 30px;
	}
	header.active .top {
		display: flex;
	}
	header.active .top a:hover {
		color: #FFFFFF;
	}
	header .control {
		position: relative;
		padding-right: 54px;
	}
	header .burger {
		top: 0;
	}
	header .menu {
		width: calc(2*100vw/3 - 60px);
	}

	main .header .title {
		font-size: 46px;
		line-height: 58px;
	}

	#slider .container {
		min-height: calc(100vh - 125px);
	}
	#slider .header .title {
		font-size: 60px;
		line-height: 80px;
	}
	#slider .header .label {
		font-size: 50px;
		line-height: 38px;
	}
	#slider .header .desc {
		padding: 30px 0;
	}

	#world .header {
		gap: 10px;
	}
	#world .header .title {
		font-size: 60px;
		line-height: 80px;
	}

	#newsletter .form {
		gap: 20px;
	}
	#newsletter .form .desc,
	#newsletter .form form {
		flex-basis: 100%;
	}
	#newsletter .form .agree {
		text-align: left;
	}

	#copyright .header .title {
		font-size: 50px;
		line-height: 38px;
	}
}

@media (max-width: 900px) {
	#fields .fields {
		gap: 30px;
	}
	#fields .fields .item {
		flex-basis: calc(50% - 30px/2);
	}
	#fields .fields .header {
		padding: 20px;
	}
	#fields .fields ul {
		padding: 20px;
	}

	#news .news {
		gap: 30px;
	}
	#news .news .item {
		flex-basis: calc(50% - 30px/2);
	}
	#news .news .text {
		padding: 20px;
	}

	#sellers form {
		gap: 20px;
		padding: 20px;
	}
	#sellers form .wrapper {
		flex-basis: calc(50% - 20px/2);
	}
	#sellers form .button {
		flex-basis: 100%;
	}

	#copyright .menus {
		gap: 30px;
	}
	#copyright .menus .item {
		flex-basis: calc(33.333334% - 2*30px/3);
	}
}

@media (max-width: 800px) {
	.container {
		padding-left: 20px;
		padding-right: 20px;
	}

	header .header {
		height: 110px;
	}
	header .top {
		top: 110px;
		width: calc(100vw/3 - 20px);
		padding-top: 70px;
	}
	header.fixed .top {
		top: 0;
		right: 20px;
	}
	header .burger.fixed {
		top: 12.5px;
		right: 20px;
	}
	header .menu {
		width: calc(2*100vw/3 - 40px);
		padding: 60px 20px;
	}

	main .container {
		gap: 30px;
	}

	#slider .container {
		min-height: calc(100vh - 110px);
	}

	#path.error .title {
		width: 450px;
		font-size: 150px;
	}
	#path.error .title::before {
		width: 430px;
		height: 165px;
	}
	#path.error .title::after {
		width: 130px;
		height: 65px;
		background-size: 130px 130px;
	}
	#path.error .desc {
		font-size: 20px;
		line-height: 32px;
	}
	#path.error .buttons {
		flex-direction: column;
		align-items: center;
		gap: 15px;
		padding-top: 30px;
	}

	#category .container {
		flex-direction: column;
	}
	#category .submenu {
		padding-bottom: 20px;
	}
	#category .submenu li {
		display: inline;
	}
	#category .submenu li::after {
		position: static;
		content: "|";
		background-color: transparent;
		padding: 0 5px;
	}
	#category .submenu li::before,
	#category .submenu li:last-child::after {
		content: none;
	}
	#category .submenu a {
		display: inline;
	}
	#category .submenu .active a {
		color: #93C122;
	}
	#category .description p {
		line-height: 24px;
		padding-bottom: 24px;
	}
	#category .description p:last-child {
		padding-bottom: 12px;
	}

	#parts .parts {
		gap: 20px;
	}
	#parts .parts .item {
		flex-basis: calc(50% - 20px/2);
	}

	#product .container {
		flex-direction: column;
	}
	#product .properties {
		padding-bottom: 20px;
	}
	#product .name,
	#product .desc h3,
	#product .desc h4 {
		font-size: 22px;
		line-height: 24px;
	}
	#product .desc p {
		line-height: 24px;
		padding-bottom: 24px;
	}
	#product .desc p:last-child {
		padding-bottom: 12px;
	}

	#about .about .item {
		position: relative;
	}
	#about .about .item::before,
	#about .about .item::after {
		position: absolute;
		content: "";
	}
	#about .about .item::before {
		top: -30px;
		left: 10px;
		bottom: -30px;
		width: 1px;
		background-color: #CCCCCC;
	}
	#about .about .item::after {
		top: 10px;
		left: 0;
		width: 20px;
		height: 20px;
		background-color: #48AC34;
		border-radius: 50%;
	}
	#about .about .image {
		flex-basis: 33.333334%;
		padding-top: 100px;
	}
	#about .about .text {
		flex-basis: calc(66.666667% - 20px);
		gap: 10px;
	}
	#about .about .name {
		flex-basis: calc(100% - 30px);
		text-align: left;
		padding-top: 0;
		padding-left: 30px;
		padding-right: 0;
	}
	#about .about .desc {
		flex-basis: calc(100% - 30px);
		padding-left: 30px;
		padding-right: 0;
	}
	#about .about .name::before,
	#about .about .name::after {
		content: none;
	}

	#history .history {
		gap: 20px;
	}
	#history .history p {
		flex-basis: calc(50% - 20px/2);
		font-size: 18px;
		line-height: 30px;
	}

	#banner .container::after {
		right: 20px;
		width: calc(33.333334% - 2*20px/3);
	}
	#banner .header {
		width: calc(66.666667% - 60px);
		padding: 30px 30px 10px 30px;
	}
	#banner .header .desc,
	#banner .header .desc a {
		font-size: 18px;
	}
	#banner .footer {
		width: calc(66.666667% - 60px);
		padding: 10px 30px 30px 30px;
	}

	#form form {
		gap: 20px;
	}
	#form .wrapper {
		flex-basis: 100%;
	}
	#form .buttons {
		flex-direction: column;
		gap: 20px;
	}

	#copyright .container {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	#copyright .contact .desc,
	#copyright .contact .desc a {
		font-size: 46px;
		line-height: 66px;
	}
}

@media (max-width: 700px) {
	#world .container {
		padding-bottom: 0;
	}
	#world .map {
		position: relative;
		top: 0;
		left: 0;
		margin: 0 auto;
		padding-bottom: 20px;
	}

	#copyright .brand,
	#copyright .menus .item {
		flex-basis: calc(50% - 30px/2);
	}
	#copyright .contact {
		flex-direction: column;
		gap: 20px;
	}
	#copyright .contact .desc {
		text-align: center;
	}
}

@media (max-width: 600px) {
	header .top {
		width: calc(100vw/4 - 20px);
	}
	header .menu {
		width: calc(3*100vw/4 - 40px);
	}

	#fields .fields .item {
		flex-basis: 100%;
	}

	#category .category .item {
		flex-basis: 100%;
	}

	#product .gallery .item,
	#articles .gallery .item {
		flex-basis: 100%;
	}

	#news .news .item {
		flex-basis: 100%;
	}
	#about .about .item {
		flex-direction: column-reverse;
	}
	#about .about .image {
		padding-top: 0;
		padding-left: 30px;
	}
	#about .about .text {
	}

	#history .history p {
		flex-basis: 100%;
		text-align: center;
	}

	#history + #banner {
		transform: translateY(-50px);
	}
	#banner .container {
		padding-bottom: 50px;
	}
	#banner .container::after {
		position: static;
		width: auto;
		padding-top: 50%;
		border-radius: 0 0 15px 15px;
	}
	#banner .header {
		width: auto;
		text-align: center;
		border-radius: 15px 15px 0 0;
	}
	#banner .footer {
		width: auto;
		text-align: center;
		border-radius: 0;
	}
	#banner .button {
		justify-content: center;
	}

	#sellers form .wrapper {
		flex-basis: 100%;
	}
	#sellers .countries {
		flex-basis: 100%;
	}
	#sellers .contact {
		flex-basis: 100%;
		align-items: flex-start;
	}

	#articles .columns .item {
		flex-basis: 100%;
	}

	#newsletter .form button {
		width: 100px;
		text-indent: -9999px;
		padding-left: 0;
		padding-right: 0;
	}

	#copyright .header .title {
		text-align: center;
	}
	#copyright .header .title span {
		display: block;
	}
	#copyright .header .title span::before {
		content: none;
	}
	#copyright .brand {
		flex-basis: 100%;
	}
	#copyright .brand a {
		margin: 0 auto;
	}
	#copyright .menus .item {
		flex-basis: 100%;
	}
	#copyright .contact .desc,
	#copyright .contact .desc a {
		font-size: 30px;
		line-height: 52px;
	}
}

@media (max-width: 500px) {
	.container {
		padding-left: 10px;
		padding-right: 10px;
	}

	header .brand a {
		width: 190px;
		height: 45px;
	}
	header .top {
		width: calc(100vw/3 - 10px);
	}
	header.fixed .top {
		right: 10px;
	}
	header .burger.fixed {
		right: 10px;
	}
	header .menu {
		width: calc(2*100vw/3 - 20px);
		padding-left: 10px;
		padding-right: 10px;
	}
	header .menu li {
		padding-left: 0;
	}
	header .menu li::after,
	header .menu li:last-child::after {
		content: none;
	}

	main .header .title {
		font-size: 36px;
		line-height: 46px;
	}

	#slider .mark {
		top: unset;
		left: 0;
		width: 100vw;
		bottom: 0;
		transform: none;
	}
	#slider .container {
		justify-content: flex-start;
	}
	#slider .header .title {
		font-size: 36px;
		line-height: 46px;
	}
	#slider .header .label {
		font-size: 42px;
		line-height: 32px;
	}

	#path.error .title {
		width: 300px;
		font-size: 100px;
	}
	#path.error .title::before {
		width: 285px;
		height: 110px;
	}
	#path.error .title::after {
		width: 90px;
		height: 45px;
		background-size: 90px 90px;
	}

	#parts .parts .item {
		flex-basis: 100%;
	}

	#world .header .title {
		font-size: 36px;
		line-height: 46px;
	}

	#newsletter .header .title {
		font-size: 36px;
		line-height: 46px;
	}
	#newsletter .header .title span {
		display: block
	}
	#newsletter .header .title span::first-letter {
		text-transform: uppercase;
	}
	#newsletter .header .title span::before {
		content: none;
	}

	#copyright .header .title {
		font-size: 42px;
		line-height: 32px;
	}
	#copyright .menus .item {
		gap: 5px;
	}
	#copyright .name,
	#copyright .menus li,
	#copyright .menus p,
	#copyright .copyright {
		text-align: center;
	}
	#copyright .copyright span:nth-child(1),
	#copyright .copyright span:nth-child(2) {
		display: block;
	}
	#copyright .copyright span:nth-child(2)::before {
		content: none;
	}
	#copyright .copyright span:nth-child(2)::first-letter {
		text-transform: uppercase;
	}
}

@media (max-width: 400px) {
	header .brand a {
		width: 150px;
		height: 35px;
	}
}

/* svg */

.mark {
	--mark1: url('data:image/svg+xml; utf8,\
	<svg viewBox="0 0 64.181335 39.802933" xmlns="http://www.w3.org/2000/svg">\
	<path d="m 0,0 c 5.075,-4.123 11.524,-6.597 18.549,-6.597 16.34,0 29.587,13.356 29.587,29.831 0,0.073 0,-0.072 0,0 C 27.498,23.112 9.521,13.914 0,0" transform="matrix(1.3333333,0,0,-1.3333333,0,31.006933)"/>\
	</svg>');

	--mark2: url('data:image/svg+xml; utf8,\
	<svg viewBox="0 0 29.214533 27.741199" xmlns="http://www.w3.org/2000/svg">\
	<path d="M 0,0 C 3.347,4.542 8.204,9.377 13.058,12.806 7.671,19.1 -0.446,21.095 -8.848,20.773 -9.008,12.949 -5.274,5.333 0,0" transform="matrix(1.3333333,0,0,-1.3333333,11.804,27.7412)"/>\
	</svg>');

	--border: url('data:image/svg+xml; utf8,\
	<svg viewBox="0 0 64.181335 39.802933" xmlns="http://www.w3.org/2000/svg">\
	<path d="m 0,0 c 5.075,-4.123 11.524,-6.597 18.549,-6.597 16.34,0 29.587,13.356 29.587,29.831 0,0.073 0,-0.072 0,0 C 27.498,23.112 9.521,13.914 0,0" fill="transparent" stroke="white" stroke-width=".05" transform="matrix(1.3333333,0,0,-1.3333333,0,31.006933)"/>\
	</svg>');
}