/* Rendered accessibility fixes loaded after the legacy bundle. */
.btn-yellow {
	color: #111827;
}

.btn-yellow:hover,
a.btn-yellow:focus,
a.btn-yellow:hover {
	color: #111827;
}

.header .search #button-addon2.btn-yellow,
.mobile-menu-search .btn {
	color: #111827 !important;
}

.header .search #button-addon2.btn-yellow {
	min-width: 72px;
	padding: 0 0.85rem;
	background-image: none;
	font-weight: 600;
}

.home-banner__caption {
	background: #041423;
}

.home-catalog-preview__eyebrow {
	color: #334155;
	font-weight: 600;
}

.cookie-banner__summary {
	background: #ffffff !important;
	color: #111827 !important;
}

.form-select-sm,
.catalog-products .form-select-sm {
	background-color: #ffffff !important;
	border-color: #94a3b8;
	color: #111827;
}

.breadcrumb-item.active,
li[aria-current="page"],
.pagination .item.active {
	color: #334155;
}

.page-breadcrumb-bar .breadcrumb .breadcrumb-item.active,
.page-breadcrumb-bar .breadcrumb-item.active,
.page-breadcrumb-bar .breadcrumb .breadcrumb-item,
.page-breadcrumb-bar .breadcrumb-item,
.page-title {
	color: #334155 !important;
	text-shadow: none;
}

.product-tech-html table:focus {
	outline: 2px solid #176fc3;
	outline-offset: 3px;
}

.catalog-city-context a,
.catalog-parent-brand-link a,
main.container p a:not(.btn),
main.container .small a:not(.btn) {
	color: #0b4d89;
	text-decoration-line: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 2px;
}

.catalog-city-direction-links {
	max-height: 150px !important;
	overflow-y: auto !important;
	padding: 10px 12px;
	border: 1px solid #dbe6f2;
	border-left: 4px solid #176fc3;
	border-radius: 8px;
	background: #f8fbff;
}

.catalog-city-direction-links a {
	display: inline-block;
	margin: 0 4px 4px 0;
}

.products .service-listing-card .text-muted,
.products .service-listing-card .product-card-description,
.product-b2b-card__list,
.product-b2b-card__list li {
	color: #374151 !important;
}

.product-b2b-card__title {
	color: #172033;
}

.products .service-listing-card .btn-outline-secondary,
.buttons-group .btn-outline-secondary {
	border-color: #94a3b8;
	color: #26384d;
}

.catalog-intent-note {
	padding: 14px 16px;
	border: 1px solid #dbe6f2;
	border-left: 4px solid #176fc3;
	border-radius: 8px;
	background: #f8fbff;
	color: #2f3f53;
	line-height: 1.55;
}

.catalog-intent-note p {
	margin: 0 0 8px;
}

.catalog-intent-note p:last-child {
	margin-bottom: 0;
}

.catalog-products__title {
	margin: 0 0 14px;
}

