/*!***************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./resources/scss/public/style.scss ***!
  \***************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700&display=swap);
/*!*******************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./resources/scss/public/style.scss (1) ***!
  \*******************************************************************************************************************************/
@charset "UTF-8";
.color-black {
  color: #1F1B20;
}

.color-white {
  color: #ffffff;
}

.color-grey-light {
  color: #888788;
}

.color-grey-for-background {
  color: #f3f3f3;
}

.color-grey {
  color: #424242;
}

.color-green {
  color: #11994b;
}

.color-red {
  color: #FF0000;
}

.menu-service, .menu-category-sub-wrap, .menu-category {
  border-color: #c8c8c8;
  border-style: solid;
  border-width: 1px;
}

.order-block, .cart-last-block, .ip-first_line, .work__services-list, .content_work, .service__works-list, .content_service, .collection__collection-list, .content_collection, .content_catalog, .bottom-blocks, .top-blocks, .sidebar, .after-header-line, .filters, .product-char-all, .product-button-block, .product-card__footer, .blocks-row, .blocks-column, .form-item_row {
  grid-gap: 0.5rem;
}

.content_product-page {
  grid-gap: 1rem;
}

.header-main__counts {
  grid-gap: 0.25rem;
}

.header-main__menu-page__item, .filters, .menu-category-sub-wrap {
  padding: 0.5rem;
}

html {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: #1F1B20;
  line-height: 1.4;
}

body {
  margin: 0;
}

/* width */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #f80000;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #424242;
}

h1 {
  font-size: 1.3rem;
  font-weight: 600;
  margin: 0;
}

ul {
  margin: 0;
}

.bold {
  font-weight: 600;
}

.underline {
  text-decoration: underline;
}

.column-block {
  display: grid;
  grid-template-columns: 1fr;
}

.first-letter-red {
  display: inline-block;
}
.first-letter-red:first-letter {
  color: #FF0000;
}

.list {
  display: grid;
  grid-gap: 0.5rem;
  grid-template-columns: 1fr;
}
.list_blocks {
  grid-template-columns: repeat(auto-fill, 200px);
}
@media (min-width: 1200px) {
  .list_blocks {
    grid-template-columns: repeat(auto-fill, 250px);
  }
}
@media (min-width: 1800px) {
  .list_blocks {
    grid-template-columns: repeat(auto-fill, 300px);
  }
}
.list-title {
  grid-column: 1/-1;
}
.list-description {
  grid-column: 1/-1;
}

.list-item {
  display: grid;
  position: relative;
}
.list-item_block {
  overflow: hidden;
  box-shadow: 0 0 5px #838383;
}
.list-item_block .list-item-name {
  position: absolute;
  bottom: 0;
  width: calc(100% - 0.5rem);
  padding: 0.25rem;
  display: flex;
  background: rgba(255, 255, 255, 0.7);
  justify-content: center;
  align-items: center;
  transition: 0.5s;
  text-transform: uppercase;
  font-weight: 600;
  text-align: center;
}
.list-item_block:hover {
  box-shadow: 0 0 5px #000;
}
.list-item_block:hover .list-item-name {
  color: #1F1B20;
}
.list-item-image {
  display: block;
  width: 100%;
}

input, .input,
textarea, .textarea,
button, .button {
  background: #fff;
  border-radius: 0;
  box-shadow: none;
  border: 1px solid #888788;
  padding: 0.25em;
}

input, .input,
textarea, .textarea,
label, .label,
button, .button {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
}

input:focus {
  outline-color: #888788;
}
.input_error {
  border: 1px solid #FF0000;
}
.input_error::placeholder {
  color: #FF0000;
}

.form {
  width: max-content;
  display: grid;
  justify-content: start;
  grid-gap: 0.5rem;
  padding: 1rem;
  background: #f3f3f3;
}

.form-item {
  display: grid;
  position: relative;
}

.form-item_row {
  grid-template-columns: 1fr;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .form-item_row {
    grid-template-columns: repeat(2, minmax(min-content, max-content));
  }
}

.form-item_row__buttons {
  justify-self: end;
}

.pagination {
  display: flex;
  flex-wrap: wrap;
}

.page-href {
  padding: 0.25rem 0.75rem;
  font-size: 1.3rem;
  border: 2px solid transparent;
}

.page-href_active {
  color: red;
  border: 2px solid red;
}

.breadcrumbs {
  color: #424242;
  list-style: none;
  display: flex;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
}
.breadcrumb-item {
  margin: 0.25rem;
  padding: 0.25rem;
  border-radius: 8px;
  background: #f3f3f3;
  color: #888788;
}
@media (min-width: 768px) {
  .breadcrumb-item {
    display: block;
    margin: unset;
    padding: unset;
    background: unset;
    color: #424242;
  }
}

a.breadcrumb-item {
  margin: 0.25rem;
  padding: 0.25rem;
  border-radius: 8px;
  color: #424242;
  text-decoration: none;
  display: inline-flex;
}
@media (min-width: 768px) {
  a.breadcrumb-item {
    margin: unset;
    padding: unset;
    background: unset;
    text-decoration: underline;
  }
}

.breadcrumb-divider {
  margin: 0 0.5rem;
  display: none;
}
@media (min-width: 768px) {
  .breadcrumb-divider {
    display: inline-block;
  }
}

a {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  color: #1F1B20;
}
a:hover {
  text-decoration: none;
  color: #FF0000;
}

.link {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  color: #1F1B20;
}
.link:hover {
  text-decoration: none;
  color: #FF0000;
}
.link_header {
  text-decoration: none;
}
.link_footer {
  color: #ffffff;
  text-decoration: none;
  margin: 0.25rem;
  padding: 0.25rem;
}
@media (min-width: 768px) {
  .link_footer {
    margin: 0;
    padding: 0;
  }
}
.link_footer:hover {
  color: #FF0000;
}
.link_footer-last-item {
  color: #ffffff;
  font-weight: 600;
}
.link_footer-last-item:hover {
  color: #FF0000;
}
.link_footer-social {
  margin-right: 1.5rem;
  font-size: 2rem;
}
.link_recovery {
  font-size: 0.8rem;
  color: #424242;
  text-decoration: underline;
}

.link__icon {
  display: inline-block;
}

.link__icon_before-text {
  margin-right: 0.5rem;
}

.link__icon_after-text {
  margin-left: 0.5rem;
}

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

.count__value {
  display: flex;
}

.count__value_number {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  padding: 0;
  margin: 1px;
  width: 1rem;
  border: 1px solid #ffffff;
  background: #ffffff;
}

.count__description {
  text-align: center;
}

.button:disabled,
.button[disabled] {
  border: 1px solid #888788;
  background-color: #f3f3f3;
  color: #888788;
  cursor: default;
}

.button.button__success:disabled, .button.button__success[disabled] {
  border: 1px solid #11994b;
  background: #11994b;
  color: #ffffff;
  transition: 0.25s;
  padding: 0.25rem 0.75rem;
  cursor: pointer;
  font-size: 1rem;
  text-decoration: none;
  white-space: nowrap;
  line-height: normal;
}

