body {
    background: #f6f6f7;
    font: Ubuntu, Arial, Helvetica, sans-serif !important;
}

li {
    list-style-type: none;
}

.main_content {
    padding: 0 24px;
    width: 1208px;
    margin: 0 auto;
    background: #fff;
    display: grid;
}

.content {
    min-height: 650px;
}

.top_menu {
    display: flex; /* блоки в строку */
    justify-content: space-between;
    align-items: center;
    gap: 20px; /* расстояние между пунктами */
    border-bottom: 1px solid #ccc; /* серая линия снизу */
    padding-top: 8px;
    padding-bottom: 8px;
}

.top_menu div,
.top_menu div a {
  color: #888888;
  text-decoration: none;
  font-size: 14px;
}

.phone {
  position: relative;
  padding-left: 40px;
  font-size: 20px !important;
}

.phone::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 35px;
  height: 35px;
  transform: translateY(-50%);
  background: url("../img/phone.svg") no-repeat center;
  background-size: contain;
}

.whatsapp {
  position: relative;
  padding-left: 40px;
  font-size: 20px !important;
}

.whatsapp::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 35px;
  height: 35px;
  transform: translateY(-50%);
  background: url("../img/whatsapp.svg") no-repeat center;
  background-size: contain;
}

.top_head {
    display: flex; /* блоки в строку */
    justify-content: space-between;
    align-items: center;
    gap: 20px; /* расстояние между пунктами */
    height: 90px;
}

.middle_menu {
    display: flex; /* блоки в строку */
    justify-content: space-between;
    align-items: center;
    background: #000000;
    height: 50px;
    color: #fff;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: bold;
    padding-left:20px;
    padding-right:120px;
}

.menu_categories a {
  color: #2f2f2f;
  text-decoration: none;
  font-size: 13px;
  background: #f9f9f9;
  position: relative;
}

.menu_categories {
    align-items: center;
    gap: 20px; /* расстояние между пунктами */
    padding-left: 0px;
}

.left_menu {
    width: 220px;
    float: left;
    position: relative;
    zoom: 1;
    z-index: 390;
    padding-top: 0;
}

.left_menu .menu_categories li {
    display: block;
    padding: 11px 0px 13px 10px;
    background: #f9f9f9;
    text-decoration: none;
    text-align: left;
    border-bottom: 1px solid #eaebec;
    border-left: 1px solid #eaebec;
    border-right: 1px solid #eaebec;
    line-height: 20px;
}

.brand_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.right_block ul{
    padding-left:0px;
}

.right_block a {
    color:black;
}

.brand_list li img {
    max-height: 100%;
    vertical-align: middle;
}

.brand_list li {
    display: inline-block;
    zoom: 1;
    vertical-align: top;
    width: 20%;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 0 10px 10px 0;
    text-align: center;
}

.photo_bottom {
    display: flex;
    gap: 10px;
    justify-content: center;
}

.photo_bottom img {
    width:280px;

}

.right_block {
    padding-top: 10px;
    margin-left: 248px;
    padding-bottom: 50px;
}

.footer {
    width: 1208px;
    margin: 0 auto;
    padding: 15px;
    color: #494949;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.breadcrumbs {
    padding-top:30px;
}

.product_title {
    font-size: 28px;
    font-weight: 600;
}

.product_content {
    margin: 20px 0 30px;
    padding: 0;
    border: 1px solid #eaebec;
    position: relative;
}

.product_photos {
    width: 50%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    float: left;
    position: relative;
    z-index: 1;
    text-align: center;
    width: 400px;
    float: left;
}

.product_photos img {
    max-width: 400px;
}

.product_brand img {
    max-height: 35px;
    padding-right: 30px;
}


.product_tabs {
    float: left;
    display: flex;
    border-bottom: 1px solid #ccc;
    width: 100%;
    margin-top: 25px;
}

.tab {
    padding: 10px 8px;
    cursor: pointer;
    border: 1px solid #ccc;
    border-bottom: none;
    margin-right: -1px;
    background-color: #f9f9f9;
    width: 100%;
    text-align: center;
    font-weight: bold;
}

.tab.active {
    background-color: #fff;
    font-weight: bold;
}

.table-container {
    /* border: 1px solid #ccc; */
    padding: 10px;
    background-color: #fff;
}

.table-container table {
    width: 100%;
    border-collapse: collapse;
}

.table-container td {
    padding: 5px;
    border-bottom: 1px solid #eee;
    text-align: right;
}

.table-container td:first-child {
    color: #555;
    text-align: left;
    width: 550px;
}

.category_items {
    display: flex;
    flex-wrap: wrap;             /* чтобы переносились на новую строку */
    gap: 10px;                   /* расстояние между элементами */
    justify-content: flex-start; /* прижимает блоки влево */
}

.category_item {
    cursor: pointer;
    width: 220px;             /* чтобы влезало 3 в ряд */
    height: 95px;
    display: flex;
    align-items: center;         /* вертикальное выравнивание */
    border: 1px solid #eaebec;
    box-sizing: border-box;
    padding: 10px;
    transition: box-shadow ease .2s, border ease-out .2s;
}

.category_item img {
    width: 70px;
    margin-right: 7px;
}

.category_item p {
    font-size: 14px;
    font-weight: 500;
    color: black;
    text-decoration: none;
    margin: 0;
    max-width: 180px;
}

.category_items a {
    text-decoration: none;
    color: inherit;
}

.product_item {
    cursor: pointer;
    max-width: 224px;
    display: inline-block;
    vertical-align: top;
    -webkit-box-sizing: border-box;
    line-height: 20px;
    font-size: 12px;
    padding: 5px;
    zoom: 1;
    vertical-align: top;
    border: 1px solid #dddddd;
    transition: box-shadow
    ease .2s, border
    ease-out .2s;
    margin-bottom: 4px;
    height: 340px;

}

