@font-face {
  font-family: "Montserrat";
  src: url("font/Montserrat-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Montserrat";
  src: url("font/Montserrat-Medium.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Montserrat";
  src: url("font/Montserrat-SemiBold.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Montserrat";
  src: url("font/Montserrat-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

* {box-sizing: border-box;}
html,body {margin: 0; padding: 0;}
body {font-family: "Montserrat", sans-serif; background: #fff;}
div {color: #1a1a1a; font-size: 18px; font-weight: normal; letter-spacing: 0; line-height: 1.5;}
a {color: #111; text-decoration: underline; transition: .15s ease-in;}
a:hover {color: #000;}
input:focus, textarea:focus, select:focus {outline: none;}
h1, h2 {text-align: center; color: #1a1a1a; margin: 18px 0 20px 0; text-transform: uppercase; font-weight: 700; line-height: 28px;}
ul {list-style: none; margin: 0; padding: 0;}

/* font awesome */
.phone ul li::before, .poisk li.address::before, .poisk li.phone::before, .poisk li.email::before {font-family: 'Font Awesome 5 Free'; font-weight: 900;}

/* header */
header {background-color: #005da3;}

.head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1680px;
    width: 100%;
    margin: 0 auto;
    gap: 10px;
    padding: 10px 20px;
}

.logo {width: 210px; flex: 0 1 auto;}
.logo img {max-width: 210px; height: auto;}

.right-top {flex: 0 1 auto;}

.phone, .infos {flex: 0 1 auto; font-size: 20px; line-height: 20px; color: #1a1a1a; font-weight: 600;}
.phone ul li {padding: 8px 0 8px 36px; position: relative;}
.phone ul li::before {font-family: 'Font Awesome 5 Free'; font-weight: 900; content: '\f879'; font-size: 14px; color: #43a564; border-radius: 50%; position: absolute; left: 0; top: 3px; padding: 8px; border: 1px solid #43a564; background-color: #fff; line-height: 14px;}
.phone a, .infos a {text-decoration: underline; color: #000;}

.infos {font-size: 18px; line-height: 16px;}
.infos ul {display: inline-block; vertical-align: top; margin-top: 13px;}
.infos ul li {padding: 8px 0 8px 34px; position: relative;}
.infos ul li::before {font-family: 'Font Awesome 5 Brands'; font-size: 26px; font-weight: 900; color: #43a564; position: absolute; left: 0; top: 7px;}
.infos ul li:nth-child(1)::before {font-family: 'Font Awesome 5 Free'; content: '\f0e0';}
.infos ul li:nth-child(2)::before {content: '\f232';}

.nav ul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.nav ul li a {display: block; text-decoration: none; font-weight: 500; color: #fff; font-size: 17px; text-transform: uppercase; padding: 7px 15px; border-radius: 3px;}
.nav ul li a:hover {background: rgba(0,0,0,.1);}
.nav ul li a.act {color: #43a564; background: rgba(255,255,255,.4);}

.cart {width: 210px;}
.cart a {/*display: block;*/ line-height: 1.5; background: #7bb077; white-space: nowrap; color: #fff; padding: 7px 15px; text-decoration: none; border-radius: 3px;}




.hero {
  position: relative;
  width: 100%;
  height: 720px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
}

.hero video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: -2;
}

.overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.65);
  z-index: -1;
}

.hero .content {
  max-width: 800px;
  padding: 20px;
  color: #fff;
  font-size: 1.6rem;
  text-align: left;
}

.hero .content span {font-size: 2.5rem; display: block; font-weight: 700; margin-bottom: 10px;}








.flexid {
    width: 100%;
    display: flex;
    min-height: 400px;
}

.flexid:nth-child(2n) {
  flex-direction: row-reverse;
}

.blck {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
}

.img-blck {
    background: url("/img/main-sklad.jpg") center/cover no-repeat;
    min-height: 500px;
}

.img-blck-1 {
    background: url("/img/preim-1.jpg") center/cover no-repeat;
    min-height: 500px;
}

.img-blck-2 {
    background: url("/img/preim-2.jpg") center/cover no-repeat;
    min-height: 500px;
}

.img-blck-3 {
    background: url("/img/preim-3.jpg") center/cover no-repeat;
    min-height: 500px;
}

.text-blck {
    background: #005da3;
}

.text-blck-2 {
    background: #f1f5f6;
}

.text-blck h2, .text-blck-2 h2 {text-align: left; color: #fff; text-transform: uppercase; font-weight: 700;}
.text-blck-2 h2 {color: #1a1a1a;}

.text-content {
    max-width: 700px;
    text-align: left;
    color: #fff;
    line-height: 1.7;
}

.text-content-2 {
    max-width: 700px;
    text-align: left;
    color: #1a1a1a;
    line-height: 1.7;
}



/* content */
section {max-width: 1680px; width: 100%; margin: 0 auto;}
.navigation {padding: 2px 20px;}
.main-body {background-color: #fff;}
.main-article {text-align: left; margin: 0 auto; padding: 10px 0; background: rgba(255,255,255,0.8);}

.about {background-color: #fff; padding: 20px;}
.about .text {padding: 10px;}
.text .poisk {color: #1a1a1a;}
.text .poisk li {margin-bottom: 20px; line-height: 26px;}
.text .poisk li a {color: #111;}
.text .poisk li a:hover {color: #111;}
.text .poisk li.phone::before {top: -3px;}

footer {background-color: #2f3338;}
.bottom {display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; padding: 40px 20px;}

.bottom .logo {flex: 0 1 30%;}
.bottom .logo img {filter: grayscale(1);}

.bot_nav ul {display: inline-block;}
.bot_nav ul li {display: block; padding: 5px 10px; font-size: 18px; line-height: 1.2; margin: 0 0 10px 0;}
.bot_nav ul li a {color: #fff; text-decoration: underline;}
.bot_nav ul li a:hover {color: #dedede;}

.poisk {color: #fff; font-size: 20px; line-height: 1.2;}
.poisk ul {list-style: none; padding: 0; margin: 0;}
.poisk li {margin: 0 0 25px 0; position: relative;}
.poisk li:last-child {margin: 0;}
.poisk li a {color: #fff; text-decoration: underline;}
.poisk li a:hover {color: #dedede;}
.poisk i {color: #62a0cc;}

.copy, .stat {color: #888; text-align: center; font-size: 16px; background-color: #272a2e;}
.copy {padding: 15px;}
.copy a {color: #bbb;}
.stat {padding-bottom: 15px;}

.usl_circle {
width: 32px;
height: 32px;
padding-top: 0;
line-height: 1.5;
font-size: 18px;
background: #b4f4d2;
border: 2px solid #11b7e8;
border-radius: 50%;
display: inline-block;
text-align: center;
}

#catalog {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.container-cat {flex: 0 1 100%;}

.card {
  background: white;
  border-radius: 3px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  width: 320px;
  padding: 20px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5rem;
}

.card a {text-decoration: none; color: #333;}

.card img {
  width: 100%;
  max-height: 100%;
  object-fit: cover;
  height: 340px;
  margin-bottom: 20px;
  border-radius: 3px;
}

.main-table {max-width: 1200px; width: 100%; display: table; margin: 10px auto; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); padding: 7px 15px; border-radius: 3px;}
.cell-table {display: table-cell; vertical-align: middle; padding: 1px;}

.cat-img {width: 120px; text-align: left; border-radius: 3px;}
.cat-img img {border-radius: 3px; max-width: 320px; width: 100%; height: auto;}
.cat-button {width: 180px; text-align: right;}
.cat-desc {position: relative; left: 10px;}


.card-link {transition: all 0.3s ease; line-height: 1.25;}
.card-link:hover {opacity: 0.9;}
.card-bottom {}

.title {
  font-weight: 600;
  font-size: 1.1rem;
  line-height: 1.1;
}

.dop-info {
  border-radius: 3px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  padding: 20px;
  max-width: 1200px;
}

/*core css*/
.cat_article {border-radius: 2px; box-shadow: 0 3px 12px rgba(0,0,0,.1); margin: 4px; padding: 12px;}

.img_layout {text-align:center;}
.img_layout img {border-radius: 3px;}

.small_img {
  height: 100px;
}

.big_img {
  max-width: 600px;
}

.cart_button, .cart_button_v_korzine {color: #fff; position: relative; top: 15px; background-color: #7bb077; padding: 7px 15px; text-decoration: none; border-radius: 3px;}
.cart_button:hover {color: #fff; filter: opacity(90%);}
.cart_button_v_korzine {background-color: #62a0cc;}
/*конец оформление товара*/

@media screen and (max-width: 720px) {
.big_img {width:98%;}
}
/*end core css*/




input[type=number] {width: 60px; border: 1px solid #0693cd; margin: 0; font-size:16px; font-weight:bold; background-color: #b0eceb; border-radius: 3px; cursor: pointer; color: #000;}
input[type=submit] {border: 1px solid #0693cd; margin: 0; font-size:16px; font-weight:bold; background-color: #0693cd; border-radius: 3px; cursor: pointer; color: #fff;}

/*для мобильной версии*/

.page_product {width: 50%; padding: 0 10px; vertical-align: top;}
/*конец для мобильной версии*/

@media screen and (max-width: 1280px) {
section {max-width: 1200px;}
.main-article {max-width: 1200px;}
}

@media screen and (max-width: 1110px) {
.head {flex-wrap: wrap; justify-content: center;}
.nav ul {flex-wrap: wrap;}
}

@media screen and (max-width: 720px) {
.main-table {width: 98%; display: table; margin: 0 auto 10px;}
.cell-table {display: block; margin: 0;}
.cart {width: 60px;}
.page_product {width: 100%;}
.cat-img {width: 100%; text-align: center;}
.cat-button {width: 100%; text-align: center;}
.cat-desc {text-align: center; left: 0;}
.card {padding: 10px;}
.flexid {flex-direction: column;}
.flexid:nth-child(2n) {flex-direction: column;}
.blck{width: 100%;}
.hero {height:600px;}
}