.button {
  border: 1px solid #FF0000;
  background: #FF0000;
  color: #ffffff;
  transition: 0.25s;
  padding: 0.25rem 0.75rem;
  cursor: pointer;
  font-size: 1rem;
  text-decoration: none;
  white-space: nowrap;
  line-height: normal;
}
.button:hover {
  background: #ffffff;
  color: #FF0000;
  border: 1px solid #FF0000;
}
.button_big {
  padding: 0.5rem 1.5rem;
}
.button__success, .button__success:hover, .button__success:disabled {
  border: 1px solid #11994b;
  background: #11994b;
  color: #ffffff;
  transition: 0.25s;
  padding: 0.25rem 0.75rem;
  cursor: pointer;
  font-size: 1rem;
  text-decoration: none;
  white-space: nowrap;
  line-height: normal;
}
.button__icon {
  margin-right: 0.25rem;
}
.button_cart_add:hover {
  color: #FF0000;
  background: #ffffff;
  border: 1px solid #FF0000;
}
.button_cart_added {
  color: #FF0000;
  background: #ffffff;
  border: 1px solid #ffffff;
}
.button_grey {
  border: 1px solid #424242;
  color: #ffffff;
  background: #424242;
}
.button_grey:hover {
  border: 1px solid #424242;
  color: #424242;
  background: #ffffff;
}
.button_not-background {
  background: #ffffff;
  color: #424242;
  font-weight: 600;
  border: 1px solid #888788;
}
.button_link {
  border: 1px solid transparent;
  color: #1F1B20;
  background: transparent;
  text-decoration: underline;
}
.button_link.button:disabled, .button_link.button[disabled] {
  border: 1px solid transparent;
  color: #1F1B20;
  background: transparent;
  text-decoration: underline;
  cursor: default;
}
.button_link:hover {
  border: 1px solid #424242;
  color: #1F1B20;
  background: #ffffff;
  text-decoration: none;
}
.button.button_loader {
  animation: loader 0.4s linear infinite;
  font-size: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 25px;
  padding: 0;
  box-shadow: none;
  background: transparent;
  border-color: #fff;
  border-right: 2px solid #FF0000;
  overflow: hidden;
}
.button.button_loader:focus, .button.button_loader:active {
  border-right: 2px solid #FF0000;
  outline: none;
}

.button_transparent {
  background: none;
  border: 1px solid transparent;
  color: #424242;
}
.button_transparent:hover {
  color: #1F1B20;
  border: 1px solid transparent;
}

.button_compare {
  background: #424242;
  border: 1px solid #424242;
  color: #ffffff;
}
.button_compare:hover {
  color: #1F1B20;
  border: 1px solid #424242;
  background: #ffffff;
}
.button_compare_added {
  background: #ffffff;
  border: 1px solid #ffffff;
  color: #1F1B20;
}
.button__icon_before-text {
  margin-right: 0.25rem;
}

.button__icon_after-text {
  margin-left: 0.25rem;
}

.button:disabled,
.button[disabled] {
  border: 1px solid #888788;
  background-color: #f3f3f3;
  color: #888788;
  cursor: default;
}

@keyframes loader {
  0% {
    transform: rotateZ(0);
  }
  100% {
    transform: rotateZ(360deg);
  }
}
.nav-sidebar-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-column-gap: 1rem;
}

.nav-sidebar-menu {
  width: 100%;
  grid-column: 1/-1;
  background: white;
}
.nav-sidebar-menu_top {
  position: absolute;
  top: 100%;
  z-index: 10;
}

.nav-toggle {
  position: relative;
  outline: none;
  z-index: 12;
}

.nav-toggle:before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  content: "\f0d7";
  top: 0;
  position: absolute;
  color: transparent;
  width: 100%;
  font-size: 2rem;
  left: 0;
  transition: 0.2s;
}

.nav-toggle_active:hover {
  background: #FF0000;
  color: #ffffff;
}

.nav-toggle_active:before {
  z-index: 1;
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  content: "\f0d7";
  top: calc(100% - 12px);
  position: absolute;
  color: #FF0000;
  width: 100%;
  font-size: 2rem;
  left: 0;
}

.menu-category {
  display: flex;
  flex-direction: column;
  padding: 0.75rem 0.5rem 0.5rem 0.5rem;
  position: relative;
  z-index: 11;
}

.link_menu-category {
  color: #1F1B20;
  text-decoration: none;
  margin: 0.25rem 0;
  transition: text-shadow 0.3s;
}
.link_menu-category .link__icon_before-text {
  color: #424242;
  font-size: 0.25rem;
}
.link_menu-category:hover {
  color: #FF0000;
}
.link_menu-category:hover .link__icon_before-text {
  color: #1F1B20;
}

.menu-category-item_toggled {
  color: #FF0000;
}

.menu-category-item_toggled-other {
  color: #888788;
}

.menu-category-sub-wrap {
  position: absolute;
  left: 0;
  right: -1px;
  top: -1px;
  bottom: -1px;
  border-left-color: #ffffff;
  background: #f3f3f3;
  background: linear-gradient(90deg, white 0%, #f3f3f3 1%);
  display: grid;
  grid-template-columns: max-content max-content;
  grid-column-gap: 2rem;
}
@media (min-width: 768px) {
  .menu-category-sub-wrap {
    left: 100%;
    right: unset;
    top: -1px;
    bottom: -1px;
  }
}

.menu-category-sub {
  display: grid;
  grid-template-columns: max-content;
  width: max-content;
  align-content: start;
}
.menu-category-sub_two-column {
  grid-template-columns: max-content max-content;
  grid-column-gap: 2rem;
}

.menu-category-sub_menu-preview-product {
  position: relative;
  display: grid;
  grid-template-rows: max-content;
  grid-template-columns: 1fr;
  justify-items: center;
  align-content: center;
}

.menu-preview-product-image {
  display: block;
  width: 200px;
}

.menu-service {
  display: flex;
  flex-direction: column;
  padding: 0.75rem 0.5rem 0.5rem 0.5rem;
  z-index: 11;
}

.link_menu-service {
  color: #1F1B20;
  text-decoration: none;
  margin: 0.25rem 0;
}
.link_menu-service .link__icon_before-text {
  color: #424242;
  font-size: 0.25rem;
}
.link_menu-service:hover {
  color: #FF0000;
}
.link_menu-service:hover .link__icon_before-text {
  color: #1F1B20;
}

.block-banner_image {
  justify-self: center;
}

.banner-image {
  display: block;
  width: 100%;
}

.blocks-column {
  display: grid;
}

.blocks-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
  align-items: start;
}

.block-page {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.25rem 0;
  border: 1px solid #FF0000;
  background: #FF0000;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  transition: 0.25s;
  overflow: hidden;
}
.block-page:hover {
  background: #ffffff;
  color: #FF0000;
}
.block-page_green {
  border: 1px solid #11994b;
  background: #11994b;
  color: #ffffff;
}
.block-page_green:hover {
  background: #ffffff;
  color: #11994b;
}

.product-card {
  display: grid;
  grid-template-areas: "product-image" "product-name" "product-price" "product-footer";
  grid-template-rows: auto 1fr auto;
  text-decoration: none;
  justify-content: center;
  text-align: left;
  padding: 0.5rem;
  border: 1px solid #ffffff;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.product-card:hover {
  color: unset;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
}

.product-card__name {
  grid-area: product-name;
  overflow: hidden;
  text-overflow: ellipsis;
}

.product-card__image {
  grid-area: product-image;
  justify-self: center;
  display: block;
  margin-bottom: 0.25rem;
}

.product-card__footer {
  grid-area: product-footer;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
}

.product-card__price-wrap {
  grid-area: product-price;
  font-size: 1.3rem;
  font-weight: bold;
  color: #424242;
  white-space: nowrap;
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(2, auto);
  grid-column-gap: 0.125rem;
  justify-content: start;
  align-items: end;
}

.product-card-price {
  grid-row: 1/-1;
}
.product-card-price_old {
  grid-area: product-price-old;
  grid-row: 1/-1;
  font-size: 1rem;
  color: #888788;
  position: relative;
}
.product-card-price_old::after {
  color: transparent;
  content: attr(data-parent);
  position: absolute;
  left: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjMiIGhlaWdodD0iMTMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMDU3IDguNDY3YTQ3MC42ODkgNDcwLjY4OSAwIDAxMjkuNTA1LTUuMDg1QTQ5OC43MTkgNDk4LjcxOSAwIDAxNjAuOTQuMDUzYTEgMSAwIDAxMS4wNjkuODU4bC4yNzYgMS45NjhhMSAxIDAgMDEtLjkyIDEuMTM3Yy04LjgyOS42MjUtMTguMzcgMS42NTgtMjguNjI1IDMuMDk5YTUzNi43MjggNTM2LjcyOCAwIDAwLTMxLjAwNSA1LjI5NCAxIDEgMCAwMS0xLjE4Ny0uODQybC0uMjgtMS45ODFhMSAxIDAgMDEuNzg5LTEuMTE5eiIgZmlsbD0iI0ZGMDAwMCIgZmlsbC1ydWxlPSJldmVub2RkIiBvcGFjaXR5PSIuOCIvPjwvc3ZnPg==") no-repeat center left;
  width: 100%;
  z-index: 999;
}

