



.category-section {
  background-color: #fff;
  padding: 20px;
}

.categories-container {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.category-card {   
 display: flex;   
 flex-direction: row-reverse;
  background-color: #F5F5F5;
  padding: 0px 0px 0px 20px;
  max-height: 287px;
  border-radius: 5px;
  overflow: hidden;
      align-items: center;
  transition: transform 0.3s ease;
}

.category-card:hover {
  transform: scale(1.05);
}

.category-card img {
  
  height: auto;
}

.category-card h3 {
  margin-top: 10px;
  font-size: 24px;
  font-weight: 400;
}

.category-card p {
  margin-top: 10px;
  font-size: 14px;
  color: #666;
}

.category-card button {
  margin-top: 10px;
  padding: 10px 20px;
  background-color: #BE1622;
  color: #fff;
  border: none;
  border-radius: 20px;
  cursor: pointer;
}

.category-card-25 {flex-basis: calc(25% - 15px);} 
.category-card-45 {flex-basis: calc(45% - 10px);} 
.category-card-30 {flex-basis: calc(30% - 15px);} 

.category-card-text {width: 50%; margin-right: 20px;}
.category-card-img { overflow: hidden;}


.promotions-slider {
  background-color: #fff;
  padding: 20px;
}

.promotion-slide {
  text-align: center;
}

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

.promotions-slider .slick-arrow, .image-slider .slick-arrow{position: absolute;     top: calc(50% - 25px); z-index: 10; width: 50px; height: 50px; border: none; text-indent: -9999px; border-radius: 50%; -webkit-box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.1);
-moz-box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.1);
box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.1); cursor: pointer;}
.promotions-slider .slick-prev,.image-slider .slick-prev {left: -15px; background: #fff url('../images/prev.png') center no-repeat; }
.promotions-slider .slick-next,.image-slider .slick-next  {right: -15px; background: #fff url('../images/next.png') center no-repeat;}

@media (max-width: 768px) {
  .promotion-slide img {
    width: 100%;
    height: auto;
  }
}




.documents-section {
  background-color: #fff;
  padding: 20px;
}

.document-slider {
  position: relative;
}

.document-slider .slider-control {
  position: absolute;
  top: -50px;
  width: 40px;
  height: 40px;
  background-color: #fff;
  color: #fff;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  
}
.red-text {color:#BE1622;}
.product-variants, .product-tabs, .product-recommended,.promotions {margin-top: 70px;}
.document-slider .slider-control.prev {
  right: 60px;
}

.document-slider .slider-control.next {
  right: 10px;
}

.documents-container {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
}

.document-card { margin: 10px;
  flex-shrink: 0;
  background-color: #F5F5F5;
  
  padding: 20px 15px;
  border-radius: 5px;
  overflow: hidden;
  scroll-snap-align: start;
}

.document-card img { border-radius: 5px;
  max-width: 100%;
  height: auto;
}

.document-card a{    display: flex;
    height: 306px;     align-items: center;
	    overflow: hidden;
    display: flex
;
	
	}
	
	
	
.benefits {margin-bottom:70px;}

.main-slider {
  background-color: #fff;
  padding: 20px;
  margin-bottom: 30px
}

.header-section { position: absolute;
  width: 100%;
  text-align: center;
  
  
  top: 50px;
}

.header-section h1 {
  color: #BE1622;
  font-size: 56px;
  margin-bottom: 10px;
}

.header-section h1 span {color:#000;}

.header-section p { color: #333;
  font-size: 16px;
  line-height: 1.6;
  max-width: 800px;
  margin: 0 auto;
}

.button-group {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 20px;
}

.primary-button {
  background-color: #BE1622;
  color: #fff;
  border: none;
  padding: 17px 25px;
  border-radius: 50px;
  cursor: pointer;
  font-size: 14px;
}

.secondary-button {
  background-color: #fff;
  color: #333;
  border: none;
  padding: 17px 25px;
  border-radius: 50px;
  cursor: pointer;
  font-size: 14px;
}

.image-slider {
  position: relative;
  
  margin-top: 20px;
}

.slide {
  position: relative;
}

.slide img {
  width: 100%;
  height: auto;
}

.marker-container {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  z-index: 10;
}

.marker {
  position: relative;
  cursor: pointer;
}

.tooltip-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.marker-container {
  height: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  z-index: 10;
}

.marker {
  position: relative;
  cursor: pointer;
}

.tooltip-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.marker .tooltip { font-size: 8px;
	width:210px;
	height: 100px;
  display: none;
  position: absolute;
  top: -120px ;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
  padding: 15px 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
  white-space: pre-line; /* Для переноса строк в tooltip */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  z-index: 100;
}
.marker .tooltip::before {  
 content: ".";
  display:block;
        width: 0px;
        height: 0px;
	
        border: 10px solid transparent;
        border-top: 15px solid #fff;
		position:absolute; bottom:-24px; left:47%; margin-top:-10px;
   }

.marker1{position: absolute;
    top: 80%;;
    left: 21%;}
.marker2 {    position: absolute;
  top: 80%;
    left: 50%;
}
.marker3{    position: absolute;
    top: 65%;
    right: 21%;
}

.marker4{    position: absolute;
  top: 90%;
     right: 21%;
}

.tooltip-wrap {display: flex; gap: 10px;}

.tooltip a	{color: #BE1622; text-decoration: none;}
.tooltip img {width: 60px;}
.tooltip h3{font-size: 10px; font-weight: 500;}

.tabs {
  background-color: #fff;
  padding: 20px;
}

.tab-nav {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
      border-bottom: 1px solid #00000010;
}

.tab-button {
  background: none;
  border: none;
  color: #333;
  cursor: pointer;
  font-size: 16px;
  padding: 10px 20px;
  text-decoration: none;
  
}

.tab-button.active { color: #BE1622;
  border-bottom: 1px solid #BE1622; /* Активный таб */
}



.tab-pane {
  display: none;
}

.tab-pane.active {
  display: block;
}

/* Стилизация таблицы */
table {
  width: 100%;
  border-collapse: collapse;
}

table td { font-size: 16px; color: #333;
  padding: 3px;
  border-bottom: 1px dotted #D1D1D1;
}

table td:first-child {
  text-align: left;
  padding-right: 20px;
}
.product-description  {display: flex; gap: 25px;}
.product-description h3 { font-size: 24px; color:#AAAAAA; font-weight: 500; margin-bottom: 15px;}
.product-description p { margin-bottom: 10px; font-size: 16px; color:#333; }
.product-description div { width: 50%;}


/* styles.css */
.breadcrumbs { margin-bottom: 30px;
  font-family: 'Fira Sans', Arial, sans-serif;
  color: #333;
  font-size: 14px;
}

.breadcrumbs a {
  color: #BE1622;
  text-decoration: none;
}




.separator {
  margin: 0 5px;
  color: #666;
}
.separator svg {vertical-align: middle;}

.product-detail-gallery { position: relative; max-width: 660px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  background-color: #F5F5F5;
  padding: 30px;
  border-radius: 5px;
}

.tags { position: absolute; z-index: 10;
  top: 30px;
  left: 30px;
  display: flex;
  gap: 10px;
}



.main-image { display: flex;
  justify-content: center;
  align-items: center;
  width: 660px;
  height: 509px;
}

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

.thumbnails { position: absolute;
  bottom: 30px;
 left: 30px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.thumbnails img {
  background-color: #fff;
  width: 80px;
  height: 80px;
  object-fit: cover;
  border: 2px solid transparent;
  border-radius: 5px;
  cursor: pointer;
}

.thumbnails img.active {
  border: 2px solid   #BE1622; /* Выделение активной миниатюры */
}

.review-section { font-size: 14px;
  color: #333;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.rating {
  display: flex;
  align-items: center;
  gap: 10px;
}

.stars .star {
  width: 20px;
  height: 20px;
  fill: gold; /* Цвет звезд */
}

.reviews-count {
  font-size: 14px;
  color: #333;
}

.guarantee { font-size: 14px;
  color: #333;
  display: flex;
  align-items: center;
  gap: 10px;
}

.guarantee-icon {
  width: 20px;
  height: 20px;
}

.color-selector {
  margin-bottom: 25px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.visible-colors, .hidden-colors {
  display: flex;
  gap: 10px;
  align-items: center;
}

.color-block { border-radius: 5px;
  width: 35px;
  height: 35px;
  cursor: pointer;

}
.color-block:hover, .color-block.active {
border: 2px solid rgb(255, 255, 255); outline:2px solid #BE1622;}



.more-colors {
  color: #BE1622;
  text-decoration: underline dotted #BE1622 1px;
  text-underline-offset: 4px;
  font-size: 14px;
}


.product-price {
  display: flex;
  align-items: center;
  gap: 30px;
}

.quantity-selector {
  display: flex;
  align-items: center;
  gap: 5px;
}

.quantity-input {
  outline-color: #aaa;
  width: 60px;
  padding: 10px;
  text-align: center;
  border: 1px solid #EEEEEE;
  border-radius: 5px;
  font-size: 16px;
  background-color: #EEEEEE;
}
.review-guarantee {display: flex; gap: 30px; margin-bottom: 30px;}
.quantity-btn {
  width: 30px;
  height: 30px;
  background-color:#ffffff;
  color: #333;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 18px;
}



.price {
 
  font-size: 36px;
  font-weight: bold;
}
.price-unit { font-size: 16px;
  color: #AAAAAA;
  font-weight: 500;
}

.action-buttons {
  margin-top: 20px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.add-to-cart,
.consultation-button {justify-content: center;
  width: 250px;
  padding: 16px 20px;
  background-color: #BE1622;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
}

 .consultation-button {background-color: #F5F5F5; color: #333; }


 .product-characteristics { margin-top: 28px;
  max-width: 520px;
  
}

.visible-characteristics,
.hidden-characteristics {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 10px;
}

.characteristic {
  display: flex;
  align-items: center;
  gap: 10px;
}

.name {
  font-weight:400;
}

.value {
  text-align: right;
}

.dots {
  flex-grow: 1; /* Растягивает линию на всю доступную ширину */
  height: 15px;
  border-bottom: 1px dotted #D1D1D1;
}
.show-all {
  display: block;
  color: #BE1622;
  text-decoration: none;
  font-size: 16px;
  cursor: pointer;
}


.product-actions {
  display: flex;
  gap: 10px;
}

.action-button {
  color: #333;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 10px 20px;
  background-color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 14px;
}

.icon {
  width: 20px;
  height: 20px;
}


.product-info {
  margin-bottom: 50px;
  width: 386px;
  background-color: #fff;
  padding: 30px 20px 20px 20px;
  border-radius: 10px;
  border: 1px solid #EEEEEE;
  box-shadow: 0 15px 25px rgba(0, 0, 0, 0.1);
}
.right-buttons {display: flex; gap:15px;  margin-bottom: 25px;}
.cards {display: flex; justify-content: center;}
.product-info  .whatsapp-button { font-size: 14px;
  width: 280px;
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: #333;
  color: #fff;
  padding: 17px 20px;
  border-radius: 5px;
  cursor: pointer;
  justify-content: center;
}
.product-detail-wrap {display: flex;     justify-content: space-between; }
.product-info  .calc-button { font-size: 14px;
  
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: #F5F5F5;
  color: #fff;
  padding: 17px 20px;
  border-radius: 5px;
  cursor: pointer;
  justify-content: center;
}

.product-info .whatsapp-icon {
  width: 20px;
  height: 20px;
}

.availability { display:flex; gap: 10px;
  margin-top: 20px; 
  align-items:center;
}
.availability p { font-size: 14px;}

.status {

  margin-right: 10px;
}

.available { font-size: 14px;
  color: #28a745;
}

.delivery-options { font-size: 14px;
  margin-top: 20px;
}

.delivery-option { font-size: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.pickup-icon,
.courier-icon {
  width: 20px;
  height: 20px;
}




.footer {
  background-color: #333;
  color: white;
  padding: 40px 0;
}

.footer-logo img {
  height: 50px;
}

.footer-contact a {
  color: white;
  margin-right: 20px;
}

.footer-menu {
  display: flex;
  gap: 20px;
}

.menu-column {
  flex: 1;
}

.menu-column h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

.menu-column ul {
  list-style: none;
  padding: 0;
}

.menu-column li a {
  color: #aaa;
  text-decoration: none;
  display: block;
  margin-bottom: 5px;
}

.footer p {
  font-size: 14px;
}



footer { font-family: 'Fira Sans', sans-serif;
  background-color: #222;
  color: white;
  padding: 40px 0;
}

footer .container {
  max-width: 1665px;
  margin: 0 auto;
  padding: 0 20px;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}

/* === Блок 1: Логотип и контакты === */
.footer-logo-contact {
  max-width: 322px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footer-logo {
 
}

.contact-info {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
}

.contact-item i {
  font-size: 18px;
}

.contact-item a {
  text-decoration: none;
  color: white;
}

footer .social-links {
  display: flex;
  gap: 10px;
}

footer .social-links a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #333;
  color: white;
}

footer .social-links .whatsapp {
  background-color: #333;
  border-radius: 20px;
  padding: 0px 25px;
  width: auto;
  font-size: 14px;
  text-decoration: none;
}

footer .social-links .whatsapp img {
  margin-right: 8px;
}

/* === Блок 2: Каталог === */
.footer-catalog h3 {
  font-size: 18px;
  margin-bottom: 15px;
}

.catalog-columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.catalog-columns ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.catalog-columns li {
  margin-bottom: 8px;
}

.catalog-columns a {
  color: #aaa;
  text-decoration: none;
  font-size: 14px;
}

/* === Блок 3: Компания, Помощь, Информация === */
.footer-menus {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.menu-column h3 {
  font-size: 18px;
  margin-bottom: 15px;
}

.menu-column ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.menu-column li {
  margin-bottom: 8px;
}

.menu-column a {
  color: white;
  text-decoration: none;
  font-size: 14px;
}

/* === Нижняя часть footer === */
.footer-bottom {
  margin-top: 40px;
   display: flex;
   justify-content: space-between;
}

.footer-bottom a {color: white; }

.footer-bottom p {
  font-size: 12px;
  line-height: 1.6;
  color: #fff;

}



.map-wrap {  display: flex;  position: relative; 
	max-height: 636px;
     
      height: 100vh;}

    .map-container {
      width: 100%;
      height: 100%;
    }

    .info-container {
	height: calc(100% - 60px);
	border-radius: 5px;
	right: 30px;
    top: 30px;
	position:absolute; 
      width: 40%;
      padding: 26px 20px;
      background-color: #fff;
         box-shadow: 0 5px 15px rgb(0 0 0 / 16%);
      overflow-y: auto;
    }

    .region-selector {
      position: relative;
      margin-bottom: 20px;
      font-size: 24px;
    
	 color: #333333;
      cursor: pointer;
    }
	
	 .region-selector strong{ color: #BE1622; font-weight: 500;}

    .region-dropdown {
	
	    font-size: 16px;
    border-radius: 5px;
    display: none;
    position: absolute;
    top: 35px;
    left: 30%;


  background-color: white;
  border: 1px solid #ccc;
  list-style: none;
  padding: 0;
  margin: 0;
  z-index: 1000;
  min-width: 200px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

    .region-dropdown li {
      padding: 10px 15px;
      cursor: pointer;
    }

    .region-dropdown li:hover {
      background-color: #f0f0f0;
    }

    .location-list { 
	
	
	background: #F5F5F5;
      list-style: none;
	  border-radius: 5px;
     color: #666666;
	 font-size: 12px;
      margin: 0;
	  
	      padding: 20px 20px;
    }
	.location-list-wrap
	{
    height: calc(100% - 60px);
    /* height: -webkit-fill-available; */
	padding-right: 20px;
    overflow: auto;
    overflow-x: hidden;
	scrollbar-color:
	scrollbar-width:
	
	
	
} 



.location-list-wrap::-webkit-scrollbar {
width: 4px; /* Ширина вертикального скролла */
  
  }
  
  .location-list-wrap::-webkit-scrollbar-track {
  background: #EEEEEE;
      border: solid 3px transparent;

}

.location-list-wrap::-webkit-scrollbar-thumb {
  background-color: #AAA;
  border-radius: 5px;
  
     
  
}
.selected-region svg{  margin-bottom: 3px;}
    .location-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      
      border-bottom: 1px solid #ddd;
    }

    .location-item:last-child {
      border-bottom: none;
    }

    .location-details strong {
      display: block;
      margin-bottom: 5px;
	      font-size: 14px;
    font-weight: 400;
	color: #000000;
    }

    .location-button { width: 40px; height: 40px;
      background-color: #BE1622;
      color: white;
      border: none;
      padding: 6px 10px;
      border-radius: 5px;
      cursor: pointer;
	  padding-top: 5px;
    }

    @media (max-width: 768px) {
	
	.region-selector {font-size: 12px;}
	
      .map-wrap {
        flex-direction: column;
      }

      .map-container { 
        width: 100%;
        height: 50vh;
      }

      .info-container { position: unset;
        width: 100%;
        height: 50vh;
        overflow-y: auto;
      }
    }


    .documents-section, .map-stores {margin-bottom: 70px;}
