/* Подвал редизайна. [2026-09-13] v1, [2026-09-28] v2
   Тёмная секция #0F4E5B из дизайн-системы, четыре смысловых блока.
   С 28.09 работает и на телефоне: раскладка в одну колонку. */

/* [2026-09-28] Раньше весь подвал жил в @media (min-width: 768px),
   и на телефоне вместо него показывался старый подвал темы.
   Обёртку сняли, телефонная раскладка — блоком в конце файла. */

  /* старый подвал темы уходит */
  body.dm-frame-on footer,
  body.dm-frame-on .footer,
  body.dm-frame-on #footer {
    display: none !important;
  }



  .dm-footer {
    background: #0F4E5B;
    color: #FFFFFF;
    margin-top: 48px;
  }

  .dm-footer-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 40px clamp(16px, 3vw, 40px);
    display: grid;
    grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(24px, 3vw, 48px);
    align-items: start;
  }

  .dm-footer h3 {
    margin: 0 0 16px;
    font-size: 17px;
    font-weight: 600;
    color: #FFFFFF;
  }

  /* разделы каталога с иконками */
  .dm-footer-cats-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px 20px;
  }

  .dm-footer-cats-grid a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 36px;
    padding: 0 8px;
    border-radius: 8px;
    font-size: 15px;
    color: rgba(255, 255, 255, .85);
    text-decoration: none;
  }

  .dm-footer-cats-grid a:hover {
    background: rgba(255, 255, 255, .08);
    color: #FFFFFF;
  }

  .dm-footer-cats-grid .dm-ico {
    color: #7FD3A0;
  }

  /* информационные ссылки */
  .dm-footer-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .dm-footer-links a {
    font-size: 15px;
    color: rgba(255, 255, 255, .85);
    text-decoration: none;
  }

  .dm-footer-links a:hover {
    color: #FFFFFF;
    text-decoration: underline;
  }


  /* полоса «Обслуживание клиентов»: во всю ширину подвала, над колонками */
  .dm-care {
    background: rgba(255, 255, 255, .06);
    border-bottom: 1px solid rgba(255, 255, 255, .15);
  }

  .dm-care-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 24px clamp(16px, 3vw, 40px);
  }

  .dm-care-title {
    display: block;
    margin: 0 0 16px;
    font-size: 17px;
    font-weight: 600;
    color: #FFFFFF;
  }

  .dm-care-grid {
    display: grid;
    /* часам нужно больше места: иначе «Вс-Чт 09:00-19:00» ломается пополам */
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr) minmax(260px, 1.3fr) minmax(0, 1fr);
    gap: clamp(16px, 2vw, 32px);
    align-items: start;
  }

  .dm-care-cell {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
  }

  .dm-care-cell.dm-footer-phone {
    flex-direction: row;
    align-items: center;
  }

  /* обслуживание клиентов, части внутри полосы */
  .dm-footer-phone {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #FFFFFF;
    text-decoration: none;
  }

  .dm-footer-phone > span {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
  }

  .dm-footer-phone-number {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: .2px;
  }

  .dm-footer-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(255, 255, 255, .7);
  }

  .dm-footer-wa {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 16px;
    border-radius: 8px;
    background: #25D366;
    color: #FFFFFF !important;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
  }

  .dm-footer-wa,
  .dm-footer-wa:hover,
  .dm-footer-wa:focus {
    font-weight: 500 !important;
    font-size: 15px !important;
  }

  .dm-footer-wa:hover {
    background: #1FB955;
  }

  .dm-footer-note {
    font-size: 13px;
    color: rgba(255, 255, 255, .6);
    line-height: 1.4;
  }

  .dm-footer-hours {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 15px;
    color: rgba(255, 255, 255, .85);
  }

  .dm-footer-hours span {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    white-space: nowrap;
  }

  .dm-footer-hours .dm-footer-label {
    white-space: normal;
  }

  .dm-footer-hours .dm-footer-label {
    justify-content: flex-start;
    margin-bottom: 4px;
  }

  .dm-footer-hours b {
    font-weight: 500;
    color: #FFFFFF;
    font-variant-numeric: tabular-nums;
  }

  .dm-footer-mail {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    color: #FFFFFF;
    text-decoration: none;
    word-break: break-all;
  }

  .dm-footer-mail:hover {
    color: #7FD3A0;
  }

  /* нижняя строка */
  .dm-footer-bottom {
    max-width: 1320px;
    margin: 0 auto;
    padding: 16px clamp(16px, 3vw, 40px);
    border-top: 1px solid rgba(255, 255, 255, .15);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 13px;
    color: rgba(255, 255, 255, .7);
  }

  .dm-footer-socials {
    display: flex;
    align-items: center;
    gap: 10px;
    order: -1;
  }

  .dm-footer-socials a {
    width: 36px;
    height: 36px;
    justify-content: center;
    border-radius: 8px;
    background: rgba(255, 255, 255, .08);
  }

  .dm-footer-socials a:hover {
    background: rgba(255, 255, 255, .16);
  }

  .dm-footer-socials .dm-footer-label {
    margin-inline-end: 6px;
  }

  .dm-footer-socials a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, .85);
    text-decoration: none;
  }

  .dm-footer-socials a:hover {
    color: #FFFFFF;
  }