.product__product-images {
  display: grid;
  grid-template: "pr-image-main" "pr-images-thumbs";
  grid-template-rows: 90vw 5rem;
  align-content: start;
  justify-items: center;
}
@media (min-width: 768px) {
  .product__product-images {
    grid-template-rows: 400px 5rem;
  }
}

.product-image-main {
  grid-area: pr-image-main;
  display: block;
  width: 90vw;
  align-self: center;
}
@media (min-width: 768px) {
  .product-image-main {
    max-height: 100%;
    max-width: 100%;
    width: auto;
  }
}

.product-images-thumbs {
  grid-area: pr-images-thumbs;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: space-evenly;
  padding: 0.25rem 0;
}

.product-image-thumb {
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: 0.25rem;
  border: 1px solid transparent;
  cursor: pointer;
}
.product-image-thumb:hover {
  border: 1px solid #888788;
}

.product-detail-main {
  display: grid;
  grid-gap: 0.5rem;
  grid-auto-flow: row;
  align-items: start;
  align-content: start;
  grid-template-areas: "pp-name" "pp-options" "pp-char-main" "pp-attachments";
}

.product-detail-main__title {
  grid-area: pp-name;
}

.product-detail-main__product-char-main {
  grid-area: pp-char-main;
}

.product-char-main-list {
  display: grid;
  color: #424242;
}
.product-char-main-list .char-value {
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .product-char-main-list {
    grid-template-columns: minmax(200px, 25rem) minmax(200px, 25rem);
    grid-row-gap: 0.5rem;
  }
  .product-char-main-list .char-value {
    margin-bottom: unset;
  }
}

.product-char-main__more {
  text-decoration: underline;
  cursor: pointer;
}
.product-char-main__more:hover {
  text-decoration: none;
  color: #FF0000;
}

.product-detail-main__product-options {
  grid-area: pp-options;
}

.product-options-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  grid-gap: 0.5rem;
}

.product-option {
  background: #ffffff;
  border: 1px solid #ffffff;
  padding: 0.25rem 0.5rem;
  cursor: pointer;
}

.product-option:hover {
  background: #ffffff;
  border: 1px solid #424242;
  color: unset;
}

.product-option_need {
  border: 1px solid #FF0000;
}

.product-option_select {
  background: #424242;
  border: 1px solid #424242;
  color: #ffffff;
}

.product-detail-attachment {
  text-decoration: underline;
}

.product-detail-main__product-attachments {
  grid-area: pp-attachments;
}

.product-attachments {
  margin-top: 1rem;
  display: grid;
  grid-gap: 0.5rem;
  justify-items: start;
}

.product-block-buy__product-price-block {
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .product-block-buy__product-price-block {
    margin-bottom: 1rem;
  }
}

.product-price-block {
  display: grid;
  align-content: start;
  grid-gap: 0.5rem;
  position: relative;
  overflow: hidden;
  min-height: 7rem;
  border: 1px solid #424242;
  padding: 0.5rem;
}
@media (min-width: 768px) {
  .product-price-block {
    border: none;
    padding: unset;
  }
}

.bargain {
  text-decoration: none;
  position: absolute;
  background: #1F1B20;
  color: white;
  right: -4rem;
  padding: 4rem 1.5rem 0 1.5rem;
  top: -3.5rem;
  transform: rotate(45deg);
  display: flex;
  flex-direction: column;
  font-size: 0.8rem;
}
.bargain-percent {
  font-size: 1.5rem;
  color: #FF0000;
}

.product-price {
  font-weight: 600;
  font-size: 2rem;
  line-height: 2rem;
}
.product-price_old {
  font-size: 1rem;
  color: #888788;
  position: relative;
}
.product-price_old::after {
  color: transparent;
  content: attr(data-price);
  position: absolute;
  left: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjMiIGhlaWdodD0iMTMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMDU3IDguNDY3YTQ3MC42ODkgNDcwLjY4OSAwIDAxMjkuNTA1LTUuMDg1QTQ5OC43MTkgNDk4LjcxOSAwIDAxNjAuOTQuMDUzYTEgMSAwIDAxMS4wNjkuODU4bC4yNzYgMS45NjhhMSAxIDAgMDEtLjkyIDEuMTM3Yy04LjgyOS42MjUtMTguMzcgMS42NTgtMjguNjI1IDMuMDk5YTUzNi43MjggNTM2LjcyOCAwIDAwLTMxLjAwNSA1LjI5NCAxIDEgMCAwMS0xLjE4Ny0uODQybC0uMjgtMS45ODFhMSAxIDAgMDEuNzg5LTEuMTE5eiIgZmlsbD0iI0ZGMDAwMCIgZmlsbC1ydWxlPSJldmVub2RkIiBvcGFjaXR5PSIuOCIvPjwvc3ZnPg==") no-repeat center left;
  width: 100%;
  z-index: 999;
}

.price-discount {
  color: #FF0000;
  border: 1px solid #FF0000;
  margin-left: 0.25rem;
  padding: 0 0.5rem;
}

.product-price-installment {
  color: #424242;
}

.product-button-block {
  display: grid;
}
@media (min-width: 768px) {
  .product-button-block {
    grid-template-columns: repeat(2, 1fr);
  }
}

.product-button-block__buy-one-click {
  grid-column: 1/-1;
}

.button_buy-one-click {
  color: black;
  background: white;
}

.button_product-compare {
  background: #424242;
  color: #ffffff;
  border: 1px solid #424242;
  transition: 0.2s;
}
.button_product-compare:hover {
  background: #ffffff;
  color: #1F1B20;
  border: 1px solid #424242;
}

.button_product-add {
  background: #FF0000;
  border: 1px solid #FF0000;
  color: #ffffff;
}
.button_product-add:hover {
  background: #ffffff;
  color: #FF0000;
}

.block-buy-addition {
  display: grid;
  grid-template-columns: repeat(2, auto);
  color: #424242;
  justify-content: start;
  align-items: center;
  padding: 0.5rem;
  text-decoration: none;
  cursor: pointer;
}
.block-buy-addition:hover {
  display: grid;
  color: #424242;
  background: #f3f3f3;
}

.block-buy-addition_icon {
  font-size: 2rem;
  width: 3.5rem;
}

.product-footer-block {
  background: #f3f3f3;
  padding: 0.25rem;
}

.product-char-all {
  display: grid;
  justify-content: start;
}
.product-char-all .char-value {
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .product-char-all {
    grid-template-columns: repeat(2, auto);
  }
  .product-char-all .char-value {
    margin-bottom: unset;
  }
}

.filter-group__range-input {
  border: 1px solid #fff;
  width: calc(50% - 1.5rem);
  padding: 0.5rem;
}

.filter-group {
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 1em;
}

.filter-group__name {
  font-weight: 500;
}

