/* ============================================================
 * omegabc-premium.css v8.67 — ФИНАЛ
 * Палитра:
 *   --bg #f7f3ec | --surface #fff | --surface-alt #faf6ec
 *   --ink #1f1810 | --ink-mute #6e5e4a
 *   --bronze #8b6e2a | --bronze-deep #6e5520 | --bronze-soft #b08968
 *   --gold-pale #e8dfca | --silver #d4cfc1
 * ============================================================ */
:root {
  --omc-bg: #f7f3ec;
  --omc-surface: #ffffff;
  --omc-surface-alt: #faf6ec;
  --omc-ink: #1f1810;
  --omc-ink-mute: #6e5e4a;
  --omc-bronze: #8b6e2a;
  --omc-bronze-deep: #6e5520;
  --omc-bronze-soft: #b08968;
  --omc-gold-pale: #e8dfca;
  --omc-silver: #d4cfc1;
}

/* === BASE === */
html, body { background: var(--omc-bg) !important; color: var(--omc-ink) !important; }
body, body *:not(code):not(pre):not(kbd):not(samp):not(.ombc-tb-item b):not(.ombc-fp__copy) {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "Roboto", sans-serif !important;
  line-height: 1.6;
}

/* === LINKS — bronze ВЕЗДЕ === */
a, a:link, a:visited, .entry-content a, .widget a, nav a, footer a {
  color: var(--omc-bronze) !important;
  text-decoration: none !important;
  background: transparent !important;
}
a:hover, a:focus { color: var(--omc-bronze-deep) !important; }

/* Site title link — без bronze (это title, не link) */
.site-title a, .site-header h1 a, header a.site-title-link, .navbar-brand a {
  color: var(--omc-ink) !important;
  border-bottom: none !important;
}
.site-title a:hover { color: var(--omc-bronze) !important; }

/* === HEADER — light cream === */
.site-header, header.site-header, .navbar-default, .navbar {
  background: linear-gradient(180deg, var(--omc-bg), var(--omc-surface-alt)) !important;
  border-bottom: 1px solid var(--omc-silver) !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.02) !important;
}

/* === NAV menu — bronze hover === */
.navbar-nav > li > a, .menu a, .nav a {
  color: var(--omc-ink) !important;
  font-weight: 500 !important;
  letter-spacing: .3px !important;
  padding: 14px 18px !important;
  background: transparent !important;
  border-bottom: 2px solid transparent !important;
}
.navbar-nav > li > a:hover, .navbar-nav > li.active > a {
  color: var(--omc-bronze) !important;
  background: rgba(176,137,104,.06) !important;
  border-bottom-color: var(--omc-bronze-soft) !important;
}

/* === DROPDOWNS === */
.dropdown-menu, .sub-menu {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-top: 2px solid var(--omc-bronze-soft) !important;
  box-shadow: 0 8px 24px rgba(45,42,35,.08) !important;
  border-radius: 0 0 6px 6px !important;
}
.dropdown-menu > li > a {
  color: var(--omc-ink) !important;
  padding: 10px 18px !important;
  font-size: 13.5px !important;
}
.dropdown-menu > li > a:hover {
  background: var(--omc-surface-alt) !important;
  color: var(--omc-bronze) !important;
}

/* === HEADINGS === */
h1, h2, h3, h4, .entry-title, .page-title {
  color: var(--omc-ink) !important;
  font-weight: 700 !important;
  letter-spacing: -.2px !important;
}
.entry-title, h1.page-title {
  font-size: 28px !important;
  line-height: 1.25 !important;
  margin: 22px 0 18px !important;
  padding-bottom: 12px !important;
  border-bottom: 3px solid var(--omc-bronze-soft) !important;
  display: inline-block !important;
}
h2 { font-size: 22px !important; margin: 28px 0 14px !important; padding-bottom: 8px !important; border-bottom: 1px solid var(--omc-gold-pale) !important; }
h3 { font-size: 17px !important; margin: 20px 0 10px !important; color: var(--omc-bronze-deep) !important; }

/* === BREADCRUMBS === */
.breadcrumb, .wpsc-breadcrumbs, .rank-math-breadcrumb {
  background: transparent !important;
  font-size: 12.5px !important;
  color: var(--omc-ink-mute) !important;
  padding: 12px 0 !important;
  margin: 0 0 18px !important;
  border-bottom: 1px solid var(--omc-gold-pale) !important;
}

/* === KILL SIDEBAR на product/category/page === */
body.single-wpsc-product #secondary,
body.single-wpsc-product .col-md-4, body.single-wpsc-product .col-sm-4,
body.single-wpsc-product aside, body.single-wpsc-product .sidebar,
body.wpsc-product-template-default #secondary,
body.wpsc-product-template-default .col-md-4, body.wpsc-product-template-default .col-sm-4,
body.wpsc-product-template-default aside, body.wpsc-product-template-default .sidebar,
body.tax-wpsc_product_category #secondary, body.tax-wpsc_product_category .col-md-4,
body.tax-wpsc_product_category aside,
body.page-template-default #secondary, body.page-template-default .col-md-4,
body.page-template-default .col-sm-4, body.page-template-default aside.widget-area {
  display: none !important;
}
body.single-wpsc-product #primary, body.single-wpsc-product .col-md-8, body.single-wpsc-product .col-sm-8,
body.wpsc-product-template-default #primary, body.wpsc-product-template-default .col-md-8, body.wpsc-product-template-default .col-sm-8,
body.tax-wpsc_product_category #primary, body.tax-wpsc_product_category .col-md-8,
body.page-template-default #primary, body.page-template-default .col-md-8, body.page-template-default .col-sm-8 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  float: none !important;
  margin: 0 auto !important;
}

/* === CONTENT WRAPPER — premium card === */
body.single-wpsc-product .entry-content, body.single-wpsc-product .product_view,
body.page-template-default .entry-content {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 12px !important;
  padding: 32px 36px !important;
  box-shadow: 0 4px 18px rgba(45,42,35,.04) !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
}
@media (max-width: 720px) {
  body.single-wpsc-product .entry-content, body.page-template-default .entry-content {
    padding: 18px 16px !important;
  }
}

