/* Стили для футера */
.rm-footer {
    background-color: rgb(93, 93, 93) !important;
    border-radius: 20px 20px 0 0 !important;
    margin-top: 40px !important;
    overflow: hidden !important;
    box-shadow: 0 -4px 10px rgba(0,0,0,0.15) !important;
}

/* Описание товаров Mitsushito */
.vrf-description {
    font-family: Arial, sans-serif;
    font-size: 16px;
    color: #595959;
    background: white;
    padding: 22px;
    line-height: 1.6;
}

.vrf-description p {
    color: #595959 !important;
}

.vrf-description h2,
.vrf-description h3,
.vrf-description strong {
    color: #e53935;
}

.vrf-description img {
    max-width: 100%;
    height: auto;
}

/* Адаптивная таблица характеристик — стиль Hopland */
.table-container {
    background: #f8fbff;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 2px 10px rgba(16, 61, 169, 0.10);
    margin: 30px 0;
    transition: box-shadow 0.3s ease;
    border: 1px solid #d9e7f7;
}

.table-container:hover {
    box-shadow: 0 0 15px rgba(16, 61, 169, 0.18);
}

.table-container table {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
    background: #ffffff;
}

.table-container th,
.table-container td {
    padding: 12px 20px;
    text-align: left;
    border: 1px solid #dbe7f3;
    font-size: 14px;
    vertical-align: middle;
    transition: background-color 0.3s ease;
}

.table-container th {
    background: linear-gradient(135deg, #103DA9, #0F4194);
    color: #ffffff;
    font-weight: bold;
    text-transform: uppercase;
}

.table-container tr:nth-child(even) {
    background-color: #f8fbff;
}

.table-container tr:nth-child(odd) {
    background-color: #ffffff;
}

.table-container tr:hover {
    background-color: #eef5ff;
}

.table-container td:first-child {
    font-weight: bold;
    color: #103DA9;
    width: 35%;
}

@media screen and (max-width: 768px) {
    .table-container {
        padding: 12px;
        overflow-x: auto;
    }

    .table-container table {
        min-width: 600px;
    }

    .table-container th,
    .table-container td {
        padding: 10px 14px;
        white-space: nowrap;
    }
}

/* ====== MOBILE FIX FOR MAIN PAGE TEXT ====== */
@media (max-width: 768px) {

  .product-full-description-dom365 {
    padding-left: 12px;
    padding-right: 12px;
    box-sizing: border-box;
  }

  .product-full-description-dom365 img {
    max-width: 100% !important;
    height: auto !important;
    float: none !important;
    display: block;
    margin: 10px auto !important;
  }

  .product-full-description-dom365 p,
  .product-full-description-dom365 li,
  .product-full-description-dom365 div {
    word-break: break-word;
    overflow-wrap: break-word;
  }

  .manufacturer-logo img {
    max-width: 220px !important;
  }

  h3.modtitle {
    font-size: 18px;
    line-height: 1.3;
    text-align: center;
  }

  ol {
    padding-left: 18px;
  }

}

/* ===== DOM365: fix main-page description overflow on mobile ===== */
@media (max-width: 768px) {

  /* 1) сам блок описания — делаем нормальные поля и запрещаем "уезжать" */
  .product-full-description-dom365,
  .home-desc-fix {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  /* 2) убираем bootstrap-отрицательные отступы, которые режут левый край */
  .product-full-description-dom365 .row,
  .home-desc-fix .row,
  .product-full-description-dom365 .module,
  .home-desc-fix .module,
  .product-full-description-dom365 .col-sm-12,
  .home-desc-fix .col-sm-12 {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* 3) главная причина “дыр” — justify. На мобилке делаем нормальное чтение */
  .product-full-description-dom365 p,
  .product-full-description-dom365 li,
  .home-desc-fix p,
  .home-desc-fix li {
    text-align: left !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    hyphens: auto;
  }

  /* 4) картинки — не могут расширять страницу */
  .product-full-description-dom365 img,
  .home-desc-fix img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  /* 5) списки — чтобы не упирались в край */
  .product-full-description-dom365 ol,
  .product-full-description-dom365 ul,
  .home-desc-fix ol,
  .home-desc-fix ul {
    padding-left: 20px !important;
  }
  
  /* === Hopland Lightbox (без конфликтов с шаблоном) === */

.hp-lightbox img{
  max-width:100%;
  height:auto;
  cursor: zoom-in;
  transition: opacity .2s ease;
}

/* overlay */
.hp-lightbox-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.85);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}

/* активное состояние */
.hp-lightbox-overlay.active{
  opacity: 1;
  pointer-events: auto;
}

/* увеличенное изображение */
.hp-lightbox-overlay img{
  max-width: 92vw;
  max-height: 92vh;
  cursor: zoom-out;
  box-shadow: 0 20px 60px rgba(0,0,0,.6);
  border-radius: 4px;
}
}