.filter-group__val {
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.filter-group__val_range {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
}

.filter-group__item {
  display: flex;
  align-items: center;
  margin: 0.25rem 0;
}

.filter-group__item_range {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.filters {
  display: grid;
}

.filter-preview-item {
  background: #ddd;
  border-radius: 0.25rem;
  margin: 0.25rem;
  padding: 0.25rem;
  display: flex;
  flex-direction: column;
}

.filters-reset {
  cursor: pointer;
  margin: 0.25rem 0 1rem 0;
}

.filters-reset:hover {
  color: #FF0000;
}

.filter-preview-item__filter-val {
  border-bottom: 1px dashed;
  margin-left: 0.25rem;
  color: #424242;
  align-self: flex-start;
}

.checkbox {
  height: 0;
  width: 0;
  display: none;
}

.checkbox + label {
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  transition: color 250ms cubic-bezier(0.4, 0, 0.23, 1);
}

.checkbox + label > span {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 1rem;
  min-width: 1rem;
  max-width: 1rem;
  width: 1rem;
  min-height: 1rem;
  max-height: 1rem;
  height: 1rem;
  background: transparent;
  border: 2px solid #9E9E9E;
  border-radius: 2px;
  cursor: pointer;
  transition: all 250ms cubic-bezier(0.4, 0, 0.23, 1);
}

.checkbox + label:hover > span, .checkbox:focus + label > span {
  background: rgba(255, 255, 255, 0.1);
}

.checkbox:checked + label > span {
  border: 0.1rem solid #1F1B20;
  animation: shrink-bounce 200ms cubic-bezier(0.4, 0, 0.23, 1);
}

.checkbox:checked + label > span:before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 0.2em;
  border-right: 0.2rem solid transparent;
  border-bottom: 0.2rem solid transparent;
  transform: rotate(45deg);
  transform-origin: 0% 100%;
  animation: checkbox-check 125ms 250ms cubic-bezier(0.4, 0, 0.23, 1) forwards;
}

@keyframes shrink-bounce {
  0% {
    transform: scale(1);
  }
  33% {
    transform: scale(0.85);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes checkbox-check {
  0% {
    width: 0;
    height: 0;
    border-color: #212121;
    transform: translate3d(0, 0, 0) rotate(45deg);
  }
  33% {
    width: 0.2em;
    height: 0;
    transform: translate3d(0, 0, 0) rotate(45deg);
  }
  100% {
    width: 0.2rem;
    height: 0.5rem;
    border-color: #212121;
    transform: translate3d(0, -0.5rem, 0) rotate(45deg);
  }
}
.vue-tablist {
  list-style: none;
  display: flex;
  flex-direction: column;
  padding-left: 0;
}
@media (min-width: 768px) {
  .vue-tablist {
    flex-direction: row;
  }
}

.vue-tab {
  padding: 0.5rem 2rem;
  cursor: pointer;
  user-select: none;
  text-transform: uppercase;
  font-weight: 600;
  position: relative;
}

.vue-tab[aria-selected=true] {
  background: #ffffff;
}

.vue-tab[aria-disabled=true] {
  cursor: not-allowed;
  color: #999;
}

.vue-tabpanel {
  background: #ffffff;
  box-sizing: content-box;
  padding: 2rem;
}

.vhl-btn-left.vhl-btn-left-custom:hover svg, .vhl-btn-right.vhl-btn-right-custom:hover svg {
  fill: #FF0000;
}

.jumbotron {
  padding: 2rem;
  text-align: center;
  font-size: 2rem;
}

#nprogress .bar {
  background: red !important;
}

#nprogress .peg {
  box-shadow: 0 0 10px red, 0 0 5px red !important;
}

#nprogress .spinner-icon {
  border-top-color: red !important;
  border-left-color: red !important;
}

.modal-block-wrapper {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 12;
  display: grid;
  grid-template-columns: 1fr;
  justify-content: center;
  align-items: center;
}

.modal-title {
  FONT-WEIGHT: 600;
  font-size: 1.3rem;
  text-align: center;
}

.modal-block {
  background: #fff;
  padding: 1.5rem;
  height: 70%;
  width: 70%;
  justify-self: center;
  box-shadow: 0 0 4px #424242;
  position: relative;
}

.modal-block-close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0.5rem;
  font-size: 1.5rem;
}
.modal-block-close:hover {
  color: #FF0000;
}

.modal-content {
  overflow-y: scroll;
  height: 100%;
}

fieldset[disabled] .multiselect {
  pointer-events: none;
}

.multiselect__spinner {
  position: absolute;
  right: 1px;
  top: 1px;
  width: 48px;
  height: 35px;
  background: #fff;
  display: block;
}

.multiselect__spinner:after, .multiselect__spinner:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -8px;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  border: 2px solid transparent;
  border-top-color: #41b883;
  box-shadow: 0 0 0 1px transparent;
}

.multiselect__spinner:before {
  animation: spinning 2.4s cubic-bezier(0.41, 0.26, 0.2, 0.62);
  animation-iteration-count: infinite;
}

.multiselect__spinner:after {
  animation: spinning 2.4s cubic-bezier(0.51, 0.09, 0.21, 0.8);
  animation-iteration-count: infinite;
}

.multiselect__loading-enter-active, .multiselect__loading-leave-active {
  transition: opacity 0.4s ease-in-out;
  opacity: 1;
}

.multiselect__loading-enter, .multiselect__loading-leave-active {
  opacity: 0;
}