/* FAQ accordion (added 2026-06-22) */
.faq-accordion{margin-top:.5rem}
.faq-accordion .faq-item{border:1px solid #e6e8ec;border-radius:10px;margin-bottom:.6rem;background:#fff}
.faq-accordion .faq-item summary{cursor:pointer;list-style:none;padding:.85rem 1.1rem;font-weight:600;color:#1f2733;position:relative;outline:none}
.faq-accordion .faq-item summary::-webkit-details-marker{display:none}
.faq-accordion .faq-item summary::after{content:"+";position:absolute;right:1.1rem;top:.75rem;font-size:1.3rem;color:#ffac0a;font-weight:700;transition:transform .15s}
.faq-accordion .faq-item[open] summary::after{content:"\2212"}
.faq-accordion .faq-item summary:hover{color:#ffac0a}
.faq-accordion .faq-answer{padding:0 1.1rem 1rem;color:#3a444f}
.faq-accordion .faq-answer p{margin:0}

/* Category hero photo: float right, text wraps left (added 2026-06-22) */
.category-description-top .category-hero-figure,
.catalog-seo-text .category-hero-figure{float:right;width:320px;max-width:36%;margin:.2rem 0 1rem 1.75rem;}
.category-hero-figure img{width:100%;height:210px;object-fit:cover;border-radius:12px;box-shadow:0 3px 14px rgba(0,0,0,.10);display:block;}
@media (max-width:767px){
  .category-description-top .category-hero-figure,
  .catalog-seo-text .category-hero-figure{float:none;width:100%;max-width:100%;margin:0 0 1rem;}
  .category-hero-figure img{height:190px;}
}

/* Sidebar fill blocks: CTA + trust (added 2026-06-22) */
.sidebar-cta{background:#fff7e6;border:1px solid #ffe2ad;border-radius:12px;padding:1rem;}
.sidebar-cta__title{font-weight:700;color:#1f2733;margin-bottom:.35rem;}
.sidebar-cta__text{font-size:.86rem;color:#5a6470;margin:0 0 .6rem;}
.sidebar-cta__phone{display:block;font-weight:700;font-size:1.15rem;color:#1f2733;text-decoration:none;margin-bottom:.6rem;}
.sidebar-cta__phone:hover{color:#ffac0a;}
.sidebar-cta__btn{display:block;text-align:center;background:#ffac0a;color:#1a1a1a;font-weight:600;padding:.6rem;border-radius:8px;text-decoration:none;}
.sidebar-cta__btn:hover{background:#f59e0b;color:#000;}
.sidebar-trust{background:#fff;border:1px solid #e6e8ec;border-radius:12px;padding:1rem;}
.sidebar-trust__title{font-weight:700;color:#1f2733;margin-bottom:.5rem;}
.sidebar-trust__list{list-style:none;padding:0;margin:0;}
.sidebar-trust__list li{position:relative;padding-left:1.4rem;font-size:.84rem;color:#3a444f;margin-bottom:.5rem;line-height:1.35;}
.sidebar-trust__list li::before{content:"\2714";position:absolute;left:0;color:#2e9e4f;font-weight:700;}

/* Sidebar video player (facade, lazy) added 2026-06-22 */
.sidebar-video{margin-bottom:1rem;}
.sidebar-video__title{font-weight:700;color:#1f2733;margin-bottom:.4rem;}
.sidebar-video__frame{position:relative;width:100%;aspect-ratio:16/9;background:#11161d center/cover no-repeat;border-radius:12px;overflow:hidden;cursor:pointer;}
.sidebar-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.sidebar-video__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:rgba(0,0,0,.28);border:0;color:#fff;font-size:2.2rem;cursor:pointer;}
.sidebar-video__play::before{content:"";width:58px;height:58px;border-radius:50%;background:#ffac0a;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.3);}
.sidebar-video__play::after{content:"\25B6";position:absolute;color:#1a1a1a;font-size:1.3rem;margin-left:4px;}
.sidebar-video__play:hover::before{background:#f59e0b;}

/* ============================================================
   REDESIGN 2026-06-22 — Inter font + clean blocks + Variant A price
   ============================================================ */
body, button, input, select, textarea, .btn,
h1, h2, h3, h4, h5, h6,
.home-banner__title, .home-banner__text, .page-title,
.card, .product-card-title, .product-price-request__label {
  font-family:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important;
}
body { -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }

/* ---- Price block: Variant A (clean) ---- */
.product-price-block{
  background:#fff; border:1px solid #e6eaf0; border-radius:16px;
  padding:18px 18px 16px; box-shadow:none;
}
.product-price-block .stock-badge{
  display:inline-flex; align-items:center; gap:6px; background:#e9f7ee; color:#15803d;
  font-size:12px; font-weight:600; padding:4px 11px; border-radius:999px; margin-bottom:12px;
}
.product-price-block .stock-badge::before{ content:""; width:7px; height:7px; border-radius:50%; background:#16a34a; }
.product-price-request__label{
  font-size:32px; font-weight:700; color:#0f1b2d; letter-spacing:-.01em; line-height:1.08;
}
.product-price-request__label .cur{ font-size:24px; }
.product-price-request__note{ font-size:13px; color:#64748b; margin-top:8px; line-height:1.5; }
.product-price-request__deal{ font-size:12px; color:#475569; margin-top:10px; line-height:1.45; }
.price-trust-row{ display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:14px; font-size:12px; color:#64748b; }
.price-trust-row span{ display:inline-flex; align-items:center; gap:5px; }
.price-trust-row span::before{ content:""; width:6px; height:6px; border-radius:50%; background:#176fc3; flex:0 0 auto; }

/* ---- Buttons ---- */
.btn-yellow{ background:#ffac0a; border-color:#ffac0a; border-radius:12px; font-weight:700; }
.btn-yellow:hover{ background:#f59e0b; border-color:#f59e0b; }
.btn-buy-secondary{ display:block; width:100%; text-align:center; border:1px solid #cfd8e3;
  background:#fff; color:#17395d; font-weight:600; border-radius:12px; padding:11px;
  text-decoration:none; margin-bottom:8px; transition:background .15s; }
.btn-buy-secondary:hover{ background:#f5f9fe; color:#17395d; }

/* ---- Catalog grid card price ---- */
.product-card-price__current{ font-size:18px; font-weight:700; color:#17395d; }

/* ---- Generic clean blocks (cards / sections) ---- */
.card{ border:1px solid #e6eaf0; border-radius:14px; }
.home-catalog-preview__grid .card,
.home-catalog-preview__grid .card.p-3{ border-radius:14px; }
.sidebar-cta, .sidebar-trust{ border-radius:14px; }

/* ============================================================
   REDESIGN 2026-06-22 r2 — calm description blocks (remove blue stripes/shadows/old fonts)
   ============================================================ */
.home-content, .home-content *,
.catalog-seo-text, .catalog-seo-text * {
  font-family:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important;
}
.home-content, .home-content__lead, .home-content__section p { color:#374151; font-size:15px; line-height:1.6; }
.home-content--lead .home-content__title { color:#0f1b2d; }
.home-content__title, .home-content__section h2 {
  color:#0f1b2d !important; text-shadow:none !important; font-weight:600 !important; letter-spacing:-.01em;
}
.home-content__title { font-size:22px; }
.home-content__section h2 { font-size:19px; }
.home-content__eyebrow { color:#94a3b8; text-shadow:none; }
.home-content__procurement {
  border:1px solid #e6eaf0; border-left:1px solid #e6eaf0; border-radius:12px; background:#f8fafc;
}
/* neutralize remaining blue-stripe accent boxes */
.catalog-intent-note, .catalog-city-direction-links {
  border:1px solid #e6eaf0 !important; border-left:1px solid #e6eaf0 !important;
  background:#f8fafc !important; color:#374151 !important;
}
/* more description blocks: product short-description */
.product-annotation { border:1px solid #e6eaf0 !important; border-radius:12px !important; }

/* ============================================================
   REDESIGN 2026-06-22 r3 — audit spec (nav, hero grid, sticky, residual blue)
   ============================================================ */
/* 1.2 residual blue blocks */
.catalog-city-context { border-left:0 !important; padding-left:0 !important; background:transparent !important; color:#64748b !important; }
.product-engineering-guide { background:#fff !important; border:1px solid #e6eaf0 !important; box-shadow:none !important; }
.mobile-menu-section { background:#fff !important; border:1px solid #e6eaf0 !important; }
.price-trust-row span::before { background:#94a3b8; }
/* 1.3 breadcrumb contrast */
.page-breadcrumb-bar .breadcrumb-item a { color:#0b4d89 !important; }
.page-breadcrumb-bar .breadcrumb { font-size:14px; }
/* 1.4 H1 lead box -> plain heading (no callout card) */
.home-content--lead { border:0 !important; box-shadow:none !important; background:transparent !important; padding:0 !important; margin:0 0 18px !important; }
/* 1.5 sidebar tree active/hover unified to brand blue */
.sidebar_menu a.selected { background:#f1f7fd !important; color:#176fc3 !important; font-weight:600 !important; }
.sidebar_menu a:hover { background:#f1f7fd; color:#176fc3; }
/* 2.5 homepage catalog cards: vertical + larger image */
.home-catalog-preview .catalog_menu .card { flex-direction:column; min-height:160px; text-align:center; align-items:center; padding:16px 12px; }
.home-catalog-preview .catalog_menu .card-img-top { width:96px; height:96px; flex:none; margin:0 auto 10px; object-fit:contain; }
.home-catalog-preview .catalog_menu .card .card-body,
.home-catalog-preview .catalog_menu .card > a { text-align:center; }
/* sticky header removed 2026-06-22 per owner — раздражает при скролле */
[id] { scroll-margin-top:20px; }

/* ============================================================
   REDESIGN 2026-06-22 r4 — card prices, why-band, industries, SEO zone, footer
   ============================================================ */
.home-cat-card__price { margin-top:6px; font-weight:700; color:#17395d; font-size:15px; text-align:center; }
.home-cat-card__price--request { font-weight:600; color:#92600a; font-size:13px; }

.home-why { margin:6px 0 22px; }
.home-why__title { font-size:19px; font-weight:600; color:#0f1b2d; margin:0 0 14px; letter-spacing:-.01em; }
.home-why__grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; }
.home-why__item { background:#fff; border:1px solid #e6eaf0; border-radius:14px; padding:16px; }
.home-why__key { font-size:19px; font-weight:700; color:#ffac0a; margin-bottom:6px; }
.home-why__text { font-size:14px; color:#475569; line-height:1.45; }

.home-industries { margin:6px 0 26px; }
.home-industries__title { font-size:19px; font-weight:600; color:#0f1b2d; margin:0 0 8px; letter-spacing:-.01em; }
.home-industries__lead { font-size:14px; color:#64748b; margin:0 0 12px; max-width:70ch; }
.home-industries__grid { display:flex; flex-wrap:wrap; gap:10px; }
.home-industries__chip { display:inline-block; background:#f1f5f9; color:#17395d; border:1px solid #e2e8f0; border-radius:999px; padding:8px 16px; font-size:14px; font-weight:500; text-decoration:none; transition:background .15s; }
.home-industries__chip:hover { background:#e2ecf7; color:#17395d; }

/* 3.2 SEO zone as a distinct muted container */
.home-content--details { background:#f7f9fc; border:1px solid #eef1f6; border-radius:16px; padding:22px 24px; margin-top:8px; }

/* footer 4-col polish */
.footer-cat-list, .footer-svc-list { list-style:none; padding:0; margin:0; }
.footer-cat-list li, .footer-svc-list li { margin-bottom:6px; }

/* ============================================================
   REDESIGN 2026-06-22 r5 — a11y skip-link + touch targets (audit autofix)
   ============================================================ */
.skip-link { position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }
.skip-link:focus { left:8px; top:8px; width:auto; height:auto; z-index:2000; background:#17395d; color:#fff; padding:10px 16px; border-radius:8px; font-weight:600; box-shadow:0 4px 16px rgba(0,0,0,.25); }
@media (max-width:767.98px){
  #catalog-sort-select, .catalog-sort select, select.form-select-sm { min-height:44px; padding-top:8px; padding-bottom:8px; }
}

/* ============================================================
   REDESIGN 2026-06-22 r6 — content width: main was capped ~960 while header/footer=1320,
   leaving huge side gaps on wide screens. Align content to header width.
   ============================================================ */
main#main.container { max-width: 1320px; width: 100%; }

/* ============================================================
   REDESIGN 2026-06-22 r7 — category listing full-width (no left indent from sidebar)
   ============================================================ */
/* (reverted 2026-06-22 — owner wants the LEFT navigation column kept on category pages) */

/* ============================================================
   REDESIGN 2026-06-22 r8 — catalog chip-nav (replaces left sidebar nav on listings)
   ============================================================ */
.catalog-chip-nav{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 20px; }
.catalog-chip{ display:inline-block; background:#f1f5f9; color:#17395d; border:1px solid #e2e8f0; border-radius:999px; padding:6px 14px; font-size:13px; font-weight:500; text-decoration:none; transition:background .15s; }
.catalog-chip:hover{ background:#e2ecf7; color:#17395d; }
.catalog-chip--active{ background:#ffac0a; color:#1a1206; border-color:#ffac0a; }

/* ============================================================
   REDESIGN 2026-06-22 r9 — visual audit fixes (cards, grids, photos, menu)
   ============================================================ */
/* home: unclamp category card titles (were cut to 2 lines) */
.home-catalog-preview .catalog_menu .card h3{ -webkit-line-clamp:unset; display:block; overflow:visible; font-size:14px; line-height:1.3; }
/* home: price bottom-aligned, 3 cols from lg */
.home-catalog-preview .catalog_menu .card > div{ display:flex; flex-direction:column; flex:1 1 auto; width:100%; }
.home-cat-card__price{ margin-top:auto; }
@media (min-width:992px){ .home-catalog-preview__grid > [class*='col-']{ flex:0 0 33.333%; max-width:33.333%; } }
/* home: CTA block contrast against grey SEO zone */
.home-content--details .home-content__cta{ background:#fff; border:1px solid #ffe2ad; box-shadow:0 6px 18px rgba(9,25,45,.06); }
/* home: catalog heading sentence-case (was UPPERCASE, clashed with Inter) */
.home-catalog-preview__title{ text-transform:none; font-weight:600; letter-spacing:-.01em; font-size:19px; color:#0f1b2d; }

/* (full-width product grid reverted — sidebar restored; products use default col-xl-3/col-lg-4/col-sm-6 inside the content column) */
/* category: equal price-zone height in cards */
.products .product-card .product-card-price{ min-height:46px; display:flex; align-items:center; margin-bottom:12px; }
.product-card-price--request .product-card-price__request{ width:100%; text-align:center; }
/* category: hero float clearfix + safe height */
.catalog-seo-text--top{ overflow:hidden; }
.cat-figure{ float:right; width:320px; max-width:38%; margin:.2rem 0 1rem 1.5rem; }
.cat-figure img{ display:block; width:100%; height:200px; object-fit:cover; border-radius:12px; box-shadow:0 3px 14px rgba(0,0,0,.10); }
@media (max-width:767px){ .cat-figure{ float:none; width:100%; max-width:100%; margin:0 0 1rem; } .cat-figure img{ height:170px; } }
.category-hero-figure img{ max-height:230px; }
/* category: tidy sort bar */
.catalog-products > hr{ display:none; }

/* product: main photo not letterboxed in a square */
@media (min-width:576px){
  .product .image .product-main-zoom{ min-height:0 !important; padding:14px; max-width:540px; margin:0 auto; }
  .product .image .img{ aspect-ratio:auto !important; max-width:100% !important; max-height:460px; }
  .product .images{ justify-content:flex-start; }
}

/* nav: top menu single line (was wrapping to 2 rows) */
header nav .nav.navbar.justify-content-center{ flex-wrap:nowrap; gap:2px; overflow-x:auto; -webkit-overflow-scrolling:touch; }
header nav .nav.navbar.justify-content-center .nav-link{ white-space:nowrap; padding-left:.6rem; padding-right:.6rem; }
.nav-link--catalog{ border-radius:12px; padding:8px 14px !important; display:inline-flex; align-items:center; line-height:1; }

/* About company block */
.home-about{ margin:6px 0 26px; }
.home-about__title{ font-size:22px; font-weight:600; color:#0f1b2d; letter-spacing:-.01em; margin:0 0 10px; }
.home-about__grid{ display:grid; grid-template-columns:1.4fr 1fr; gap:24px; align-items:start; }
.home-about__lead{ font-size:15px; line-height:1.65; color:#374151; margin:0 0 10px; }
.home-about__lead:last-child{ margin-bottom:0; }
.home-about__facts{ list-style:none; margin:0; padding:18px 20px; background:#f7f9fc; border:1px solid #eef1f6; border-radius:14px; }
.home-about__facts li{ position:relative; padding-left:24px; margin-bottom:12px; font-size:14px; color:#374151; line-height:1.4; }
.home-about__facts li:last-child{ margin-bottom:0; }
.home-about__facts li::before{ content:""; position:absolute; left:0; top:6px; width:9px; height:9px; border-radius:50%; background:#ffac0a; }
@media (max-width:767px){ .home-about__grid{ grid-template-columns:1fr; gap:16px; } }

/* ============================================================
   REDESIGN 2026-06-22 r11 — B2B hero + brands strip + task router
   ============================================================ */
.home-hero{ margin:0 0 22px; }
.home-hero__strapline{ font-size:14px; font-weight:500; color:#176fc3; text-transform:none; letter-spacing:0; margin:0 0 8px; line-height:1.45; }
.home-hero__title{ font-size:30px; font-weight:700; color:#0f1b2d; letter-spacing:-.01em; line-height:1.15; margin:0 0 12px; }
.home-hero__lead{ font-size:15px; line-height:1.6; color:#374151; max-width:64ch; margin:0 0 16px; }
.home-hero__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:0 0 14px; }
.home-hero__actions .btn{ border-radius:12px; font-weight:600; padding:11px 20px; }
.home-hero__phone{ font-size:18px; font-weight:700; color:#0f1b2d; text-decoration:none; white-space:nowrap; }
.home-hero__phone:hover{ color:#ffac0a; }
.home-hero__facts{ display:flex; flex-wrap:wrap; list-style:none; padding:0; margin:0; }
.home-hero__facts li{ font-size:13px; color:#64748b; padding:0 14px; border-left:1px solid #e2e8f0; margin-bottom:4px; }
.home-hero__facts li:first-child{ padding-left:0; border-left:0; }

.home-brands{ margin:6px 0 24px; }
.home-brands__title{ font-size:19px; font-weight:600; color:#0f1b2d; letter-spacing:-.01em; margin:0 0 12px; }
.home-brands__list{ display:flex; flex-wrap:wrap; gap:12px; list-style:none; padding:0; margin:0 0 10px; }
.home-brands__item{ display:inline-flex; align-items:center; justify-content:center; min-width:140px; padding:14px 22px; background:#fff; border:1px solid #e6eaf0; border-radius:12px; font-weight:700; font-size:16px; color:#17395d; letter-spacing:.02em; }
.home-brands__item--more{ font-weight:500; color:#64748b; }
.home-brands__note{ font-size:13px; color:#64748b; margin:0; max-width:80ch; }

.home-router{ margin:6px 0 26px; }
.home-router__title{ font-size:19px; font-weight:600; color:#0f1b2d; letter-spacing:-.01em; margin:0 0 14px; }
.home-router__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.home-router__tile{ display:flex; flex-direction:column; gap:6px; background:#fff; border:1px solid #e6eaf0; border-radius:14px; padding:16px 18px; text-decoration:none; transition:border-color .15s, box-shadow .15s; }
.home-router__tile:hover{ border-color:#ffac0a; box-shadow:0 6px 18px rgba(9,25,45,.06); }
.home-router__task{ font-size:15px; font-weight:600; color:#17395d; }
.home-router__hint{ font-size:13px; color:#64748b; }
@media (max-width:767px){ .home-hero__title{ font-size:24px; } }

/* ============================================================
   REDESIGN 2026-06-22 r12 — TYPOGRAPHY scale (audit wnxzoepiw): clear hierarchy,
   unified H1, readable body, consistent line-height/measure. (root 16px skipped — risky)
   ============================================================ */
/* C — section titles to a real H2 size (was all flat 19px) */
.home-why__title, .home-industries__title, .home-brands__title,
.home-router__title, .home-catalog-preview__title, .home-about__title,
.home-content__section h2 {
  font-size:24px !important; line-height:1.2 !important; font-weight:700 !important; letter-spacing:-.01em !important;
}
.home-content__title { font-size:27px !important; font-weight:700 !important; }
.home-brands__item { letter-spacing:0; }
/* B — unify H1 across page types (home hero / category h1.h2 / product h1.h3) */
main h1, .home-hero__title {
  font-size:clamp(28px, 2.2vw + 18px, 40px) !important; line-height:1.15 !important;
  font-weight:700 !important; letter-spacing:-.01em !important; margin:0 0 14px;
}
@media (max-width:767px){ main h1, .home-hero__title { font-size:26px !important; } }
/* D — readable long-form content + tech tables (was 13-14px, Tahoma) */
main.container .page-text.seo-text {
  font-family:'Inter', system-ui, sans-serif !important; font-size:16px !important;
  line-height:1.6 !important; color:#374151 !important; max-width:72ch !important;
}
.product-tech-html { font-size:15px; line-height:1.6; }
.product-annotation, .product-annotation__text { font-size:15px; line-height:1.55; }
/* E — .page-title into the Inter brand system (was Roboto Condensed grey + shadow) */
.page-title {
  font-family:'Inter', system-ui, sans-serif !important; font-weight:600 !important;
  color:#0f1b2d !important; text-shadow:none !important; font-size:28px; line-height:1.2; letter-spacing:-.01em;
}
/* F — consistent line-height on lists/short copy */
.home-why__text { line-height:1.55; }
.sidebar-trust__list li { line-height:1.45; }
.home-about__facts li { line-height:1.5; }
/* G — control line length (measure) on prose; grids stay full-width */
.home-content__lead, .home-content__section p, .home-about__lead { max-width:75ch; }
.home-brands__note { max-width:75ch; }

/* ============================================================
   REDESIGN 2026-06-22 r13 — brands strip SYMMETRIC (was flex left-clustered, empty right)
   ============================================================ */
.home-brands__list{ display:grid; grid-template-columns:repeat(5, 1fr); gap:12px; align-items:stretch; }
.home-brands__item{ min-width:0; }
@media (max-width:991.98px){ .home-brands__list{ grid-template-columns:repeat(3, 1fr); } }
@media (max-width:575.98px){ .home-brands__list{ grid-template-columns:repeat(2, 1fr); } }

/* ============================================================
   REDESIGN 2026-06-22 r14 — sidebar "Как мы работаем" steps (fills left column, replaces video idea)
   ============================================================ */
.sidebar-steps{ background:#fff; border:1px solid #e6e8ec; border-radius:12px; padding:1rem; }
.sidebar-steps__title{ font-weight:700; color:#1f2733; margin-bottom:.7rem; }
.sidebar-steps__list{ list-style:none; counter-reset:s; margin:0; padding:0; }
.sidebar-steps__list li{ position:relative; counter-increment:s; padding-left:2.1rem; margin-bottom:.7rem; font-size:.86rem; color:#3a444f; line-height:1.4; }
.sidebar-steps__list li:last-child{ margin-bottom:0; }
.sidebar-steps__list li::before{ content:counter(s); position:absolute; left:0; top:-1px; width:1.5rem; height:1.5rem; border-radius:50%; background:#ffac0a; color:#1a1206; font-weight:700; font-size:.8rem; display:flex; align-items:center; justify-content:center; }

/* ============================================================
   REDESIGN 2026-06-22 r15 — sticky left sidebar (fills empty space below by following scroll)
   ============================================================ */
@media (min-width:768px){
  .row > .col-12.col-md-4.col-lg-3 { position:sticky; top:12px; align-self:flex-start; }
}

/* ============================================================
   REDESIGN 2026-06-22 r17 — footer + header text alignment consistency
   ============================================================ */
/* footer: all 4 link columns single-column (ИНФОРМАЦИЯ was 2-col grid, others 1-col) */
.footer-menu { grid-template-columns:1fr !important; gap:0 !important; }
.footer-menu li, .footer-cat-list li, .footer-svc-list li { margin-bottom:8px; line-height:1.4; }
.footer-cols .footer-heading { margin-bottom:14px; }
.footer-cols [class*="col-"] { margin-bottom:8px; }
/* header: keep contact block tidy, phone never wraps */
.header .contact { text-align:right; line-height:1.4; }
.header .contact .phone { white-space:nowrap; display:inline-block; }
.header .contact .adress, .header .contact .timework { margin-bottom:2px; }

/* ============================================================
   REDESIGN 2026-06-22 r18 — let prose FILL the column (owner: «смещено влево, справа место»)
   removes the readability max-width caps that left empty right side
   ============================================================ */
.home-hero__lead, .home-content__lead, .home-content__section p,
.home-about__lead, .home-brands__note, .home-industries__lead,
main.container .page-text.seo-text { max-width:none !important; }

/* ============================================================
   REDESIGN 2026-06-22 r21 — service price/lead block (market-average, orientational)
   ============================================================ */
.service-price{ background:#fff7e6; border:1px solid #ffe2ad; border-radius:14px; padding:16px 18px; }
.service-price__grid{ display:flex; flex-wrap:wrap; gap:14px 40px; }
.service-price__item{ display:flex; flex-direction:column; }
.service-price__label{ font-size:12px; color:#92600a; font-weight:600; text-transform:uppercase; letter-spacing:.03em; margin-bottom:2px; }
.service-price__val{ font-size:20px; font-weight:700; color:#0f1b2d; line-height:1.2; }
.service-price__val2{ font-size:13px; color:#475569; margin-top:3px; }
.service-price__note{ font-size:12px; color:#64748b; margin:12px 0 0; line-height:1.45; }

/* ============================================================
   REDESIGN 2026-06-23 r22 — CONSOLIDATED (header + typography)
   Single source of truth for the rendered-layer redesign:
     A) compact header (~220px -> ~88px, logo 48px, tidy contacts,
        single-row nav, sticky OFF per owner «раздражает при скролле»)
     B) typography system (content 15.5px/1.6, paragraph rhythm,
        ~72ch read-prose measure, balanced H1 30->38 / H2 23 / H3 18.5)
   Template-free: only cascade !important overrides live here.
   Supersedes earlier tail rules: nav (276-281), sticky note (287),
   H1 clamp 40 (440-443), contact stack (499-501). This block is LAST
   in the file, so equal-or-higher-specificity selectors win.
   On paste: REPLACE the previous standalone r22 typography block
   (the 2026-06-23 r22 TYPOGRAPHY SYSTEM block) with this one — do
   not keep both. Bump <link> ?v= (currently ?v=2026062226).
   ============================================================ */

/* ====================== A. HEADER ====================== */

/* A1. Kill vertical padding that inflated the top row; force ONE line */
.header .container > .row.align-items-center {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  flex-wrap: nowrap !important;            /* logo | search | contacts on one line */
  gap: 18px;
}
.header .container > .row.align-items-center > [class*="col"] {
  padding-top: 0 !important;               /* neutralise pt-3 / pt-xl-4 / mt-xl-2 */
  margin-top: 0 !important;
}
.header .container > .row.align-items-center .search.pt-3,
.header .container > .row.align-items-center .search { margin-top: 0 !important; }

/* A2. Logo down to ~48px (intrinsic 75px is too tall for a compact bar) */
.header .logo img { height: 48px !important; width: auto !important; }
.header .logo { line-height: 0; }

/* A3. Search: thinner, inline, drop the strapline that clutters the bar */
.header .search { margin: 0 !important; max-width: 360px; width: 100%; }
.header .search .input-group { flex-wrap: nowrap; }
.header .search .input_search.form-control { height: 38px; font-size: 14px; }
.header .search #button-addon2 { height: 38px; padding: 0 16px; font-size: 14px; }
.header .search > .text-center { display: none !important; }

/* A4. Contacts: one tidy right-hand group (supersedes lines 499-501) */
.header .contact {
  display: flex !important;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  text-align: right !important;
  line-height: 1.25 !important;
  gap: 1px;
  white-space: nowrap;
}
.header .contact .phone {
  order: 1;
  font-size: 19px !important;              /* was ~30px */
  font-weight: 700;
  color: #0f1b2d !important;
  text-decoration: none;
  letter-spacing: .01em;
  display: inline-block;
}
.header .contact .phone:hover { color: #176fc3 !important; }
.header .contact .timework {
  order: 2; font-size: 12px !important; font-weight: 500 !important;
  color: #64748b !important; margin: 0 !important;
}
.header .contact .timework b { font-weight: 500 !important; }
.header .contact .adress {
  order: 3; font-size: 12px !important; color: #94a3b8 !important; margin: 0 !important;
}
.header .contact .email {
  order: 4; font-size: 12px !important; color: #176fc3 !important; text-decoration: none;
}
.header .contact .email:hover { text-decoration: underline; }
.header .mobile_menu.col-xl { flex: 0 0 auto !important; width: auto !important; }

/* A5. City-switcher row: slim, no heavy border */
.header .city-switcher-row { padding-top: 4px !important; padding-bottom: 4px !important; }
.header .city-switcher__summary { padding: 2px 6px; font-size: 13px; }

/* A6. Main nav: one centered, compact row (supersedes r3 nav at 276-281) */
.header nav .nav.navbar.justify-content-center {
  flex-wrap: nowrap !important;
  gap: 2px;
  padding: 4px 0 !important;
  margin: 0 !important;
  overflow-x: auto;                        /* never wrap to a 2nd line */
  -ms-overflow-style: none; scrollbar-width: none;
}
.header nav .nav.navbar.justify-content-center::-webkit-scrollbar { display: none; }
.header nav .nav.navbar .nav-link {
  white-space: nowrap; font-size: 14px; padding: 6px 10px !important;
}
/* keep r3 active-underline + brand hover, just tighten the catalog pill */
.header nav .nav.navbar li.selected .nav-link { color: #17395d; font-weight: 600; position: relative; }
.header nav .nav.navbar li.selected .nav-link::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: #ffac0a;
}
.header nav .nav.navbar .nav-link:hover { color: #17395d; }
.header .nav-link--catalog {
  background: #ffac0a; color: #1a1206 !important; border-radius: 9px;
  font-weight: 600; padding: 6px 14px !important;
}
.header .nav-link--catalog:hover { background: #f59e0b; color: #1a1206 !important; }

/* A7. Light divider only; sticky stays OFF per owner (do NOT re-add) */
.header { border-bottom: 1px solid #e6eaf0; }

/* 2026-08-20: restore the responsive header contract after A4's desktop override. */
@media (max-width: 767.98px) {
  .header .contact { display: none !important; }
  .header .container > .row.align-items-center { gap: 12px; }
  .header .mobile_menu.col-xl {
    min-width: 0;
    max-width: none;
    flex: 0 0 auto !important;
    width: auto !important;
  }
  .header .mobile_menu .navbar { padding-left: 0; padding-right: 0; }
}

/* ==================== B. TYPOGRAPHY ==================== */

/* B1. Content body: 15.5px / 1.6 across the read surface */
main.container p, main.container li,
.seo-text, .seo-text p, .seo-text li,
.catalog-seo-text, .catalog-seo-text p, .catalog-seo-text li,
.page-text, .page-text p, .page-text li,
.home-content, .home-content p, .home-content li,
.product .description, .product .description p, .product .description li {
  font-size: 15.5px !important;
  line-height: 1.6 !important;
  color: #374151;
}
/* keep small/meta copy small — bump must not inflate badges/notes */
.small, small, .text-muted.small,
.price-trust-row, .home-hero__facts li, .footer-menu li,
.product-card-description, .breadcrumb, .page-breadcrumb-bar .breadcrumb,
.sidebar-cta__text, .sidebar-trust__list li, .home-why__text,
.catalog-chip, .home-industries__chip { font-size: inherit; }
.small, small { font-size: .85em !important; }

/* B2. Paragraph rhythm: ~0.9em gap, tight first/last */
.seo-text p, .catalog-seo-text p, .page-text p,
.home-content p, .home-content__section p, .home-content__lead,
main.container .home-content p, .product .description p {
  margin: 0 0 .9em !important;
}
.seo-text p:last-child, .catalog-seo-text p:last-child,
.page-text p:last-child, .home-content p:last-child,
.home-content__section p:last-child, .product .description p:last-child {
  margin-bottom: 0 !important;
}
.seo-text ul, .seo-text ol,
.catalog-seo-text ul, .catalog-seo-text ol,
.page-text ul, .page-text ol,
.home-content ul, .home-content ol { margin: 0 0 .9em !important; }
.seo-text li, .catalog-seo-text li, .page-text li,
.home-content li { margin-bottom: .35em !important; }

/* B3. Readable measure ~72ch — standalone read-prose only (r18 full-fill excluded) */
main.container .page-text.seo-text,
main.container > .seo-text,
.catalog-seo-text--top .catalog-seo-text,
.product .description { max-width: 72ch !important; }
.home-content--details .home-content__section p,
.home-content--details .home-content__lead { max-width: 72ch; }

/* B4. Heading scale: H1 30->38 (was clamp ...40 which «рвёт»), H2 23, H3 18.5 */
main h1, .home-hero__title, .page-title {
  font-size: clamp(30px, 1.6vw + 20px, 38px) !important;
  line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -.01em !important;
}
@media (max-width: 575.98px) {
  main h1, .home-hero__title, .page-title { font-size: 26px !important; }
}
main h2,
.home-why__title, .home-industries__title, .home-brands__title,
.home-router__title, .home-catalog-preview__title, .home-about__title,
.home-content__title, .home-content__section h2, .catalog-seo-text h2 {
  font-size: 23px !important; line-height: 1.25 !important; font-weight: 700 !important;
  letter-spacing: -.01em !important; color: #0f1b2d !important; text-shadow: none !important;
}
main h3, .catalog-seo-text h3, .home-content__section h3,
.product .description h3 {
  font-size: 18.5px !important; line-height: 1.3 !important; font-weight: 600 !important;
  letter-spacing: -.005em !important; color: #17283d !important; text-shadow: none !important;
}

/* B5. Space after headings before following text */
main h1, .home-hero__title { margin: 0 0 .55em !important; }
main h2,
.home-content__title, .home-content__section h2, .catalog-seo-text h2,
.home-why__title, .home-industries__title, .home-brands__title,
.home-router__title, .home-catalog-preview__title, .home-about__title {
  margin: 1.4em 0 .5em !important;
}
.home-content__section:first-child h2,
.catalog-seo-text > h2:first-child,
.seo-text > h2:first-child { margin-top: .2em !important; }
main h3, .catalog-seo-text h3, .home-content__section h3 { margin: 1.1em 0 .4em !important; }

/* B6. Tech tables / annotations track the new body size */
.product-tech-html, .product-tech-html td, .product-tech-html th {
  font-size: 15px !important; line-height: 1.55 !important;
}
.product-annotation, .product-annotation__text {
  font-size: 15px !important; line-height: 1.6 !important;
}
/* ===================== end r22 consolidated ===================== */

/* ============================================================
   SPRINT 0-1  2026-06-24 — B2B redesign additions
   ============================================================ */

/* 1. Sticky CTA column (right panel follows scroll; owner said NO sticky header,
      but the product right column is a different, smaller element — still usable) */
@media (min-width:768px){
  .product-info-column { position:sticky; top:24px; align-self:flex-start; }
}

/* 2. Hover-zoom on main product photo */
.product-main-zoom { display:block; overflow:hidden; }
.product-main-zoom img { transition:transform 0.35s ease; }
.product-main-zoom:hover img { transform:scale(1.06); }

/* 3. Floating WhatsApp/Telegram CTA */
.float-cta {
  position:fixed; bottom:24px; right:20px; z-index:1050;
  display:flex; flex-direction:column; gap:10px; align-items:flex-end;
}
.float-cta__btn {
  display:flex; align-items:center; justify-content:center;
  width:52px; height:52px; border-radius:50%;
  text-decoration:none;
  box-shadow:0 4px 16px rgba(0,0,0,.22);
  transition:transform .15s ease, box-shadow .15s ease;
}
.float-cta__btn:hover { transform:scale(1.1); box-shadow:0 6px 24px rgba(0,0,0,.28); }
.float-cta__wa { background:#25D366; }
.float-cta__tg { background:#2AABEE; }
.float-cta__btn svg { width:26px; height:26px; fill:#fff; display:block; }

/* 4. Stat counters block on homepage */
.home-stats {
  display:grid; grid-template-columns:repeat(4,1fr);
  border:1.5px solid #e6eaf0; border-radius:14px;
  overflow:hidden; margin:0 0 24px;
}
.home-stats__item {
  padding:16px 12px; text-align:center;
  border-right:1.5px solid #e6eaf0;
}
.home-stats__item:last-child { border-right:0; }
.home-stats__num { font-size:26px; font-weight:800; color:#17395d; line-height:1; margin-bottom:4px; }
.home-stats__lbl { font-size:12px; color:#64748b; line-height:1.3; }
@media (max-width:575.98px){
  .home-stats { grid-template-columns:1fr 1fr; }
  .home-stats__item:nth-child(1),
  .home-stats__item:nth-child(2) { border-bottom:1.5px solid #e6eaf0; }
  .home-stats__item:nth-child(2) { border-right:0; }
  .home-stats__num { font-size:22px; }
}

/* ===================== end sprint 0-1 ===================== */

/* ============================================================
   SPRINT 0-2 v2  2026-06-24 — Product card B2B redesign
   Reference: Grainger / RS Components / Conrad / MSC Industrial
   Clean white, raw price number, no decorative boxes
   ============================================================ */

/* --- IMAGE AREA: fixed container, white bg, no giant margin --- */
.products .product-card > a.text-center {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 20px 16px !important;
  height: 182px !important;
  overflow: hidden !important;
  border-radius: 10px 10px 0 0 !important;
  background: #fff !important;
  border-bottom: 1px solid #f0f2f5 !important;
}

/* Override the blue-gradient + floating-border on product img from style.css */
.products .product-card a > img {
  height: auto !important;
  max-height: 140px !important;
  width: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  background: transparent !important;
  border: none !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* --- CARD: crisp border, tight radius (не retail-round) --- */
.products .product-card {
  border-radius: 10px !important;
  border: 1px solid #e2e8f0 !important;
  background: #fff !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.05) !important;
  transition: box-shadow .18s ease, border-color .18s ease !important;
  overflow: visible !important; /* was hidden — ::before accent stripe requires visible */
}
.products .product-card:hover {
  box-shadow: 0 6px 22px rgba(0,0,0,.10) !important;
  border-color: #94a3b8 !important;
  transform: none !important;
}

/* --- CARD BODY --- */
.products .product-card .card-body {
  border-top: none !important;
  padding: 12px 14px 14px !important;
  margin: 0 !important;
}

/* --- SKU: clean sans-serif badge (RS Components style) --- */
.products .product-card .card-body .pb-2 {
  display: inline-block !important;
  font-size: 11px !important;
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 500 !important;
  color: #64748b !important;
  background: #f1f5f9 !important;
  border-radius: 4px !important;
  padding: 2px 7px !important;
  margin-bottom: 5px !important;
  letter-spacing: .03em !important;
  user-select: all;
}

/* --- Brand meta --- */
.products .product-card .product-meta {
  font-size: .73rem !important;
  color: #64748b !important;
  opacity: 1 !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}
.products .product-card .product-meta:hover { color: #1d4ed8 !important; }

/* --- Title --- */
.products .product-card .product-title {
  font-size: .9rem !important;
  line-height: 1.35 !important;
  margin-bottom: .3rem !important;
  font-weight: 600 !important;
  -webkit-line-clamp: unset !important;
  display: block !important;
  overflow: visible !important;
  -webkit-box-orient: unset !important;
}
.products .product-card .product-title a {
  color: #0f172a !important;
  text-decoration: none !important;
}
.products .product-card .product-title a:hover {
  color: #1d4ed8 !important;
}

/* --- PRICE: raw bold number, NO box, NO background --- */
.products .product-card .product-card-price {
  min-height: unset !important;
  display: block !important;
  margin-bottom: 10px !important;
}
.products .product-card .product-card-price--priced {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  flex-direction: unset !important;
  align-items: unset !important;
}
.products .product-card .product-card-price--priced::after {
  content: none !important;
  display: none !important;
}
.products .product-card .product-card-price__current {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em !important;
  display: block !important;
}
.products .product-card .product-card-price__old {
  font-size: 12px !important;
  color: #94a3b8 !important;
  text-decoration: line-through !important;
  display: block !important;
  margin-bottom: 1px !important;
}

/* --- "Цена по запросу": dashed underline link (B2B standard) --- */
.products .product-card .product-card-price--request {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  min-height: unset !important;
}
.product-card-price__request {
  display: inline !important;
  background: none !important;
  border: none !important;
  border-bottom: 1.5px dashed #94a3b8 !important;
  border-radius: 0 !important;
  padding: 0 0 2px !important;
  color: #475569 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  text-align: left !important;
  width: auto !important;
  transition: color .12s, border-color .12s !important;
}
.product-card-price__request:hover {
  color: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
  background: none !important;
}

/* --- Кнопки: "Подробнее" ghost, CTA solid --- */
.products .product-card .btn-outline-secondary {
  background: transparent !important;
  border: 1px solid #cbd5e1 !important;
  color: #475569 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  border-radius: 7px !important;
  padding: 7px 10px !important;
  transition: background .13s, border-color .13s, color .13s !important;
}
.products .product-card .btn-outline-secondary:hover {
  background: #f8fafc !important;
  border-color: #64748b !important;
  color: #0f172a !important;
}
.products .product-card .btn-yellow {
  font-size: 14px !important;
  font-weight: 700 !important;
  border-radius: 7px !important;
  letter-spacing: .01em !important;
  box-shadow: none !important;
}
.products .product-card .btn-yellow:hover {
  filter: brightness(1.06) !important;
  box-shadow: 0 3px 10px rgba(255,172,10,.28) !important;
}

/* --- Missing photo placeholder --- */
.product-card-image-missing {
  height: 182px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f8fafc !important;
  color: #94a3b8 !important;
  font-size: 13px !important;
  border-radius: 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid #f0f2f5 !important;
}

/* ===================== end sprint 0-2 v2 ===================== */

/* ============================================================
   SPRINT 0-3  2026-06-24 — Availability badge + hover accent
   Pattern: RS Components, Grainger, Würth, Conrad
   ============================================================ */

/* --- Override legacy product-card-price height rule (r9 line 361) --- */
.products .product-card .product-card-price {
  min-height: unset !important;
  display: block !important;
  align-items: unset !important;
  margin-bottom: 6px !important;
}

/* --- AVAILABILITY BADGE --- */
.product-avail-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 9px 3px 7px;
  border-radius: 999px;
  margin-bottom: 7px;
  line-height: 1;
  letter-spacing: .01em;
}
.product-avail-badge::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

/* "В наличии" — зелёный как на RS Components */
.product-avail-badge--instock {
  background: #dcfce7;
  color: #15803d;
}
.product-avail-badge--instock::before {
  background: #16a34a;
  box-shadow: 0 0 0 2px rgba(22,163,74,.2);
}

/* "Под заказ" — нейтральный серый */
.product-avail-badge--order {
  background: #f1f5f9;
  color: #64748b;
}
.product-avail-badge--order::before {
  background: #94a3b8;
}

/* --- HOVER TOP-ACCENT — цветная полоска сверху при hover (Würth / RS паттерн) --- */
.products .product-card {
  position: relative !important;
}
.products .product-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: transparent;
  border-radius: 10px 10px 0 0;
  transition: background .18s ease;
  z-index: 1;
  pointer-events: none;
}
.products .product-card:hover::before {
  background: #ffac0a;
}

/* ===================== end sprint 0-3 ===================== */

/* ============================================================
   SPRINT 0-4  2026-06-24 — Mobile fixes, focus rings, B2B patterns
   ============================================================ */

/* --- Fix float CTA for iOS safe area (iPhone home indicator) --- */
.float-cta {
  bottom: max(24px, env(safe-area-inset-bottom, 24px)) !important;
  right: max(20px, env(safe-area-inset-right, 20px)) !important;
}

/* --- Stats grid: intermediate breakpoint 576-768px --- */
@media (max-width:767.98px) and (min-width:576px) {
  .home-stats { grid-template-columns: repeat(2, 1fr) !important; }
  .home-stats__item:nth-child(1),
  .home-stats__item:nth-child(2) { border-bottom: 1.5px solid #e6eaf0; }
  .home-stats__item:nth-child(2) { border-right: 0; }
}

/* --- Hero CTA buttons full-width on mobile --- */
@media (max-width:575.98px) {
  .home-hero__actions { flex-direction: column !important; align-items: stretch !important; }
  .home-hero__actions .btn { width: 100% !important; text-align: center !important; }
  .home-hero__phone { text-align: center !important; }
}

/* --- Nav scroll affordance: right-edge fade on narrow phones --- */
@media (max-width:575.98px) {
  .header nav { position: relative; }
  .header nav::after {
    content: "";
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 32px;
    background: linear-gradient(to right, transparent, #fff 90%);
    pointer-events: none;
    z-index: 2;
  }
}

/* --- FAQ accordion: tighter line-height on multi-line questions --- */
.faq-accordion .faq-item summary { line-height: 1.35; }

/* --- Keyboard focus rings: B2B catalog accessibility (WCAG 2.4.7) --- */
.products .product-card:focus-within {
  outline: 2px solid #176fc3;
  outline-offset: 2px;
}
.products .product-card a:focus-visible {
  outline: 2px solid #176fc3;
  outline-offset: 3px;
  border-radius: 4px;
}

/* --- Datasheet link (future use — RS Components / Conrad pattern) --- */
.product-card-doc {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: #1d4ed8;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color .12s;
  margin-top: 4px;
}
.product-card-doc:hover { border-bottom-color: #1d4ed8; }

/* ===================== end sprint 0-4 ===================== */