.product_item img {
    height: 160px;
    float: left;
    padding: 5px;
}

.product_item p {
    font-size: 13px;
    font-weight: 500;
    padding: 8px 8px 0px 8px;
    text-align: center;
    text-decoration: none;
    color: black;
    max-height: 230px;
    line-height: 18px;
    margin-bottom: 0px;
}

.product_item p.name {
    height: 120px
}

.product_items a {
    text-decoration: none;
}

.product_item p.price {
    font-size: 18px;
    padding: 2px;
    margin: 0;
}


.stock_info {
    display: flex;
    justify-content: center;
}

.stock-icon {
    width: 16px;
    height: 16px;
    margin-top: 3px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 3px;
}

.stock-icon.ok {
    background-image: url("/static/main/img/ok.svg");
}

.stock-icon.low {
    background-image: url("/static/main/img/attention.svg");
}

.stock-icon.no {
    background-image: url("/static/main/img/error.svg"); /* крестик */
}

.product_item p.stock.ok {
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    font-size: 14px;
    color: Green;
    padding: 2px;
    margin: 0;
}

.product_item p.stock.low {
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    font-size: 14px;
    color: #ed9917;
    padding: 2px;
    margin: 0;
}

.product_item p.stock.no {
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    font-size: 14px;
    color: gray;
    padding: 2px;
    margin: 0;
}


.search-form {
    margin: 0;
    padding: 0;
    box-sizing: content-box;
    display: flex;
    justify-content: center;
    background-color: #eee;
    border-radius: 6px;
}

.search {
    padding: 10px 45px 9px 13px;
    background: transparent;
    border-color: transparent;
    height: 41px;
    font-size: 14px;
    color: #969696;
    padding: 10px 12px 9px 24px;
    width: 360px;
}

.button_icon {
    width: 41px;
    height: 41px;
    background-image: url("/static/main/img/magnifying-glass.svg");
    background-size: 25px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: transparent;
    border: 0;
}

.product_thumb_image {
    display: flex;
    justify-content: center;
}

.product_price {
    display: flex;
    justify-content: center;
}

.product_ruei_article {
    font-size: 18px;
    font-weight: 500;
}

.head_block {
    display: flex;
}

.product_info {
    margin: 25px 0px 0px 25px;
    display: flex;
    flex-direction: column;
}

.price_brand {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}

.product_price_card {
    padding: 20px 0px 20px 0px;
    font-size: 25px;
    font-weight: 500;
}

.product_info > div.stock_info {
    display: flex;
    justify-content: flex-start;
}

.product_info > div.stock_info > div.stock-icon {
    width: 30px;
    height: 30px;
    margin-top: 3px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 3px;
}

.product_info > div.stock_info > p {
    font-size: 23px;
    padding-left: 5px;
}

.product_info > div.stock_info > p.ok {
    color: Green;
}

.product_info > div.stock_info > p.no {
    color: gray;
}

.product_info > div.stock_info > p.low {
    color: #ed9917;
}

.gallery {
    display: flex;
    justify-content: space-evenly;
}

.gallery img {
    max-width: 80px;
    border: 1px solid #dddddd;;
}

.thumb-btn {
    border: 1px transparent;
    background: none;
}

.thumb-btn.active {
    border: 1px solid;
    background: none;
}

.main-image {
    cursor: pointer;
}

.brand_block {
    display: flex;
    flex-direction: column;
    height: 175px;

}

.brand_block img {
    width: 160px;
    height: 160px;
    object-fit: contain;
}

.brand_block p {
    margin-top: 10px;
}

.brand_block a {
    max-height:120px;

}

.bottom_desc {

    padding: 20px;

}


.characteristics_table {

    padding: 25px 0px;
}

.characteristics_table table{
    width: 100%;
}

.characteristics_table tr, .characteristics_table th, .characteristics_table td {
    border: 1px solid #afadad;
}

.characteristics_table thead{
    text-align: center;
}

.characteristics_table td{
    padding: 7px;
}



.cross_oem_table {

    padding: 25px 0px;
}

.cross_oem_table table{
    width: 100%;
}

.cross_oem_table tr, .cross_oem_table th, .cross_oem_table td {
    border: 1px solid #afadad;
}

.cross_oem_table thead{
    text-align: center;
}

.cross_oem_table td{
    padding: 7px;
}


.tab-content {
    display: none;
    margin: 25px 0px;
}
.tab-content.active {
    display: block;
    margin: 25px 0px;
}
.product_tabs .tab.active {
    background: #e0e0e0;
    font-weight: bold;
}

.cross_oem_table td {
    text-align: center;
}

.endblock {
    display: flex;
    text-align: center;
    font-size: 20px;
    padding-bottom: 40px;
    flex-direction: column;
    align-items: center;
}

.endblock p {
    margin: 0px;
    max-width:800px
}

.endblock p.org {
    font-size: 11px;
}

.black-button {
    display: inline-block;
    padding: 12px 24px;
    background-color: #000;
    color: #fff !important;
    text-decoration: none;
    border-radius: 6px;
    font-weight: 500;
}

.brand_link {
    margin: 16px 0px;
}

.brand_description {
    margin-bottom: 40px;
}

.image-modal { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; z-index: 1200; }
.image-modal.show { display: flex; }
.image-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.65); }
.image-modal__content { position: relative; max-width: 95%; max-height: 95%; z-index: 2; }
.image-modal__content img { display:block; max-width: 100%; max-height: 100vh; object-fit: contain; border-radius: 6px; }
.modal-close { position: absolute; top: -40px; right: 0; background: transparent; border: none; color: #fff; font-size: 24px; cursor: pointer; }