.multiselect, .multiselect__input, .multiselect__single {
  font-family: inherit;
  font-size: 16px;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

.multiselect {
  box-sizing: content-box;
  display: block;
  position: relative;
  width: 100%;
  min-height: 40px;
  text-align: left;
  color: #1F1B20;
}

.multiselect * {
  box-sizing: border-box;
}

.multiselect:focus {
  outline: none;
}

.multiselect--disabled {
  background: #ededed;
  pointer-events: none;
  opacity: 0.6;
}

.multiselect--active {
  z-index: 50;
}

.multiselect--active:not(.multiselect--above) .multiselect__current, .multiselect--active:not(.multiselect--above) .multiselect__input, .multiselect--active:not(.multiselect--above) .multiselect__tags {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.multiselect--active .multiselect__select {
  transform: rotate(180deg);
}

.multiselect--above.multiselect--active .multiselect__current, .multiselect--above.multiselect--active .multiselect__input, .multiselect--above.multiselect--active .multiselect__tags {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.multiselect__input, .multiselect__single {
  position: relative;
  display: inline-block;
  min-height: 20px;
  line-height: 20px;
  border: none;
  border-radius: 5px;
  background: #fff;
  padding: 0 0 0 5px;
  width: 100%;
  transition: border 0.1s ease;
  box-sizing: border-box;
  margin-bottom: 8px;
  vertical-align: top;
}

.multiselect__input:-ms-input-placeholder {
  color: #1F1B20;
}

.multiselect__input::placeholder {
  color: #1F1B20;
}

.multiselect__tag ~ .multiselect__input, .multiselect__tag ~ .multiselect__single {
  width: auto;
}

.multiselect__input:hover, .multiselect__single:hover {
  border-color: #cfcfcf;
}

.multiselect__input:focus, .multiselect__single:focus {
  border-color: #a8a8a8;
  outline: none;
}

.multiselect__single {
  padding-left: 5px;
  margin-bottom: 8px;
}

.multiselect__tags-wrap {
  display: inline;
}

.multiselect__tags {
  min-height: 40px;
  display: block;
  padding: 8px 40px 0 8px;
  border-radius: 5px;
  border: 1px solid #e8e8e8;
  background: #fff;
  font-size: 14px;
}

.multiselect__tag {
  position: relative;
  display: inline-block;
  padding: 4px 26px 4px 10px;
  border-radius: 5px;
  margin-right: 10px;
  color: #fff;
  line-height: 1;
  background: #424242;
  margin-bottom: 5px;
  white-space: nowrap;
  overflow: hidden;
  max-width: 100%;
  text-overflow: ellipsis;
}

.multiselect__tag-icon {
  cursor: pointer;
  margin-left: 7px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  font-weight: 700;
  font-style: normal;
  width: 22px;
  text-align: center;
  line-height: 22px;
  transition: all 0.2s ease;
  border-radius: 5px;
}

.multiselect__tag-icon:after {
  content: "×";
  color: #ffffff;
  font-size: 14px;
}

.multiselect__tag-icon:focus:after, .multiselect__tag-icon:hover:after {
  color: #FF0000;
}

.multiselect__current {
  min-height: 40px;
  overflow: hidden;
  padding: 8px 30px 0 12px;
  white-space: nowrap;
  border-radius: 5px;
  border: 1px solid #e8e8e8;
}

.multiselect__current, .multiselect__select {
  line-height: 16px;
  box-sizing: border-box;
  display: block;
  margin: 0;
  text-decoration: none;
  cursor: pointer;
}

.multiselect__select {
  position: absolute;
  width: 40px;
  height: 38px;
  right: 1px;
  top: 1px;
  padding: 4px 8px;
  text-align: center;
  transition: transform 0.2s ease;
}

.multiselect__select:before {
  position: relative;
  right: 0;
  top: 65%;
  color: #999;
  margin-top: 4px;
  border-color: #999 transparent transparent;
  border-style: solid;
  border-width: 5px 5px 0;
  content: "";
}

.multiselect__placeholder {
  color: #1F1B20;
  display: inline-block;
  margin-bottom: 10px;
  padding-top: 2px;
}

.multiselect--active .multiselect__placeholder {
  display: none;
}

.multiselect__content-wrapper {
  position: absolute;
  display: block;
  background: #fff;
  width: 100%;
  max-height: 240px;
  overflow: auto;
  border: 1px solid #e8e8e8;
  border-top: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  z-index: 50;
  -webkit-overflow-scrolling: touch;
}

.multiselect__content {
  list-style: none;
  display: inline-block;
  padding: 0;
  margin: 0;
  min-width: 100%;
  vertical-align: top;
}

.multiselect--above .multiselect__content-wrapper {
  bottom: 100%;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  border-bottom: none;
  border-top: 1px solid #e8e8e8;
}

.multiselect__content::webkit-scrollbar {
  display: none;
}

.multiselect__element {
  display: block;
}

.multiselect__option {
  display: block;
  padding: 12px;
  min-height: 40px;
  line-height: 16px;
  text-decoration: none;
  text-transform: none;
  vertical-align: middle;
  position: relative;
  cursor: pointer;
  white-space: nowrap;
}

.multiselect__option:after {
  top: 0;
  right: 0;
  position: absolute;
  line-height: 40px;
  padding-right: 12px;
  padding-left: 20px;
  font-size: 13px;
}

.multiselect__option--highlight {
  background: #ffffff;
  outline: none;
  color: #424242;
}

.multiselect__option--highlight:after {
  content: attr(data-select);
  background: #ffffff;
  color: #424242;
}

.multiselect__option--selected {
  background: #f3f3f3;
  color: #1F1B20;
  font-weight: 700;
}

.multiselect__option--selected:after {
  content: attr(data-selected);
  color: silver;
}

.multiselect__option--selected.multiselect__option--highlight {
  background: #424242;
  color: #fff;
}

.multiselect__option--selected.multiselect__option--highlight:after {
  background: #424242;
  content: attr(data-deselect);
  color: #fff;
}

.multiselect--disabled .multiselect__current, .multiselect--disabled .multiselect__select {
  background: #ededed;
  color: #a6a6a6;
}

.multiselect__option--disabled {
  background: #ededed !important;
  color: #a6a6a6 !important;
  cursor: text;
  pointer-events: none;
}

.multiselect__option--group {
  background: #ededed;
  color: #35495e;
}

.multiselect__option--group.multiselect__option--highlight {
  background: #35495e;
  color: #fff;
}

.multiselect__option--group.multiselect__option--highlight:after {
  background: #35495e;
}

.multiselect__option--disabled.multiselect__option--highlight {
  background: #dedede;
}

.multiselect__option--group-selected.multiselect__option--highlight {
  background: #ff6a6a;
  color: #fff;
}

.multiselect__option--group-selected.multiselect__option--highlight:after {
  background: #ff6a6a;
  content: attr(data-deselect);
  color: #fff;
}

.multiselect-enter-active, .multiselect-leave-active {
  transition: all 0.15s ease;
}

.multiselect-enter, .multiselect-leave-active {
  opacity: 0;
}

.multiselect__strong {
  margin-bottom: 8px;
  line-height: 20px;
  display: inline-block;
  vertical-align: top;
}

[dir=rtl] .multiselect {
  text-align: right;
}

[dir=rtl] .multiselect__select {
  right: auto;
  left: 1px;
}

[dir=rtl] .multiselect__tags {
  padding: 8px 8px 0 40px;
}

[dir=rtl] .multiselect__content {
  text-align: right;
}

[dir=rtl] .multiselect__option:after {
  right: auto;
  left: 0;
}

[dir=rtl] .multiselect__clear {
  right: auto;
  left: 12px;
}

[dir=rtl] .multiselect__spinner {
  right: auto;
  left: 1px;
}

@keyframes spinning {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(2turn);
  }
}
.search-block {
  position: relative;
  display: flex;
}
.search-block:hover .search-block__result {
  display: block;
}
.search-block__result-group {
  display: flex;
  flex-direction: column;
}
.search-block__result-group__item {
  text-decoration: none;
  height: 50px;
  padding-left: 1rem;
  margin: 0.25rem 0;
  color: #424242;
}
.search-block__result-group__item:hover {
  color: #FF0000;
  background: #f3f3f3;
}
.search-block__result-group__item_title {
  border-bottom: none;
  color: #888788;
  height: auto;
  margin-top: 1rem;
  padding-left: 0;
}
.search-block__result-group__item_title:hover {
  background: #ffffff;
}

.search-block__result {
  display: none;
  position: absolute;
  z-index: 12;
  background: #ffffff;
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  padding: 1rem;
  overflow-y: scroll;
  max-height: 20rem;
  border: 1px solid #ffffff;
}

.search-result__img-thumb_min {
  width: 50px;
  margin-right: 0.25rem;
}

.after-header-line {
  margin: 1rem 1rem;
  display: grid;
  grid-auto-flow: row;
  justify-content: stretch;
  align-items: center;
}
@media (min-width: 768px) {
  .after-header-line {
    grid-auto-flow: column;
    justify-content: start;
  }
}

.wrap-content {
  margin: 0.25rem 1rem;
  display: grid;
  grid-template: "lm-sidebar" "lm-top" "lm-content" "lm-bottom";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto 1fr auto;
  grid-column-gap: 0.5rem;
  align-items: start;
}
.wrap-content_without-sidebar {
  grid-template: "lm-top" "lm-content" "lm-bottom";
}
@media (min-width: 768px) {
  .wrap-content {
    grid-template: "lm-sidebar lm-top" "lm-sidebar lm-content" "lm-bottom lm-bottom";
    grid-template-columns: minmax(200px, 14rem) 1fr;
    grid-template-rows: auto 1fr auto;
  }
  .wrap-content_without-sidebar {
    grid-template: "lm-top" "lm-content" "lm-bottom";
  }
}

.sidebar {
  grid-area: lm-sidebar;
  display: grid;
}

.top-blocks {
  grid-area: lm-top;
  display: grid;
  align-content: start;
}

.content {
  grid-area: lm-content;
}

.bottom-blocks {
  grid-area: lm-bottom;
  display: grid;
  align-content: start;
}

.title {
  font-size: 1.3rem;
  color: #1F1B20;
}

.header {
  width: 100%;
  margin-bottom: 0.25rem;
}

.header__header-top {
  display: grid;
  background: rgba(255, 255, 255, 0.6);
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  grid-row-gap: 1rem;
  padding: 0 1rem;
}
@media (min-width: 768px) {
  .header__header-top {
    grid-template-columns: 1fr max-content 1fr;
    grid-row-gap: 0;
    grid-template-rows: 1fr;
    justify-items: start;
    align-items: center;
    padding: 0.5rem 1.5rem;
  }
}

.header-top__link_menu {
  margin: 0 1rem;
}

.header-top__link_phone:hover {
  color: #FF0000;
}

.header-top__link_backcall .link__icon {
  transform: rotate(90deg);
}

.header-top__link_backcall.link:hover {
  color: #11994b;
}

.header-top__logo {
  display: block;
  justify-self: start;
  grid-row: 1/3;
}

.header-top__logo-image {
  display: block;
  height: 10rem;
}
@media (min-width: 768px) {
  .header-top__logo-image {
    display: none;
  }
}

.header-top__title-site {
  justify-self: center;
  text-align: center;
  font-weight: 500;
}

.header-top__right-block {
  display: grid;
  grid-gap: 1rem 0.5rem;
  grid-template-columns: 1fr auto;
  justify-content: end;
  justify-items: end;
  align-content: start;
}
@media (min-width: 768px) {
  .header-top__right-block {
    grid-gap: unset;
    justify-self: end;
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: repeat(3, max-content);
    align-items: center;
    align-content: unset;
  }
}

.header-top__column-block {
  grid-column: 1/3;
}
@media (min-width: 768px) {
  .header-top__column-block {
    grid-column: unset;
    margin-left: 2rem;
  }
}

.header__header-main {
  display: none;
}
@media (min-width: 768px) {
  .header__header-main {
    display: grid;
    grid-template-columns: minmax(200px, 0.3fr) 1fr minmax(200px, 0.3fr);
  }
}

.header-main__left {
  padding: 1rem;
}

.header-main__logo {
  width: 150px;
}

.header-main__center {
  display: none;
}
@media (min-width: 768px) {
  .header-main__center {
    display: grid;
    grid-template-rows: auto 1fr auto;
  }
}

.header-main__menu-page {
  align-self: start;
  display: flex;
  justify-content: space-evenly;
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
}

.header-main__menu-page__item {
  color: #fff;
  text-decoration: none;
}

.header-main__counts-intro-text {
  font-family: Mistral;
  font-size: 2rem;
  align-self: center;
  color: #ffffff;
  font-weight: 500;
  text-align: center;
  grid-column: 1/-1;
  text-shadow: 0px -1px 1px #000000, 1px 0px 1px #000000, 0px -1px 1px #000000, -1px 0px 1px #000000;
}

.header-main__counts {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: auto auto;
  background: rgba(255, 255, 255, 0.6);
  font-size: 0.9rem;
}

/* Tooltip text */
.with-count-right {
  position: relative;
  margin-left: 1rem;
}

.count-item {
  font-size: 0.8rem;
  background-color: #FF0000;
  color: #ffffff;
  text-align: center;
  padding: 0 0.25rem;
  border-radius: 5px;
  position: absolute;
  z-index: 1;
  left: 100%;
  line-height: 1.2rem;
  margin-left: 5px;
}
.count-item::after {
  content: "";
  position: absolute;
  left: 0;
  margin-left: -6px;
  bottom: calc(50% - 3px);
  border-width: 3px;
  border-style: solid;
  border-color: transparent #FF0000 transparent transparent;
}
.count-item_compare {
  background-color: #424242;
}
.count-item_compare::after {
  border-color: transparent #424242 transparent transparent;
}

.footer_main {
  background: rgba(66, 66, 66, 0.75);
  color: white;
  padding: 0 1rem;
}
@media (min-width: 768px) {
  .footer_main {
    padding: unset;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 2fr;
    grid-template-rows: repeat(4, auto);
  }
}

.footer-row-intro {
  grid-column: 1/-1;
  justify-items: center;
  align-items: center;
  display: grid;
  color: #e4a868;
  font-family: Mistral;
  font-size: 2.5rem;
  text-align: center;
  padding: 0.5rem 0 2rem 0;
  overflow: hidden;
}

.footer-column {
  display: flex;
  flex-direction: column;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .footer-column {
    margin-top: unset;
  }
}

.footer-column_left-block {
  grid-row: 2/-2;
  grid-column: 1/2;
  display: grid;
  justify-content: center;
  justify-items: center;
  align-content: center;
  padding: 1rem 0;
}

.footer-logo {
  width: 80%;
  display: block;
}

.footer-column_right-block {
  grid-row: 2/-2;
  grid-column: -2/-1;
}

.footer-column_last-row {
  align-self: center;
  margin-top: 2rem;
}

.footer-row-text-oferta {
  grid-column: 1/-1;
  justify-self: center;
  margin-top: 3rem;
  margin-bottom: 0.5rem;
  text-align: center;
}

.footer-column__title {
  font-weight: 600;
  text-transform: uppercase;
  color: #FF0000;
}

.social-link-wrap {
  display: flex;
  font-size: 1.4rem;
  justify-content: start;
}

.end-page {
  text-align: center;
  background: #1f1b20;
  color: #848284;
  padding: 1rem 0;
}

.input_subscribe {
  border-right: none;
}

.input_subscribe:focus {
  box-shadow: 0 0 5px red;
}

.apply-subscribe {
  margin-top: 0.25rem;
  display: flex;
  align-items: center;
}

.footer-img-decor-wrap {
  height: 100%;
  display: grid;
  align-content: center;
}

.content_catalog {
  display: grid;
  align-items: stretch;
}

.catalog__description {
  color: #424242;
}

.catalog__products {
  display: grid;
  justify-content: center;
  grid-column-gap: 1rem;
  grid-row-gap: 2rem;
  align-items: stretch;
}
@media (min-width: 768px) {
  .catalog__products {
    grid-template-columns: repeat(auto-fill, minmax(45%, 1fr));
  }
}
@media (min-width: 992px) {
  .catalog__products {
    grid-template-columns: repeat(auto-fill, minmax(24%, 1fr));
  }
}
@media (min-width: 1800px) {
  .catalog__products {
    grid-template-columns: repeat(auto-fill, minmax(19%, 1fr));
  }
}

.catalog__pagination {
  grid-column-start: 1;
  grid-column-end: -1;
}

.compare {
  display: grid;
  grid-gap: 1rem;
  grid-template-areas: "compare-cat" "compare-products";
}

.compare-category-list {
  grid-area: compare-cat;
  margin: 1rem;
  display: flex;
}

.compare-category {
  position: relative;
  cursor: pointer;
  z-index: 1;
  color: #FF0000;
  padding: 0 0.75rem;
  border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;
  margin: 0 1rem;
}
.compare-category:hover {
  color: #ffffff;
}
.compare-category:hover::after {
  background: #FF0000;
}
.compare-category::after {
  content: "";
  width: 100%;
  background: #ffffff;
  position: absolute;
  left: 0;
  border: 1px solid #FF0000;
  top: 0;
  height: 1.4rem;
  z-index: -1;
  border-radius: 0.5rem;
  transform: skewX(-20deg);
}
.compare-category.active {
  color: #ffffff;
}
.compare-category.active::after {
  background: #FF0000;
}

.compare-products-list {
  overflow-x: scroll;
}

.section-compare {
  display: grid;
  grid-auto-flow: column;
  grid-gap: 1rem;
  align-items: center;
  background: #f3f3f3;
  padding: 1rem;
  border-radius: 0.25rem;
  width: max-content;
}
.section-compare:hover {
  background: rgba(248, 0, 0, 0.1);
}
.section-compare.section-compare_main {
  margin-bottom: 2rem;
  background: none;
  box-shadow: 0 0px 4px #999;
}

.compare-product__char-name {
  grid-column: 1/-1;
}

.compare-product, .section-compare .product-card {
  width: 18rem;
}

.compare-product__char-item_title {
  font-size: 0.8rem;
  color: #888788;
  margin-bottom: 0;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
}

.compare-product__char-item_value {
  margin-top: 1rem;
}

.content_collection {
  display: grid;
  grid-auto-flow: row;
  align-items: start;
}

.collection__collection-images {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  justify-items: center;
  align-items: center;
  grid-gap: 0.5rem;
}
.collection__collection-image {
  display: block;
  width: 100%;
}
.collection__collection-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 250px));
}
.collection__collection-item {
  display: grid;
  justify-items: start;
  align-items: start;
  position: relative;
}
.collection__collection-item-name {
  position: absolute;
  background: rgba(255, 255, 255, 0.7);
  bottom: 0;
  padding: 0.25rem;
}
.collection__collection-item-image {
  width: 100%;
}

