body {
  background: #f6fafc;
  color: #374151;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
}

a:focus-visible,
button:focus-visible,
select:focus-visible {
  outline: 3px solid rgba(38, 172, 206, .5);
  outline-offset: 3px;
}

::selection { background: #b9e9f5; color: #145e7a; }

.container { max-width: 1200px; }
.skip-link { background: #145e7a; color: #fff; left: 12px; padding: 10px 14px; position: fixed; top: -80px; transition: top .2s; z-index: 20000; }
.skip-link:focus { color: #fff; top: 12px; }

.header-top {
  background: #f1f8fb;
  border-bottom: 1px solid #e5edf5;
}
.header-top .top-menu > ul > li > a { padding: 8px 10px; }

.header-middle {
  background: #fff;
  margin: 0;
  padding: 18px 0 12px;
}

.support-client {
  background: linear-gradient(90deg, #f7fbff 0%, #eef8fb 100%);
  border: 1px solid #e4eef4;
  border-radius: 8px;
  margin-bottom: 18px;
  padding: 14px 18px 2px;
}

.single-support i {
  color: #0f8fb3;
}

.support-text h1,
.support-heading {
  color: #1f2937;
  display: block;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 6px;
}

.mainmenu-area {
  background: #26acce;
  box-shadow: 0 8px 18px rgba(38, 172, 206, 0.2);
}

.mainmenu nav ul li a {
  font-size: 14px;
  letter-spacing: 0;
  padding: 16px 18px;
}

.mainmenu nav ul li a:hover,
.mainmenu nav ul li:hover > a {
  background: #1f90bb;
}
.mean-container .mean-bar,
.mean-container .mean-nav { background: #26acce; }
.mean-container a.meanmenu-reveal { color: #fff; }
.mean-container .mean-nav ul li a { border-top-color: rgba(255,255,255,.14); }

.brand-logo img {
  height: auto;
  max-width: 260px;
  width: 100%;
}

.header-quick-actions {
  align-items: center;
  display: flex;
  gap: 18px;
  justify-content: flex-end;
  min-height: 64px;
}
.site-search { display: flex; height: 44px; max-width: 300px; width: 100%; }
.site-search input { background: #f7fafc; border: 1px solid #cfe3eb; border-radius: 8px 0 0 8px; color: #374151; font-size: 14px; min-width: 0; padding: 9px 12px; width: 100%; }
.site-search button { background: #26acce; border: 0; border-radius: 0 8px 8px 0; color: #fff; flex: 0 0 46px; height: auto; line-height: normal; position: static; width: auto; }
.site-search button:hover { background: #1f90bb; }
.mobile-search-row { background: #fff; border-bottom: 1px solid #d9edf3; padding: 9px 12px; }
.mobile-search-row .site-search { margin: auto; max-width: 520px; }
.mainmenu nav ul li a.is-active { background: #1f90bb; color: #fff; }

.header-city { color: #64748b; font-weight: 700; }
.header-phone { color: #145e7a; font-size: 20px; font-weight: 800; }
.header-cta,
.landing-cta {
  background: #e95668;
  border-radius: 8px;
  color: #fff;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
}
.header-cta, .landing-cta, .lead-form button { box-shadow: 0 8px 18px rgba(233,86,104,.2); }
.header-cta:hover,
.landing-cta:hover { background: #cf3d4f; color: #fff; }

.category-heading h2,
.product-title h3,
.product-title h1 {
  letter-spacing: 0;
}
.category-page-title { color: #145e7a; font-size: 27px; font-weight: 800; margin: 0; }

.left-product-cat,
.product-banner,
.product-filter,
.toch-prond-area,
.single-product {
  border: 1px solid #e6edf2;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(22, 45, 61, 0.06);
}
.product-banner, .product-filter, .seo-category-note, .landing-content { border-color: #d9edf3; }

.left-product-cat {
  overflow: hidden;
}

.category-menu-list ul li a {
  color: #374151;
  line-height: 1.35;
  padding: 11px 16px;
}

.category-menu-list ul li a:hover {
  background: #f0f9fc;
  color: #0f8fb3;
}

.product-banner {
  background: #fff;
  color: #4b5563;
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 22px;
  padding: 20px;
}

.seo-hero {
  background: linear-gradient(135deg, #eef9fc 0%, #ffffff 58%, #fff3e8 100%);
  border: 1px solid #e1eef4;
  border-radius: 8px;
  margin-bottom: 24px;
  padding: 28px;
}

.home-main { padding: 28px 0 50px; }
.home-hero {
  background: #145e7a;
  border-radius: 20px;
  color: #fff;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr);
  margin-bottom: 28px;
  overflow: hidden;
  padding: 42px;
  position: relative;
}
.home-hero:after {
  background: radial-gradient(circle, rgba(38,172,206,.42), transparent 68%);
  content: "";
  height: 360px;
  position: absolute;
  right: -100px;
  top: -120px;
  width: 360px;
  animation: heroGlow 7s ease-in-out infinite alternate;
}
.home-hero > * { position: relative; z-index: 1; }
.home-kicker { color: #82e6f7; font-size: 13px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.home-hero h1 { color: #fff; font-size: clamp(32px, 4vw, 54px); line-height: 1.08; margin: 12px 0 18px; }
.home-hero p { color: #e6f7fb; font-size: 18px; max-width: 720px; }
.hero-panel { align-self: center; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.16); border-radius: 14px; padding: 24px; }
.hero-panel strong { color: #fff; display: block; font-size: 20px; margin-bottom: 10px; }
.hero-panel a:not(.landing-cta) { color: #82e6f7; font-weight: 800; }
.home-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.home-actions .secondary-action { border: 1px solid rgba(255,255,255,.35); border-radius: 8px; color: #fff; font-weight: 800; padding: 10px 18px; }

.trust-strip,
.category-grid,
.steps-grid,
.landing-grid { display: grid; gap: 16px; }
.trust-strip { grid-template-columns: repeat(4, 1fr); margin-bottom: 40px; }
.trust-item,
.category-card,
.step-card,
.landing-card,
.faq-item {
  background: #fff;
  border: 1px solid #d9edf3;
  border-radius: 12px;
  padding: 20px;
}
.trust-item > i { color: #26acce; float: left; font-size: 24px; margin: 2px 12px 28px 0; }
.trust-item strong { color: #145e7a; display: block; font-size: 17px; }
.section-heading { color: #145e7a; font-size: 30px; margin: 0 0 8px; }
.section-lead { color: #657670; margin-bottom: 22px; max-width: 760px; }
.category-grid { grid-template-columns: repeat(3, 1fr); margin-bottom: 42px; }
.category-card { color: #374151; min-height: 138px; transition: transform .2s, box-shadow .2s; }
.category-card:hover { box-shadow: 0 12px 28px rgba(18,63,53,.1); color: #145e7a; transform: translateY(-3px); }
.category-card strong { color: #145e7a; display: block; font-size: 19px; margin-bottom: 8px; }
.category-icon { align-items: center; background: #eef9fc; border-radius: 10px; color: #26acce; display: inline-flex; font-size: 24px; height: 46px; justify-content: center; margin-bottom: 14px; width: 46px; }
.steps-grid { counter-reset: step; grid-template-columns: repeat(3, 1fr); margin-bottom: 42px; }
.step-card:before { background: #eef9fc; border-radius: 50%; color: #145e7a; content: counter(step); counter-increment: step; display: grid; font-weight: 800; height: 38px; margin-bottom: 14px; place-items: center; width: 38px; }
.faq-list { display: grid; gap: 10px; margin-bottom: 42px; }
.faq-item summary { color: #145e7a; cursor: pointer; font-size: 17px; font-weight: 800; }
.faq-item p { margin: 12px 0 0; }

.landing-wrap { padding: 30px 0 50px; }
.landing-hero { background: linear-gradient(135deg,#145e7a,#1d5d4f); border-radius: 18px; color: #fff; margin-bottom: 24px; padding: 40px; }
.landing-hero h1 { color: #fff; font-size: 42px; line-height: 1.12; margin-bottom: 14px; }
.landing-hero p { color: #e6f7fb; font-size: 18px; max-width: 800px; }
.landing-grid { grid-template-columns: repeat(3, 1fr); margin: 24px 0 34px; }
.landing-card h2 { color: #145e7a; font-size: 20px; }
.landing-content { background: #fff; border: 1px solid #d9edf3; border-radius: 14px; margin-bottom: 28px; padding: 30px; }
.landing-content h2 { color: #145e7a; font-size: 26px; }
.developer-link { color: #a9bbb5; }
.developer-link a { color: #26acce; }

.lead-box { align-items: center; background: linear-gradient(135deg,#145e7a,#1f90bb); border-radius: 18px; color: #fff; display: grid; gap: 28px; grid-template-columns: .8fr 1.2fr; margin: 20px 0 42px; padding: 32px; }
.lead-copy h2 { color: #fff; font-size: 29px; margin: 8px 0; }
.lead-copy p { color: #e6f7fb; }
.lead-form { display: grid; gap: 12px; grid-template-columns: 1fr 1fr auto; }
.lead-form label span { color: #e6f7fb; display: block; font-size: 12px; font-weight: 700; margin-bottom: 5px; }
.lead-form input { background: #fff; border: 0; border-radius: 8px; color: #374151; min-height: 46px; padding: 10px 12px; width: 100%; }
.lead-form button { align-self: end; background: #e95668; border: 0; border-radius: 8px; color: #fff; font-weight: 800; min-height: 46px; padding: 10px 18px; }
.lead-form small { color: #d7eef4; grid-column: 1 / -1; }
.lead-form small a { color: #f5c767; }
.lead-honeypot { height: 0; left: -10000px; overflow: hidden; position: absolute; width: 0; }
.lead-consent { align-items: flex-start; display: flex; gap: 9px; grid-column: 1 / -1; }
.lead-consent input { flex: 0 0 18px; height: 18px; margin-top: 3px; min-height: 0; width: 18px; }
.lead-consent span { color: #d7eef4; font-size: 12px; margin: 0; }
.lead-consent a { color: #fff; text-decoration: underline; }
.legal-page { max-width: 960px; }
.legal-page h1, .legal-page h2 { color: #145e7a; }
.legal-page h2 { font-size: 23px; margin-top: 28px; }
.legal-date { color: #64748b; }
.legal-warning { background: #fff8e8; border: 1px solid #f0d58a; border-radius: 10px; margin: 18px 0; padding: 18px; }
.legal-details { display: grid; grid-template-columns: 220px 1fr; }
.legal-details dt, .legal-details dd { border-bottom: 1px solid #e6edf2; margin: 0; padding: 12px 8px; }
.thanks-box { margin: 40px auto; max-width: 760px; text-align: center; }
.thanks-icon { background: #eef9fc; border-radius: 50%; color: #229ac8; display: grid; font-size: 38px; height: 76px; margin: 0 auto 18px; place-items: center; width: 76px; }
.mobile-sales-bar { display: none; }
.solutions-link { margin: -20px 0 40px; text-align: center; }
.solutions-link a { color: #145e7a; font-weight: 800; }
.catalog-root { display: block; }
.catalog-root-intro { color: #52616b; font-size: 17px; margin: 8px 0 22px; max-width: 820px; }
.catalog-overview-grid { display: grid; gap: 16px; grid-template-columns: repeat(3, 1fr); margin: 0 0 42px; }
.catalog-overview-grid a { background: #fff; border: 1px solid #d9edf3; border-radius: 12px; color: #52616b; display: grid; min-height: 150px; padding: 22px; transition: box-shadow .2s, transform .2s; }
.catalog-overview-grid a:hover { box-shadow: 0 12px 28px rgba(31,144,187,.14); transform: translateY(-3px); }
.catalog-overview-grid i { align-items: center; background: #eef9fc; border-radius: 10px; color: #26acce; display: flex; font-size: 23px; height: 46px; justify-content: center; margin-bottom: 13px; width: 46px; }
.catalog-overview-grid strong { color: #145e7a; font-size: 18px; margin-bottom: 5px; }
.catalog-overview-grid span { line-height: 1.45; }

.footer-support { background: linear-gradient(135deg,#f1f9fc,#fff); border-top: 1px solid #d9edf3; padding: 28px 0; }
.footer-support-grid { display: grid; gap: 16px; grid-template-columns: repeat(4, 1fr); }
.footer-support-item { align-items: flex-start; display: flex; gap: 12px; }
.footer-support-item > i { align-items: center; background: #fff; border: 1px solid #d9edf3; border-radius: 10px; color: #26acce; display: flex; flex: 0 0 44px; font-size: 21px; height: 44px; justify-content: center; }
.footer-support-item strong, .footer-support-item span { display: block; }
.footer-support-item strong { color: #145e7a; font-size: 16px; margin-bottom: 4px; }
.footer-support-item span { color: #52616b; font-size: 13px; line-height: 1.45; }
.footer-support-item a { color: #145e7a; font-weight: 700; }
.search-page { padding: 28px 0 50px; }
.search-hero { background: linear-gradient(135deg,#eef9fc,#fff); border: 1px solid #d9edf3; border-radius: 14px; margin-bottom: 24px; padding: 28px; }
.search-hero h1 { color: #145e7a; font-size: 32px; margin: 0 0 18px; }
.search-page-form { display: flex; max-width: 760px; }
.search-page-form input { border: 1px solid #b9dbe6; border-radius: 8px 0 0 8px; font-size: 16px; min-height: 48px; padding: 10px 14px; width: 100%; }
.search-page-form button { background: #e95668; border: 0; border-radius: 0 8px 8px 0; color: #fff; font-weight: 800; padding: 10px 20px; }
.search-count { color: #52616b; font-size: 16px; margin-bottom: 20px; }
.search-suggestions { align-items: center; display: flex; flex-wrap: wrap; gap: 9px; margin: -5px 0 22px; }
.search-suggestions strong { color: #145e7a; }
.search-suggestions a { background: #eef9fc; border: 1px solid #d9edf3; border-radius: 20px; color: #1f90bb; font-weight: 700; padding: 7px 12px; }
.search-results { display: grid; gap: 16px; grid-template-columns: repeat(2, 1fr); }
.search-result-card { background: #fff; border: 1px solid #d9edf3; border-radius: 12px; display: grid; gap: 16px; grid-template-columns: 150px 1fr; overflow: hidden; padding: 16px; }
.search-result-image { align-items: center; background: #f7fafc; border-radius: 8px; display: flex; min-height: 170px; }
.search-result-image img { margin: auto; max-height: 170px; object-fit: contain; width: 100%; }
.search-result-card > div > span { color: #26acce; font-size: 12px; font-weight: 700; }
.search-result-card h2 { font-size: 18px; line-height: 1.3; margin: 6px 0 9px; }
.search-result-card h2 a { color: #145e7a; }
.search-result-card p { color: #64748b; display: -webkit-box; font-size: 13px; line-height: 1.5; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.search-result-card .card-more { display: inline-flex; justify-content: center; width: auto; }
.search-empty, .search-message { background: #fff; border: 1px solid #d9edf3; border-radius: 12px; padding: 28px; text-align: center; }
.search-empty i { color: #26acce; font-size: 34px; }
.reference-grid { display: grid; gap: 18px; grid-template-columns: repeat(2, 1fr); margin-bottom: 44px; }
.reference-grid a { background: #fff; border: 1px solid #d9edf3; border-radius: 12px; color: #52616b; display: grid; gap: 6px; min-height: 150px; padding: 24px; }
.reference-grid i { color: #26acce; font-size: 27px; }
.reference-grid strong { color: #145e7a; font-size: 20px; }
.content-checklist { display: grid; gap: 14px; grid-template-columns: repeat(2, 1fr); margin: 18px 0 30px; }
.content-checklist > div { background: #f6fbfd; border: 1px solid #d9edf3; border-radius: 10px; display: grid; gap: 4px; grid-template-columns: 36px 1fr; padding: 16px; }
.content-checklist i { color: #26acce; font-size: 22px; grid-row: 1 / 3; }
.content-checklist strong { color: #145e7a; font-size: 16px; }
.content-checklist span { color: #52616b; }
.compact-faq { margin-bottom: 28px; }
.related-solutions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: -18px 0 30px; }
.related-solutions strong { color: #145e7a; }
.related-solutions a { background: #eef9fc; border-radius: 20px; color: #1f90bb; padding: 7px 12px; }
.category-facts { display: grid; gap: 8px 14px; grid-template-columns: repeat(2, 1fr); margin: 18px 0; }
.category-facts span { color: #52616b; }
.category-facts i { color: #26acce; margin-right: 7px; }
.category-faq { background: #fff; border: 1px solid #d9edf3; border-radius: 8px; margin: 16px 0; padding: 12px 14px; }
.category-faq summary { color: #145e7a; cursor: pointer; font-weight: 800; }

.home-hero > div,
.hero-panel,
.trust-item,
.category-card,
.step-card,
.faq-item,
.landing-card,
.landing-content {
  animation: riseIn .65s both;
}
.hero-panel { animation-delay: .08s; }
.trust-item:nth-child(2), .category-card:nth-child(2), .step-card:nth-child(2), .landing-card:nth-child(2) { animation-delay: .07s; }
.trust-item:nth-child(3), .category-card:nth-child(3), .step-card:nth-child(3), .landing-card:nth-child(3) { animation-delay: .14s; }
.trust-item:nth-child(4), .category-card:nth-child(4) { animation-delay: .21s; }
.category-card:nth-child(5) { animation-delay: .28s; }
.category-card:nth-child(6) { animation-delay: .35s; }

.header-cta,
.landing-cta,
.card-more,
.card-request { transition: background-color .2s, color .2s, transform .2s, box-shadow .2s; }
.header-cta:hover,
.landing-cta:hover,
.card-more:hover,
.card-request:hover { box-shadow: 0 10px 22px rgba(228,124,40,.24); transform: translateY(-2px); }
.brand-logo img { transition: transform .25s ease; }
.brand-logo a:hover img { transform: translateY(-2px) scale(1.015); }
.category-icon { transition: transform .25s ease; }
.category-card:hover .category-icon { transform: translateX(4px) rotate(-3deg); }

.product-detail-card { padding: 24px; }
.product-detail-card .toch-photo { background: linear-gradient(145deg,#f7faf8,#edf3f0); border-radius: 12px; overflow: hidden; padding: 18px; }
.product-detail-card .toch-photo img { transition: transform .35s ease; }
.product-detail-card .toch-photo:hover img { transform: scale(1.035); }
.title-product { color: #145e7a; font-size: 32px; line-height: 1.2; margin-top: 8px; }
.product-buy-box { align-items: center; background: #f4f8f6; border: 1px solid #d9edf3; border-radius: 12px; display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; padding: 18px; }
.product-buy-box .current-price { font-size: 25px; margin-right: auto; }
.product-call { border: 1px solid #b9dbe6; border-radius: 8px; color: #145e7a; font-weight: 800; padding: 10px 15px; }
.product-trust { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; margin: 18px 0 0; padding: 0; }
.product-trust li { color: #4b5563; list-style: none; }
.product-trust li:before { color: #e95668; content: "✓"; font-weight: 900; margin-right: 8px; }
.product-seo-content { background: #fff; border: 1px solid #d9edf3; border-radius: 14px; margin: 0 0 32px; padding: 28px; }
.product-seo-content h2 { color: #145e7a; font-size: 25px; line-height: 1.25; }
.product-seo-content h3 { color: #145e7a; font-size: 20px; margin-top: 22px; }
.product-seo-content p { color: #52616b; line-height: 1.75; }

@keyframes riseIn {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes heroGlow {
  from { opacity: .6; transform: translate3d(-10px,-5px,0) scale(.95); }
  to { opacity: 1; transform: translate3d(18px,14px,0) scale(1.08); }
}

@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

.seo-hero h1 {
  color: #1f2937;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 14px;
}

.seo-hero p {
  color: #4b5563;
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 14px;
}

.seo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

.seo-btn {
  align-items: center;
  background: #0f8fb3;
  border-radius: 6px;
  color: #fff;
  display: inline-flex;
  font-weight: 700;
  min-height: 42px;
  padding: 10px 18px;
}

.seo-btn:hover,
.seo-btn:focus {
  background: #0b7897;
  color: #fff;
}

.seo-btn.secondary {
  background: #fff;
  border: 1px solid #b9dbe6;
  color: #0f7795;
}

.seo-benefits {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 0 24px;
}

.seo-benefit {
  background: #fff;
  border: 1px solid #e6edf2;
  border-radius: 8px;
  min-height: 112px;
  padding: 18px;
}

.seo-benefit strong {
  color: #1f2937;
  display: block;
  font-size: 16px;
  margin-bottom: 8px;
}

.product-filter {
  background: #f8fafc;
  margin: 0 0 20px;
  padding: 14px 16px;
}

.product-filter select {
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  min-height: 36px;
  padding: 6px 10px;
}

.single-product {
  background: #fff;
  margin-bottom: 24px;
  overflow: hidden;
  transition: box-shadow .2s ease, transform .2s ease;
}

.single-product:hover {
  box-shadow: 0 14px 32px rgba(22, 45, 61, 0.12);
  transform: translateY(-2px);
}

.product-img a {
  align-items: center;
  background: #f8fafc;
  display: flex;
  min-height: 190px;
}

.product-img a img {
  margin: auto;
  max-height: 240px;
  object-fit: contain;
}

.product-description {
  min-height: 178px;
  padding: 14px 14px 16px;
}

.product-description h5 a,
.product-card-title a {
  color: #1f2937;
  font-size: 14px;
  line-height: 1.35;
}
.product-card-title { font-size: 14px; line-height: 1.35; margin: 0 0 8px; }
.product-card-summary { color: #64748b; font-size: 13px; line-height: 1.45; margin: 0 0 10px; }

.price-box .price,
.current-price {
  color: #d64f2a;
  font-weight: 700;
}

.product-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0 12px;
}

.product-card-meta span {
  background: #eef8fb;
  border-radius: 4px;
  color: #0f7795;
  font-size: 12px;
  padding: 4px 7px;
}

.product-card-actions {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr;
}

.card-more,
.card-request {
  border-radius: 6px;
  display: block;
  font-weight: 700;
  min-height: 42px;
  padding: 10px 12px;
  text-align: center;
  width: 100%;
}

.card-more {
  background: #0f8fb3;
  color: #fff;
}

.card-more:hover,
.card-more:focus {
  background: #0b7897;
  color: #fff;
}

.card-request {
  background: #fff;
  border: 1px solid #b9dbe6;
  color: #0f7795;
}

.card-request:hover,
.card-request:focus {
  background: #f0f9fc;
  color: #0f7795;
}

.sortirovka {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}
.sortirovka:before,
.sortirovka:after { display: none; }
.sortirovka > [class*="col-"] {
  float: none;
  padding: 0;
  width: auto;
}
.sortirovka .single-product { height: calc(100% - 24px); }
.sortirovka .product-description { display: flex; flex-direction: column; min-height: 280px; }
.sortirovka .product-card-actions { margin-top: auto; }
.sortirovka.catalog-root { display: block; }

#scrollUp {
  align-items: center;
  background: #e95668 !important;
  border-radius: 50%;
  bottom: 24px;
  box-shadow: 0 8px 22px rgba(233,86,104,.3);
  color: #fff;
  display: flex;
  font-size: 0;
  height: 48px;
  justify-content: center;
  right: 20px;
  text-indent: 0;
  width: 48px;
}
#scrollUp:after { content: "↑"; font-size: 24px; font-weight: 800; line-height: 1; }
#scrollUp:hover { background: #26acce !important; }

.title-product {
  color: #1f2937;
  font-size: 26px;
  line-height: 1.25;
}

.product-order-panel {
  background: #f8fafc;
  border: 1px solid #e1e8ef;
  border-radius: 8px;
  margin: 18px 0;
  padding: 16px 18px;
}

.product-order-panel strong {
  color: #1f2937;
  display: block;
  font-size: 16px;
  margin-bottom: 8px;
}

.product-order-panel ul {
  list-style: disc;
  margin: 0 0 0 18px;
  padding: 0;
}

.product-order-panel li {
  margin-bottom: 6px;
}

.breadcrumb {
  background: #f8fafc;
  border: 1px solid #e6edf2;
  border-radius: 6px;
}

.footer-area {
  background: #243140;
  color: #d8e1ea;
}

.footer-title h5,
.footer-content a,
.copyright p,
.copyright a {
  color: #f8fafc;
}

@media (max-width: 991px) {
  .seo-benefits {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .container {
    max-width: 100%;
    width: auto;
  }

  .seo-hero {
    padding: 22px 18px;
  }

  .seo-hero h1 {
    font-size: 24px;
  }

  .seo-actions {
    display: block;
  }

  .seo-btn {
    justify-content: center;
    margin-bottom: 10px;
    width: 100%;
  }

  .product-img a {
    min-height: 220px;
  }
}

.content-hero,
.content-section {
  background: #fff;
  border: 1px solid #e6edf2;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(22, 45, 61, 0.06);
  margin-bottom: 22px;
  padding: 24px;
}

.content-hero {
  background: linear-gradient(135deg, #f4fbfd 0%, #ffffff 65%);
}

.content-hero h1 {
  color: #1f2937;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 12px;
}

.content-hero p,
.content-section p {
  color: #4b5563;
  font-size: 15px;
  line-height: 1.75;
}

.content-section h2,
.logo-service h2 {
  color: #1f2937;
  font-size: 22px;
  margin-bottom: 14px;
}

.info-grid,
.contact-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 22px;
}

.info-card,
.contact-card {
  background: #fff;
  border: 1px solid #e6edf2;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(22, 45, 61, 0.05);
  padding: 18px;
}

.info-card strong,
.contact-card strong {
  color: #1f2937;
  display: block;
  font-size: 16px;
  margin-bottom: 8px;
}

.contact-card a,
.contact-card span {
  display: block;
  margin-bottom: 6px;
}

.clean-list {
  list-style: disc;
  margin: 0 0 16px 20px;
  padding: 0;
}

.clean-list li {
  margin-bottom: 8px;
}

.logo-service {
  align-items: flex-start;
  background: #fff;
  border: 1px solid #e6edf2;
  border-radius: 8px;
  display: grid;
  gap: 22px;
  grid-template-columns: 320px 1fr;
  margin-bottom: 22px;
  padding: 22px;
}

.logo-service img {
  border-radius: 8px;
  width: 100%;
}

.table-wrap {
  background: #fff;
  border: 1px solid #e6edf2;
  border-radius: 8px;
  margin-bottom: 22px;
  overflow-x: auto;
  padding: 20px;
}

.table-wrap h2 {
  color: #1f2937;
  font-size: 22px;
}

.table-wrap table {
  background: #fff;
  border-collapse: collapse;
  min-width: 620px;
  width: 100%;
}

.table-wrap td {
  border: 1px solid #d6e1e8;
  color: #374151;
  padding: 8px 10px;
}

.table-wrap .header {
  background: #eef8fb;
  color: #1f2937;
  font-weight: 700;
}

.seo-category-note {
  background: linear-gradient(135deg, #ffffff 0%, #f4fbfd 100%);
  border: 1px solid #e6edf2;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(22, 45, 61, 0.05);
  margin: 0 0 22px;
  padding: 20px 22px;
}

.seo-category-note h2 {
  color: #1f2937;
  font-size: 22px;
  margin-bottom: 12px;
}

.seo-category-note p {
  color: #4b5563;
  font-size: 15px;
  line-height: 1.7;
}

@media (max-width: 991px) {
  .info-grid,
  .contact-grid,
  .logo-service {
    grid-template-columns: 1fr;
  }
  .home-hero { grid-template-columns: 1fr; }
  .trust-strip { grid-template-columns: repeat(2, 1fr); }
  .category-grid,
  .landing-grid { grid-template-columns: repeat(2, 1fr); }
  .header-quick-actions { justify-content: center; }
  .lead-box { grid-template-columns: 1fr; }
  .mainmenu nav ul li a { padding-left: 12px; padding-right: 12px; }
  .catalog-overview-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-support-grid { grid-template-columns: repeat(2, 1fr); }
  .site-search { max-width: 240px; }
}

@media (max-width: 767px) {
  .content-hero,
  .content-section,
  .logo-service,
  .table-wrap {
    padding: 18px;
  }

  .content-hero h1 {
    font-size: 24px;
  }

  .product-card-actions {
    grid-template-columns: 1fr;
  }
  .header-top { display: none; }
  .header-middle { padding: 6px 0; }
  .brand-logo { text-align: center; }
  .brand-logo img { max-width: 180px; }
  .header-middle .logo { margin: 0; padding: 0; }
  .header-quick-actions { display: none; }
  .header-city { display: none; }
  .header-phone { font-size: 16px; min-height: 44px; padding: 9px 2px; }
  .header-cta { min-height: 44px; padding: 10px 14px; }
  .home-main,
  .landing-wrap { padding-top: 18px; }
  .home-hero,
  .landing-hero { border-radius: 14px; padding: 26px 20px; }
  .home-hero h1,
  .landing-hero h1 { font-size: 30px; }
  .home-hero p,
  .landing-hero p { font-size: 16px; }
  .trust-strip,
  .category-grid,
  .steps-grid,
  .landing-grid { grid-template-columns: 1fr; }
  .section-heading { font-size: 25px; }
  .category-page-title { font-size: 24px; line-height: 1.2; }
  .product-filter { padding: 12px; }
  .product-filter .sort { align-items: stretch; display: flex; flex-direction: column; gap: 6px; }
  .product-filter select { font-size: 16px; min-height: 44px; width: 100%; }
  .sortirovka { gap: 16px; grid-template-columns: 1fr; }
  .sortirovka .product-description { min-height: 0; }
  .sortirovka .single-product { height: auto; margin-bottom: 0; }
  .product-img a { min-height: 240px; }
  .product-img a img { max-height: 280px; }
  .landing-content { padding: 22px 18px; }
  .product-detail-card { padding: 14px; }
  .title-product { font-size: 25px; }
  .product-buy-box { align-items: stretch; flex-direction: column; }
  .product-buy-box .current-price { margin-right: 0; }
  .product-trust { grid-template-columns: 1fr; }
  .product-seo-content { padding: 21px 18px; }
  .lead-box { border-radius: 14px; padding: 24px 18px; }
  .lead-form { grid-template-columns: 1fr; }
  .lead-form small { grid-column: auto; }
  .lead-consent { grid-column: auto; }
  .legal-details { grid-template-columns: 1fr; }
  .legal-details dt { border-bottom: 0; padding-bottom: 0; }
  .content-checklist, .category-facts { grid-template-columns: 1fr; }
  .catalog-overview-grid, .footer-support-grid { grid-template-columns: 1fr; }
  .catalog-overview-grid a { min-height: 0; }
  .footer-support { padding: 22px 0; }
  .search-page { padding-top: 18px; }
  .search-hero { padding: 20px 16px; }
  .search-hero h1 { font-size: 27px; }
  .search-page-form button { padding: 10px 14px; }
  .search-results, .reference-grid { grid-template-columns: 1fr; }
  .search-result-card { grid-template-columns: 105px 1fr; padding: 12px; }
  .search-result-image { min-height: 140px; }
  .mobile-sales-bar { bottom: 12px; border-radius: 12px; box-shadow: 0 8px 28px rgba(20,94,122,.28); display: grid; grid-template-columns: 1fr 1fr; left: 12px; overflow: hidden; position: fixed; right: 12px; z-index: 9999; }
  .mobile-sales-bar a { background: #145e7a; color: #fff; font-weight: 800; min-height: 48px; padding: 13px; text-align: center; }
  .mobile-sales-bar a:last-child { background: #e95668; }
  body { padding-bottom: 76px; }
  #scrollUp { display: none !important; }
}

/* Helpful content for catalog categories that temporarily have no product cards. */
.empty-category-guide { background: linear-gradient(145deg, #fff 0%, #f1fbfd 100%); border: 1px solid #d6edf2; border-radius: 18px; box-shadow: 0 14px 34px rgba(20,94,122,.08); color: #344754; margin: 10px 0 28px; padding: 30px; }
.empty-category-heading { align-items: center; display: flex; gap: 16px; margin-bottom: 16px; }
.empty-category-heading h2 { color: #104c45; font-size: 28px; line-height: 1.2; margin: 2px 0 0; }
.empty-category-icon { align-items: center; background: #26acce; border-radius: 14px; color: #fff; display: inline-flex; flex: 0 0 54px; font-size: 24px; height: 54px; justify-content: center; }
.empty-category-lead { color: #263b48; font-size: 18px; line-height: 1.65; }
.empty-category-guide h3 { color: #104c45; font-size: 21px; margin: 24px 0 12px; }
.empty-category-checklist { display: grid; gap: 10px; grid-template-columns: repeat(3, 1fr); list-style: none; margin: 0; padding: 0; }
.empty-category-checklist li { align-items: flex-start; background: #fff; border: 1px solid #dcecf0; border-radius: 12px; display: flex; gap: 9px; line-height: 1.45; min-height: 68px; padding: 14px; }
.empty-category-checklist i { color: #26acce; margin-top: 3px; }
.empty-category-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 20px; }
.empty-category-actions a { align-items: center; display: inline-flex; gap: 8px; justify-content: center; }
.empty-category-related { align-items: center; border-top: 1px solid #dcecf0; display: flex; flex-wrap: wrap; gap: 10px 18px; padding-top: 18px; }
.empty-category-related a { color: #147f9c; font-weight: 700; }

@media (max-width: 767px) {
  .empty-category-guide { border-radius: 14px; padding: 20px 16px; }
  .empty-category-heading { align-items: flex-start; }
  .empty-category-heading h2 { font-size: 23px; }
  .empty-category-icon { flex-basis: 46px; height: 46px; }
  .empty-category-checklist { grid-template-columns: 1fr; }
  .empty-category-checklist li { min-height: 0; }
  .empty-category-actions { align-items: stretch; flex-direction: column; }
  .empty-category-actions a { width: 100%; }
  .empty-category-related { align-items: flex-start; flex-direction: column; }
}