@media (max-width: 767px) {
  /* телефонная раскладка: всё в одну колонку, поля уже */
  .dm-footer { margin-top: 24px; }

  .dm-footer-inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding: 28px 16px;
  }

  .dm-care-inner { padding: 20px 16px; }

  .dm-care-grid {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 18px;
  }

  /* [2026-09-28] Разделы каталога на телефоне — одним столбцом строками
     по 48 px: в две колонки длинные названия ломались на две-три строки
     и список читался кашей. */
  .dm-footer-cats-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  .dm-footer-cats-grid a {
    min-height: 48px;
    padding: 6px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    border-radius: 0;
  }

  .dm-footer-cats-grid a:last-child { border-bottom: 0; }

  /* информационные ссылки такими же строками */
  .dm-footer-links { gap: 0; }

  .dm-footer-links li { border-bottom: 1px solid rgba(255, 255, 255, .12); }

  .dm-footer-links li:last-child { border-bottom: 0; }

  .dm-footer-links a {
    display: flex;
    align-items: center;
    min-height: 48px;
  }

  /* заголовки колонок отбиваем от списка */
  .dm-footer h3 { margin-bottom: 8px; }

  /* нижняя строка: соцсети и знаки оплаты по центру, не вразнобой */
  .dm-footer-bottom { align-items: stretch; }

  .dm-footer-socials {
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
  }

  .dm-footer-legal {
    width: 100%;
    text-align: center;
    opacity: .75;
  }

  .dm-footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
  }

  /* [2026-09-28] Кегль подвала на телефоне: общий множитель сюда не
     доходит, у подвала свои размеры. */
  body.dm-frame-on .dm-footer,
  body.dm-frame-on .dm-footer a,
  body.dm-frame-on .dm-footer span,
  body.dm-frame-on .dm-footer p,
  body.dm-frame-on .dm-footer li { font-size: 16px; }

  body.dm-frame-on .dm-footer h3 { font-size: 19px; }

  body.dm-frame-on .dm-footer .dm-footer-note,
  body.dm-frame-on .dm-footer .dm-footer-label { font-size: 14px; }
}

/* Слева на экране висит кнопка доступности (занимает 65 px), справа плавающая
   кнопка связи. Нужный зазор считаем формулой: чем шире монитор, тем больше
   свободных полей даёт само центрирование, и добавка тает до нуля.
   Отступы физические: на иврите стороны остаются те же. */
@media (min-width: 768px) {
  .dm-care-inner,
  .dm-footer-inner,
  .dm-footer-bottom {
    padding-left: max(clamp(16px, 3vw, 40px), calc(84px - max(0px, (100vw - 1320px) / 2)));
    padding-right: max(clamp(16px, 3vw, 40px), calc(104px - max(0px, (100vw - 1320px) / 2)));
  }
}

/* Полоса обслуживания: на узком мониторе четыре ячейки в ряд не помещаются,
   и строка «Пт и предпраздничные 09:00-13:00» перестаёт влезать целиком.
   До 1200 px раскладываем её в две колонки по две ячейки. */
@media (min-width: 768px) and (max-width: 1199px) {
  .dm-care-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 20px;
  }
}


/* ==================================================================
   [2026-09-26] Способы оплаты в нижней строке подвала.
   Знаки одинаковой высоты, подпись слева — как у блока соцсетей.
   ================================================================== */

.dm-footer-pay {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.dm-footer-pay .dm-footer-label { margin-inline-end: 2px; }

.dm-pay-mark { display: inline-flex; line-height: 0; }

.dm-pay-mark svg { display: block; }

@media (max-width: 767px) {
  .dm-footer-pay { justify-content: center; }
}