.content_collections-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, 300px);
  grid-column-gap: 1rem;
  grid-row-gap: 2rem;
}

.title-collection-list {
  grid-column: 1/-1;
  margin-bottom: -1.5rem;
}

.collections-description {
  grid-column: 1/-1;
}

.collection-item {
  display: grid;
  position: relative;
  overflow: hidden;
}

.collection-item-name {
  padding: 0.25rem;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.5s;
}

.collection-item-image {
  width: 100%;
}

/*
.collection-item:hover .collection-item-description {
  top: 0;
  bottom: 0;

}

.collection-item-description {
  padding: .25rem;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  position: absolute;
  top: 110%;
  background: rgba(255, 255, 255, .7);
  transition: .5s;
  color: $black;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 100%;
}

.collection-item-description:after {
  content: '';
  width: 100%;
  height: 3rem;
  background: linear-gradient(transparent, white 100%);
  position: absolute;
  bottom: 0;
  transition: .5s;
}
*/
.content_product-page {
  display: grid;
  grid-template: "pr-images" "pr-detail-main" "pr-block-buy" "pr-footer-block" "pr-related";
  grid-template-columns: 1fr;
  justify-content: center;
}
@media (min-width: 768px) {
  .content_product-page {
    grid-template: "pr-images pr-detail-main pr-block-buy" "pr-footer-block pr-footer-block pr-footer-block" "pr-related pr-related pr-related";
    grid-template-columns: minmax(400px, 500px) auto minmax(10rem, 25rem);
  }
}