/* === LEGACY <table> в content (на product page) — block-flow === */
body.single-wpsc-product .entry-content table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]),
body.single-wpsc-product .product_description table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) {
  display: block !important;
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 0 0 20px !important;
}
body.single-wpsc-product .entry-content table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) tbody,
body.single-wpsc-product .entry-content table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) tr,
body.single-wpsc-product .product_description table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) tbody,
body.single-wpsc-product .product_description table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) tr {
  display: block !important; width: 100% !important; border: 0 !important;
}
body.single-wpsc-product .entry-content table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) td,
body.single-wpsc-product .product_description table:not(.wp-block-table):not(.ombc-specs):not([class*="wpsc"]) td {
  display: block !important; width: 100% !important; max-width: 100% !important;
  padding: 0 0 12px 0 !important; border: 0 !important; background: transparent !important;
  word-break: normal !important; word-wrap: break-word !important; overflow-wrap: break-word !important;
  font-size: 15px !important; line-height: 1.65 !important; color: var(--omc-ink) !important;
}

/* === TECHNICAL SPECS table — премиум zebra striping === */
body.single-wpsc-product .entry-content table.ombc-specs,
body.single-wpsc-product .entry-content table:not(.wp-block-table):not([class*="wpsc"]):has(tr:nth-child(5)),
body.single-wpsc-product h2 + p + table,
body.single-wpsc-product h2 + table {
  display: table !important;
  width: 100% !important;
  table-layout: auto !important;
  border-collapse: collapse !important;
  border: none !important;
  margin: 14px 0 26px !important;
  background: transparent !important;
}
body.single-wpsc-product .entry-content table.ombc-specs tr,
body.single-wpsc-product h2 + table tr {
  display: table-row !important;
}
body.single-wpsc-product .entry-content table.ombc-specs td,
body.single-wpsc-product h2 + table td {
  display: table-cell !important;
  padding: 12px 18px !important;
  border: none !important;
  border-bottom: 1px solid var(--omc-gold-pale) !important;
  font-size: 14.5px !important;
  line-height: 1.5 !important;
  vertical-align: top !important;
  width: auto !important;
}
body.single-wpsc-product .entry-content table.ombc-specs tr:nth-child(odd) td,
body.single-wpsc-product h2 + table tr:nth-child(odd) td {
  background: var(--omc-surface-alt) !important;
}
body.single-wpsc-product .entry-content table.ombc-specs tr:nth-child(even) td,
body.single-wpsc-product h2 + table tr:nth-child(even) td {
  background: transparent !important;
}
body.single-wpsc-product .entry-content table.ombc-specs td:first-child,
body.single-wpsc-product h2 + table td:first-child {
  font-weight: 600 !important;
  color: var(--omc-ink-mute) !important;
  width: 38% !important;
  white-space: normal !important;
}
body.single-wpsc-product .entry-content table.ombc-specs td:last-child,
body.single-wpsc-product h2 + table td:last-child {
  color: var(--omc-ink) !important;
}

/* === Bullet lists premium === */
.entry-content ul li, .entry-content ol li {
  padding: 4px 0 !important;
  line-height: 1.65 !important;
  color: var(--omc-ink) !important;
}
.entry-content ul li::marker { color: var(--omc-bronze) !important; }

/* === IMAGES — premium с soft shadow === */
body.single-wpsc-product .entry-content img,
body.page-template-default .entry-content img {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 8px !important;
  box-shadow: 0 6px 18px rgba(45,42,35,.10) !important;
  margin: 16px auto !important;
  display: block !important;
}

