/* Compact shared white navigation. Every presentation selector is namespaced. */
.ekx-site-header {
  position: sticky;
  top: 0;
  z-index: 120;
  height: 76px;
  border-bottom: 1px solid #e4e9ed;
  background: #fff;
  color: #09152c;
  font: 14px/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  box-shadow: none;
}
.ekx-site-header *, .ekx-site-header *::before, .ekx-site-header *::after { box-sizing: border-box; transition: none; }
.ekx-header-inner { position: relative; display: flex; align-items: center; gap: 24px; width: min(1240px, calc(100% - 40px)); height: 100%; margin: 0 auto; }
.ekx-site-header a { color: inherit; text-decoration: none; }
.ekx-site-header nav { position: static; width: auto; padding: 0; border: 0; background: transparent; box-shadow: none; }
.ekx-brand { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; color: #13283a; font-size: 23px; font-weight: 700; line-height: 1; letter-spacing: -.7px; white-space: nowrap; }
.ekx-brand span { color: #225cff; }
.ekx-desktop-nav { display: flex; align-items: center; gap: 2px; margin-left: auto; }
.ekx-nav-link, .ekx-nav-trigger { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 10px 11px; border: 0; border-radius: 7px; color: #34415a; background: transparent; font: inherit; font-weight: 600; line-height: 1.3; cursor: pointer; white-space: nowrap; }
.ekx-site-header summary { list-style: none; }
.ekx-site-header summary::-webkit-details-marker { display: none; }
.ekx-nav-link:hover, .ekx-nav-trigger:hover, .ekx-disclosure[open] > .ekx-nav-trigger, .ekx-desktop-nav [aria-current="page"], .ekx-mobile-drawer [aria-current="page"] { color: #1749d2; background: #edf3ff; }
.ekx-site-header a:focus-visible, .ekx-site-header summary:focus-visible { outline: 3px solid #225cff; outline-offset: 3px; }
.ekx-chevron { flex: 0 0 auto; width: 7px; height: 7px; margin: -3px 2px 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); transition: transform 150ms ease; }
.ekx-disclosure[open] > summary .ekx-chevron, .ekx-mobile-group[open] > summary .ekx-chevron { transform: rotate(225deg); margin-top: 3px; }
.ekx-disclosure { position: relative; }
/* Native hit area bridges the 17px visual gap; JS adds departure grace. */
.ekx-disclosure[open]::after { position: absolute; top: 100%; left: 0; width: 100%; height: 18px; content: ""; }
.ekx-nav-panel { position: absolute; top: calc(100% + 17px); left: 0; width: 250px; max-height: calc(100dvh - 112px); overflow-y: auto; padding: 12px; border: 1px solid #dce4f0; border-radius: 10px; color: #13283a; background: #fff; box-shadow: 0 12px 28px rgba(19, 40, 58, .09); }
.ekx-disclosure:not([open]) > .ekx-nav-panel { display: none; }
.ekx-nav-panel a { display: flex; align-items: center; min-height: 44px; padding: 10px; border-radius: 9px; font-size: 13px; font-weight: 650; line-height: 1.35; }
.ekx-nav-panel a:hover { color: #1749d2; background: #edf3ff; }
.ekx-products-panel { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 10px; width: 540px; }
.ekx-panel-main { min-width: 0; padding: 4px; }
.ekx-panel-label { margin: 0 0 9px; padding-left: 8px; color: #637089; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ekx-product-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; }
.ekx-nav-panel .ekx-product-link { display: flex; flex-direction: column; gap: 10px; padding: 10px 4px; text-align: center; }
.ekx-product-link img { display: block; width: 92px; max-width: 100%; height: 68px; object-fit: contain; }
.ekx-product-link strong { font-size: 12px; font-weight: 700; white-space: nowrap; }
.ekx-nav-panel .ekx-panel-all { justify-content: space-between; margin-top: 10px; border-top: 1px solid #dce4f0; border-radius: 0 0 9px 9px; color: #1749d2; }
.ekx-panel-side { padding: 4px; border-radius: 7px; background: #f1f5f8; }
.ekx-solutions-panel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; width: 460px; }
.ekx-solution-links { padding: 4px; }
.ekx-header-actions { display: flex; align-items: center; gap: 17px; }
.ekx-header-phone { display: flex; align-items: center; gap: 8px; min-height: 44px; font-size: 13px; font-weight: 750; white-space: nowrap; }
.ekx-header-phone:hover, .ekx-drawer-phone:hover { color: #1749d2; }
.ekx-phone-icon { flex: 0 0 auto; width: 17px; height: 17px; fill: #225cff; }
.ekx-site-header .ekx-order-link { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 11px 16px; border: 1px solid #225cff; border-radius: 11px; color: #fff; background: #225cff; font-size: 13px; font-weight: 750; line-height: 1.3; white-space: nowrap; }
.ekx-site-header .ekx-order-link:hover { border-color: #1749d2; background: #1749d2; }
.ekx-mobile-actions { display: none; }
/* Exact empty legacy spacers immediately after the replaced navigation. */
.ekx-site-header + div[class="h-20 subpage-nav-spacer"]:empty,
.ekx-site-header + div[class="h-20"]:empty,
.ekx-site-header + div[class="pt-20"]:empty { display: none; }
@media (min-width: 1120px) and (max-width: 1199px) {
  .ekx-header-inner { gap: 14px; }
  .ekx-header-actions { gap: 12px; }
  .ekx-nav-link, .ekx-nav-trigger { padding-inline: 9px; }
}
@media (max-width: 1119px) {
  .ekx-site-header { height: 72px; }
  .ekx-header-inner { width: calc(100% - 32px); gap: 12px; }
  .ekx-desktop-nav, .ekx-header-actions { display: none; }
  .ekx-brand { font-size: 22px; }
  .ekx-mobile-actions { display: flex; align-items: center; gap: 10px; margin-left: auto; }
  .ekx-mobile-menu { position: static; }
  .ekx-menu-toggle { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #dce4f0; border-radius: 11px; color: #09152c; background: #fff; cursor: pointer; }
  .ekx-menu-icon, .ekx-menu-icon::before, .ekx-menu-icon::after { display: block; width: 18px; height: 2px; border-radius: 2px; background: currentColor; }
  .ekx-menu-icon { position: relative; }
  .ekx-menu-icon::before, .ekx-menu-icon::after { position: absolute; left: 0; content: ""; }
  .ekx-menu-icon::before { top: -6px; }
  .ekx-menu-icon::after { top: 6px; }
  .ekx-mobile-menu[open] .ekx-menu-icon { background: transparent; }
  .ekx-mobile-menu[open] .ekx-menu-icon::before { top: 0; transform: rotate(45deg); }
  .ekx-mobile-menu[open] .ekx-menu-icon::after { top: 0; transform: rotate(-45deg); }
  .ekx-mobile-menu[open]::before { position: fixed; inset: 72px 0 0; background: rgba(9, 21, 44, .22); content: ""; }
  .ekx-mobile-drawer { position: fixed; top: 72px; right: 0; bottom: 0; width: min(440px, 100%); overflow-y: auto; overscroll-behavior: contain; padding: 16px 20px 24px; border-left: 1px solid #dce4f0; background: #fff; box-shadow: -12px 18px 35px rgba(9, 21, 44, .08); }
  .ekx-mobile-menu:not([open]) .ekx-mobile-drawer { display: none; }
  .ekx-mobile-drawer a, .ekx-mobile-group > summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; padding: 10px 12px; border-radius: 9px; font-size: 15px; font-weight: 650; line-height: 1.45; }
  .ekx-mobile-group { padding-block: 4px; border-block-start: 1px solid #e8edf5; }
  .ekx-mobile-group > summary { cursor: pointer; }
  .ekx-mobile-group-links { display: grid; gap: 2px; padding: 2px 0 5px 12px; }
  .ekx-mobile-group:not([open]) > .ekx-mobile-group-links { display: none; }
  .ekx-mobile-group-links a { color: #34415a; font-size: 14px; font-weight: 500; }
  .ekx-mobile-drawer a:hover, .ekx-mobile-group > summary:hover { color: #1749d2; background: #edf3ff; }
  .ekx-drawer-contact { display: grid; gap: 10px; margin-top: 16px; padding-top: 16px; border-top: 1px solid #dce4f0; }
  .ekx-mobile-drawer .ekx-drawer-phone { justify-content: center; font-weight: 750; }
  body.ekx-menu-open { overflow: hidden; }
  body.ekx-menu-open #sticky-cta, body.ekx-menu-open #ai-chat-widget, body.ekx-menu-open button[onclick="openAIChat()"] { visibility: hidden !important; pointer-events: none !important; transition: none !important; }
}
@media (max-width: 359px) { .ekx-mobile-order { display: none !important; } }
@media (prefers-reduced-motion: reduce) { .ekx-chevron { transition: none; } }
@media print { .ekx-site-header { display: none; } body.ekx-menu-open { overflow: visible; } }

/* Expert Shop homepage: original content, prices, assets and forms are retained.
   Section colour expresses purpose; existing promotions remain factual. */
body.homepage-expert-2026 {
  --brand: #1656bd;
  --brand-dark: #10438f;
  --ink: #202a36;
  --muted: #586575;
  --line: #dce3e9;
  --surface: #f2f6fb;
  --navy: #202a36;
  --shop-blue: #edf3fa;
  --shop-cream: #faf3e8;
  --shop-sage: #edf3eb;
  color: var(--ink);
  background: #fff;
  padding-bottom: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.homepage-expert-2026 :where(main, .homepage-footer) { min-width: 0; }
body.homepage-expert-2026 :where(main, .homepage-footer) :where(h1, h2, h3, h4) { color: var(--ink); }
body.homepage-expert-2026 :where(main, .homepage-footer) :where(p, li) { overflow-wrap: break-word; }
body.homepage-expert-2026 .site-container { width: min(1160px, calc(100% - 64px)); margin-inline: auto; }
body.homepage-expert-2026 .section-space { padding-block: 52px; }
body.homepage-expert-2026 h2 { margin: 0 0 12px; font-size: clamp(26px, 2.5vw, 34px); line-height: 1.2; letter-spacing: -.025em; font-weight: 700; }
body.homepage-expert-2026 .eyebrow { margin: 0 0 10px; color: var(--muted); font-size: 12px; line-height: 1.5; letter-spacing: .055em; font-weight: 600; text-transform: uppercase; }
body.homepage-expert-2026 .text-link { color: var(--brand); font-size: 14px; font-weight: 600; white-space: normal; }
body.homepage-expert-2026 .text-link:hover { color: var(--brand-dark); text-decoration: underline; text-underline-offset: 3px; }
body.homepage-expert-2026 :where(main, .homepage-footer, #sticky-cta, #ai-chat-widget) :where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #1656bd; outline-offset: 3px; }
body.homepage-expert-2026 .button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 11px 18px; border-radius: 6px; font-size: 14px; line-height: 1.4; font-weight: 600; text-decoration: none; white-space: normal; }
body.homepage-expert-2026 .button-primary,
body.homepage-expert-2026 .button-yellow,
body.homepage-expert-2026 .homepage-final-cta .button-yellow,
body.homepage-expert-2026 .hero-actions .button-primary { color: #fff; background: var(--brand); border: 1px solid var(--brand); box-shadow: none; }
body.homepage-expert-2026 .button-primary:hover,
body.homepage-expert-2026 .button-yellow:hover,
body.homepage-expert-2026 .homepage-final-cta .button-yellow:hover,
body.homepage-expert-2026 .hero-actions .button-primary:hover { color: #fff; background: var(--brand-dark); border-color: var(--brand-dark); transform: none; }
body.homepage-expert-2026 .button-outline,
body.homepage-expert-2026 .button-white,
body.homepage-expert-2026 .homepage-final-cta .button-white,
body.homepage-expert-2026 .hero-actions .button-outline { color: var(--brand); background: #fff; border: 1px solid #a9bfd9; box-shadow: none; }
body.homepage-expert-2026 .button-outline:hover,
body.homepage-expert-2026 .button-white:hover,
body.homepage-expert-2026 .homepage-final-cta .button-white:hover { color: var(--brand-dark); background: #f5f8fc; border-color: var(--brand); transform: none; }

/* Purchase information is in the first column, before the image on mobile. */
body.homepage-expert-2026 .law-strip { color: #324d68; background: #e2ecf7; }
body.homepage-expert-2026 .law-strip > div { display: flex; align-items: center; justify-content: space-between; min-height: 34px; gap: 14px; padding-block: 7px; font-size: 12px; line-height: 1.45; }
body.homepage-expert-2026 .law-strip a { padding: 0; color: var(--brand-dark); background: transparent; border-radius: 0; font-size: 12px; font-weight: 600; white-space: nowrap; }
body.homepage-expert-2026 .homepage-hero { min-height: 0; height: auto; color: var(--ink); background: var(--shop-blue); border: 0; overflow: visible; }
body.homepage-expert-2026 .homepage-hero::before { content: none; }
body.homepage-expert-2026 .hero-layout { position: relative; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); align-items: center; gap: 48px; padding-block: 36px; }
body.homepage-expert-2026 .hero-copy { min-width: 0; padding: 0; }
body.homepage-expert-2026 .hero-copy > .eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 16px; color: #465c72; font-size: 11px; letter-spacing: .04em; }
body.homepage-expert-2026 .status-dot { background: #587b66; box-shadow: none; animation: none; }
body.homepage-expert-2026 .hero-copy h1 { max-width: 600px; margin: 0; color: var(--ink); font-size: clamp(40px, 3.55vw, 48px); line-height: 1.12; letter-spacing: -.035em; font-weight: 700; }
body.homepage-expert-2026 .hero-copy h1 > span { color: var(--ink); }
body.homepage-expert-2026 .hero-copy h1 small { display: block; max-width: 500px; margin-top: 13px; color: #42546a; font-size: 20px; line-height: 1.4; letter-spacing: -.01em; font-weight: 500; }
body.homepage-expert-2026 .hero-description { max-width: 540px; margin: 13px 0 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
body.homepage-expert-2026 .hero-copy > .product-label { position: static; inset: auto; display: block; margin-top: 18px; padding: 0; color: var(--ink); background: transparent; border: 0; border-radius: 0; font-size: 14px; font-weight: 700; letter-spacing: 0; }
body.homepage-expert-2026 .hero-price { position: static; inset: auto; display: grid; grid-template-columns: max-content max-content minmax(0, 1fr); align-items: center; gap: 3px 10px; width: auto; margin: 8px 0 0; padding: 14px 0 12px; color: var(--ink); background: transparent; border: 0; border-block: 1px solid #cbd8e8; border-radius: 0; box-shadow: none; text-align: left; }
body.homepage-expert-2026 .hero-price > p:first-child { grid-column: 1 / 3; grid-row: 1; margin: 0; color: var(--muted); font-size: 12px; font-weight: 500; line-height: 1.5; letter-spacing: 0; text-transform: none; }
body.homepage-expert-2026 .old-price { grid-column: 3; grid-row: 1; display: flex; align-items: center; justify-content: flex-start; gap: 8px; font-size: 12px; line-height: 1.5; }
body.homepage-expert-2026 .old-price s { color: var(--muted); }
body.homepage-expert-2026 .old-price span { color: #70451a; background: #fae7c7; border: 1px solid #efcf9e; border-radius: 4px; padding: 2px 6px; font-size: 11px; font-weight: 700; }
body.homepage-expert-2026 .hero-price > strong { grid-column: 1; grid-row: 2; display: block; margin: 0; color: var(--ink); font-size: 46px; font-weight: 700; line-height: 1.15; letter-spacing: -.035em; }
body.homepage-expert-2026 .price-tax { grid-column: 2; grid-row: 2; margin: 8px 0 0; color: var(--muted); font-size: 13px; white-space: nowrap; }
body.homepage-expert-2026 .hero-price .button { grid-column: 3; grid-row: 2; justify-self: start; width: auto; min-height: 44px; margin: 0; padding: 5px 8px; color: var(--brand); background: transparent; border: 0; border-radius: 0; box-shadow: none; font-size: 13px; text-align: left; }
body.homepage-expert-2026 .hero-price .button:hover { color: var(--brand-dark); background: transparent; text-decoration: underline; }
body.homepage-expert-2026 .shipping { grid-column: 1 / -1; grid-row: 3; display: flex; align-items: center; gap: 7px; margin: 3px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
body.homepage-expert-2026 .shipping i { color: #587b66; }
body.homepage-expert-2026 .hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 15px 0 12px; }
body.homepage-expert-2026 .service-note { display: block; max-width: 550px; margin: 0; color: #46586d; font-size: 13px; line-height: 1.55; }
body.homepage-expert-2026 .service-note strong { color: var(--ink); font-weight: 700; }
body.homepage-expert-2026 .hero-experts { display: flex; align-items: center; gap: 12px; margin-top: 18px; padding-top: 0; color: var(--ink); border: 0; }
body.homepage-expert-2026 .avatar-stack { flex-shrink: 0; }
body.homepage-expert-2026 .avatar-stack img { width: 42px; height: 42px; border: 2px solid var(--shop-blue); object-fit: cover; }
body.homepage-expert-2026 .hero-experts strong { color: var(--ink); font-size: 13px; font-weight: 600; }
body.homepage-expert-2026 .hero-company { margin: 3px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; }
body.homepage-expert-2026 .hero-experts .text-link { color: var(--brand); font-size: 18px; }
body.homepage-expert-2026 .hero-product { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; min-height: 0; height: auto; padding: 24px; gap: 15px; background: #e4edf7; border: 1px solid #d3e0ee; border-radius: 10px; box-shadow: none; overflow: visible; }
body.homepage-expert-2026 .stage-halo { display: none; background: transparent; border: 0; }
body.homepage-expert-2026 .stage-halo::before,
body.homepage-expert-2026 .stage-halo::after { content: none; }
body.homepage-expert-2026 .hero-photo { position: static; display: flex; align-items: center; justify-content: center; width: 100%; max-width: 100%; margin: 0; padding: 0; }
body.homepage-expert-2026 .hero-photo img { position: static; width: auto; height: 390px; max-width: 100%; object-fit: contain; transform: none; filter: none; }
body.homepage-expert-2026 .hero-product-caption.floating-feature { position: static; inset: auto; display: block; grid-column: auto; width: 100%; max-width: none; margin: 0; padding: 13px 0 0; color: #40536b; background: transparent; border: 0; border-top: 1px solid #c6d7e9; border-radius: 0; box-shadow: none; font-size: 13px; line-height: 1.5; text-align: center; }
body.homepage-expert-2026 .hero-product-caption.floating-feature strong { color: var(--ink); font-weight: 600; }
body.homepage-expert-2026 .hero-product-caption.floating-feature span { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; }

/* Product columns share a scale, without lifting or shadow effects. */
body.homepage-expert-2026 .homepage-trust { color: var(--ink); background: #fff; border: 0; border-bottom: 1px solid var(--line); }
body.homepage-expert-2026 .homepage-trust .hero-benefits { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; max-width: none; padding: 21px 0; margin: 0; border: 0; }
body.homepage-expert-2026 .homepage-trust .hero-benefits li { display: flex; align-items: center; gap: 11px; padding-inline: 20px; color: #435163; font-size: 13px; font-weight: 500; line-height: 1.45; }
body.homepage-expert-2026 .homepage-trust .hero-benefits li:first-child { padding-left: 0; }
body.homepage-expert-2026 .homepage-trust .hero-benefits li + li { border-left: 1px solid var(--line); }
body.homepage-expert-2026 .homepage-trust .hero-benefits i { color: #537697; margin: 0; font-size: 22px; }
body.homepage-expert-2026 #produkty { background: #f5f8fc; }
body.homepage-expert-2026 .section-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 26px; margin-bottom: 27px; }
body.homepage-expert-2026 .section-heading p:not(.eyebrow) { max-width: 650px; color: var(--muted); font-size: 15px; line-height: 1.6; }
body.homepage-expert-2026 .featured-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
body.homepage-expert-2026 .product-card { position: relative; min-width: 0; display: flex; flex-direction: column; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; overflow: visible; transform: none; }
body.homepage-expert-2026 .product-card:hover { transform: none; box-shadow: none; }
body.homepage-expert-2026 .product-card > div:first-child { position: relative; display: flex; align-items: center; justify-content: center; height: 225px; flex-shrink: 0; aspect-ratio: auto; padding: 20px; background: #e8eff8; background-image: none; border: 1px solid #dce5ef; border-radius: 7px; }
body.homepage-expert-2026 .product-card > div:first-child picture { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
body.homepage-expert-2026 .product-card > div:first-child img { width: 100%; height: 100%; padding: 0; object-fit: contain; transform: none; filter: none; }
body.homepage-expert-2026 .product-card > div:first-child > .absolute { top: 10px; left: 10px; right: auto; padding: 4px 7px; color: #355b80; background: #fff; border: 1px solid #d4dfec; border-radius: 4px; font-size: 10px; font-weight: 600; }
body.homepage-expert-2026 .product-card > div:last-child { display: flex; flex-direction: column; flex: 1; padding: 18px 0 0; }
body.homepage-expert-2026 .product-card h3 { margin: 0 0 8px; color: var(--ink); font-size: 23px; line-height: 1.25; font-weight: 700; letter-spacing: -.02em; }
body.homepage-expert-2026 .product-card p { margin: 0 0 12px; color: var(--muted); font-size: 14px; line-height: 1.6; }
body.homepage-expert-2026 .product-card ul { margin: 0 0 14px; padding: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
body.homepage-expert-2026 .product-card > div:last-child > .flex { display: flex; align-items: baseline; justify-content: flex-start; gap: 9px; margin: auto 0 4px; padding-top: 5px; border: 0; }
body.homepage-expert-2026 .product-card > div:last-child > .flex > span:first-child { color: var(--muted); font-size: 13px; line-height: 1.45; }
body.homepage-expert-2026 .product-card > div:last-child > .flex > span:last-child { color: var(--ink); font-size: 29px; line-height: 1.3; font-weight: 700; letter-spacing: -.025em; }
body.homepage-expert-2026 .product-card a { display: inline-flex; align-items: center; justify-content: flex-start; align-self: flex-start; width: auto; min-height: 44px; padding: 8px 0; color: var(--brand); background: transparent; border: 0; border-radius: 0; font-size: 14px; line-height: 1.4; font-weight: 600; }
body.homepage-expert-2026 .product-card a:hover { color: var(--brand-dark); background: transparent; text-decoration: underline; }
body.homepage-expert-2026 .choose-banner { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 28px; padding: 20px 0 0; background: transparent; border: 0; border-top: 1px solid #d6e1ed; border-radius: 0; }
body.homepage-expert-2026 .choose-copy { display: flex; align-items: center; gap: 14px; }
body.homepage-expert-2026 .choose-copy > i { flex-shrink: 0; color: #537697; background: transparent; padding: 0; font-size: 22px; }
body.homepage-expert-2026 .choose-banner strong { color: var(--ink); font-size: 16px; font-weight: 600; }
body.homepage-expert-2026 .choose-banner p { margin-top: 4px; color: var(--muted); font-size: 13px; line-height: 1.5; }

/* Warm full-width people section, with the complete original portraits. */
body.homepage-expert-2026 .homepage-about { background: var(--shop-cream); border: 0; }
body.homepage-expert-2026 .about-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: center; gap: 58px; padding: 0; background: transparent; border: 0; border-radius: 0; }
body.homepage-expert-2026 .expert-about-copy { grid-column: 2; grid-row: 1; min-width: 0; }
body.homepage-expert-2026 .about-layout > .expert-about-copy > p:not(.eyebrow) { margin: 15px 0 0; max-width: none; color: #665e54; font-size: 15px; line-height: 1.7; }
body.homepage-expert-2026 .about-layout a { color: var(--brand); }
body.homepage-expert-2026 .company-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 22px; padding-top: 19px; max-width: none; border-top: 1px solid #ddd2c2; }
body.homepage-expert-2026 .company-facts > div { display: flex; flex-direction: column; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
body.homepage-expert-2026 .company-facts span { color: #756859; font-size: 12px; line-height: 1.5; }
body.homepage-expert-2026 .company-facts strong { margin-top: 4px; color: var(--ink); font-size: 24px; font-weight: 600; line-height: 1.3; }
body.homepage-expert-2026 .company-links { display: flex; flex-wrap: wrap; gap: 12px 18px; margin-top: 22px; font-size: 13px; line-height: 1.5; }
body.homepage-expert-2026 .team-panel { grid-column: 1; grid-row: 1; min-width: 0; max-width: none; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; text-align: left; }
body.homepage-expert-2026 .team-panel > h3 { margin: 0 0 14px; color: #756859; font-size: 13px; line-height: 1.5; font-weight: 600; }
body.homepage-expert-2026 .team-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-bottom: 18px; }
body.homepage-expert-2026 .team-grid article { min-width: 0; padding: 0; background: transparent; border: 0; border-radius: 0; overflow: visible; }
body.homepage-expert-2026 .team-grid article img { display: block; width: 100%; height: auto; max-height: 310px; aspect-ratio: 4 / 5; margin: 0 0 14px; padding: 0; object-fit: contain; object-position: center; background: #eee4d5; border: 0; border-radius: 5px; }
body.homepage-expert-2026 .team-grid h4 { margin: 0 0 5px; color: var(--ink); font-size: 17px; line-height: 1.35; font-weight: 700; }
body.homepage-expert-2026 .team-grid p { margin: 0 0 5px; color: #74614b; font-size: 12px; line-height: 1.5; }
body.homepage-expert-2026 .team-grid span { display: block; color: #665e54; font-size: 13px; line-height: 1.5; }

/* Process and service share sage; other information stays open and readable. */
body.homepage-expert-2026 .homepage-process { background: var(--shop-sage); }
body.homepage-expert-2026 .homepage-process .center-heading { max-width: none; margin: 0 0 30px; text-align: left; }
body.homepage-expert-2026 .center-heading p:not(.eyebrow) { color: var(--muted); font-size: 15px; line-height: 1.6; }
body.homepage-expert-2026 .process-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px; }
body.homepage-expert-2026 .process-grid li { position: relative; display: flex; align-items: flex-start; gap: 15px; padding: 0; background: transparent; border: 0; border-radius: 0; }
body.homepage-expert-2026 .process-grid li::after { content: none; }
body.homepage-expert-2026 .step-number { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; color: #426348; background: #dce8d9; border: 1px solid #cbdcc7; border-radius: 6px; font-size: 17px; font-weight: 600; }
body.homepage-expert-2026 .process-grid h3 { margin: 0 0 8px; color: var(--ink); font-size: 17px; line-height: 1.4; font-weight: 600; }
body.homepage-expert-2026 .process-grid p { color: #586857; font-size: 14px; line-height: 1.6; }
body.homepage-expert-2026 .homepage-industries { background: #fff; border-bottom: 1px solid var(--line); }
body.homepage-expert-2026 .homepage-industries > .site-container { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); align-items: start; gap: 50px; }
body.homepage-expert-2026 .homepage-industries .section-heading { display: block; margin: 0; }
body.homepage-expert-2026 .industry-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 30px; }
body.homepage-expert-2026 .industry-grid > a { display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: center; min-width: 0; gap: 4px 12px; padding: 17px 0; color: var(--ink); background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; box-shadow: none; }
body.homepage-expert-2026 .industry-grid > a:hover { background: transparent; border-color: #9db7d2; transform: none; }
body.homepage-expert-2026 .industry-grid i { grid-row: 1 / 3; color: #637c91; font-size: 22px; }
body.homepage-expert-2026 .industry-grid strong { color: var(--ink); font-size: 15px; line-height: 1.45; font-weight: 600; }
body.homepage-expert-2026 .industry-grid span { grid-column: 2; color: var(--muted); font-size: 13px; line-height: 1.5; }
body.homepage-expert-2026 .homepage-faq { background: #fff; }
body.homepage-expert-2026 .faq-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.3fr); align-items: start; gap: 28px 65px; }
body.homepage-expert-2026 .faq-layout > .center-heading { grid-column: 1; grid-row: 1; max-width: none; margin: 0; text-align: left; }
body.homepage-expert-2026 .faq-layout > .faq-grid { grid-column: 2; grid-row: 1 / 3; }
body.homepage-expert-2026 .faq-grid { display: grid; grid-template-columns: 1fr; gap: 0; border-top: 1px solid var(--line); }
body.homepage-expert-2026 .faq-grid details { padding: 0; background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; }
body.homepage-expert-2026 .faq-grid details[open] { background: transparent; border-color: var(--line); }
body.homepage-expert-2026 .faq-grid summary { min-height: 52px; gap: 15px; padding: 15px 0; color: var(--ink); font-size: 15px; line-height: 1.5; font-weight: 600; }
body.homepage-expert-2026 .faq-grid details[open] summary { color: var(--ink); }
body.homepage-expert-2026 .faq-grid summary span { color: #68798c; font-size: 20px; }
body.homepage-expert-2026 .faq-grid details > p { margin: 0; padding: 0 22px 17px 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
body.homepage-expert-2026 .faq-grid details > a { display: inline-block; margin-bottom: 17px; font-size: 13px; }
body.homepage-expert-2026 .faq-layout > .ekasa-explainer { grid-column: 1; grid-row: 2; display: block; margin-top: 0; padding: 24px 0 0; background: transparent; border: 0; border-top: 1px solid var(--line); border-radius: 0; }
body.homepage-expert-2026 .ekasa-explainer h2 { font-size: 26px; }
body.homepage-expert-2026 .ekasa-explainer p:not(.eyebrow) { margin-bottom: 12px; color: var(--muted); font-size: 14px; line-height: 1.7; }
body.homepage-expert-2026 .homepage-service { color: var(--ink); background: var(--shop-sage); overflow: visible; }
body.homepage-expert-2026 .homepage-service::after { content: none; }
body.homepage-expert-2026 .service-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 55px; margin-bottom: 30px; }
body.homepage-expert-2026 .homepage-service h2 { color: var(--ink); font-size: 32px; }
body.homepage-expert-2026 .homepage-service .eyebrow { color: #67715f; }
body.homepage-expert-2026 .service-heading p:not(.eyebrow) { margin-bottom: 13px; color: #586857; font-size: 15px; line-height: 1.65; }
body.homepage-expert-2026 .service-grid.service-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
body.homepage-expert-2026 .service-grid article { display: flex; flex-direction: column; min-width: 0; gap: 0; padding: 0; color: var(--ink); background: transparent; border: 0; border-radius: 0; }
body.homepage-expert-2026 .service-grid i { margin-bottom: 15px; padding: 0; color: #628166; font-size: 24px; }
body.homepage-expert-2026 .service-grid h3 { margin: 0 0 9px; color: var(--ink); font-size: 16px; line-height: 1.4; font-weight: 600; }
body.homepage-expert-2026 .service-grid p { color: #586857; font-size: 14px; line-height: 1.6; }
body.homepage-expert-2026 .service-grid a { display: inline-block; margin-top: 12px; color: var(--brand); font-size: 13px; }
body.homepage-expert-2026 .service-bottom { display: flex; align-items: center; justify-content: space-between; gap: 25px; margin-top: 27px; padding-top: 20px; border-top: 1px solid #d1dfcc; }
body.homepage-expert-2026 .service-bottom .service-small { color: #586857 !important; font-size: 13px !important; line-height: 1.6; margin: 0 !important; }

/* All eight further models and original news/articles remain visible. */
body.homepage-expert-2026 .homepage-additional { background: #f5f7f9; }
body.homepage-expert-2026 .catalog-divider { display: flex; align-items: flex-end; justify-content: space-between; gap: 25px; margin: 0 0 15px; padding: 0; border: 0; }
body.homepage-expert-2026 .catalog-intro { margin: 0 0 28px; max-width: 720px; color: var(--muted); font-size: 15px; line-height: 1.6; }
body.homepage-expert-2026 .additional-products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 24px; }
body.homepage-expert-2026 .additional-products .product-card > div:first-child { height: 180px; padding: 19px; background: #fff; border-color: #e0e5eb; }
body.homepage-expert-2026 .additional-products .product-card h3 { font-size: 18px; }
body.homepage-expert-2026 .additional-products .product-card p { font-size: 13px; }
body.homepage-expert-2026 .additional-products .product-card ul { font-size: 12px; }
body.homepage-expert-2026 .additional-products .product-card > div:last-child > .flex > span:last-child { font-size: 25px; }
body.homepage-expert-2026 .additional-products .product-card a { font-size: 13px; }
body.homepage-expert-2026 .catalog-footnote { margin-top: 27px; padding-top: 20px; color: var(--muted); border-top: 1px solid var(--line); font-size: 13px; line-height: 1.65; }
body.homepage-expert-2026 .homepage-blog { background: #fff; }
body.homepage-expert-2026 .blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
body.homepage-expert-2026 .blog-grid article { display: block; min-width: 0; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; overflow: visible; }
body.homepage-expert-2026 .blog-photo { min-height: 165px; background-color: #eaf0f7; background-size: 120px; background-repeat: no-repeat; background-position: center; border: 1px solid #dce5ef; border-radius: 6px; }
body.homepage-expert-2026 .blog-grid article > div:last-child { padding: 18px 0 0; }
body.homepage-expert-2026 .blog-grid .eyebrow { font-size: 11px; margin-bottom: 8px; }
body.homepage-expert-2026 .blog-grid h3 { margin: 0 0 9px; color: var(--ink); font-size: 22px; line-height: 1.3; font-weight: 700; }
body.homepage-expert-2026 .blog-grid p:not(.eyebrow) { color: var(--muted); font-size: 14px; line-height: 1.6; }
body.homepage-expert-2026 .blog-grid a { display: inline-block; min-height: 44px; margin-top: 8px; padding-block: 8px; color: var(--brand); font-size: 14px; font-weight: 600; }

/* Readable forms retain the original field, label and script contracts. */
body.homepage-expert-2026 .homepage-callback { padding-block: 48px; background: var(--shop-blue); }
body.homepage-expert-2026 .homepage-callback > .max-w-5xl,
body.homepage-expert-2026 .homepage-contact > .max-w-7xl,
body.homepage-expert-2026 .homepage-footer > .max-w-7xl { width: min(1160px, calc(100% - 64px)); max-width: none; margin-inline: auto; padding-inline: 0; }
body.homepage-expert-2026 .homepage-callback > div > div { padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
body.homepage-expert-2026 .homepage-callback .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px; }
body.homepage-expert-2026 .homepage-callback h2 { font-size: 32px; line-height: 1.25; font-weight: 700; }
body.homepage-expert-2026 .homepage-callback p { color: var(--muted); font-size: 15px; line-height: 1.65; }
body.homepage-expert-2026 .homepage-callback .text-blue-600 { color: #4c647e; }
body.homepage-expert-2026 .consult-phone { display: inline-flex; align-items: center; gap: 12px; color: var(--brand); }
body.homepage-expert-2026 .consult-phone i { font-size: 21px; }
body.homepage-expert-2026 .consult-phone strong { display: block; font-size: 22px; font-weight: 600; }
body.homepage-expert-2026 .consult-phone small { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.5; }
body.homepage-expert-2026 #quick-form { padding: 24px; background: #fff; border: 1px solid #d3dfea; border-radius: 7px; box-shadow: none; }
body.homepage-expert-2026 #quick-form .grid { gap: 18px; }
body.homepage-expert-2026 :where(.homepage-callback, .homepage-contact) label { color: #394655; font-size: 14px; font-weight: 500; }
body.homepage-expert-2026 :where(.homepage-callback, .homepage-contact) :where(input, select, textarea) { min-width: 0; border-color: #b9c6d4; border-radius: 5px; color: var(--ink); background: #fff; font-size: 16px; line-height: 1.5; }
body.homepage-expert-2026 :where(.homepage-callback, .homepage-contact) button[type="submit"] { min-height: 46px; color: #fff; background: var(--brand); border-radius: 6px; box-shadow: none; font-size: 15px; font-weight: 600; }
body.homepage-expert-2026 :where(.homepage-callback, .homepage-contact) button[type="submit"]:hover { background: var(--brand-dark); transform: none; }
body.homepage-expert-2026 #quick-form > p { margin-top: 13px; font-size: 12px; line-height: 1.6; }
body.homepage-expert-2026 .homepage-final-cta { padding-block: 29px; color: var(--ink); background: #fff; }
body.homepage-expert-2026 .homepage-final-cta > div { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 0; background: transparent; border: 0; border-radius: 0; }
body.homepage-expert-2026 .homepage-final-cta h2 { color: var(--ink); font-size: 27px; }
body.homepage-expert-2026 .homepage-final-cta p { color: var(--muted); font-size: 14px; line-height: 1.6; }
body.homepage-expert-2026 .homepage-final-cta > div > div:last-child { display: flex; flex-wrap: wrap; gap: 10px; }
body.homepage-expert-2026 .homepage-contact { padding-block: 48px; background: #f5f7f9; }
body.homepage-expert-2026 .homepage-contact .text-center { margin-bottom: 30px; text-align: left; }
body.homepage-expert-2026 .homepage-contact .text-center h2 { font-size: 32px; }
body.homepage-expert-2026 .homepage-contact .text-center p { color: var(--muted); font-size: 16px; }
body.homepage-expert-2026 .homepage-contact > div > .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 55px; }
body.homepage-expert-2026 .homepage-contact .space-y-8 > .flex { align-items: flex-start; gap: 16px; }
body.homepage-expert-2026 .homepage-contact .space-y-8 > .flex > div:first-child { display: grid; place-items: center; flex-shrink: 0; width: 43px; height: 43px; padding: 0; color: #5e758c; background: #e9eef4; border-radius: 6px; }
body.homepage-expert-2026 .homepage-contact .space-y-8 > .flex > div:first-child i { color: #5e758c; font-size: 20px; }
body.homepage-expert-2026 .homepage-contact .space-y-8 h3 { margin-bottom: 6px; color: var(--ink); font-size: 17px; font-weight: 600; }
body.homepage-expert-2026 .homepage-contact .space-y-8 p { color: var(--muted); font-size: 14px; line-height: 1.65; }
body.homepage-expert-2026 .homepage-contact .space-y-8 a { color: var(--brand); overflow-wrap: anywhere; }
body.homepage-expert-2026 .homepage-contact .bg-white.rounded-xl { padding: 25px; background: #fff; border: 1px solid #dce3e9; border-radius: 7px; box-shadow: none; }
body.homepage-expert-2026 .homepage-footer { padding: 36px 0 24px; color: var(--muted); background: #fff; border-top: 1px solid var(--line); }
body.homepage-expert-2026 .homepage-footer :where(h3, h4) { color: var(--ink); font-weight: 600; }
body.homepage-expert-2026 .homepage-footer h3 { margin-bottom: 12px; font-size: 24px; letter-spacing: -.025em; }
body.homepage-expert-2026 .homepage-footer h4 { margin-bottom: 13px; font-size: 14px; }
body.homepage-expert-2026 .homepage-footer .text-blue-400 { color: var(--brand); }
body.homepage-expert-2026 .homepage-footer .text-gray-400 { color: var(--muted); }
body.homepage-expert-2026 .homepage-footer a:hover { color: var(--brand); }
body.homepage-expert-2026 .homepage-footer :where(p, li, .text-sm) { font-size: 13px; line-height: 1.75; }
body.homepage-expert-2026 .homepage-footer .grid { display: grid; grid-template-columns: 1.15fr 1.2fr 1fr .8fr; gap: 32px; }
body.homepage-expert-2026 .homepage-footer .mb-8 { margin-bottom: 25px; }
body.homepage-expert-2026 .homepage-footer .pt-8 { padding-top: 20px; border-color: var(--line); }

/* Original consent coordination is retained for the floating mobile controls. */
body.homepage-expert-2026 .homepage-mobile-order { display: none; color: var(--ink); background: #fff; border-top: 1px solid var(--line); box-shadow: none; }
body.homepage-expert-2026 .mobile-order-copy { min-width: 0; color: var(--ink); }
body.homepage-expert-2026 .mobile-order-copy span { color: var(--muted); }
body.homepage-expert-2026 .homepage-mobile-order .button-primary { color: #fff; background: var(--brand); border-color: var(--brand); }
body.homepage-expert-2026 #ai-chat-widget { width: min(384px, calc(100vw - 32px)); max-height: calc(100dvh - 140px); color: var(--ink); background: #fff; border: 1px solid var(--line); }
body.homepage-expert-2026 #ai-chat-widget > div:first-child { background: var(--brand); }
body.homepage-expert-2026 #ai-chat-widget > div:first-child :where(h3, p, button, i) { color: #fff; }
body.homepage-expert-2026 #ai-chat-widget #chat-messages { max-height: calc(100dvh - 310px); color: var(--ink); background: #fff; }
body.homepage-expert-2026 #ai-chat-widget #chat-input { min-width: 0; color: var(--ink); background: #fff; }
body.homepage-expert-2026 button[onclick="openAIChat()"] { color: #fff; background: var(--brand); }
body.homepage-expert-2026:has(.ekasa-measurement-banner:not([hidden])) :where(.homepage-mobile-order, button[onclick="openAIChat()"], #ai-chat-widget) { display: none !important; }

@media (max-width: 1119px) {
  body.homepage-expert-2026 .hero-layout { gap: 30px; }
  body.homepage-expert-2026 .hero-photo img { height: 350px; }
  body.homepage-expert-2026 .about-layout { gap: 35px; }
  body.homepage-expert-2026 .process-grid { gap: 25px; }
  body.homepage-expert-2026 .service-grid.service-cards { gap: 23px; }
  body.homepage-expert-2026 .homepage-footer .grid { gap: 24px; }
}
@media (max-width: 900px) {
  body.homepage-expert-2026 .hero-layout { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 24px; padding-block: 30px; }
  body.homepage-expert-2026 .hero-copy h1 { font-size: 38px; }
  body.homepage-expert-2026 .hero-copy h1 small { font-size: 18px; }
  body.homepage-expert-2026 .hero-product { padding: 20px 15px; }
  body.homepage-expert-2026 .hero-photo img { height: 320px; }
  body.homepage-expert-2026 .hero-actions { display: grid; grid-template-columns: 1fr; }
  body.homepage-expert-2026 .hero-price { column-gap: 7px; }
  body.homepage-expert-2026 .hero-price > strong { font-size: 42px; }
  body.homepage-expert-2026 .hero-price .button { padding-inline: 0; font-size: 12px; }
  body.homepage-expert-2026 .homepage-trust .hero-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 0; }
  body.homepage-expert-2026 .homepage-trust .hero-benefits li:nth-child(3) { border-left: 0; padding-left: 0; }
  body.homepage-expert-2026 .featured-products { gap: 19px; }
  body.homepage-expert-2026 .featured-products .product-card > div:first-child { height: 185px; padding-inline: 12px; }
  body.homepage-expert-2026 .product-card h3 { font-size: 21px; }
  body.homepage-expert-2026 .about-layout { grid-template-columns: 1fr; gap: 30px; }
  body.homepage-expert-2026 .expert-about-copy { grid-column: 1; grid-row: 2; }
  body.homepage-expert-2026 .team-panel { grid-column: 1; grid-row: 1; }
  body.homepage-expert-2026 .team-grid { max-width: 620px; gap: 25px; }
  body.homepage-expert-2026 .team-grid article img { max-height: 320px; }
  body.homepage-expert-2026 .homepage-industries > .site-container { grid-template-columns: 1fr; gap: 21px; }
  body.homepage-expert-2026 .faq-layout { grid-template-columns: 1fr; gap: 25px; }
  body.homepage-expert-2026 .faq-layout > :where(.center-heading, .faq-grid, .ekasa-explainer) { grid-column: auto; grid-row: auto; }
  body.homepage-expert-2026 .process-grid { grid-template-columns: 1fr; gap: 24px; }
  body.homepage-expert-2026 .service-grid.service-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  body.homepage-expert-2026 .additional-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
  body.homepage-expert-2026 .blog-grid { grid-template-columns: 1fr; gap: 25px; }
  body.homepage-expert-2026 .blog-grid article { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 23px; }
  body.homepage-expert-2026 .blog-photo { min-height: 150px; background-size: 110px; }
  body.homepage-expert-2026 .blog-grid article > div:last-child { padding: 0; }
  body.homepage-expert-2026 .homepage-callback .grid { grid-template-columns: 1fr; gap: 24px; }
  body.homepage-expert-2026 #quick-form .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  body.homepage-expert-2026 .homepage-final-cta > div { flex-direction: column; align-items: flex-start; gap: 20px; }
  body.homepage-expert-2026 .homepage-contact > div > .grid { grid-template-columns: 1fr; gap: 30px; }
  body.homepage-expert-2026 .homepage-footer .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
}
@media (max-width: 640px) {
  body.homepage-expert-2026 { padding-bottom: calc(87px + env(safe-area-inset-bottom, 0px)); }
  body.homepage-expert-2026 .site-container,
  body.homepage-expert-2026 .homepage-callback > .max-w-5xl,
  body.homepage-expert-2026 .homepage-contact > .max-w-7xl,
  body.homepage-expert-2026 .homepage-footer > .max-w-7xl { width: calc(100% - 36px); }
  body.homepage-expert-2026 .section-space { padding-block: 35px; }
  body.homepage-expert-2026 h2 { font-size: 29px; }
  body.homepage-expert-2026 .eyebrow { font-size: 11px; }
  body.homepage-expert-2026 .law-strip > div { align-items: flex-start; gap: 10px; font-size: 11px; }
  body.homepage-expert-2026 .law-strip a { padding-block: 1px; font-size: 11px; }
  body.homepage-expert-2026 .hero-layout { grid-template-columns: 1fr; gap: 25px; padding-block: 26px 30px; }
  body.homepage-expert-2026 .hero-copy h1 { font-size: clamp(32px, 8.8vw, 36px); line-height: 1.15; }
  body.homepage-expert-2026 .hero-copy h1 small { margin-top: 12px; font-size: 18px; line-height: 1.4; }
  body.homepage-expert-2026 .hero-description { font-size: 14px; line-height: 1.6; }
  body.homepage-expert-2026 .hero-copy > .product-label { margin-top: 17px; font-size: 14px; }
  body.homepage-expert-2026 .hero-price { position: static; width: auto; padding-block: 12px 10px; border-radius: 0; }
  body.homepage-expert-2026 .hero-price > strong { font-size: 43px; }
  body.homepage-expert-2026 .hero-price .button { font-size: 12px; }
  body.homepage-expert-2026 .hero-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 14px; }
  body.homepage-expert-2026 .hero-actions .button { padding-inline: 9px; font-size: 13px; }
  body.homepage-expert-2026 .hero-experts { gap: 10px; margin-top: 17px; }
  body.homepage-expert-2026 .hero-experts strong { font-size: 12px; }
  body.homepage-expert-2026 .hero-product { min-height: 0; height: auto; padding: 21px; gap: 12px; }
  body.homepage-expert-2026 .hero-photo { max-width: 100%; margin: 0; }
  body.homepage-expert-2026 .hero-photo img { height: 300px; width: auto; max-width: 100%; }
  body.homepage-expert-2026 .hero-product-caption.floating-feature { position: static; max-width: none; padding: 12px 0 0; font-size: 13px; }
  body.homepage-expert-2026 .homepage-trust .hero-benefits { padding-block: 19px; gap: 14px 0; }
  body.homepage-expert-2026 .homepage-trust .hero-benefits li { padding-inline: 10px; gap: 9px; font-size: 12px; }
  body.homepage-expert-2026 .homepage-trust .hero-benefits i { font-size: 20px; }
  body.homepage-expert-2026 .section-heading { align-items: flex-start; flex-direction: column; gap: 13px; margin-bottom: 23px; }
  body.homepage-expert-2026 .section-heading p:not(.eyebrow) { font-size: 14px; }
  body.homepage-expert-2026 .featured-products { grid-template-columns: 1fr; gap: 25px; }
  body.homepage-expert-2026 .featured-products .product-card { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 17px; padding: 0 0 23px; border-bottom: 1px solid #d6e1ed; }
  body.homepage-expert-2026 .featured-products .product-card > div:first-child { min-height: 0; height: 185px; padding: 30px 9px 10px; }
  body.homepage-expert-2026 .featured-products .product-card > div:last-child { padding: 0; }
  body.homepage-expert-2026 .featured-products .product-card > div:first-child > .absolute { top: 8px; left: 6px; padding: 3px 5px; font-size: 8px; }
  body.homepage-expert-2026 .product-card h3 { font-size: 20px; }
  body.homepage-expert-2026 .product-card p { font-size: 13px; }
  body.homepage-expert-2026 .product-card ul { font-size: 12px; }
  body.homepage-expert-2026 .product-card > div:last-child > .flex > span:last-child { font-size: 27px; }
  body.homepage-expert-2026 .product-card a { min-height: 44px; font-size: 13px; }
  body.homepage-expert-2026 .choose-banner { flex-direction: column; align-items: flex-start; gap: 16px; margin-top: 21px; }
  body.homepage-expert-2026 .choose-banner strong { font-size: 15px; }
  body.homepage-expert-2026 .team-grid { gap: 17px; }
  body.homepage-expert-2026 .team-grid article img { max-height: 265px; margin-bottom: 12px; }
  body.homepage-expert-2026 .team-grid h4 { font-size: 15px; }
  body.homepage-expert-2026 .team-grid p { font-size: 11px; }
  body.homepage-expert-2026 .team-grid span { font-size: 12px; }
  body.homepage-expert-2026 .about-layout > .expert-about-copy > p:not(.eyebrow) { font-size: 14px; }
  body.homepage-expert-2026 .company-facts { gap: 20px; }
  body.homepage-expert-2026 .company-facts strong { font-size: 23px; }
  body.homepage-expert-2026 .company-links { gap: 12px 17px; font-size: 13px; }
  body.homepage-expert-2026 .homepage-process .center-heading { margin-bottom: 25px; }
  body.homepage-expert-2026 .industry-grid { grid-template-columns: 1fr; gap: 0; }
  body.homepage-expert-2026 .industry-grid > a { padding-block: 15px; }
  body.homepage-expert-2026 .service-heading { grid-template-columns: 1fr; gap: 17px; margin-bottom: 27px; }
  body.homepage-expert-2026 .homepage-service h2 { font-size: 29px; }
  body.homepage-expert-2026 .service-grid.service-cards { grid-template-columns: 1fr; gap: 25px; }
  body.homepage-expert-2026 .service-grid article { flex-direction: row; gap: 16px; }
  body.homepage-expert-2026 .service-grid i { flex-shrink: 0; width: 25px; margin: 0; font-size: 23px; }
  body.homepage-expert-2026 .service-bottom { flex-direction: column; align-items: flex-start; gap: 18px; }
  body.homepage-expert-2026 .catalog-divider { flex-direction: column; align-items: flex-start; gap: 14px; }
  body.homepage-expert-2026 .catalog-intro { font-size: 14px; }
  body.homepage-expert-2026 .additional-products { grid-template-columns: 1fr; gap: 25px; }
  body.homepage-expert-2026 .additional-products .product-card { display: grid; grid-template-columns: 105px minmax(0, 1fr); gap: 17px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
  body.homepage-expert-2026 .additional-products .product-card > div:first-child { height: 155px; padding: 28px 8px 10px; }
  body.homepage-expert-2026 .additional-products .product-card > div:last-child { padding: 0; }
  body.homepage-expert-2026 .additional-products .product-card h3 { font-size: 18px; }
  body.homepage-expert-2026 .blog-grid article { grid-template-columns: 105px minmax(0, 1fr); gap: 17px; }
  body.homepage-expert-2026 .blog-photo { min-height: 148px; background-size: 83px; }
  body.homepage-expert-2026 .blog-grid h3 { font-size: 20px; }
  body.homepage-expert-2026 .blog-grid p:not(.eyebrow) { font-size: 13px; }
  body.homepage-expert-2026 .homepage-callback { padding-block: 35px; }
  body.homepage-expert-2026 .homepage-callback h2 { font-size: 29px; }
  body.homepage-expert-2026 #quick-form { padding: 21px; }
  body.homepage-expert-2026 #quick-form .grid { grid-template-columns: 1fr; gap: 17px; }
  body.homepage-expert-2026 .homepage-final-cta h2 { font-size: 26px; }
  body.homepage-expert-2026 .homepage-final-cta > div > div:last-child { flex-direction: column; align-items: stretch; width: 100%; }
  body.homepage-expert-2026 .homepage-contact { padding-block: 35px; }
  body.homepage-expert-2026 .homepage-contact .text-center h2 { font-size: 29px; }
  body.homepage-expert-2026 .homepage-contact .bg-white.rounded-xl { padding: 21px; }
  body.homepage-expert-2026 .homepage-footer { padding-block: 30px 23px; }
  body.homepage-expert-2026 .homepage-footer .grid { gap: 26px 22px; }
  body.homepage-expert-2026 .homepage-mobile-order { display: flex; align-items: center; justify-content: space-between; gap: 9px; position: fixed; bottom: 0; left: 0; right: 0; padding: 11px 16px calc(11px + env(safe-area-inset-bottom, 0px)); z-index: 9998; }
  body.homepage-expert-2026 .mobile-order-copy strong { display: block; font-size: 12px; line-height: 1.45; font-weight: 600; }
  body.homepage-expert-2026 .mobile-order-copy span { display: block; margin-top: 3px; font-size: 11px; line-height: 1.45; }
  body.homepage-expert-2026 .homepage-mobile-order .button { min-height: 44px; padding: 10px 12px; font-size: 13px; }
  body.homepage-expert-2026 .homepage-mobile-order .mobile-order-phone { min-width: 44px; padding: 10px; color: var(--brand); background: #fff; border-color: #a9bfd9; }
  body.homepage-expert-2026 .homepage-mobile-order .mobile-order-phone span { display: none; }
  body.homepage-expert-2026 #ai-chat-widget { right: 16px; bottom: calc(88px + env(safe-area-inset-bottom, 0px)); max-height: calc(100dvh - 176px); }
  body.homepage-expert-2026 #ai-chat-widget #chat-messages { max-height: calc(100dvh - 330px); }
  body.homepage-expert-2026 button[onclick="openAIChat()"] { bottom: calc(91px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 359px) {
  body.homepage-expert-2026 .site-container,
  body.homepage-expert-2026 .homepage-callback > .max-w-5xl,
  body.homepage-expert-2026 .homepage-contact > .max-w-7xl,
  body.homepage-expert-2026 .homepage-footer > .max-w-7xl { width: calc(100% - 28px); }
  body.homepage-expert-2026 .hero-price > strong { font-size: 40px; }
  body.homepage-expert-2026 .hero-price .button { font-size: 11px; }
  body.homepage-expert-2026 .hero-actions { grid-template-columns: 1fr; }
  body.homepage-expert-2026 .hero-product { padding-inline: 17px; }
  body.homepage-expert-2026 .hero-photo img { height: 270px; }
  body.homepage-expert-2026 .featured-products .product-card { grid-template-columns: 91px minmax(0, 1fr); gap: 13px; }
  body.homepage-expert-2026 .additional-products .product-card { grid-template-columns: 88px minmax(0, 1fr); gap: 13px; }
  body.homepage-expert-2026 .team-grid { gap: 13px; }
  body.homepage-expert-2026 .team-grid h4 { font-size: 14px; }
  body.homepage-expert-2026 .blog-grid article { grid-template-columns: 87px minmax(0, 1fr); gap: 13px; }
  body.homepage-expert-2026 .homepage-footer .grid { grid-template-columns: 1fr; }
  body.homepage-expert-2026 .homepage-mobile-order { gap: 7px; padding-inline: 12px; }
  body.homepage-expert-2026 .homepage-mobile-order .button { padding-inline: 9px; font-size: 12px; }
  body.homepage-expert-2026 .mobile-order-copy strong { font-size: 11px; }
  body.homepage-expert-2026 .mobile-order-copy span { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  body.homepage-expert-2026 :where(a, button, .product-card) { animation: none; transition: none; }
}

/* Expert shop: late presentation layer over the frozen 72 mapped subpages. */
body.ekx-navigation-2026.visual-2026-subpage {
  --sp-ink: #13283a;
  --sp-navy: #13283a;
  --sp-blue: #2162c2;
  --sp-yellow: #2162c2;
  --sp-muted: #536674;
  --sp-line: #dbe3e8;
  --sp-surface: #f7f9fa;
  --sp-product: #eef5fa;
  --sp-people: #fbf4e8;
  --sp-service: #edf3ea;
  --sp-shadow: none;
  color: var(--sp-ink);
  background: #fff;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  line-height: 1.7;
}

/* Sticky navigation occupies normal flow; these are the original layout hooks. */
body.ekx-navigation-2026.visual-2026-subpage .subpage-shell:not(.subpage-reading) { padding-top: 0 !important; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-nav-spacer { height: 0; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-registration > article.pt-32.pb-20 { padding-top: 0; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-article > div.pt-24.bg-gray-100.border-b { padding-top: 0; background: #f7f9fa; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-cloud .subpage-shell { max-width: none !important; margin: 0 !important; padding: 0 !important; }

/* Light introductions cover external heroes and both kinds of internal headers. */
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro:not(nav) {
  padding: 44px 28px !important;
  color: var(--sp-ink);
  background: #fff;
  background-image: none !important;
  border-bottom: 1px solid var(--sp-line);
  border-radius: 0;
  box-shadow: none;
}
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(h1, .subpage-heading) {
  color: var(--sp-ink) !important;
  font-size: clamp(36px, 3.8vw, 48px) !important;
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: -.035em;
  margin-bottom: 18px !important;
}
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(h2, h3, h4, p, li, span, strong, small) { color: var(--sp-ink) !important; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(.subpage-description, .subpage-hero-copy > p) { color: var(--sp-muted) !important; font-size: 17px !important; line-height: 1.7 !important; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(.animate-pulse, .animate-bounce) { animation: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(.rounded-full, [class*="backdrop-blur"]) { color: var(--sp-ink); background: #fff; border-color: var(--sp-line); backdrop-filter: none; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-breadcrumb, .product-breadcrumb) :is(a, span, li) { color: var(--sp-muted); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro .subpage-breadcrumb :is(a, span, li) { color: var(--sp-muted) !important; }
body.ekx-navigation-2026.visual-2026-subpage > .subpage-breadcrumb { padding: 18px 28px; color: var(--sp-muted); background: var(--sp-product); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-pricing > .pricing-breadcrumb { padding-top: 18px; }
body.ekx-navigation-2026.visual-2026-subpage:is(.subpage-catalogue, .subpage-category, .subpage-comparison, .subpage-pricing, .subpage-mobile, .subpage-cloud, .subpage-landing) .subpage-intro:not(nav) { background: var(--sp-product); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-company .subpage-intro:not(nav) { background: var(--sp-people); }
body.ekx-navigation-2026.visual-2026-subpage:is(.subpage-industry, .subpage-registration, .subpage-support) .subpage-intro:not(nav) { background: var(--sp-service); }

/* Shared rhythm uses semantic hooks, not document-wide content resets. */
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-content, .subpage-extra, .product-section) :is(h2, h3, h4) { color: var(--sp-ink); font-weight: 700; letter-spacing: -.025em; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-content, .subpage-extra, .product-section) h2 { font-size: clamp(26px, 2.5vw, 34px); }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-content, .subpage-extra, .product-section) h3 { font-size: 23px; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-section, .subpage-block) { padding-block: 44px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-content > .subpage-shell { padding-block: 40px 56px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-extra { padding: 26px 28px; border-radius: 10px; background: var(--sp-service); box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-card-grid { gap: 24px; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-card, .subpage-model-card, .model-card) { border-radius: 12px; border-color: var(--sp-line); background: #fff; background-image: none; box-shadow: none; transform: none; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-card, .subpage-model-card, .model-card):hover { border-color: #b3c8d9; box-shadow: none; transform: none; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-card, .subpage-model-card, .model-card):not(a) { padding: 24px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-card .subpage-card { padding: 18px; border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-callout { padding: 22px 24px; border-radius: 8px; border-left-color: var(--sp-blue); background: var(--sp-product); background-image: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-callout :is(h2, h3, p, li) { color: var(--sp-ink); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-card.subpage-callout { background: var(--sp-product); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-steps > :is(div, article, li) { border-radius: 8px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-metrics > div { border-radius: 8px; box-shadow: none; }

/* Original action owners, destinations and labels are retained. */
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-actions, .product-actions) > a,
body.ekx-navigation-2026.visual-2026-subpage .subpage-cta a:not([href^="#"]) {
  min-height: 46px;
  padding: 12px 20px;
  border: 1px solid var(--sp-blue);
  border-radius: 8px;
  color: #fff;
  background: var(--sp-blue);
  background-image: none;
  box-shadow: none;
  font-size: 15px;
  font-weight: 700;
}
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro .subpage-actions > a { color: #fff !important; background: var(--sp-blue) !important; border-color: var(--sp-blue) !important; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro .subpage-actions > a + a { color: var(--sp-blue) !important; background: #fff !important; border-color: #b9ccdf !important; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-intro .subpage-actions > a + a:hover { background: #f3f7fa !important; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-actions, .product-actions) > a:hover,
body.ekx-navigation-2026.visual-2026-subpage .subpage-cta a:not([href^="#"]):hover { color: #fff; background: #184d9c; border-color: #184d9c; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-cta { color: var(--sp-ink); background: var(--sp-service); background-image: none; border-radius: 10px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-cta :is(h2, h3, p, li, .text-blue-100, .text-gray-700, .text-white) { color: var(--sp-ink); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-cta a[href^="/objednavka"] { color: #fff; background: var(--sp-blue); border-color: var(--sp-blue); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-cta a[href^="/objednavka"]:hover { color: #fff; background: #184d9c; border-color: #184d9c; }
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-card, .subpage-model-card, .subpage-section) a:is([href^="/objednavka"], [href^="/vyber-ekasu"]).text-white { color: #fff; background: var(--sp-blue); background-image: none; border-color: var(--sp-blue); box-shadow: none; }

/* Product families: the actual photographs and purchase panel remain together. */
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-section { padding: 36px 28px 52px; color: var(--sp-ink); background: var(--sp-product); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-breadcrumb { margin-bottom: 22px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-overview { gap: 32px; align-items: start; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product :is(.product-photo, .product-photo-panel) { min-height: 350px; padding: 24px; border-radius: 12px; background: #fff; background-image: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-photo img { height: 340px; object-fit: contain; transform: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-gallery > div { border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-info { padding: 28px; border-radius: 12px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-info h1 { font-size: clamp(36px, 3.6vw, 48px); line-height: 1.14; font-weight: 700; letter-spacing: -.035em; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-price { padding: 22px; background: #f5f8fa; border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-price :is(.text-4xl, .text-5xl, .text-6xl) { font-size: 40px; font-weight: 700; letter-spacing: -.035em; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-actions > a[href^="/objednavka"] { color: #fff; background: var(--sp-blue); border-color: var(--sp-blue); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-actions > a[href^="tel:"] { color: var(--sp-blue); background: #fff; border-color: #b9ccdf; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-included { background: var(--sp-service); border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product :is(.product-specs, .product-related, .product-faq) { padding: 26px; border-radius: 10px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-related img { object-fit: contain; }

/* The catalogue renderer still owns filtering and dynamic card creation. */
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .catalogue-filters { padding-block: 22px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .filter-btn { min-height: 44px; padding: 10px 16px; border-radius: 8px; font-weight: 600; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .filter-btn.active { background: var(--sp-blue); border-color: var(--sp-blue); box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue #products-grid { gap: 24px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card { border-radius: 12px; box-shadow: none; transform: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card:hover { box-shadow: none; transform: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card > div:first-child { height: 240px; background: var(--sp-product); background-image: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card > div:first-child img { object-fit: contain; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card h3 { font-size: 24px; font-weight: 700; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card .text-3xl { font-size: 32px; font-weight: 700; letter-spacing: -.03em; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card a { color: #fff; background: var(--sp-blue); border-radius: 8px; }

/* Category, comparison and price layouts retain their own content width. */
body.ekx-navigation-2026.visual-2026-subpage:is(.subpage-category, .subpage-comparison, .subpage-pricing) .subpage-content { padding: 36px 28px 52px; }
body.ekx-navigation-2026.visual-2026-subpage :is(.category-main, .comparison-main) > .subpage-intro { margin-inline: 0; padding-inline: 28px; border-radius: 10px; }
body.ekx-navigation-2026.visual-2026-subpage .comparison-verdict { padding: 24px; border-radius: 10px; background: var(--sp-service); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-pricing .pricing-summary { padding: 26px; background: var(--sp-product); border-color: var(--sp-line); border-radius: 10px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-pricing :is(.pricing-summary-card, .pricing-model, .subpage-service-card) { padding: 24px; border-radius: 10px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-pricing .pricing-included { background: var(--sp-service); border-radius: 10px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-pricing .pricing-model-price { color: var(--sp-ink); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-table-scroll { border-radius: 8px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-table-scroll th { color: var(--sp-ink); background: #edf2f6; font-weight: 700; }

/* Articles, knowledge, legal documents and registration remain readable prose. */
body.ekx-navigation-2026.visual-2026-subpage .subpage-reading { max-width: 870px; padding: 0; margin: 36px auto 56px; background: #fff; border: 0; border-radius: 0; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-reading :is(p, li, td) { font-size: 16px; line-height: 1.85; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-reading h2 { margin-top: 32px; font-size: 29px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-reading h3 { font-size: 23px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-reading .subpage-card { border-radius: 8px; background: #f7f9fa; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-toc { padding: 22px 24px; background: var(--sp-product); border-color: var(--sp-line); border-radius: 8px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-toc a { min-height: 38px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-article-legacy .site-header.subpage-intro { background: #fff; background-image: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-article-legacy .container.subpage-reading { max-width: 870px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-knowledge .subpage-content { color: var(--sp-ink); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-legal .subpage-reading { max-width: 870px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-registration .subpage-steps > :is(div, li) { background: var(--sp-service); border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-blog-index .subpage-card { border-radius: 10px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-blog-index .subpage-card img { object-fit: contain; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-company .subpage-content > .subpage-shell { background: var(--sp-people); padding-inline: 28px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-company .subpage-card { background: #fff; }

/* Split industry/mobile heroes preserve their original media and factual panels. */
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-hero-grid, .subpage-hero-panel) { color: var(--sp-ink); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-hero-grid { gap: 36px; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-hero-panel { padding: 24px; border: 1px solid var(--sp-line); border-radius: 10px; background: #fff; backdrop-filter: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-hero-panel :is(h2, h3, h4, p, li, .text-gray-900, .text-gray-700) { color: var(--sp-ink); }
body.ekx-navigation-2026.visual-2026-subpage .subpage-hero-panel img { object-fit: contain; border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-mobile .subpage-hero-panel :is(.text-4xl, .text-5xl) { font-size: 40px; font-weight: 700; }
body.ekx-navigation-2026.visual-2026-subpage:is(.subpage-industry, .subpage-mobile) .subpage-section[id="produkty"] { background: var(--sp-product); }

/* Native details and the existing active FAQ handler keep their original state. */
body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-faq-item, .subpage-faq details) { border-radius: 8px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage .subpage-faq summary { font-weight: 600; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-support .subpage-content { padding-top: 36px; }

/* Exact order and wizard owners; no result, progress or visibility state changes. */
body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-section,
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .wizard-section { padding: 36px 28px 56px; color: var(--sp-ink); background: var(--sp-surface); background-image: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order .subpage-intro.order-heading,
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .subpage-intro.wizard-heading { padding: 0 0 28px !important; background: transparent; border: 0; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-heading nav :is(a, li, span) { color: var(--sp-muted); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-layout { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 28px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order :is(.order-panel, .order-aside) { padding: 26px; border-radius: 10px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-aside { top: 96px; background: var(--sp-product); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order #order-form button[type="submit"] { color: #fff; background: var(--sp-blue); border-color: var(--sp-blue); box-shadow: none; font-weight: 700; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-order #order-form button[type="submit"]:hover { color: #fff; background: #184d9c; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .wizard-progress p { color: var(--sp-muted); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .wizard-progress > div { background: #dbe5ec; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard #progress-bar { background: var(--sp-blue); }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard #quiz-section > div { border-radius: 10px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .option-box { padding: 22px; border-radius: 8px; box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .option-box.selected { background: var(--sp-product); border-color: var(--sp-blue); box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .wizard-result > div { padding: 28px; border-radius: 10px; background: var(--sp-service); box-shadow: none; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard #product-result { border-radius: 8px; }
body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard :is(#product-result a[href^="/objednavka"], #lead-form button) { color: #fff; background: var(--sp-blue); border-color: var(--sp-blue); }

/* Original footer content remains; the same quiet surface closes each page. */
body.ekx-navigation-2026.visual-2026-subpage > footer { color: var(--sp-ink); background: var(--sp-surface); border-top: 1px solid var(--sp-line); }
body.ekx-navigation-2026.visual-2026-subpage > footer :is(a, p, li, span, .text-gray-400, .text-gray-300) { color: var(--sp-muted); }
body.ekx-navigation-2026.visual-2026-subpage > footer :is(h3, h4) { color: var(--sp-ink); font-weight: 700; }
body.ekx-navigation-2026.visual-2026-subpage > footer a:hover { color: var(--sp-blue); }

@media (max-width: 900px) {
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-overview { grid-template-columns: minmax(0, 1fr); }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-info { order: -1; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-layout { grid-template-columns: minmax(0, 1fr); }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-aside { position: static; }
}

@media (max-width: 640px) {
  body.ekx-navigation-2026.visual-2026-subpage .subpage-intro:not(nav) { padding: 30px 20px !important; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(h1, .subpage-heading) { font-size: clamp(32px, 8.4vw, 36px) !important; line-height: 1.17; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(.subpage-description, .subpage-hero-copy > p) { font-size: 16px !important; }
  body.ekx-navigation-2026.visual-2026-subpage > .subpage-breadcrumb { padding: 15px 20px; }
  body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-section, .subpage-block) { padding-block: 32px; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-extra { padding: 22px 20px; }
  body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-card, .subpage-model-card, .model-card):not(a) { padding: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-content > .subpage-shell { padding-block: 30px 40px; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-reading { max-width: calc(100% - 40px); padding: 0; margin: 28px auto 40px; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-reading h2 { font-size: 26px; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-toc { padding: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-article-legacy .container.subpage-reading { max-width: calc(100% - 40px); }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-section { padding: 26px 20px 36px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product :is(.product-info, .product-price) { padding: 22px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-info h1 { font-size: 34px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product :is(.product-photo, .product-photo-panel) { min-height: 280px; padding: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product .product-photo img { height: 260px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-product :is(.product-specs, .product-related, .product-faq) { padding: 22px 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-catalogue .product-card > div:first-child { height: 230px; }
  body.ekx-navigation-2026.visual-2026-subpage:is(.subpage-category, .subpage-comparison, .subpage-pricing) .subpage-content { padding: 28px 20px 40px; }
  body.ekx-navigation-2026.visual-2026-subpage :is(.category-main, .comparison-main) > .subpage-intro { margin-inline: 0; padding-inline: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-pricing :is(.pricing-summary, .pricing-included, .pricing-model) { padding: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-hero-panel { padding: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-company .subpage-content > .subpage-shell { padding-inline: 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-order .order-section,
  body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .wizard-section { padding: 28px 20px 40px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-order :is(.order-panel, .order-aside) { padding: 22px 20px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-order #order-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
  body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard #lead-form input { min-height: 48px; font-size: 16px; }
  body.ekx-navigation-2026.visual-2026-subpage.subpage-wizard .wizard-result > div { padding: 22px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-card, .subpage-model-card, .product-card, .option-box) { transition: none; }
}

@media print {
  body.ekx-navigation-2026.visual-2026-subpage :is(.subpage-intro:not(nav), .product-section, .order-section, .wizard-section, .subpage-cta) { color: #000; background: #fff !important; border: 0; }
  body.ekx-navigation-2026.visual-2026-subpage .subpage-intro :is(h1, p, span, strong, .subpage-description) { color: #000 !important; }
}