.product__product-images {
  grid-area: pr-images;
}

.product__product-detail-main {
  grid-area: pr-detail-main;
}

.product__product-block-buy {
  grid-area: pr-block-buy;
}

.product__product-footer-block {
  grid-area: pr-footer-block;
}

.product_products-related {
  grid-area: pr-related;
}

.content_service {
  display: grid;
  grid-auto-flow: row;
  align-items: start;
}

.service__image {
  width: 100%;
}
.service__works-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 250px));
}
.service__work-item {
  display: grid;
  justify-items: start;
  align-items: start;
  position: relative;
}
.service__work-item-name {
  position: absolute;
  background: rgba(255, 255, 255, 0.7);
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.25rem;
}
.service__work-item-image {
  width: 100%;
}

/*
.service-item:hover .service-item-description {
  top: 0;
  bottom: 0;

}

.service-item-description {
  padding: .25rem;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  position: absolute;
  top: 110%;
  background: rgba(255, 255, 255, .7);
  transition: .5s;
  color: $black;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 100%;
}

.service-item-description:after {
  content: '';
  width: 100%;
  height: 3rem;
  background: linear-gradient(transparent, white 100%);
  position: absolute;
  bottom: 0;
  transition: .5s;
}
*/
.content_work {
  display: grid;
  grid-auto-flow: row;
  align-items: start;
}

.work__work-images {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  justify-items: center;
  align-items: center;
  grid-gap: 0.5rem;
}
.work__work-image {
  display: block;
  width: 100%;
}
.work__services-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 250px));
}
.work__service-item {
  display: grid;
  justify-items: start;
  align-items: start;
  position: relative;
}
.work__service-item-name {
  position: absolute;
  background: rgba(255, 255, 255, 0.7);
  bottom: 0;
  padding: 0.25rem;
}
.work__service-item-image {
  width: 100%;
}

/*
.work-item:hover .work-item-description {
  top: 0;
  bottom: 0;

}

.work-item-description {
  padding: .25rem;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  position: absolute;
  top: 110%;
  background: rgba(255, 255, 255, .7);
  transition: .5s;
  color: $black;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 100%;
}

.work-item-description:after {
  content: '';
  width: 100%;
  height: 3rem;
  background: linear-gradient(transparent, white 100%);
  position: absolute;
  bottom: 0;
  transition: .5s;
}
*/
.index-page {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.5rem;
}

.link_we-are-kuzbass {
  justify-self: end;
}
@media (min-width: 768px) {
  .link_we-are-kuzbass {
    justify-self: inherit;
    align-self: end;
  }
}

.ip-first_line {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  width: 100%;
}
.ip-first_line .ip-slider-block {
  display: none;
}
@media (min-width: 768px) {
  .ip-first_line {
    grid-template-columns: min-content 1fr max-content max-content;
  }
  .ip-first_line .ip-slider-block {
    display: block;
  }
}

.index-page .nav-sidebar-wrap {
  grid-row: 1/3;
}

.ip-slider-block {
  grid-column: 1/-1;
}

.search-input_index-page {
  position: relative;
  display: block;
  border: none;
  border-bottom: 1px solid #FF0000;
  width: 100%;
  outline: none;
  transition: 0.5s;
}
.search-input_index-page::placeholder {
  color: #FF0000;
}

.ip-row-blocks {
  width: 100%;
  display: block;
  margin-bottom: 2rem;
}

.item-slider-index img {
  width: 100%;
}

.ip-slider-block .vhl-btn-right {
  opacity: 0;
  margin-right: 0;
  transition: 0.5s;
}

.ip-slider-block .vhl-btn-left {
  opacity: 0;
  margin-left: 0;
  transition: 0.5s;
}

.ip-slider-block:hover .vhl-btn-left {
  opacity: 1;
  margin-left: 0.5rem;
}

.ip-slider-block:hover .vhl-btn-right {
  opacity: 1;
  margin-right: 0.5rem;
}

.ip-line-item {
  display: grid;
  justify-content: center;
  text-decoration: none;
}

.ip-line-item-name {
  text-align: center;
  font-weight: 400;
  height: 2.7rem;
  overflow: hidden;
}

.ip-line-item-image {
  display: block;
  width: 100%;
}

.ip-slider-line-item {
  display: grid;
  align-content: end;
}
.ip-slider-line-item_manufacturers {
  align-content: center;
}

.ip-row-blocks-title {
  font-weight: 400;
}

.ip-row-block-line .vhl-btn-right.vhl-btn-right-custom {
  opacity: 0;
  margin-right: 0;
  transition: 0.5s;
}

.ip-row-block-line .vhl-btn-left.vhl-btn-left-custom {
  opacity: 0;
  margin-left: 0;
  transition: 0.5s;
}

.ip-row-block-line:hover .vhl-btn-left {
  opacity: 1;
  margin-left: 0.5rem;
}

.ip-row-block-line:hover .vhl-btn-right {
  opacity: 1;
  margin-right: 0.5rem;
}

.ip-row-block-line_pages {
  display: grid;
  justify-content: start;
  grid-template-columns: repeat(auto-fill, minmax(1rem, 100%));
  grid-gap: 2rem;
}
@media (min-width: 768px) {
  .ip-row-block-line_pages {
    grid-template-columns: repeat(auto-fill, minmax(1rem, 14%));
  }
}

.ip-line-item_page {
  background: #424242;
  color: #ffffff;
  transition: 0.25s;
  padding: 0.25rem 0.75rem;
  cursor: pointer;
  font-size: 1rem;
}
.ip-line-item_page:hover {
  background: #ffffff;
  color: #1F1B20;
}

.ip-row-blocks_manufacturers {
  margin-top: 5rem;
}

.ip-line-item_manufacturer {
  align-self: center;
}

.ip-slider-line-item_manufacturers {
  opacity: 0.2;
  transition: 0.25s;
}

.ip-slider-line-item_manufacturers:hover {
  opacity: 1;
}

