/* Общие правки удобства для всех страниц: контраст, размер кнопок, карточка товара на телефоне,
   свёрнутый каталог на главной и «Показать ещё» на странице объектов (см. kt-ux.js). */

/* Контраст: фирменный #0093dd на белом даёт 3,4:1, для мелкого текста нужно от 4,5:1.
   Кнопки и мелкие подписи — более тёмным синим, шапка и логотип остаются фирменного цвета. */
:root { --kt-ink-blue: #006a9e; --kt-btn-blue: #0077b3; --kt-btn-blue-hover: #005f8f; }
.btn-solid, .chip.is-active { background: var(--kt-btn-blue); border-color: var(--kt-btn-blue); }
.btn-solid:hover, .btn-solid:focus-visible { background: var(--kt-btn-blue-hover); border-color: var(--kt-btn-blue-hover); }
/* Простой селектор: тёмные блоки со своим цветом подписи (.hero .eyebrow и т. п.) его перебивают */
.eyebrow { color: var(--kt-ink-blue); }
.product .pack, .product .price, .product-grid a:not(.btn), .material-page a:not(.btn), .crumbs a, .cert-card a.cert-open, .calc-table .calc-group th { color: var(--kt-ink-blue); }
main p a:not(.btn), main li a:not(.btn), .related a { color: var(--kt-ink-blue); }

/* Видимая рамка фокуса для клавиатуры */
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #9ad6f5; outline-offset: 2px;
}

/* Размер нажатия на телефоне — не меньше 44 px */
@media (max-width: 800px) {
  .lang { gap: 3px; }
  .lang a { min-width: 34px; min-height: 40px; padding: 0 4px; display: inline-flex; align-items: center; justify-content: center; }
  .chip { min-height: 44px; }
  .product-actions .btn { min-height: 44px; }
  .product details > summary { padding: .8rem 0; }
  .request-close { width: 44px; height: 44px; }
}

/* Карточка товара на телефоне: название, назначение, цена и кнопка WhatsApp — первым экраном,
   потом фото, длинный текст и калькулятор */
@media (max-width: 800px) {
  .material-page .material-layout { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .material-page .material-layout h1 { margin: .3rem 0 .2rem; }
  .material-page .material-layout .facts { grid-template-columns: 1fr 1fr; margin: 12px 0; }
  .material-page .material-layout > div { display: contents; }
  .material-page .material-layout > *, .material-page .material-layout > div > * { order: 9; }
  .material-page .material-layout > div > .eyebrow { order: 1; }
  .material-page .material-layout > div > h1 { order: 2; }
  .material-page .material-layout > div > .aka { order: 3; }
  .material-page .material-layout > div > p.muted { order: 4; }
  .material-page .material-layout > div > .facts { order: 5; }
  .material-page .material-layout > div > .hero-cta { order: 6; margin-bottom: .8rem; }
  .material-page .material-layout > img { order: 7; max-height: 200px; width: 100%; object-fit: contain; margin-bottom: .8rem; }
}

/* Главная: пока не выбран раздел и нет поиска — только ходовые материалы */
#productGrid.kt-collapsed .product:not(.kt-pop) { display: none; }
.kt-more { display: flex; justify-content: center; margin: 1.2rem 0 0; }
.kt-more[hidden] { display: none; }

/* Цена за упаковку под ценой за кг */
.kt-pack-price { display: block; font-size: .8em; font-weight: 600; opacity: .85; margin-top: 2px; }

/* Главный экран: тот же фон, но WebP (на телефоне — уменьшенный), ссылка preload — в <head> главных */
.hero:not(.gidro-hero) {
  background-image: linear-gradient(105deg, #00466ef0 0%, #005a8ce0 36%, #005078b8 64%, #0823379e 100%),
    image-set(url(/images/hero-dam.webp) type("image/webp"), url(/images/hero-dam.jpg) type("image/jpeg"));
}
@media (max-width: 800px) {
  .hero:not(.gidro-hero) {
    background-image: linear-gradient(105deg, #00466ef0 0%, #005a8ce0 36%, #005078b8 64%, #0823379e 100%),
      image-set(url(/images/hero-dam-960.webp) type("image/webp"), url(/images/hero-dam.jpg) type("image/jpeg"));
  }
}

/* Меню: активный пункт темнее, чтобы белый текст читался (контраст 6:1) */
.nav a.is-active, .nav a[aria-current="page"], .lang a.is-active { background: #005f8f; border-color: #005f8f; }

/* Ссылка «к содержимому» для клавиатуры и экранного диктора — видна только при фокусе */
.kt-skip { position: absolute; left: 8px; top: -60px; z-index: 400; background: #fff; color: #00466e; padding: 10px 14px; border-radius: 8px; font-weight: 700; box-shadow: 0 4px 14px #0003; }
.kt-skip:focus { top: 8px; }

/* Телефон в шапке на телефоне: круглая кнопка рядом с языками */
.kt-call { display: none; }
@media (max-width: 800px) {
  .kt-call { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--kt-btn-blue); color: #fff; flex: none; }
  .kt-call svg { width: 20px; height: 20px; fill: currentColor; }
}
@media (max-width: 380px) {
  .header-top-in { gap: 6px; }
  .lang { gap: 2px; }
  .lang a { min-width: 30px; padding: 0 2px; }
  .kt-call { width: 38px; height: 38px; }
}