/* === EMAIL BUTTON === */
.ombc-email-btn, a.ombc-email-btn {
  display: flex !important;
  width: 100% !important;
  max-width: 380px !important;
  margin: 24px auto 0 !important;
  padding: 14px 24px !important;
  background: linear-gradient(180deg, var(--omc-bronze) 0%, var(--omc-bronze-deep) 100%) !important;
  color: #fff !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: .4px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  box-shadow: 0 4px 14px rgba(139,110,42,.20) !important;
  transition: all .2s !important;
}
.ombc-email-btn:hover {
  background: linear-gradient(180deg, var(--omc-bronze-deep) 0%, #523f17 100%) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 22px rgba(139,110,42,.32) !important;
  color: #fff !important;
}

/* === FOOTER — light cream + bronze accents === */
.ombc-footer-v8 {
  background: linear-gradient(180deg, var(--omc-surface-alt) 0%, var(--omc-bg) 100%) !important;
  color: var(--omc-ink) !important;
  border-top: 3px solid var(--omc-bronze-soft) !important;
  margin-top: 60px !important;
  padding: 56px 0 28px !important;
}
.ombc-footer-v8 .ombc-brand { color: var(--omc-ink) !important; font-weight: 700 !important; }
.ombc-footer-v8 .ombc-desc { color: var(--omc-ink-mute) !important; }
.ombc-footer-v8 .ombc-hdr {
  color: var(--omc-bronze) !important;
  border-bottom-color: rgba(176,137,104,.30) !important;
}
.ombc-footer-v8 .ombc-sub { color: var(--omc-bronze-soft) !important; }
.ombc-footer-v8 .ombc-link { color: var(--omc-ink) !important; }
.ombc-footer-v8 .ombc-link:hover { color: var(--omc-bronze-deep) !important; }
.ombc-footer-v8 .ombc-list { color: var(--omc-ink-mute) !important; }
.ombc-footer-v8 .ombc-flags {
  border-color: rgba(176,137,104,.20) !important;
}
.ombc-footer-v8 .ombc-flag-txt strong { color: var(--omc-bronze) !important; }
.ombc-footer-v8 .ombc-flag-txt span { color: var(--omc-ink-mute) !important; }
.ombc-footer-v8 .ombc-flag-tag {
  color: var(--omc-bronze) !important;
  border-color: rgba(176,137,104,.30) !important;
  background: rgba(176,137,104,.05) !important;
}
.ombc-footer-v8 .ombc-flag-item img,
.ombc-footer-v8 .ombc-flag-item svg {
  box-shadow: 0 0 0 1px rgba(176,137,104,.20) !important;
}
.ombc-footer-v8 .ombc-bottom { color: var(--omc-ink-mute) !important; }
.ombc-footer-v8 .ombc-bottom a { color: var(--omc-bronze) !important; }
.ombc-footer-v8 .ombc-fz { color: rgba(110,94,74,.7) !important; }

/* === FLOATING PANEL — light premium === */
.ombc-fp {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-right: 0 !important;
  width: 200px !important;
  top: 160px !important;
  box-shadow: -4px 4px 18px rgba(45,42,35,.12) !important;
}
.ombc-fp__email { color: var(--omc-bronze-deep) !important; }
.ombc-fp__copy {
  background: var(--omc-bronze) !important;
  color: #fff !important;
}
.ombc-fp__copy:hover { background: var(--omc-bronze-deep) !important; }
.ombc-fp__note {
  color: var(--omc-ink-mute) !important;
  white-space: normal !important;
  font-size: 10px !important;
}

/* === HIDE BROKEN IMAGES (CSS fallback) === */
img[alt]:not([src]),
img[src=""],
img[src="undefined"],
img[src="#"] { display: none !important; }

/* === KILL bootstrap blue === */
.btn-info, .btn-primary { background: var(--omc-bronze) !important; border-color: var(--omc-bronze-deep) !important; color: #fff !important; }
.btn-info:hover, .btn-primary:hover { background: var(--omc-bronze-deep) !important; }
.text-primary, .text-info { color: var(--omc-bronze) !important; }
.bg-primary, .bg-info, .label-primary, .label-info { background: var(--omc-bronze) !important; }

/* === SELECTION === */
::selection { background: var(--omc-bronze-soft) !important; color: #fff !important; }

/* === FOCUS RING === */
*:focus-visible {
  outline: 2px solid var(--omc-bronze-soft) !important;
  outline-offset: 2px !important;
}

/* === FORMS === */
input[type="text"], input[type="search"], input[type="email"], textarea {
  border: 1px solid var(--omc-silver) !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  background: #fff !important;
  color: var(--omc-ink) !important;
  font-size: 14px !important;
}
input:focus {
  border-color: var(--omc-bronze-soft) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(176,137,104,.12) !important;
}

/* === v8.68: kill broken external images === */
/* Все http:// (не https) — устаревшие/broken */
.entry-content img[src^="http://"],
.product_description img[src^="http://"],
.entry-content img[src*="samyung-russia"],
.entry-content img[src*="samyung.ru"],
.product_description img[src*="samyung-russia"],
.entry-content img[src*="//images."],
.entry-content img[src=""],
.entry-content img:not([src]) {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
}

/* Также скрыть alt-text внутри empty/broken images фрейма */
.entry-content img[src^="http://"]::before,
.entry-content img[src^="http://"]::after { content: none !important; display: none !important; }

/* === Grid для категорий — карточки в 2-3 колонки === */
body.tax-wpsc_product_category .entry-content {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 24px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 100% !important;
}
body.tax-wpsc_product_category .entry-content > article,
body.tax-wpsc_product_category .product_grid_view,
body.tax-wpsc_product_category .wpsc_categorization {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 18px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .25s !important;
}
body.tax-wpsc_product_category .entry-content > article:hover,
body.tax-wpsc_product_category .product_grid_view:hover {
  border-color: var(--omc-bronze-soft) !important;
  box-shadow: 0 8px 20px rgba(139,110,42,.10) !important;
  transform: translateY(-2px) !important;
}

/* Page-template (компании, услуги и т.п.) — multi-card grid */
body.page-template-default.has-cards .entry-content > article {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 22px !important;
  margin: 0 0 22px !important;
}

/* === v8.68: kill broken external images === */
/* Все http:// (не https) — устаревшие/broken */
.entry-content img[src^="http://"],
.product_description img[src^="http://"],
.entry-content img[src*="samyung-russia"],
.entry-content img[src*="samyung.ru"],
.product_description img[src*="samyung-russia"],
.entry-content img[src*="//images."],
.entry-content img[src=""],
.entry-content img:not([src]) {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
}

/* Также скрыть alt-text внутри empty/broken images фрейма */
.entry-content img[src^="http://"]::before,
.entry-content img[src^="http://"]::after { content: none !important; display: none !important; }

/* === Grid для категорий — карточки в 2-3 колонки === */
body.tax-wpsc_product_category .entry-content {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 24px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 100% !important;
}
body.tax-wpsc_product_category .entry-content > article,
body.tax-wpsc_product_category .product_grid_view,
body.tax-wpsc_product_category .wpsc_categorization {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 18px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .25s !important;
}
body.tax-wpsc_product_category .entry-content > article:hover,
body.tax-wpsc_product_category .product_grid_view:hover {
  border-color: var(--omc-bronze-soft) !important;
  box-shadow: 0 8px 20px rgba(139,110,42,.10) !important;
  transform: translateY(-2px) !important;
}

/* Page-template (компании, услуги и т.п.) — multi-card grid */
body.page-template-default.has-cards .entry-content > article {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 22px !important;
  margin: 0 0 22px !important;
}

/* ============================================================
 * v8.70 — header full-width + category grid + жёсткие broken-img
 * ============================================================ */

/* === HEADER full-width (как footer) === */
.site-header, header.site-header,
.site-header.text-center,
.cyber-page-header,
.site-branding, .site-title-wrap, .site-header .header-wrap {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.site-header > .container,
.site-header > div:first-child,
.site-header .header-inner,
header > .container {
  max-width: 1400px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 14px 24px !important;
}
/* Site title centered, без max-width constraint */
.site-title, .site-header h1, .site-branding {
  max-width: none !important;
  width: auto !important;
  text-align: center !important;
}

/* === KILL BROKEN external images по ALT-паттернам (не словили по src) === */
.entry-content img[alt*="БОП"],
.entry-content img[alt*="КВУ"],
.entry-content img[alt*="(КП)"],
.entry-content img[alt*="средства защиты"],
.entry-content img[alt*="Одобрение"],
.entry-content img[alt*="Одежда пожарного"],
.entry-content img[alt*="Регистра"],
.entry-content img[src*="samyung"],
.entry-content img[src*="//www."],
.product_description img[alt*="БОП"],
.product_description img[alt*="КВУ"],
.product_description img[alt*="средства защиты"],
.product_description img[src*="samyung"],
.product_description img[src*="//www."] {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  border: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  position: absolute !important;
  left: -9999px !important;
}

/* === CATEGORY pages — GRID === */
body.tax-wpsc_product_category .entry-content {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 1400px !important;
}
body.tax-wpsc_product_category .product_view,
body.tax-wpsc_product_category .default_product_display,
body.tax-wpsc_product_category .wpsc_categorization_grid,
body.tax-wpsc_product_category .products,
body.tax-wpsc_product_category #default_products_page_container,
body.tax-wpsc_product_category .single_product_display {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.tax-wpsc_product_category .product_view > *,
body.tax-wpsc_product_category .default_product_display > *,
body.tax-wpsc_product_category .single_product_display > .productdisplay,
body.tax-wpsc_product_category .productcol {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 16px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .2s !important;
  margin: 0 !important;
}
body.tax-wpsc_product_category .product_view > *:hover {
  border-color: var(--omc-bronze-soft) !important;
  box-shadow: 0 8px 18px rgba(139,110,42,.10) !important;
  transform: translateY(-2px) !important;
}

/* Заголовок товара в карточке — компактный bronze */
body.tax-wpsc_product_category .producttitle,
body.tax-wpsc_product_category .producttitle a,
body.tax-wpsc_product_category h2.producttitle {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--omc-ink) !important;
  margin: 8px 0 6px !important;
  line-height: 1.3 !important;
}
body.tax-wpsc_product_category .producttitle a:hover { color: var(--omc-bronze) !important; }
body.tax-wpsc_product_category .product_image img {
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto !important;
  border-radius: 6px !important;
}
body.tax-wpsc_product_category .more-link, body.tax-wpsc_product_category a.more-link {
  display: inline-block !important;
  background: var(--omc-bronze) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 8px 16px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .6px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-top: 10px !important;
}
body.tax-wpsc_product_category .more-link:hover { background: var(--omc-bronze-deep) !important; color: #fff !important; }
body.tax-wpsc_product_category .more-link::after { content: " →" !important; }

/* Description в карточке — компактнее */
body.tax-wpsc_product_category .product_description,
body.tax-wpsc_product_category .productdescription {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: var(--omc-ink-mute) !important;
  max-height: 5.4em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
}

/* ============================================================
 * v8.71 — full-width container + grid категорий
 * ============================================================ */

/* === EXPAND container до 1400px на ВСЕХ страницах === */
.container, body .container {
  max-width: 1400px !important;
  width: 100% !important;
}

/* === KILL bootstrap col-sm-4 sidebar ВЕЗДЕ === */
body .col-sm-4, body aside.col-sm-4, body .col-md-4, body aside.col-md-4 {
  display: none !important;
}
body main.col-sm-8, body .col-sm-8, body main.col-md-8, body .col-md-8 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  float: none !important;
}

/* === CATEGORY GRID через main.col-sm-8 === */
body.archive.tax-wpsc_product_category main.col-sm-8,
body.tax-wpsc_product_category main.col-sm-8,
body.archive.wpsc-category main.col-sm-8 {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 24px !important;
  padding: 20px 0 !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article,
body.tax-wpsc_product_category main.col-sm-8 > article {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 18px !important;
  margin: 0 !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .25s !important;
  width: auto !important;
  max-width: none !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article:hover {
  border-color: var(--omc-bronze-soft) !important;
  box-shadow: 0 8px 20px rgba(139,110,42,.10) !important;
  transform: translateY(-3px) !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article .entry-content {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  max-width: 100% !important;
  margin: 0 !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article .entry-title,
body.archive.tax-wpsc_product_category main.col-sm-8 > article h1,
body.archive.tax-wpsc_product_category main.col-sm-8 > article h2 {
  font-size: 14.5px !important;
  margin: 8px 0 8px !important;
  padding-bottom: 6px !important;
  border-bottom: 1px solid var(--omc-gold-pale) !important;
  display: block !important;
  line-height: 1.35 !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article .entry-title a,
body.archive.tax-wpsc_product_category main.col-sm-8 > article h1 a,
body.archive.tax-wpsc_product_category main.col-sm-8 > article h2 a {
  color: var(--omc-ink) !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article .entry-title a:hover {
  color: var(--omc-bronze) !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article img {
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto 12px !important;
  border-radius: 6px !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article p,
body.archive.tax-wpsc_product_category main.col-sm-8 > article .product_description {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: var(--omc-ink-mute) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article a.more-link,
body.archive.tax-wpsc_product_category main.col-sm-8 > article .more-link {
  display: inline-block !important;
  background: var(--omc-bronze) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 8px 14px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-top: 10px !important;
}
body.archive.tax-wpsc_product_category main.col-sm-8 > article a.more-link:hover {
  background: var(--omc-bronze-deep) !important;
  color: #fff !important;
}

/* === Single product / page tax-wpsc — wrapper тоже full-width === */
body.single-wpsc-product main.col-sm-8 .entry-content,
body.page-template-default main.col-sm-8 .entry-content {
  max-width: none !important;
  width: 100% !important;
}

/* === HEADER full-width — еще раз с большей специфичностью === */
.site-header.text-center, header.site-header.text-center,
.site-header > div, .site-header.text-center > div {
  max-width: none !important;
  width: 100% !important;
}
.site-header.text-center > .container,
.site-header > .container {
  max-width: 1400px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 14px 24px !important;
}

/* === BREADCRUMB на category — за рамками carda === */
body.archive.tax-wpsc_product_category .wpsc-breadcrumbs,
body.archive.tax-wpsc_product_category .breadcrumb {
  grid-column: 1 / -1 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 8px 0 16px !important;
  margin-bottom: 8px !important;
  font-size: 12.5px !important;
}

/* === Page heading на category — выше grid === */
body.archive.tax-wpsc_product_category h1.page-title,
body.archive.tax-wpsc_product_category .archive-title {
  grid-column: 1 / -1 !important;
}

/* ============================================================
 * v8.72 — точный grid на .wpsc_default_product_list
 * ============================================================ */

/* === Container на category page → full-width === */
body.archive.tax-wpsc_product_category .container,
body.archive.wpsc-category .container,
body.archive .container {
  max-width: 1400px !important;
  width: 100% !important;
  padding: 0 24px !important;
}
body.archive main.col-sm-8,
body.archive .col-sm-8 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}
body.archive .row { display: block !important; }

/* === Entry-content card стиль на category — без padding/border (карточки сами становятся cards) === */
body.archive.tax-wpsc_product_category .entry-content {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 1400px !important;
  margin: 0 auto !important;
}

/* === Container default_products_page_container — full width === */
body.archive #default_products_page_container,
.wpsc_default_products_page_container {
  width: 100% !important;
  max-width: 100% !important;
}

/* === GRID на .wpsc_default_product_list (5 children = товары) === */
body.archive .wpsc_default_product_list,
.wpsc_default_product_list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 24px !important;
  padding: 20px 0 !important;
  list-style: none !important;
  margin: 0 !important;
}

/* === Карточка товара в grid — каждый child .wpsc_default_product_list === */
.wpsc_default_product_list > * {
  background: var(--omc-surface) !important;
  border: 1px solid var(--omc-silver) !important;
  border-radius: 10px !important;
  padding: 18px !important;
  margin: 0 !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .25s !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  list-style: none !important;
}
.wpsc_default_product_list > *:hover {
  border-color: var(--omc-bronze-soft) !important;
  box-shadow: 0 8px 20px rgba(139,110,42,.10) !important;
  transform: translateY(-3px) !important;
}

/* Заголовки карточек — как clickable links */
.wpsc_default_product_list .wpsc_product_title,
.wpsc_default_product_list h2,
.wpsc_default_product_list h3,
.wpsc_default_product_list .producttitle {
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: var(--omc-ink) !important;
  margin: 0 0 6px !important;
  padding: 0 0 8px !important;
  border-bottom: 1px solid var(--omc-gold-pale) !important;
  line-height: 1.35 !important;
  display: block !important;
}
.wpsc_default_product_list a {
  color: var(--omc-ink) !important;
}
.wpsc_default_product_list a:hover {
  color: var(--omc-bronze) !important;
}

/* Картинка в карточке — нормально центрирована */
.wpsc_default_product_list img {
  max-width: 100% !important;
  width: auto !important;
  height: auto !important;
  max-height: 180px !important;
  display: block !important;
  margin: 0 auto !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 6px rgba(45,42,35,.06) !important;
}

/* Описание — обрезается до 4 строк */
.wpsc_default_product_list .product_description,
.wpsc_default_product_list p,
.wpsc_default_product_list .productdescription {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: var(--omc-ink-mute) !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* "Read the rest" → bronze button */
.wpsc_default_product_list .more-link,
.wpsc_default_product_list a.more-link {
  display: inline-block !important;
  background: var(--omc-bronze) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 8px 14px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-top: auto !important;
  align-self: flex-start !important;
}
.wpsc_default_product_list .more-link:hover {
  background: var(--omc-bronze-deep) !important;
  color: #fff !important;
}
.wpsc_default_product_list .more-link::after { content: " →" !important; }

/* Breadcrumbs/page-numbers — full-width above grid */
body.archive .wpsc-breadcrumbs,
body.archive .wpsc_category_details,
body.archive .wpsc_page_numbers_top,
body.archive .wpsc_page_numbers_bottom {
  background: transparent !important;
  padding: 8px 0 !important;
  margin-bottom: 8px !important;
  border-bottom: 1px solid var(--omc-gold-pale) !important;
  font-size: 12.5px !important;
  color: var(--omc-ink-mute) !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Hide fancy_notification (loading spinner div) */
#fancy_notification { display: none !important; }

/* ============================================================
 * v8.74 — responsive grid: 2 cols on narrow, 3-4 on wide
 * ============================================================ */
.wpsc_default_product_list {
  display: grid !important;
  gap: 16px !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
}
@media (min-width: 600px) {
  .wpsc_default_product_list { grid-template-columns: repeat(2, 1fr) !important; gap: 20px !important; }
}
@media (min-width: 900px) {
  .wpsc_default_product_list { grid-template-columns: repeat(3, 1fr) !important; gap: 22px !important; }
}
@media (min-width: 1200px) {
  .wpsc_default_product_list { grid-template-columns: repeat(4, 1fr) !important; gap: 24px !important; }
}

/* Также даём контейнеру больше места — убираем bootstrap padding */
body.archive .container, body.archive.tax-wpsc_product_category .container {
  padding-left: 16px !important;
  padding-right: 16px !important;
}
/* Card внутри сетки — компактнее */
.wpsc_default_product_list > * {
  padding: 14px !important;
  gap: 8px !important;
}
.wpsc_default_product_list img {
  max-height: 130px !important;
}

/* ============================================================
 * v8.76 — KILL nested grids — оставляем grid ТОЛЬКО на product list
 * ============================================================ */
html body main.col-sm-8,
html body main.col-md-8,
html body .col-sm-8,
html body .col-md-8,
html body article.wpsc-product,
html body article.post,
html body .entry-content,
html body #default_products_page_container,
html body .wrap.wpsc_container,
html body .wpsc_container,
html body .row,
html body .container {
  display: block !important;
}

/* GRID ТОЛЬКО на product list */
html body .wpsc_default_product_list {
  display: grid !important;
  width: 100% !important;
  max-width: 100% !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 18px !important;
  padding: 16px 0 !important;
  margin: 0 !important;
  list-style: none !important;
}
@media (min-width: 1100px) {
  html body .wpsc_default_product_list { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (min-width: 800px) and (max-width: 1099px) {
  html body .wpsc_default_product_list { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 500px) and (max-width: 799px) {
  html body .wpsc_default_product_list { grid-template-columns: repeat(2, 1fr) !important; }
}

/* Cards layout — flex column */
html body .wpsc_default_product_list > .default_product_display,
html body .wpsc_default_product_list > * {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  background: #fff !important;
  border: 1px solid #d4cfc1 !important;
  border-radius: 10px !important;
  padding: 14px !important;
  margin: 0 !important;
  list-style: none !important;
  width: auto !important;
  max-width: none !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .2s !important;
}
html body .wpsc_default_product_list > *:hover {
  border-color: #b08968 !important;
  box-shadow: 0 8px 20px rgba(139,110,42,.12) !important;
  transform: translateY(-2px) !important;
}

/* ============================================================
 * v8.77 — clean equal-height product cards
 * ============================================================ */

/* Card itself = flex column, all cards equal height in row */
html body .wpsc_default_product_list {
  align-items: stretch !important;
}
html body .wpsc_default_product_list > * {
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
  border: 1px solid #d4cfc1 !important;
  border-radius: 10px !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: all .25s ease !important;
  min-height: 380px !important;
}
html body .wpsc_default_product_list > *:hover {
  border-color: #b08968 !important;
  box-shadow: 0 8px 22px rgba(139,110,42,.14) !important;
  transform: translateY(-3px) !important;
}

/* Title block (h2.prodtitle) — фикс header */
html body .wpsc_default_product_list .prodtitle,
html body .wpsc_default_product_list h2.prodtitle,
html body .wpsc_default_product_list h2.entry-title {
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: #1f1810 !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  background: #faf6ec !important;
  border-bottom: 1px solid #e8dfca !important;
  border-radius: 0 !important;
  /* Clamp до 2 строк */
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 50px !important;
  flex: 0 0 auto !important;
}
html body .wpsc_default_product_list .prodtitle a {
  color: #1f1810 !important;
  text-decoration: none !important;
}
html body .wpsc_default_product_list .prodtitle a:hover {
  color: #8b6e2a !important;
}

/* Image column — фиксированная высота 160px */
html body .wpsc_default_product_list .imagecol {
  height: 160px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px !important;
  background: #fff !important;
  border-bottom: 1px solid #f0e9d6 !important;
  flex: 0 0 160px !important;
  margin: 0 !important;
}
html body .wpsc_default_product_list .imagecol img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Product col (внутреннее содержимое) — flex grow для прижатия кнопки к низу */
html body .wpsc_default_product_list .productcol {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  padding: 12px 14px !important;
  flex: 1 1 auto !important;
  background: #fff !important;
  margin: 0 !important;
}

/* HIDE дубль title внутри productcol (в начале productcol часто h1/h2/h3 копия) */
html body .wpsc_default_product_list .productcol > h1:first-child,
html body .wpsc_default_product_list .productcol > h2:first-child,
html body .wpsc_default_product_list .productcol > h3:first-child,
html body .wpsc_default_product_list .productcol > p:first-child > strong:only-child,
html body .wpsc_default_product_list .productcol > .productname,
html body .wpsc_default_product_list .productcol > .product_title {
  display: none !important;
}

/* Description — clamp 3 строки */
html body .wpsc_default_product_list .productcol p,
html body .wpsc_default_product_list .productcol .product_description,
html body .wpsc_default_product_list .productcol .productdescription {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: #6e5e4a !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
}

/* Button — прижат к низу */
html body .wpsc_default_product_list .productcol .more-link,
html body .wpsc_default_product_list .productcol a.more-link,
html body .wpsc_default_product_list .more-link {
  display: inline-block !important;
  background: #8b6e2a !important;
  color: #fff !important;
  border: 0 !important;
  padding: 8px 14px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-top: auto !important;
  align-self: flex-start !important;
}
html body .wpsc_default_product_list .productcol .more-link:hover {
  background: #6e5520 !important;
  color: #fff !important;
}
html body .wpsc_default_product_list .productcol .more-link::after {
  content: " →" !important;
}

/* ============================================================
 * v8.78 — hero image constrained to same width as content
 * ============================================================ */
html body #site-header,
html body div#site-header,
html body .site-header-image-wrap {
  max-width: 1400px !important;
  margin: 0 auto !important;
  padding: 0 16px !important;
  width: 100% !important;
  display: block !important;
  background: transparent !important;
  text-align: center !important;
}
html body #site-header > a,
html body #site-header a:has(> img.main-image),
html body #site-header > .header-image,
html body img.main-image,
html body .main-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
html body img.main-image {
  height: auto !important;
  box-shadow: 0 4px 16px rgba(45,42,35,.10) !important;
}

/* ============================================================
 * v8.79 — компактнее cards (refine)
 * ============================================================ */

/* Меньше container max → tighter feel */
html body .container, html body div.container {
  max-width: 1280px !important;
}

/* Cards — компактнее */
html body .wpsc_default_product_list {
  gap: 16px !important;
}
html body .wpsc_default_product_list > * {
  min-height: 340px !important;
}

/* Title — чуть меньше */
html body .wpsc_default_product_list .prodtitle,
html body .wpsc_default_product_list h2.prodtitle,
html body .wpsc_default_product_list h2.entry-title {
  font-size: 12.5px !important;
  padding: 10px 12px !important;
  min-height: 46px !important;
  line-height: 1.3 !important;
}

/* Image — 140px вместо 160 */
html body .wpsc_default_product_list .imagecol {
  height: 140px !important;
  flex: 0 0 140px !important;
  padding: 10px !important;
}

/* Productcol — компактнее */
html body .wpsc_default_product_list .productcol {
  padding: 10px 12px !important;
  gap: 6px !important;
}

/* Description — clamp 2 строки вместо 3, чуть меньше шрифт */
html body .wpsc_default_product_list .productcol p,
html body .wpsc_default_product_list .productcol .product_description {
  font-size: 12px !important;
  line-height: 1.45 !important;
  -webkit-line-clamp: 2 !important;
}

/* Кнопка — чуть компактнее */
html body .wpsc_default_product_list .productcol .more-link,
html body .wpsc_default_product_list .more-link {
  padding: 7px 12px !important;
  font-size: 10.5px !important;
  letter-spacing: .4px !important;
  margin-top: auto !important;
}

/* Hide описание которое выпадает за карточку — overflow hidden везде */
html body .wpsc_default_product_list > * > * {
  overflow: hidden !important;
  word-wrap: break-word !important;
}

/* На очень широких экранах — 5 колонок */
@media (min-width: 1400px) {
  html body .wpsc_default_product_list { grid-template-columns: repeat(5, 1fr) !important; }
}

/* ============================================================
 * v8.80 — image full-width + equal cards + hero smaller
 * ============================================================ */

/* === Container 1400 (вернуть после v8.79 1280) === */
html body .container, html body div.container {
  max-width: 1400px !important;
}

/* === Cards: max 4 columns на любом размере (не 5) === */
@media (min-width: 1100px) {
  html body .wpsc_default_product_list { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (min-width: 1400px) {
  html body .wpsc_default_product_list { grid-template-columns: repeat(4, 1fr) !important; }
}

/* === Image FULL WIDTH в карточке (без padding) === */
html body .wpsc_default_product_list .imagecol {
  height: 200px !important;
  flex: 0 0 200px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #fafaf6 !important;
  border-bottom: 1px solid #e8dfca !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html body .wpsc_default_product_list .imagecol img,
html body .wpsc_default_product_list .imagecol .product_image {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

/* === EQUAL HEIGHTS — строго === */
html body .wpsc_default_product_list {
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;  /* все ряды одинаковой высоты */
}
html body .wpsc_default_product_list > * {
  min-height: 0 !important;
  height: 100% !important;
}

/* === Description: 3 строки (вернуть с 2) === */
html body .wpsc_default_product_list .productcol p,
html body .wpsc_default_product_list .productcol .product_description {
  -webkit-line-clamp: 3 !important;
  font-size: 12.5px !important;
}

/* === Title — увеличить fontsize обратно === */
html body .wpsc_default_product_list .prodtitle,
html body .wpsc_default_product_list h2.prodtitle,
html body .wpsc_default_product_list h2.entry-title {
  font-size: 13px !important;
  padding: 12px 14px !important;
  min-height: 50px !important;
}

/* === Кнопка обратно нормальная === */
html body .wpsc_default_product_list .productcol .more-link {
  padding: 8px 14px !important;
  font-size: 11px !important;
  letter-spacing: .5px !important;
}

/* === Productcol padding обратно === */
html body .wpsc_default_product_list .productcol {
  padding: 12px 14px !important;
  gap: 8px !important;
}

/* === HERO ЧУТЬ МЕНЬШЕ === */
html body #site-header,
html body div#site-header {
  max-width: 1100px !important;
  padding: 0 !important;
  margin: 18px auto !important;
}
html body img.main-image,
html body .main-image {
  border-radius: 12px !important;
  box-shadow: 0 6px 20px rgba(45,42,35,.10) !important;
}

/* ============================================================
 * v8.81 — hero = content section + STRICT equal cards
 * ============================================================ */

/* === HERO: точно по ширине content section (1400px max) === */
html body #site-header,
html body div#site-header {
  max-width: 1400px !important;
  width: 100% !important;
  padding: 0 16px !important;
  margin: 16px auto !important;
  display: block !important;
  text-align: center !important;
}
html body #site-header > a,
html body img.main-image,
html body .main-image {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  margin: 0 auto !important;
  border-radius: 12px !important;
  box-shadow: 0 6px 20px rgba(45,42,35,.10) !important;
  height: auto !important;
}

/* === STRICT equal heights cards === */
html body .wpsc_default_product_list {
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}
html body .wpsc_default_product_list > * {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Title — same min-height везде */
html body .wpsc_default_product_list .prodtitle,
html body .wpsc_default_product_list h2.prodtitle,
html body .wpsc_default_product_list h2.entry-title {
  font-size: 13px !important;
  padding: 12px 14px !important;
  height: 56px !important;            /* фикс высота вместо min-height */
  min-height: 56px !important;
  max-height: 56px !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  flex: 0 0 56px !important;
}

/* Image — фикс */
html body .wpsc_default_product_list .imagecol {
  height: 200px !important;
  flex: 0 0 200px !important;
  padding: 0 !important;
  background: #fafaf6 !important;
  border-bottom: 1px solid #e8dfca !important;
}
html body .wpsc_default_product_list .imagecol img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* productcol — flex grow + строго фикс description */
html body .wpsc_default_product_list .productcol {
  display: flex !important;
  flex-direction: column !important;
  padding: 12px 14px !important;
  gap: 8px !important;
  flex: 1 1 auto !important;
}

/* Description — ФИКС высота 3 строки, никак иначе */
html body .wpsc_default_product_list .productcol p,
html body .wpsc_default_product_list .productcol .product_description {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: #6e5e4a !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  height: 5.625em !important;          /* 3 lines × 1.5 line-height × 1.25 = 5.625em */
  min-height: 5.625em !important;
  max-height: 5.625em !important;
  flex: 0 0 5.625em !important;
}

/* Button — фикс прижат к низу */
html body .wpsc_default_product_list .productcol .more-link {
  margin-top: auto !important;
  align-self: flex-start !important;
  flex: 0 0 auto !important;
  padding: 8px 14px !important;
  background: #8b6e2a !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: inline-block !important;
}
html body .wpsc_default_product_list .productcol .more-link:hover {
  background: #6e5520 !important;
  color: #fff !important;
}
html body .wpsc_default_product_list .productcol .more-link::after {
  content: " →" !important;
}

/* Кнопка которая лежит ВНЕ productcol (как у первой карточки в скрине) — тоже привести */
html body .wpsc_default_product_list > * > .more-link {
  margin: 0 14px 14px !important;
  align-self: flex-start !important;
}

/* Hide дубль title в productcol — все варианты */
html body .wpsc_default_product_list .productcol > h1,
html body .wpsc_default_product_list .productcol > h2,
html body .wpsc_default_product_list .productcol > h3,
html body .wpsc_default_product_list .productcol > .productname,
html body .wpsc_default_product_list .productcol > strong:first-child {
  display: none !important;
}

/* ============================================================
 * v8.82 — все секции на одинаковой ширине 1400px, выровнено
 * ============================================================ */

/* Универсальный wrapper class */
html body .site-header,
html body div.site-header,
html body .navbar,
html body nav.navbar,
html body #site-navigation,
html body #site-header,
html body div#site-header,
html body header,
html body .cyber-page-header,
html body main.col-sm-8 > .container,
html body .archive-header {
  max-width: 1400px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Site-header (Радиосвязь Навигация bar) */
html body .site-header {
  padding: 18px 16px !important;
  margin: 12px auto !important;
  background: linear-gradient(180deg, #fafaf6 0%, #f7f3ec 100%) !important;
  border: 1px solid #e8dfca !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 3px rgba(45,42,35,.04) !important;
}

/* Navbar */
html body .navbar, html body nav.navbar {
  padding: 0 16px !important;
  margin: 12px auto !important;
  background: linear-gradient(180deg, #fafaf6 0%, #f7f3ec 100%) !important;
  border: 1px solid #e8dfca !important;
  border-radius: 12px !important;
  min-height: 48px !important;
}

/* Hero (#site-header img wrapper) */
html body #site-header {
  padding: 0 16px !important;
  margin: 12px auto !important;
}
html body #site-header > a,
html body img.main-image {
  border-radius: 12px !important;
  overflow: hidden !important;
  display: block !important;
  width: 100% !important;
}

/* Content card (Каталог оборудования) - тоже border-radius если нужно */
html body article.wpsc-product .entry-content,
html body article.post .entry-content,
html body .archive .entry-content,
html body article > .entry-content {
  background: linear-gradient(180deg, #fafaf6 0%, #f7f3ec 100%) !important;
  border: 1px solid #e8dfca !important;
  border-radius: 12px !important;
  padding: 24px !important;
  margin: 12px auto !important;
  max-width: 1400px !important;
}

/* Контент внутри entry-content (грид и т.п.) — без bg/border (они от entry-content) */
html body .archive .wpsc_default_product_list {
  background: transparent !important;
}

/* Page header (Авиационные радиостанции title bar) */
html body header[class*="page-header"],
html body .archive-header,
html body .page-title-wrap {
  background: linear-gradient(180deg, #fafaf6 0%, #f7f3ec 100%) !important;
  border: 1px solid #e8dfca !important;
  border-radius: 12px !important;
  padding: 18px 24px !important;
}

/* v8.89 — hide site tagline duplicate */
html body .site-description, html body .tagline,
html body .site-header .site-description,
html body .site-title + .site-description,
html body .site-title + .tagline,
html body .site-title + p,
html body h1.site-title + p,
html body .site-branding > p,
html body .site-header > p {
  display: none !important;
}

/* v8.91 — закруглить site-header + hero + content одинаковой ширины */
html body .site-header,
html body div.site-header,
html body header.site-header,
html body .site-header.text-center,
html body #site-header,
html body div#site-header,
html body main.col-sm-8 .entry-content,
html body article > .entry-content {
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid #e8dfca !important;
  background: linear-gradient(180deg, #fafaf6, #f7f3ec) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  max-width: 1400px !important;
  width: calc(100% - 24px) !important;
  box-sizing: border-box !important;
  box-shadow: 0 1px 3px rgba(45,42,35,.04) !important;
}
html body .site-header { padding: 18px 24px !important; }
html body #site-header { padding: 0 !important; }
html body #site-header img.main-image { border-radius: 0 !important; width: 100% !important; display: block !important; }

/* v8.92 — все блоки одинаковой ширины относительно VIEWPORT */
html body .site-header,
html body .navbar,
html body #site-header,
html body article > .entry-content,
html body main.col-sm-8 article > .entry-content {
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(calc(100vw - 40px), 1400px) !important;
  max-width: 1400px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid #e8dfca !important;
  background: linear-gradient(180deg, #fafaf6, #f7f3ec) !important;
  box-shadow: 0 1px 3px rgba(45,42,35,.04) !important;
  box-sizing: border-box !important;
}
html body .site-header { padding: 18px 24px !important; }
html body .navbar { padding: 0 16px !important; min-height: 48px !important; }
html body #site-header { padding: 0 !important; }
html body article > .entry-content { padding: 24px !important; }

/* Lang-switcher — скрыть */
html body .lang-switch,
html body .lang-switch-wrap,
html body .navbar .lang-switch,
html body #lang-switcher,
html body select#lang_choice_polylang_dropdown,
html body .wpml-ls,
html body [class*="lang-switch"] {
  display: none !important;
}

/* Toggle navigation button bg-square — скрыть если только */
html body button.navbar-toggle:has(span:empty),
html body .navbar-toggle .icon-bar { display: none !important; }

/* v8.92 — все блоки одинаковой ширины относительно VIEWPORT */
html body .site-header,
html body .navbar,
html body #site-header,
html body article > .entry-content,
html body main.col-sm-8 article > .entry-content {
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(calc(100vw - 40px), 1400px) !important;
  max-width: 1400px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid #e8dfca !important;
  background: linear-gradient(180deg, #fafaf6, #f7f3ec) !important;
  box-shadow: 0 1px 3px rgba(45,42,35,.04) !important;
  box-sizing: border-box !important;
}
html body .site-header { padding: 18px 24px !important; }
html body .navbar { padding: 0 16px !important; min-height: 48px !important; }
html body #site-header { padding: 0 !important; }
html body article > .entry-content { padding: 24px !important; }

/* Lang-switcher — скрыть */
html body .lang-switch,
html body .lang-switch-wrap,
html body .navbar .lang-switch,
html body #lang-switcher,
html body select#lang_choice_polylang_dropdown,
html body .wpml-ls,
html body [class*="lang-switch"] {
  display: none !important;
}

/* Toggle navigation button bg-square — скрыть если только */
html body button.navbar-toggle:has(span:empty),
html body .navbar-toggle .icon-bar { display: none !important; }

/* v8.93 — final polish */

/* Footer той же ширины */
html body .ombc-footer-v8 {
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(calc(100vw - 40px), 1400px) !important;
  max-width: 1400px !important;
  border-radius: 12px !important;
  margin: 24px 0 !important;
  border: 1px solid #e8dfca !important;
  box-shadow: 0 1px 3px rgba(45,42,35,.04) !important;
  overflow: hidden !important;
}

/* Content card — rounded ALL sides */
html body main.col-sm-8 article > .entry-content,
html body article > .entry-content {
  border-radius: 12px !important;
  border: 1px solid #e8dfca !important;
  overflow: hidden !important;
}

/* Image preview a → выключим thickbox JS, link на product */
html body .imagecol a.preview_link,
html body .imagecol a.thickbox {
  cursor: pointer !important;
}