.manufacturer-products {
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(14%, max-content));
}

.manufacturer-category-link {
  color: #ffffff;
  background: #FF0000;
  border: 1px solid #FF0000;
  padding: 0.25rem 0.75rem;
  transition: 0.25s;
}
.manufacturer-category-link:hover {
  color: #FF0000;
  background: #ffffff;
}

.cart-preview {
  display: grid;
}

.cart-stock-group {
  border: 1px solid #ffffff;
  transition: 0.5s;
}
.cart-stock-group:hover {
  border: 1px solid #FF0000;
}

.cart-list {
  display: grid;
  grid-template-areas: "cart-image  cart-image" "cart-name cart-name" "cart-count cart-price" "cart-action cart-action";
  grid-template-columns: repeat(2, auto);
  justify-content: center;
  align-items: center;
  border-top: 1px solid #f3f3f3;
  padding: 0.5rem 0;
  color: #424242;
}
@media (min-width: 768px) {
  .cart-list {
    justify-content: unset;
    grid-template-areas: "cart-image cart-name cart-count cart-price cart-sum cart-action";
    grid-template-columns: repeat(6, minmax(auto, 1fr));
  }
}
.cart-list:hover {
  color: #1F1B20;
  background: #f3f3f3;
}
.cart-list_header {
  display: none;
}
@media (min-width: 768px) {
  .cart-list_header {
    display: grid;
    font-weight: 500;
    border-top: none;
    padding: 0;
  }
}
.cart-list_header:hover {
  background: none;
}
.cart-list_footer {
  font-weight: 600;
  font-size: 1.5rem;
  padding: 0;
}
.cart-list_footer .cart-item-price_old {
  font-weight: 400;
  font-size: 1rem;
}
.cart-list_discount {
  color: #FF0000;
}
.cart-list_footer:hover {
  color: #424242;
  background: none;
}
.cart-list_stock-status-title {
  grid-template-areas: unset;
  grid-template-columns: 1fr;
  justify-content: start;
  font-weight: 500;
  padding-left: 1rem;
}
.cart-list_stock-status-title:hover {
  color: #424242;
  background: none;
}

.cart-list_order {
  display: grid;
  grid-template-areas: "cart-image  cart-image" "cart-name cart-name" "cart-count cart-price";
  grid-template-columns: repeat(2, auto);
  justify-content: center;
  align-items: center;
  border-top: 1px solid #f3f3f3;
  padding: 0.5rem 0;
  color: #424242;
}
@media (min-width: 768px) {
  .cart-list_order {
    justify-content: unset;
    grid-template-areas: "cart-image cart-name cart-count cart-price cart-sum";
    grid-template-columns: repeat(6, minmax(auto, 1fr));
  }
}

.cart-item-image {
  height: 150px;
  grid-area: cart-image;
  justify-self: center;
}
@media (min-width: 768px) {
  .cart-item-image {
    height: 4rem;
  }
}

.cart-item-name {
  grid-area: cart-name;
  justify-self: start;
  width: 20rem;
  text-decoration: none;
  display: block;
  text-align: center;
}
.cart-item-name .cart-item-name {
  display: inline-flex;
}

.cart-item-name_footer {
  grid-area: cart-image;
  height: unset;
}
@media (min-width: 768px) {
  .cart-item-name_footer {
    grid-area: cart-name;
  }
}

.cart-item-count {
  grid-area: cart-count;
  justify-self: center;
}

.input.cart-item-count-input {
  width: 1.5rem;
  text-align: center;
  -moz-appearance: textfield;
  border-color: #ffffff;
}

.cart-item-count-input::-webkit-outer-spin-button,
.cart-item-count-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart-change-count {
  cursor: pointer;
}
.cart-change-count:hover {
  color: #FF0000;
}

.cart-item-price {
  grid-area: cart-price;
  justify-self: center;
}

.cart-item-price_old {
  text-decoration: line-through;
  font-size: 0.8rem;
  text-align: center;
}

.cart-item-sum {
  display: none;
  grid-area: cart-sum;
  justify-self: center;
}
@media (min-width: 768px) {
  .cart-item-sum {
    display: block;
  }
}

.cart-item-sum_footer {
  grid-area: cart-name;
  display: block;
}
@media (min-width: 768px) {
  .cart-item-sum_footer {
    grid-area: cart-sum;
  }
}

.cart-item-action {
  grid-area: cart-action;
  justify-self: center;
}

.cart-item-remove {
  cursor: pointer;
}
.cart-item-remove:hover {
  color: #FF0000;
}

.button_cart-clear {
  background: #ffffff;
  color: #424242;
  font-weight: 600;
  border: 1px solid #888788;
}

.discount-description {
  padding: 1rem;
}

.promo-and-service-block {
  background: #f3f3f3;
  display: grid;
  grid-template-columns: auto auto;
  justify-content: space-between;
  align-items: start;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .promo-and-service-block {
    margin-top: unset;
  }
}

.form-item-link_recovery {
  grid-row: 2/3;
  grid-column: 2/3;
  align-self: start;
  margin-top: -0.5rem;
}

.cart-services-list {
  grid-gap: 0.5rem;
  grid-auto-flow: column;
  align-items: center;
  display: grid;
  justify-items: end;
  padding: 1rem;
  background: #f3f3f3;
}

.link_service-details {
  margin-left: 0.25rem;
  text-decoration: none;
}

.cart-last-block {
  display: grid;
  justify-content: end;
  grid-auto-flow: row;
  margin: 2rem 0;
  align-items: center;
}
@media (min-width: 768px) {
  .cart-last-block {
    grid-auto-flow: column;
  }
}

.order-block {
  background: #f3f3f3;
  display: grid;
  grid-template-areas: "ob-title " "ob-customer" "ob-delivery" "ob-payments" "ob-buttons";
  padding: 1rem;
  justify-content: space-evenly;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .order-block {
    grid-template-areas: "ob-title ob-title" "ob-customer ob-delivery" "ob-customer ob-payments" "ob-buttons ob-buttons";
  }
}

.order-block-title {
  grid-area: ob-title;
  margin: 0;
}

.order-form_customer {
  grid-area: ob-customer;
}

.order-form_delivery {
  grid-area: ob-delivery;
}

.order-form_payments {
  grid-area: ob-payments;
}

.order-button-line {
  grid-area: ob-buttons;
  justify-self: end;
}

.search-page {
  margin: 2rem 0;
}

.search-input_search-page {
  border: 1px solid #f80000;
  border-right: none;
  margin-right: -0.25rem;
  transition: width 0.5s;
  width: 50%;
}

.search-results__toggle-type {
  margin: 1rem;
  display: flex;
}

.search-results__toggle-type-item {
  position: relative;
  cursor: pointer;
  z-index: 1;
  color: #FF0000;
  padding: 0 0.75rem;
  border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;
  margin: 0 1rem;
}
.search-results__toggle-type-item:hover {
  color: #ffffff;
}
.search-results__toggle-type-item:hover::after {
  background: #FF0000;
}
.search-results__toggle-type-item::after {
  content: "";
  width: 100%;
  background: #ffffff;
  position: absolute;
  left: 0;
  border: 1px solid #FF0000;
  top: 0;
  height: 1.4rem;
  z-index: -1;
  border-radius: 0.5rem;
  transform: skewX(-20deg);
}
.search-results__toggle-type-item.active {
  color: #ffffff;
}
.search-results__toggle-type-item.active::after {
  background: #FF0000;
}

.search-results-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.search-results-group .search-result-item {
  width: 250px;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  margin: 1rem;
}
.search-results-group .search-result__img-thumb {
  width: 250px;
}
.search-results-group .search-result__name {
  text-align: center;
}

.gallery-images-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 250px));
  grid-gap: 1rem;
}

.gallery-image {
  cursor: pointer;
  width: 100%;
}

.gallery-connection-image {
  width: 100%;
  display: block;
}
