﻿/* OKO Touchless final override layer - loaded after main.css */
.oko-site-header .oko-top-shell,
.oko-site-header .oko-header-shell {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: 1320px !important;
}


/* 1.0.25 - header, hero, form, and distributor polish */
.oko-site-header {
  position: relative !important;
  z-index: 9999 !important;
  background: #fff !important;
  border-bottom: 1px solid #dce4ec !important;
}

.oko-site-header .oko-top-header {
  display: block !important;
  background: #fff !important;
}

.oko-site-header .oko-top-shell {
  width: min(1320px, calc(100% - 48px)) !important;
  min-height: 92px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 200px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 30px !important;
  position: relative !important;
}

.oko-site-header .oko-top-logo,
.oko-site-header .oko-logo {
  justify-self: start !important;
  width: 172px !important;
  height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.oko-site-header .oko-top-logo img,
.oko-site-header .oko-logo img {
  width: 172px !important;
  height: 58px !important;
  max-width: 172px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.oko-site-header .oko-desktop-nav {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 36px !important;
  margin: 0 !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a {
  font-size: 19px !important;
  font-weight: 820 !important;
  letter-spacing: -0.01em !important;
  min-height: 92px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #071221 !important;
  text-decoration: none !important;
}

.oko-site-header .oko-desktop-nav > a:hover,
.oko-site-header .oko-desktop-nav .oko-nav-item > a:hover {
  color: #0b315d !important;
}

.oko-site-header .oko-top-links {
  position: static !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-self: end !important;
  gap: 22px !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-top-links .oko-region-button {
  font-size: 14px !important;
  font-weight: 650 !important;
  color: #071221 !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
}

.oko-has-dropdown {
  position: relative !important;
}

.oko-has-dropdown::after {
  content: "" !important;
  position: absolute !important;
  left: -16px !important;
  right: -16px !important;
  top: 100% !important;
  height: 18px !important;
}

.oko-dropdown,
.oko-region-dropdown {
  top: calc(100% - 1px) !important;
  z-index: 10000 !important;
  box-shadow: 0 24px 60px rgba(6, 31, 61, .14) !important;
}

.oko-has-dropdown:hover .oko-dropdown,
.oko-has-dropdown:focus-within .oko-dropdown,
.oko-has-dropdown:hover .oko-region-dropdown,
.oko-has-dropdown:focus-within .oko-region-dropdown {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.home .oko-main .oko-el-home-reference,
.home .oko-main section.oko-el-home-reference,
.home .oko-main .elementor-section.oko-el-home-reference {
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  height: clamp(620px, 46vw, 820px) !important;
  min-height: 620px !important;
  max-height: 820px !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 0 !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  background: #071221 !important;
  position: relative !important;
}

.home .oko-main .oko-el-home-reference > .elementor-container,
.home .oko-main .oko-el-home-reference > .elementor-container > .elementor-column,
.home .oko-main .oko-el-home-reference > .elementor-container > .elementor-column > .elementor-widget-wrap,
.home .oko-main .oko-el-home-reference .elementor-widget-shortcode,
.home .oko-main .oko-el-home-reference .elementor-widget-shortcode .elementor-widget-container,
.home .oko-main .oko-el-home-reference .oko-video-wrap,
.home .oko-main .oko-el-home-reference .oko-video-poster,
.home .oko-main .oko-el-home-reference .oko-shortcode-image,
.home .oko-main .oko-el-home-reference .oko-media-fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

.home .oko-main .oko-el-home-reference video,
.home .oko-main .oko-el-home-reference img {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.home .oko-main .oko-el-home-reference::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(90deg, rgba(7, 18, 33, .58), rgba(7, 18, 33, .18) 48%, rgba(7, 18, 33, .62)) !important;
  pointer-events: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
  display: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading,
.home .oko-main .oko-el-home-reference .elementor-widget-button {
  position: absolute !important;
  z-index: 5 !important;
  left: 50% !important;
  width: min(1180px, calc(100% - 48px)) !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading {
  top: 42% !important;
  transform: translate(-50%, -50%) !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  max-width: 1120px !important;
  margin: 0 auto !important;
  color: #fff !important;
  opacity: .96 !important;
  font-size: clamp(42px, 4.8vw, 72px) !important;
  font-weight: 840 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.035em !important;
  text-align: center !important;
  text-shadow: 0 20px 46px rgba(0,0,0,.38) !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button {
  top: 60% !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a {
  min-width: 174px !important;
  height: 52px !important;
  padding: 0 32px !important;
  border-radius: 999px !important;
  background: #b93438 !important;
  border: 1px solid #b93438 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.22) !important;
}

.home .oko-main .oko-el-kpi {
  margin-top: -68px !important;
  position: relative !important;
  z-index: 7 !important;
}

.oko-kpi-strip {
  box-shadow: 0 30px 80px rgba(6, 31, 61, .18), 0 10px 26px rgba(6, 31, 61, .08) !important;
  border: 1px solid rgba(220, 228, 236, .96) !important;
  transform: translateY(-2px) !important;
}

.oko-kpi-strip > div {
  background: linear-gradient(180deg, #fff 0%, #fbfdff 100%) !important;
}

body:not(.home) .oko-main .oko-el-hero-small {
  padding-top: 92px !important;
  padding-bottom: 86px !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-container,
body:not(.home) .oko-main .oko-el-hero-small .elementor-column,
body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-wrap {
  display: block !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-heading,
body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-text-editor {
  width: min(980px, calc(100% - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-shortcode {
  width: min(980px, calc(100% - 48px)) !important;
  margin: 46px auto 0 !important;
  display: block !important;
}

body:not(.home) .oko-main .oko-el-hero-small .oko-shortcode-image {
  aspect-ratio: 16 / 9 !important;
  width: 100% !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

.oko-distributor-gallery {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.35fr 1fr 1fr !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.oko-distributor-gallery-item {
  min-height: 280px !important;
  margin: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #dce4ec !important;
  background: #f4f7fa !important;
}

.oko-distributor-gallery-item:first-child {
  grid-row: span 2 !important;
  min-height: 584px !important;
}

.oko-distributor-gallery-item img,
.oko-distributor-gallery-item .oko-card-media,
.oko-distributor-gallery-item .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  object-fit: cover !important;
  display: block !important;
}

.oko-fallback-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px 24px !important;
}

.oko-fallback-form label:has(textarea),
.oko-fallback-form label:has(input[type="file"]),
.oko-fallback-form .oko-form-note,
.oko-fallback-form button {
  grid-column: 1 / -1 !important;
}

.oko-fallback-form input,
.oko-fallback-form select,
.oko-fallback-form textarea {
  min-height: 50px !important;
  border: 1px solid #cfd9e4 !important;
  border-radius: 8px !important;
  font-size: 16px !important;
}

.oko-fallback-form button {
  justify-self: start !important;
  min-height: 52px !important;
  padding: 0 30px !important;
  border-radius: 999px !important;
  background: #071221 !important;
  color: #fff !important;
}

@media (max-width: 1180px) {
  .oko-site-header .oko-top-shell {
    grid-template-columns: 160px minmax(0, 1fr) auto !important;
    gap: 18px !important;
  }

  .oko-site-header .oko-desktop-nav {
    gap: 24px !important;
  }

  .oko-site-header .oko-desktop-nav > a,
  .oko-site-header .oko-desktop-nav .oko-nav-item > a {
    font-size: 17px !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-top-shell {
    width: calc(100% - 24px) !important;
    min-height: 72px !important;
    display: flex !important;
    justify-content: space-between !important;
  }

  .oko-site-header .oko-desktop-nav,
  .oko-site-header .oko-top-links {
    display: none !important;
  }

  .home .oko-main .oko-el-home-reference,
  .home .oko-main section.oko-el-home-reference,
  .home .oko-main .elementor-section.oko-el-home-reference {
    height: 520px !important;
    min-height: 520px !important;
    max-height: 520px !important;
  }

  .home .oko-main .oko-el-home-reference h1,
  .home .oko-main .oko-el-home-reference .elementor-heading-title {
    max-width: 560px !important;
    font-size: clamp(32px, 8.2vw, 46px) !important;
    line-height: 1.08 !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-button {
    top: 66% !important;
  }

  .home .oko-main .oko-el-kpi {
    margin-top: -44px !important;
  }

  .oko-distributor-gallery {
    width: calc(100% - 24px) !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child {
    grid-row: auto !important;
    min-height: 220px !important;
    aspect-ratio: 16 / 10 !important;
  }

  .oko-fallback-form {
    grid-template-columns: 1fr !important;
  }
}

.oko-site-header .oko-top-shell {
  min-height: 82px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  position: relative !important;
}

.oko-site-header .oko-top-logo {
  margin-left: 0 !important;
}

.oko-site-header .oko-top-links {
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
}

.oko-site-header .oko-top-logo,
.oko-site-header .oko-logo {
  width: 230px !important;
  height: 66px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--oko-navy) !important;
  font-size: 22px !important;
  font-weight: 820 !important;
  text-decoration: none !important;
}

.oko-site-header .oko-top-logo img,
.oko-site-header .oko-logo img {
  width: 230px !important;
  height: 66px !important;
  max-width: 230px !important;
  object-fit: contain !important;
  display: block !important;
}

.oko-site-header .oko-header-shell {
  min-height: 76px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.oko-site-header .oko-mobile-logo {
  display: none !important;
}

.oko-site-header .oko-desktop-nav {
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 46px !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a,
.oko-site-header .oko-region-button,
.oko-site-header .oko-top-links > a {
  color: var(--oko-navy) !important;
  font-size: 20px !important;
  font-weight: 820 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.home .oko-main .oko-el-home-reference,
.home .oko-main section.oko-el-home-reference,
.home .oko-main .elementor-section.oko-el-home-reference {
  width: 100vw !important;
  max-width: 100vw !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  background: #071221 !important;
  box-shadow: none !important;
}

.home .oko-main .oko-el-home-reference > .elementor-container,
.home .oko-main .oko-el-home-reference > .elementor-container > .elementor-column,
.home .oko-main .oko-el-home-reference > .elementor-container > .elementor-column > .elementor-widget-wrap {
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  position: static !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-shortcode {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

.home .oko-main .oko-el-home-reference .oko-video-wrap,
.home .oko-main .oko-el-home-reference .oko-video-poster,
.home .oko-main .oko-el-home-reference .oko-shortcode-image,
.home .oko-main .oko-el-home-reference .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  border-radius: 0 !important;
}

.home .oko-main .oko-el-home-reference .oko-video-wrap::after,
.home .oko-main .oko-el-home-reference .oko-video-poster::after,
.home .oko-main .oko-el-home-reference .oko-media-fallback::after {
  display: none !important;
  content: none !important;
}

.home .oko-main .oko-el-home-reference video,
.home .oko-main .oko-el-home-reference img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.home .oko-main .oko-el-home-reference::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: rgba(6,31,61,.38) !important;
  pointer-events: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
  display: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading {
  position: absolute !important;
  top: 42% !important;
  left: 50% !important;
  z-index: 5 !important;
  width: min(1280px, calc(100% - 80px)) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translate(-50%, -50%) !important;
  text-align: center !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  max-width: 1280px !important;
  margin: 0 auto !important;
  color: #fff !important;
  opacity: 1 !important;
  font-size: clamp(40px, 4vw, 68px) !important;
  font-weight: 820 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  white-space: normal !important;
  text-shadow: 0 18px 46px rgba(0,0,0,.34) !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button {
  position: absolute !important;
  top: 60% !important;
  z-index: 5 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translate(-50%, -50%) !important;
  text-align: center !important;
}

.home .oko-main .oko-el-home-reference .oko-button-home-quote-btn {
  left: calc(50% - 112px) !important;
}

.home .oko-main .oko-el-home-reference .oko-button-home-products-btn {
  left: calc(50% + 112px) !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a {
  min-width: 188px !important;
  height: 52px !important;
  padding: 0 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255,255,255,.5) !important;
  border-radius: 4px !important;
  background: #0b1733 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 820 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.24) !important;
}

.home .oko-main .oko-el-home-reference .oko-button-home-quote-btn .elementor-button,
.home .oko-main .oko-el-home-reference .oko-button-home-quote-btn a {
  background: #1f5eff !important;
  border-color: #1f5eff !important;
}

.home .oko-main .oko-el-home-reference .elementor-button::before,
.home .oko-main .oko-el-home-reference .elementor-button::after,
.home .oko-main .oko-el-home-reference .elementor-widget-button a::before,
.home .oko-main .oko-el-home-reference .elementor-widget-button a::after {
  display: none !important;
  content: none !important;
}

.home .oko-main .oko-el-kpi {
  margin-top: -42px !important;
  position: relative !important;
  z-index: 6 !important;
}

.home .oko-main .oko-global-buyer-card {
  min-height: 230px !important;
}

.home .oko-main .oko-global-buyer-card > span {
  display: inline-flex !important;
  width: 42px !important;
  height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 22px !important;
  border: 1px solid var(--oko-line) !important;
  border-radius: 50% !important;
  color: #1f5eff !important;
  font-weight: 820 !important;
}

body:not(.home) .oko-main {
  background: #eef3f7 !important;
}

body:not(.home) .oko-main .oko-el-hero-small,
body:not(.home) .oko-main .oko-el-product-banner {
  background: #071221 !important;
  color: #fff !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  border-bottom: 8px solid #dce4ec !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-heading-title,
body:not(.home) .oko-main .oko-el-hero-small h1,
body:not(.home) .oko-main .oko-el-hero-small p,
body:not(.home) .oko-main .oko-el-product-banner .elementor-heading-title,
body:not(.home) .oko-main .oko-el-product-banner h1,
body:not(.home) .oko-main .oko-el-product-banner p {
  color: #fff !important;
}

.oko-fallback-form select,
.oko-fallback-form input[type="file"] {
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 14px !important;
  border: 1px solid #cfd9e4 !important;
  border-radius: 7px !important;
  background: #fff !important;
  color: var(--oko-navy) !important;
  font: inherit !important;
}

.oko-form-note {
  grid-column: 1 / -1 !important;
  margin: -4px 0 0 !important;
  color: var(--oko-muted) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

@media (max-width: 1180px) {
  .oko-site-header .oko-desktop-nav {
    gap: 30px !important;
  }

  .oko-site-header .oko-desktop-nav > a,
  .oko-site-header .oko-desktop-nav .oko-nav-item > a,
  .oko-site-header .oko-region-button,
  .oko-site-header .oko-top-links > a {
    font-size: 17px !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-top-header,
  .oko-site-header .oko-desktop-nav {
    display: none !important;
  }

  .oko-site-header .oko-header-shell {
    width: calc(100% - 24px) !important;
    min-height: 70px !important;
    justify-content: space-between !important;
  }

  .oko-site-header .oko-mobile-logo {
    display: inline-flex !important;
    width: 172px !important;
    height: 52px !important;
  }

  .oko-site-header .oko-mobile-logo img {
    width: 172px !important;
    height: 52px !important;
  }

  .home .oko-main .oko-el-home-reference,
  .home .oko-main section.oko-el-home-reference,
  .home .oko-main .elementor-section.oko-el-home-reference {
    width: 100vw !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9 !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-heading {
    top: 38% !important;
    width: calc(100% - 28px) !important;
  }

  .home .oko-main .oko-el-home-reference h1,
  .home .oko-main .oko-el-home-reference .elementor-heading-title {
    font-size: clamp(24px, 6vw, 34px) !important;
    line-height: 1.12 !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-button {
    top: 66% !important;
  }

  .home .oko-main .oko-el-home-reference .oko-button-home-quote-btn {
    left: calc(50% - 82px) !important;
  }

  .home .oko-main .oko-el-home-reference .oko-button-home-products-btn {
    left: calc(50% + 82px) !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-button,
  .home .oko-main .oko-el-home-reference .elementor-widget-button a {
    min-width: 132px !important;
    height: 40px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
  }

  .home .oko-main .oko-el-kpi {
    margin-top: 0 !important;
  }
}

/* 1.0.23 focused fixes: boxed hero size, form behavior, and cleaner top links */
.oko-main {
  font-size: 17px !important;
}

.oko-main p,
.oko-main li,
.oko-card p,
.oko-table-wrap td,
.oko-table-wrap th {
  font-size: 17px !important;
  line-height: 1.68 !important;
}

.oko-main h2,
.oko-main .elementor-widget-heading h2,
.oko-main .elementor-heading-title {
  letter-spacing: 0 !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-top-links .oko-region-button {
  font-size: 16px !important;
  font-weight: 720 !important;
}

.home .oko-main .oko-el-home-reference,
.home .oko-main section.oko-el-home-reference,
.home .oko-main .elementor-section.oko-el-home-reference {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: 1320px !important;
  height: clamp(560px, 44vw, 720px) !important;
  aspect-ratio: auto !important;
  margin: 28px auto 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  max-width: 1050px !important;
  font-size: clamp(40px, 3.35vw, 58px) !important;
  line-height: 1.08 !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a {
  background: #0b1733 !important;
  border-radius: 4px !important;
  text-decoration: none !important;
}

.home .oko-main .oko-el-home-reference .oko-button-home-quote-btn .elementor-button,
.home .oko-main .oko-el-home-reference .oko-button-home-quote-btn a {
  background: #0b1733 !important;
  border-color: rgba(255,255,255,.52) !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-shortcode {
  display: block !important;
  width: min(980px, 100%) !important;
  margin: 34px auto 0 !important;
}

body:not(.home) .oko-main .oko-el-hero-small .oko-shortcode-image,
body:not(.home) .oko-main .oko-el-hero-small .oko-media-fallback {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

body:not(.home) .oko-main .oko-el-hero-small .oko-shortcode-image img,
body:not(.home) .oko-main .oko-el-hero-small .oko-media-fallback img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-form-plugin-notice,
.oko-form-success {
  grid-column: 1 / -1 !important;
  padding: 14px 16px !important;
  margin: 0 0 18px !important;
  border: 1px solid #dce4ec !important;
  border-radius: 8px !important;
  background: #f7f9fb !important;
  color: #122235 !important;
  font-size: 15px !important;
}

.oko-form-success {
  border-color: #b7d8c0 !important;
  background: #f0faf3 !important;
}

@media (max-width: 960px) {
  .oko-main {
    font-size: 16px !important;
  }

  .oko-main p,
  .oko-main li,
  .oko-card p,
  .oko-table-wrap td,
  .oko-table-wrap th {
    font-size: 16px !important;
  }

  .home .oko-main .oko-el-home-reference,
  .home .oko-main section.oko-el-home-reference,
  .home .oko-main .elementor-section.oko-el-home-reference {
    width: calc(100% - 24px) !important;
    height: 360px !important;
    aspect-ratio: auto !important;
    margin: 16px auto 0 !important;
    border-radius: 8px !important;
  }

  .home .oko-main .oko-el-home-reference h1,
  .home .oko-main .oko-el-home-reference .elementor-heading-title {
    max-width: 340px !important;
    font-size: clamp(25px, 7vw, 34px) !important;
  }

  body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-shortcode {
    width: 100% !important;
    margin-top: 24px !important;
  }
}

/* 1.0.24 hero/header polish and Elementor-safe frontend rhythm */
.oko-site-header {
  position: relative !important;
  z-index: 10000 !important;
  background: #fff !important;
  border-bottom: 1px solid #dce4ec !important;
}

.oko-site-header .oko-top-header {
  background: #fff !important;
}

.oko-site-header .oko-top-shell {
  width: min(1320px, calc(100% - 48px)) !important;
  min-height: 96px !important;
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 28px !important;
  margin: 0 auto !important;
}

.oko-site-header .oko-top-logo {
  width: 190px !important;
  height: 58px !important;
  justify-self: start !important;
}

.oko-site-header .oko-top-logo img {
  width: 190px !important;
  height: 58px !important;
}

.oko-site-header .oko-desktop-nav {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 34px !important;
  margin: 0 !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a {
  font-size: 18px !important;
  font-weight: 820 !important;
  color: #071221 !important;
  line-height: 1 !important;
  padding: 38px 0 !important;
}

.oko-site-header .oko-top-links {
  position: static !important;
  transform: none !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 22px !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-top-links .oko-region-button {
  font-size: 14px !important;
  font-weight: 680 !important;
  color: #071221 !important;
}

.oko-site-header .oko-nav-item {
  position: relative !important;
}

.oko-site-header .oko-dropdown {
  top: 100% !important;
  margin-top: 0 !important;
  z-index: 10001 !important;
  border: 1px solid #dce4ec !important;
  box-shadow: 0 18px 48px rgba(6,31,61,.14) !important;
}

.oko-site-header .oko-nav-item::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 100% !important;
  height: 12px !important;
}

.oko-site-header .oko-products-dropdown {
  width: 250px !important;
}

.oko-site-header .oko-region-dropdown {
  width: 280px !important;
}

.oko-site-header .oko-mobile-toggle {
  display: none !important;
}

.home .oko-main .oko-el-home-reference,
.home .oko-main section.oko-el-home-reference,
.home .oko-main .elementor-section.oko-el-home-reference {
  width: 100vw !important;
  max-width: 100vw !important;
  height: 78vh !important;
  min-height: 620px !important;
  max-height: 880px !important;
  aspect-ratio: auto !important;
  margin: 0 calc(50% - 50vw) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #071221 !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-shortcode,
.home .oko-main .oko-el-home-reference .oko-video-wrap,
.home .oko-main .oko-el-home-reference .oko-video-poster,
.home .oko-main .oko-el-home-reference .oko-shortcode-image,
.home .oko-main .oko-el-home-reference .oko-media-fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.home .oko-main .oko-el-home-reference video,
.home .oko-main .oko-el-home-reference img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.home .oko-main .oko-el-home-reference::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(90deg, rgba(5,14,28,.74), rgba(5,14,28,.45) 46%, rgba(5,14,28,.2)) !important;
  pointer-events: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading,
.home .oko-main .oko-el-home-reference .elementor-widget-text-editor,
.home .oko-main .oko-el-home-reference .elementor-widget-button {
  position: absolute !important;
  z-index: 5 !important;
  left: max(72px, calc((100vw - 1320px) / 2 + 48px)) !important;
  width: min(760px, calc(100% - 96px)) !important;
  transform: none !important;
  text-align: left !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading {
  top: 32% !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
  top: calc(32% + 168px) !important;
  display: block !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button {
  top: calc(32% + 250px) !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  max-width: 760px !important;
  color: #fff !important;
  font-size: clamp(48px, 4.7vw, 82px) !important;
  line-height: 1.02 !important;
  font-weight: 860 !important;
  text-align: left !important;
  text-shadow: 0 18px 54px rgba(0,0,0,.45) !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor,
.home .oko-main .oko-el-home-reference .elementor-widget-text-editor p {
  color: rgba(255,255,255,.92) !important;
  font-size: clamp(20px, 1.45vw, 26px) !important;
  line-height: 1.42 !important;
  font-weight: 540 !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a {
  min-width: 174px !important;
  height: 54px !important;
  padding: 0 34px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #b93234 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 840 !important;
  letter-spacing: .02em !important;
  text-decoration: none !important;
}

.home .oko-main .oko-el-kpi {
  margin-top: -46px !important;
  position: relative !important;
  z-index: 7 !important;
}

.oko-featured-product-track {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 24px !important;
  overflow: visible !important;
}

.oko-featured-product {
  min-width: 0 !important;
  height: 100% !important;
  border: 1px solid #dce4ec !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(6,31,61,.08) !important;
  transition: transform .22s ease, box-shadow .22s ease !important;
}

.oko-featured-product:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 24px 58px rgba(6,31,61,.12) !important;
}

.oko-featured-product-link {
  display: flex !important;
  min-height: 520px !important;
  flex-direction: column !important;
  padding: 18px !important;
  color: #071221 !important;
  text-decoration: none !important;
}

.oko-featured-product-image .oko-card-media {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  background: #f4f7fa !important;
}

.oko-featured-product-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-featured-product em {
  margin-top: 20px !important;
  color: #667384 !important;
  font-style: normal !important;
  font-size: 14px !important;
  font-weight: 760 !important;
  letter-spacing: .04em !important;
}

.oko-featured-product h3 {
  margin: 10px 0 0 !important;
  color: #071221 !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
}

.oko-featured-product p {
  margin: 12px 0 22px !important;
  color: #667384 !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

.oko-featured-product-button {
  margin-top: auto !important;
  align-self: flex-start !important;
  padding: 10px 18px !important;
  border: 1px solid #071221 !important;
  border-radius: 999px !important;
  font-weight: 780 !important;
}

.oko-product-card .oko-card-media,
.oko-el-about .oko-shortcode-image,
.oko-el-distributor-image .oko-shortcode-image,
body:not(.home) .oko-main .oko-el-hero-small .oko-shortcode-image {
  aspect-ratio: 4 / 3 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

.oko-el-about .oko-shortcode-image img,
.oko-el-distributor-image .oko-shortcode-image img,
body:not(.home) .oko-main .oko-el-hero-small .oko-shortcode-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-news-list-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.oko-news-list-card .oko-card-media {
  aspect-ratio: 4 / 3 !important;
}

.oko-model-compare {
  table-layout: fixed !important;
}

.oko-model-compare th:nth-child(1) { width: 13% !important; }
.oko-model-compare th:nth-child(2) { width: 22% !important; }
.oko-model-compare th:nth-child(3) { width: 20% !important; }
.oko-model-compare th:nth-child(4) { width: 13% !important; }
.oko-model-compare th:nth-child(5) { width: 21% !important; }
.oko-model-compare th:nth-child(6) { width: 11% !important; }

.oko-model-compare thead th {
  background: #e9eff5 !important;
  color: #071221 !important;
  font-weight: 840 !important;
}

.oko-model-compare td a {
  display: inline-flex !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 16px !important;
  border: 1px solid #071221 !important;
  border-radius: 999px !important;
  color: #071221 !important;
  font-weight: 760 !important;
  text-decoration: none !important;
}

@media (max-width: 1180px) {
  .oko-site-header .oko-top-shell {
    grid-template-columns: 180px minmax(0, 1fr) auto !important;
    gap: 18px !important;
  }

  .oko-site-header .oko-desktop-nav {
    gap: 22px !important;
  }

  .oko-site-header .oko-desktop-nav > a,
  .oko-site-header .oko-desktop-nav .oko-nav-item > a {
    font-size: 16px !important;
  }

  .oko-featured-product-track,
  .oko-news-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-top-header {
    display: block !important;
  }

  .oko-site-header .oko-top-shell {
    width: calc(100% - 24px) !important;
    min-height: 72px !important;
    display: flex !important;
    justify-content: space-between !important;
  }

  .oko-site-header .oko-top-logo {
    width: 170px !important;
    height: 52px !important;
  }

  .oko-site-header .oko-top-logo img {
    width: 170px !important;
    height: 52px !important;
  }

  .oko-site-header .oko-desktop-nav,
  .oko-site-header .oko-top-links {
    display: none !important;
  }

  .oko-site-header .oko-mobile-toggle {
    display: inline-flex !important;
    width: 46px !important;
    height: 46px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #dce4ec !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #071221 !important;
    font-size: 22px !important;
  }

  .home .oko-main .oko-el-home-reference,
  .home .oko-main section.oko-el-home-reference,
  .home .oko-main .elementor-section.oko-el-home-reference {
    height: 76vh !important;
    min-height: 560px !important;
    max-height: 760px !important;
    width: 100vw !important;
    margin: 0 calc(50% - 50vw) !important;
    border-radius: 0 !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-heading,
  .home .oko-main .oko-el-home-reference .elementor-widget-text-editor,
  .home .oko-main .oko-el-home-reference .elementor-widget-button {
    left: 24px !important;
    width: calc(100% - 48px) !important;
    text-align: left !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-heading {
    top: 30% !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
    top: calc(30% + 132px) !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-button {
    top: calc(30% + 214px) !important;
  }

  .home .oko-main .oko-el-home-reference h1,
  .home .oko-main .oko-el-home-reference .elementor-heading-title {
    max-width: 360px !important;
    font-size: clamp(38px, 10vw, 52px) !important;
    line-height: 1.04 !important;
    text-align: left !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-text-editor,
  .home .oko-main .oko-el-home-reference .elementor-widget-text-editor p {
    font-size: 18px !important;
  }

  .home .oko-main .oko-el-kpi {
    margin-top: 0 !important;
  }

  .oko-featured-product-track,
  .oko-news-list-grid {
    grid-template-columns: 1fr !important;
  }

  .oko-featured-product-link {
    min-height: auto !important;
  }

  .oko-model-compare {
    min-width: 980px !important;
  }
}

/* FINAL 1.0.25 effective override - keep at end */
.oko-site-header .oko-top-shell {
  width: min(1320px, calc(100% - 48px)) !important;
  min-height: 92px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 200px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 30px !important;
}

.oko-site-header .oko-top-logo,
.oko-site-header .oko-logo {
  justify-self: start !important;
  width: 172px !important;
  height: 58px !important;
  justify-content: flex-start !important;
}

.oko-site-header .oko-top-logo img,
.oko-site-header .oko-logo img {
  width: 172px !important;
  height: 58px !important;
  max-width: 172px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.oko-site-header .oko-desktop-nav {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 36px !important;
  margin: 0 !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a {
  font-size: 19px !important;
  font-weight: 820 !important;
  min-height: 92px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #071221 !important;
  text-decoration: none !important;
}

.oko-site-header .oko-top-links {
  position: static !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-self: end !important;
  gap: 22px !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-top-links .oko-region-button {
  font-size: 14px !important;
  font-weight: 650 !important;
  min-height: 44px !important;
}

.oko-has-dropdown {
  position: relative !important;
}

.oko-has-dropdown::after {
  content: "" !important;
  position: absolute !important;
  left: -16px !important;
  right: -16px !important;
  top: 100% !important;
  height: 18px !important;
}

.oko-dropdown,
.oko-region-dropdown {
  top: calc(100% - 1px) !important;
  z-index: 10000 !important;
  box-shadow: 0 24px 60px rgba(6, 31, 61, .14) !important;
}

.oko-has-dropdown:hover .oko-dropdown,
.oko-has-dropdown:focus-within .oko-dropdown,
.oko-has-dropdown:hover .oko-region-dropdown,
.oko-has-dropdown:focus-within .oko-region-dropdown {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.home .oko-main .oko-el-home-reference,
.home .oko-main section.oko-el-home-reference,
.home .oko-main .elementor-section.oko-el-home-reference {
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  height: clamp(620px, 46vw, 820px) !important;
  min-height: 620px !important;
  max-height: 820px !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 0 !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  background: #071221 !important;
  position: relative !important;
}

.home .oko-main .oko-el-home-reference > .elementor-container,
.home .oko-main .oko-el-home-reference > .elementor-container > .elementor-column,
.home .oko-main .oko-el-home-reference > .elementor-container > .elementor-column > .elementor-widget-wrap,
.home .oko-main .oko-el-home-reference .elementor-widget-shortcode,
.home .oko-main .oko-el-home-reference .elementor-widget-shortcode .elementor-widget-container,
.home .oko-main .oko-el-home-reference .oko-video-wrap,
.home .oko-main .oko-el-home-reference .oko-video-poster,
.home .oko-main .oko-el-home-reference .oko-shortcode-image,
.home .oko-main .oko-el-home-reference .oko-media-fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

.home .oko-main .oko-el-home-reference video,
.home .oko-main .oko-el-home-reference img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.home .oko-main .oko-el-home-reference::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(90deg, rgba(7, 18, 33, .58), rgba(7, 18, 33, .18) 48%, rgba(7, 18, 33, .62)) !important;
  pointer-events: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
  display: none !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading,
.home .oko-main .oko-el-home-reference .elementor-widget-button {
  position: absolute !important;
  z-index: 5 !important;
  left: 50% !important;
  width: min(1180px, calc(100% - 48px)) !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-heading {
  top: 42% !important;
  transform: translate(-50%, -50%) !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  max-width: 1120px !important;
  margin: 0 auto !important;
  color: #fff !important;
  opacity: .96 !important;
  font-size: clamp(42px, 4.8vw, 72px) !important;
  font-weight: 840 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.035em !important;
  text-align: center !important;
  text-shadow: 0 20px 46px rgba(0,0,0,.38) !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button {
  top: 60% !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a {
  min-width: 174px !important;
  height: 52px !important;
  padding: 0 32px !important;
  border-radius: 999px !important;
  background: #b93438 !important;
  border: 1px solid #b93438 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.22) !important;
}

.home .oko-main .oko-el-kpi {
  margin-top: -68px !important;
  position: relative !important;
  z-index: 7 !important;
}

.oko-kpi-strip {
  box-shadow: 0 30px 80px rgba(6, 31, 61, .18), 0 10px 26px rgba(6, 31, 61, .08) !important;
  border: 1px solid rgba(220, 228, 236, .96) !important;
  transform: translateY(-2px) !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-heading,
body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-text-editor,
body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-shortcode {
  width: min(980px, calc(100% - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:not(.home) .oko-main .oko-el-hero-small .elementor-widget-shortcode {
  margin-top: 46px !important;
}

body:not(.home) .oko-main .oko-el-hero-small .oko-shortcode-image {
  aspect-ratio: 16 / 9 !important;
  width: 100% !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

.oko-distributor-gallery {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.35fr 1fr 1fr !important;
  gap: 24px !important;
}

.oko-distributor-gallery-item {
  min-height: 280px !important;
  margin: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #dce4ec !important;
  background: #f4f7fa !important;
}

.oko-distributor-gallery-item:first-child {
  grid-row: span 2 !important;
  min-height: 584px !important;
}

.oko-distributor-gallery-item img,
.oko-distributor-gallery-item .oko-card-media,
.oko-distributor-gallery-item .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  object-fit: cover !important;
  display: block !important;
}

.oko-fallback-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px 24px !important;
}

.oko-fallback-form input,
.oko-fallback-form select,
.oko-fallback-form textarea {
  min-height: 50px !important;
  border: 1px solid #cfd9e4 !important;
  border-radius: 8px !important;
  font-size: 16px !important;
}

.oko-fallback-form textarea,
.oko-fallback-form input[type="file"],
.oko-fallback-form button,
.oko-fallback-form .oko-form-note {
  grid-column: 1 / -1 !important;
}

.oko-fallback-form button {
  justify-self: start !important;
  min-height: 52px !important;
  padding: 0 30px !important;
  border-radius: 999px !important;
  background: #071221 !important;
  color: #fff !important;
}

@media (max-width: 1180px) {
  .oko-site-header .oko-top-shell {
    grid-template-columns: 160px minmax(0, 1fr) auto !important;
    gap: 18px !important;
  }

  .oko-site-header .oko-desktop-nav {
    gap: 24px !important;
  }

  .oko-site-header .oko-desktop-nav > a,
  .oko-site-header .oko-desktop-nav .oko-nav-item > a {
    font-size: 17px !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-top-shell {
    width: calc(100% - 24px) !important;
    min-height: 72px !important;
    display: flex !important;
    justify-content: space-between !important;
  }

  .oko-site-header .oko-desktop-nav,
  .oko-site-header .oko-top-links {
    display: none !important;
  }

  .home .oko-main .oko-el-home-reference,
  .home .oko-main section.oko-el-home-reference,
  .home .oko-main .elementor-section.oko-el-home-reference {
    height: 520px !important;
    min-height: 520px !important;
    max-height: 520px !important;
  }

  .home .oko-main .oko-el-home-reference h1,
  .home .oko-main .oko-el-home-reference .elementor-heading-title {
    max-width: 560px !important;
    font-size: clamp(32px, 8.2vw, 46px) !important;
    line-height: 1.08 !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-button {
    top: 66% !important;
  }

  .home .oko-main .oko-el-kpi {
    margin-top: -44px !important;
  }

  .oko-distributor-gallery,
  .oko-fallback-form {
    grid-template-columns: 1fr !important;
  }

  .oko-distributor-gallery {
    width: calc(100% - 24px) !important;
  }

  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child {
    grid-row: auto !important;
    min-height: 220px !important;
    aspect-ratio: 16 / 10 !important;
  }
}

/* FINAL 1.0.26 header, gallery, and mobile interaction polish */
.oko-site-header {
  position: relative !important;
  z-index: 9999 !important;
  background: #fff !important;
  border-bottom: 1px solid #dce4ec !important;
  box-shadow: 0 8px 24px rgba(6,31,61,.035) !important;
}

.oko-site-header .oko-brand-row {
  background: #fff !important;
  border-bottom: 1px solid #edf1f5 !important;
}

.oko-site-header .oko-brand-shell,
.oko-site-header .oko-nav-shell {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
}

.oko-site-header .oko-brand-shell {
  min-height: 84px !important;
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 28px !important;
}

.oko-site-header .oko-top-logo {
  width: 230px !important;
  height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  color: #071221 !important;
  font-size: 22px !important;
  font-weight: 850 !important;
  letter-spacing: -0.02em !important;
  text-decoration: none !important;
}

.oko-site-header .oko-top-logo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
}

.oko-site-header .oko-nav-row {
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  background: #fff !important;
}

.oko-site-header .oko-nav-shell {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.oko-site-header .oko-desktop-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(28px, 2.35vw, 44px) !important;
  width: 100% !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a {
  min-height: 64px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #071221 !important;
  font-size: 18px !important;
  font-weight: 760 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  letter-spacing: -0.01em !important;
}

.oko-site-header .oko-top-links {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 26px !important;
  grid-column: 3 !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-top-links .oko-region-button {
  color: #071221 !important;
  font-size: 14px !important;
  font-weight: 690 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
}

.oko-site-header .oko-nav-item {
  position: relative !important;
  display: inline-flex !important;
  align-items: stretch !important;
}

.oko-site-header .oko-nav-item::after {
  content: "" !important;
  position: absolute !important;
  left: -14px !important;
  right: -14px !important;
  top: 100% !important;
  height: 16px !important;
  display: block !important;
}

.oko-site-header .oko-dropdown {
  position: absolute !important;
  top: calc(100% + 0px) !important;
  left: 0 !important;
  display: block !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
  pointer-events: none !important;
  z-index: 10000 !important;
  margin-top: 0 !important;
  padding: 16px !important;
  width: 248px !important;
  min-width: 248px !important;
  background: rgba(255,255,255,.98) !important;
  border: 1px solid #dce4ec !important;
  box-shadow: 0 24px 70px rgba(6,31,61,.16) !important;
  border-radius: 0 !important;
}

.oko-site-header .oko-region-dropdown {
  right: 0 !important;
  left: auto !important;
  width: 286px !important;
  min-width: 286px !important;
}

.oko-site-header .oko-nav-item:hover .oko-dropdown,
.oko-site-header .oko-nav-item:focus-within .oko-dropdown,
.oko-site-header .oko-nav-item.is-open .oko-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

.oko-site-header .oko-dropdown a,
.oko-site-header .oko-dropdown span {
  display: block !important;
  padding: 10px 12px !important;
  color: #122235 !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  border-radius: 6px !important;
}

.oko-site-header .oko-dropdown a:hover {
  background: #f4f7fa !important;
  color: #f26b21 !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a,
.home .oko-main .oko-el-home-reference .elementor-button span,
.home .oko-main .oko-el-home-reference .elementor-widget-button a span {
  text-decoration: none !important;
  border-bottom: 0 !important;
}

.home .oko-main .oko-el-home-reference .elementor-button::before,
.home .oko-main .oko-el-home-reference .elementor-button::after,
.home .oko-main .oko-el-home-reference .elementor-widget-button a::before,
.home .oko-main .oko-el-home-reference .elementor-widget-button a::after {
  display: none !important;
  content: none !important;
}

.oko-contact-gallery,
.oko-distributor-gallery {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.oko-contact-gallery-item,
.oko-distributor-gallery-item,
.oko-distributor-gallery-item:first-child {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  grid-row: auto !important;
  margin: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #dce4ec !important;
  background: #f4f7fa !important;
  box-shadow: 0 18px 50px rgba(6,31,61,.08) !important;
}

.oko-contact-gallery-item img,
.oko-distributor-gallery-item img,
.oko-contact-gallery-item .oko-card-media,
.oko-distributor-gallery-item .oko-card-media,
.oko-contact-gallery-item .oko-media-fallback,
.oko-distributor-gallery-item .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.oko-contact-gallery-item:first-child {
  grid-column: span 2 !important;
}

.oko-contact-gallery-item:first-child,
.oko-contact-gallery-item:first-child img,
.oko-contact-gallery-item:first-child .oko-card-media,
.oko-contact-gallery-item:first-child .oko-media-fallback {
  aspect-ratio: 16 / 9 !important;
}

@media (max-width: 1180px) {
  .oko-site-header .oko-brand-shell,
  .oko-site-header .oko-nav-shell {
    width: min(1320px, calc(100% - 32px)) !important;
  }

  .oko-site-header .oko-brand-shell {
    grid-template-columns: 210px minmax(0, 1fr) auto !important;
  }

  .oko-site-header .oko-top-logo {
    width: 200px !important;
    height: 54px !important;
  }

  .oko-site-header .oko-desktop-nav {
    gap: 26px !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-brand-row {
    border-bottom: 1px solid #edf1f5 !important;
  }

  .oko-site-header .oko-brand-shell {
    width: calc(100% - 24px) !important;
    min-height: 70px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  .oko-site-header .oko-top-logo {
    width: 168px !important;
    height: 48px !important;
  }

  .oko-site-header .oko-nav-row,
  .oko-site-header .oko-top-links {
    display: none !important;
  }

  .oko-site-header .oko-mobile-toggle {
    display: inline-flex !important;
    min-width: 46px !important;
    min-height: 46px !important;
    align-items: center !important;
    justify-content: center !important;
    color: #071221 !important;
    background: #f4f7fa !important;
    border: 1px solid #dce4ec !important;
    border-radius: 8px !important;
    font-size: 24px !important;
  }

  .oko-mobile-panel {
    top: 70px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-height: calc(100vh - 70px) !important;
    overflow-y: auto !important;
    background: #fff !important;
    border-top: 1px solid #edf1f5 !important;
    box-shadow: 0 22px 60px rgba(6,31,61,.16) !important;
  }

  .oko-featured-products {
    width: 100% !important;
    overflow: hidden !important;
  }

  .oko-featured-product-track {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 16px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 0 16px !important;
  }

  .oko-featured-product {
    flex: 0 0 82% !important;
    min-width: 82% !important;
    scroll-snap-align: start !important;
  }

  .oko-featured-product-link {
    min-height: 430px !important;
  }

  .oko-contact-gallery,
  .oko-distributor-gallery {
    width: calc(100% - 24px) !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .oko-contact-gallery-item:first-child {
    grid-column: auto !important;
  }

  .oko-contact-gallery-item,
  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child {
    aspect-ratio: 4 / 3 !important;
  }
}

@media (max-width: 520px) {
  .oko-featured-product {
    flex-basis: 88% !important;
    min-width: 88% !important;
  }
}

/* FINAL 1.0.36 floating button, KPI, and mobile table scroll */
.oko-floating-contact a {
  gap: 0 !important;
}

.oko-floating-contact a::before {
  display: none !important;
  content: none !important;
}

.oko-floating-contact a[href] {
  text-decoration: none !important;
}

.oko-model-compare-wrap {
  cursor: grab !important;
  overscroll-behavior-x: contain !important;
  scrollbar-width: auto !important;
}

.oko-model-compare-wrap.is-dragging {
  cursor: grabbing !important;
  user-select: none !important;
}

@media (max-width: 960px) {
  .oko-el-kpi {
    padding-top: 8px !important;
    overflow: visible !important;
  }

  .oko-kpi-strip {
    margin-top: 6px !important;
    transform: translateY(0) !important;
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    box-shadow: 0 18px 38px rgba(6, 31, 61, .16) !important;
    border-radius: 8px !important;
  }

  .oko-kpi-strip > div,
  .oko-kpi-item {
    padding: 9px 5px 10px !important;
    min-width: 0 !important;
  }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: clamp(11px, 3.35vw, 16px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
  }

  .oko-kpi-strip > div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(9px, 2.65vw, 13px) !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    font-size: clamp(7.5px, 2vw, 9.5px) !important;
    line-height: 1.16 !important;
    white-space: normal !important;
  }

  .oko-model-compare-wrap,
  .elementor-widget-html .oko-model-compare-wrap {
    display: block !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-inline: auto !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x !important;
    scrollbar-width: auto !important;
    border-radius: 10px !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    width: 1180px !important;
    min-width: 1180px !important;
  }

  .oko-model-compare th,
  .oko-model-compare td {
    white-space: normal !important;
    word-break: normal !important;
  }
}

/* FINAL 1.0.27 logo, contact image placement, help CTA, and hero button cleanup */
.oko-site-header .oko-brand-shell {
  grid-template-columns: 340px minmax(0, 1fr) auto !important;
}

.oko-site-header .oko-top-logo,
.oko-site-header .oko-logo {
  width: 300px !important;
  height: 82px !important;
  min-width: 300px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.oko-site-header .oko-top-logo img,
.oko-site-header .oko-logo img {
  width: 300px !important;
  height: 82px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button,
.home .oko-main .oko-el-home-reference .elementor-button-wrapper,
.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-button *,
.home .oko-main .oko-el-home-reference .elementor-widget-button a,
.home .oko-main .oko-el-home-reference .elementor-widget-button a * {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button::before,
.home .oko-main .oko-el-home-reference .elementor-widget-button::after,
.home .oko-main .oko-el-home-reference .elementor-button-wrapper::before,
.home .oko-main .oko-el-home-reference .elementor-button-wrapper::after,
.home .oko-main .oko-el-home-reference .elementor-button::before,
.home .oko-main .oko-el-home-reference .elementor-button::after,
.home .oko-main .oko-el-home-reference .elementor-widget-button a::before,
.home .oko-main .oko-el-home-reference .elementor-widget-button a::after {
  display: none !important;
  content: none !important;
  border: 0 !important;
  width: 0 !important;
  height: 0 !important;
}

.oko-el-contact-image {
  padding-top: 72px !important;
  padding-bottom: 24px !important;
  background: #eef3f7 !important;
}

.oko-el-contact-image + #contact-form-section,
.oko-el-contact-image + .oko-el-section {
  padding-top: 40px !important;
}

.oko-contact-gallery {
  align-items: stretch !important;
}

.oko-contact-gallery-item {
  transition: transform .22s ease, box-shadow .22s ease !important;
}

.oko-contact-gallery-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 26px 70px rgba(6,31,61,.14) !important;
}

.oko-floating-contact {
  position: fixed !important;
  right: 32px !important;
  bottom: 28px !important;
  z-index: 9998 !important;
  display: flex !important;
  gap: 0 !important;
}

.oko-floating-contact a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  padding: 0 28px !important;
  border-radius: 14px !important;
  background: #b93438 !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 18px 44px rgba(185,52,56,.28) !important;
}

.oko-floating-contact a::before {
  content: "?" !important;
  width: 42px !important;
  height: 42px !important;
  margin-right: 12px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(100,16,24,.28) !important;
  color: #fff !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

@media (max-width: 1180px) {
  .oko-site-header .oko-brand-shell {
    grid-template-columns: 280px minmax(0, 1fr) auto !important;
  }

  .oko-site-header .oko-top-logo,
  .oko-site-header .oko-logo,
  .oko-site-header .oko-top-logo img,
  .oko-site-header .oko-logo img {
    width: 250px !important;
    height: 72px !important;
    min-width: 250px !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-top-logo,
  .oko-site-header .oko-logo,
  .oko-site-header .oko-top-logo img,
  .oko-site-header .oko-logo img {
    width: 190px !important;
    height: 58px !important;
    min-width: 190px !important;
  }

  .oko-el-contact-image {
    padding-top: 48px !important;
    padding-bottom: 16px !important;
  }

  .oko-floating-contact {
    right: 16px !important;
    bottom: 16px !important;
  }

  .oko-floating-contact a {
    min-height: 48px !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
    font-size: 14px !important;
  }

  .oko-floating-contact a::before {
    width: 32px !important;
    height: 32px !important;
    margin-right: 8px !important;
    font-size: 18px !important;
  }
}

/* FINAL 1.0.30 focused layout corrections */
html {
  scroll-behavior: smooth !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  max-width: 1120px !important;
  font-size: clamp(42px, 4.6vw, 76px) !important;
  line-height: 1.06 !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor p {
  font-size: clamp(18px, 1.35vw, 24px) !important;
}

.oko-kpi-strip {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  overflow: visible !important;
}

.oko-kpi-strip div {
  min-width: 0 !important;
  padding: 24px 22px !important;
  overflow: hidden !important;
}

.oko-kpi-strip strong {
  font-size: clamp(28px, 2.7vw, 50px) !important;
  line-height: 1.03 !important;
  overflow-wrap: anywhere !important;
}

.oko-kpi-strip span {
  font-size: clamp(13px, .95vw, 16px) !important;
  line-height: 1.35 !important;
}

.oko-featured-product-link {
  min-height: 430px !important;
  padding: 14px !important;
  justify-content: space-between !important;
}

.oko-featured-product-image,
.oko-featured-product-image .oko-card-media,
.oko-featured-product-image .oko-media-fallback {
  height: 330px !important;
  min-height: 330px !important;
}

.oko-featured-product em,
.oko-featured-product h3,
.oko-featured-product p {
  display: none !important;
}

.oko-featured-product-button {
  align-self: center !important;
  margin: 20px auto 4px !important;
  min-width: 150px !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(6,31,61,.08) !important;
}

.oko-el-final {
  background: #fff !important;
}

.oko-el-final .elementor-widget-button,
.oko-el-final .elementor-button-wrapper,
.oko-el-final .elementor-button,
.oko-el-final a.elementor-button {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  min-height: auto !important;
  color: #061f3d !important;
  text-decoration: none !important;
}

.oko-el-final .elementor-button-text,
.oko-el-final .elementor-button span {
  color: #061f3d !important;
  font-weight: 820 !important;
  border-bottom: 2px solid #f26b21 !important;
  padding-bottom: 5px !important;
}

.oko-el-final .elementor-widget-button + .elementor-widget-button {
  margin-top: 16px !important;
}

.oko-model-compare-wrap,
.oko-model-compare-wrap .oko-model-compare {
  width: min(1560px, calc(100vw - 72px)) !important;
  max-width: none !important;
}

.oko-model-compare-wrap {
  margin-left: 50% !important;
  transform: translateX(-50%) !important;
}

.oko-model-compare {
  table-layout: fixed !important;
}

.oko-model-compare th,
.oko-model-compare td {
  white-space: nowrap !important;
  padding: 22px 26px !important;
}

.oko-model-compare th:nth-child(1),
.oko-model-compare td:nth-child(1) {
  width: 150px !important;
}

.oko-model-compare th:nth-child(2),
.oko-model-compare td:nth-child(2) {
  width: 260px !important;
}

.oko-model-compare th:nth-child(3),
.oko-model-compare td:nth-child(3) {
  width: 250px !important;
}

.oko-model-compare th:nth-child(4),
.oko-model-compare td:nth-child(4) {
  width: 190px !important;
}

.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) {
  width: 410px !important;
  min-width: 410px !important;
}

.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) {
  width: 210px !important;
  min-width: 210px !important;
}

.oko-related-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

.oko-related-grid a {
  min-height: 190px !important;
}

.oko-anchor-nav a {
  min-height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #26364a !important;
  font-size: 15px !important;
  font-weight: 780 !important;
  border-right: 1px solid #dce4ec !important;
  text-decoration: none !important;
}

.oko-anchor-nav a:first-child {
  color: #3445c4 !important;
  border-bottom: 2px solid #5263f1 !important;
}

.oko-anchor-nav span {
  display: none !important;
}

.oko-wash-flow-visual {
  width: min(1120px, 100%) !important;
  margin: 0 auto !important;
  padding: 42px !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 22px !important;
  border-radius: 18px !important;
  background:
    linear-gradient(90deg, transparent 0 7%, rgba(242,107,33,.24) 7% 93%, transparent 93%),
    #f4f7fa !important;
  border: 1px solid #dce4ec !important;
}

.oko-wash-flow-visual span {
  aspect-ratio: 1 / 1 !important;
  border-radius: 22px !important;
  background: #fff !important;
  border: 1px solid #dce4ec !important;
  box-shadow: 0 18px 50px rgba(6,31,61,.08) !important;
  position: relative !important;
}

.oko-wash-flow-visual span::before {
  content: "" !important;
  position: absolute !important;
  inset: 28% !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #061f3d, #f26b21) !important;
  opacity: .92 !important;
}

.oko-wash-flow-visual span:nth-child(2)::before {
  clip-path: polygon(50% 0,100% 50%,50% 100%,0 50%) !important;
}

.oko-wash-flow-visual span:nth-child(3)::before {
  border-radius: 8px 999px 999px 8px !important;
}

.oko-wash-flow-visual span:nth-child(4)::before {
  clip-path: polygon(0 20%,100% 0,100% 80%,0 100%) !important;
}

.oko-wash-flow-visual span:nth-child(5)::before {
  clip-path: polygon(50% 0,62% 35%,100% 35%,70% 58%,82% 100%,50% 72%,18% 100%,30% 58%,0 35%,38% 35%) !important;
}

.oko-wash-flow-visual span:nth-child(6)::before {
  clip-path: polygon(0 0,100% 50%,0 100%,25% 50%) !important;
}

.oko-contact-gallery,
.oko-distributor-gallery {
  grid-template-columns: 1.25fr .875fr .875fr !important;
  gap: 26px !important;
  align-items: stretch !important;
}

.oko-contact-gallery-item,
.oko-distributor-gallery-item {
  box-shadow: 0 24px 70px rgba(6,31,61,.10) !important;
}

.oko-contact-gallery-item:first-child,
.oko-distributor-gallery-item:first-child {
  grid-row: span 2 !important;
  aspect-ratio: auto !important;
}

.oko-contact-gallery-item:not(:first-child),
.oko-distributor-gallery-item:not(:first-child) {
  aspect-ratio: 4 / 3 !important;
}

.oko-contact-gallery-item .oko-card-media,
.oko-distributor-gallery-item .oko-card-media,
.oko-contact-gallery-item .oko-media-fallback,
.oko-distributor-gallery-item .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
}

@media (max-width: 1180px) {
  .oko-kpi-strip {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  .oko-kpi-strip div {
    padding: 20px 16px !important;
  }

  .oko-kpi-strip strong {
    font-size: clamp(24px, 3vw, 34px) !important;
  }

  .oko-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 960px) {
  .oko-kpi-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .oko-kpi-strip div:last-child {
    grid-column: span 2 !important;
  }

  .oko-featured-product {
    flex: 0 0 78vw !important;
  }

  .oko-featured-product-link {
    min-height: 390px !important;
  }

  .oko-featured-product-image,
  .oko-featured-product-image .oko-card-media,
  .oko-featured-product-image .oko-media-fallback {
    height: 300px !important;
    min-height: 300px !important;
  }

  .oko-model-compare th,
  .oko-model-compare td {
    white-space: nowrap !important;
  }

  .oko-model-compare-wrap,
  .oko-model-compare-wrap .oko-model-compare {
    width: max-content !important;
    min-width: 1320px !important;
  }

  .oko-related-grid,
  .oko-contact-gallery,
  .oko-distributor-gallery {
    grid-template-columns: 1fr !important;
  }

  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item:first-child {
    grid-row: auto !important;
    aspect-ratio: 4 / 3 !important;
  }

  .oko-wash-flow-visual {
    padding: 18px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

/* FINAL 1.0.29 Elementor Free full polish */
body {
  font-family: Inter, Roboto, Arial, sans-serif !important;
  color: var(--oko-text) !important;
  overflow-x: hidden !important;
  background: #fff !important;
}

.oko-main {
  overflow: hidden !important;
}

.oko-main .elementor-section,
.oko-main .elementor-widget {
  box-sizing: border-box !important;
}

.oko-main .elementor-section:not(.oko-el-home-reference) > .elementor-container {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: 1320px !important;
}

.oko-main .oko-el-section,
.oko-main .oko-el-soft,
.oko-main .oko-el-final {
  padding: 96px 0 !important;
}

.oko-main .oko-el-soft {
  background: #f4f7fa !important;
}

.oko-main .oko-el-hero-small {
  padding: 112px 0 !important;
  background: linear-gradient(135deg, #071221, #0b1733) !important;
  color: #fff !important;
}

.oko-main .oko-el-hero-small h1,
.oko-main .oko-el-product-banner h1 {
  color: #fff !important;
  font-size: clamp(42px, 4vw, 64px) !important;
  line-height: 1.08 !important;
  font-weight: 840 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.oko-main .oko-el-hero-small p {
  max-width: 720px !important;
  margin: 24px auto 0 !important;
  color: rgba(255,255,255,.86) !important;
  font-size: 20px !important;
  line-height: 1.65 !important;
  text-align: center !important;
}

.oko-main h1,
.oko-main h2,
.oko-main h3 {
  color: var(--oko-navy) !important;
  letter-spacing: 0 !important;
}

.oko-main h2,
.oko-main .elementor-heading-title {
  font-weight: 840 !important;
}

.oko-main .oko-el-section h2,
.oko-main .oko-el-soft h2,
.oko-main .oko-el-final h2 {
  font-size: clamp(34px, 3vw, 52px) !important;
  line-height: 1.12 !important;
  margin-bottom: 28px !important;
}

.oko-main p,
.oko-main li,
.oko-main td,
.oko-main th {
  font-size: 17px !important;
  line-height: 1.65 !important;
}

.oko-card-grid {
  display: grid !important;
  gap: 24px !important;
}

.oko-card-grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.oko-card-grid.four {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.oko-card,
.oko-product-card,
.oko-download-card,
.oko-related-grid a {
  border: 1px solid #dce4ec !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 20px 60px rgba(6,31,61,.06) !important;
  color: var(--oko-text) !important;
  text-decoration: none !important;
}

.oko-card {
  min-height: 220px !important;
  padding: 30px !important;
}

.oko-card h3 {
  margin: 0 0 14px !important;
  font-size: 24px !important;
  line-height: 1.18 !important;
}

.oko-card p {
  margin: 0 !important;
  color: var(--oko-muted) !important;
}

.oko-site-header {
  background: #fff !important;
  border-bottom: 1px solid #dce4ec !important;
  position: relative !important;
  z-index: 9999 !important;
}

.oko-site-header .oko-brand-shell,
.oko-site-header .oko-nav-shell {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
}

.oko-site-header .oko-brand-row {
  min-height: 90px !important;
}

.oko-site-header .oko-brand-shell {
  min-height: 90px !important;
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) auto !important;
  align-items: center !important;
}

.oko-site-header .oko-top-logo,
.oko-site-header .oko-logo {
  width: 245px !important;
  height: 70px !important;
  min-width: 245px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.oko-site-header .oko-top-logo img,
.oko-site-header .oko-logo img {
  width: 245px !important;
  height: 70px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.oko-site-header .oko-top-logo span,
.oko-site-header .oko-logo span {
  font-size: 26px !important;
  font-weight: 860 !important;
  color: var(--oko-navy) !important;
}

.oko-site-header .oko-top-links {
  grid-column: 3 !important;
  position: static !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 26px !important;
}

.oko-site-header .oko-nav-row {
  min-height: 72px !important;
  border-top: 1px solid #edf1f5 !important;
}

.oko-site-header .oko-nav-shell {
  min-height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.oko-site-header .oko-desktop-nav {
  gap: 44px !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a {
  min-height: 72px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #061f3d !important;
  font-size: 19px !important;
  font-weight: 820 !important;
  text-decoration: none !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-region-button {
  color: #061f3d !important;
  font-size: 15px !important;
  font-weight: 760 !important;
  text-decoration: none !important;
}

.oko-has-dropdown,
.oko-region-nav-item {
  position: relative !important;
}

.oko-dropdown {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  z-index: 99999 !important;
  width: 250px !important;
  margin-top: 0 !important;
  padding: 12px !important;
  display: block !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
  pointer-events: none !important;
  background: #fff !important;
  border: 1px solid #dce4ec !important;
  box-shadow: 0 24px 60px rgba(6,31,61,.16) !important;
  border-radius: 6px !important;
}

.oko-dropdown::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: -16px !important;
  height: 16px !important;
}

.oko-has-dropdown:hover .oko-dropdown,
.oko-has-dropdown:focus-within .oko-dropdown,
.oko-region-nav-item:hover .oko-dropdown,
.oko-region-nav-item:focus-within .oko-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

.oko-dropdown a,
.oko-dropdown-note {
  display: block !important;
  padding: 12px 14px !important;
  color: #122235 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
}

.oko-dropdown a:hover {
  background: #f4f7fa !important;
  color: #b93438 !important;
}

.oko-region-dropdown {
  right: 0 !important;
  left: auto !important;
  width: 280px !important;
}

.home .oko-main .oko-el-home-reference {
  height: clamp(620px, 78vh, 840px) !important;
  min-height: 620px !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
  display: block !important;
  position: absolute !important;
  top: calc(50% + 64px) !important;
  left: 50% !important;
  z-index: 5 !important;
  transform: translateX(-50%) !important;
  width: min(760px, calc(100% - 48px)) !important;
  text-align: center !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-text-editor p {
  color: rgba(255,255,255,.92) !important;
  font-size: clamp(20px, 1.6vw, 28px) !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
}

.home .oko-main .oko-el-home-reference .elementor-widget-button {
  top: calc(50% + 142px) !important;
}

.home .oko-main .oko-el-home-reference h1,
.home .oko-main .oko-el-home-reference .elementor-heading-title {
  width: min(1040px, calc(100vw - 48px)) !important;
  max-width: 1040px !important;
  font-size: clamp(48px, 5.2vw, 86px) !important;
  line-height: 1.04 !important;
  color: #fff !important;
}

.home .oko-main .oko-el-home-reference .elementor-button,
.home .oko-main .oko-el-home-reference .elementor-widget-button a {
  text-decoration: none !important;
  background: #b93438 !important;
  color: #fff !important;
  border-radius: 999px !important;
}

.home .oko-main .oko-el-home-reference .elementor-button *,
.home .oko-main .oko-el-home-reference .elementor-widget-button a * {
  text-decoration: none !important;
}

.home .oko-main .oko-el-kpi {
  position: relative !important;
  z-index: 4 !important;
  margin-top: -56px !important;
  padding: 0 0 64px !important;
}

.oko-kpi-strip {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  background: #fff !important;
  border: 1px solid #dce4ec !important;
  border-radius: 8px !important;
  box-shadow: 0 28px 80px rgba(6,31,61,.16) !important;
  overflow: hidden !important;
}

.oko-kpi-strip div {
  padding: 26px 28px !important;
  border-right: 1px solid #dce4ec !important;
}

.oko-kpi-strip div:last-child {
  border-right: 0 !important;
}

.oko-kpi-strip strong {
  display: block !important;
  color: var(--oko-navy) !important;
  font-size: clamp(28px, 2.6vw, 42px) !important;
  line-height: 1 !important;
  font-weight: 860 !important;
}

.oko-kpi-strip span {
  display: block !important;
  margin-top: 10px !important;
  color: var(--oko-muted) !important;
  font-size: 15px !important;
}

.oko-featured-title {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  color: #061f3d !important;
  font-size: clamp(36px, 3vw, 56px) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

.oko-featured-title span {
  color: #b93438 !important;
}

.oko-featured-title-line {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 22px auto 56px !important;
  height: 1px !important;
  background: linear-gradient(90deg, #b93438 0 120px, transparent 120px) !important;
}

.oko-featured-products {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
}

.oko-featured-product-track {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

.oko-featured-product-link {
  min-height: 500px !important;
  padding: 18px !important;
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid #dce4ec !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #061f3d !important;
  text-decoration: none !important;
  box-shadow: 0 20px 60px rgba(6,31,61,.06) !important;
  transition: transform .22s ease, box-shadow .22s ease !important;
}

.oko-featured-product-link:hover {
  transform: translateY(-6px) scale(1.015) !important;
  box-shadow: 0 28px 80px rgba(6,31,61,.14) !important;
}

.oko-featured-product-image,
.oko-featured-product-image .oko-card-media,
.oko-featured-product-image .oko-media-fallback {
  width: 100% !important;
  height: 250px !important;
  min-height: 250px !important;
  display: block !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #f4f7fa !important;
}

.oko-featured-product-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-featured-product em {
  margin-top: 22px !important;
  color: var(--oko-muted) !important;
  font-style: normal !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
}

.oko-featured-product h3 {
  min-height: 84px !important;
  margin: 12px 0 !important;
  color: var(--oko-navy) !important;
  font-size: 24px !important;
  line-height: 1.12 !important;
}

.oko-featured-product p {
  flex: 1 !important;
  margin: 0 0 22px !important;
  color: var(--oko-muted) !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

.oko-featured-product-button,
.oko-button-primary,
.oko-button-ghost,
.oko-main .elementor-button {
  min-height: 46px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #061f3d !important;
  border-radius: 999px !important;
  color: #061f3d !important;
  background: transparent !important;
  font-size: 15px !important;
  font-weight: 820 !important;
  text-decoration: none !important;
}

.oko-button-primary,
.oko-main .oko-el-final .elementor-button {
  background: #061f3d !important;
  color: #fff !important;
}

.oko-button-ghost {
  margin-left: 12px !important;
}

.oko-shortcode-image,
.oko-shortcode-image img,
.oko-el-about .oko-card-media,
.oko-el-about .oko-shortcode-image img {
  aspect-ratio: 4 / 3 !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: 10px !important;
}

.oko-about-feature-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin-top: 42px !important;
}

.oko-about-feature-strip article {
  padding: 26px !important;
  border: 1px solid #dce4ec !important;
  border-radius: 10px !important;
  background: #fff !important;
}

.oko-news-list-grid {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

.oko-news-list-card {
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid #dce4ec !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--oko-text) !important;
  text-decoration: none !important;
  overflow: hidden !important;
}

.oko-news-list-card .oko-card-media {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: 0 !important;
}

.oko-news-list-card img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-news-body {
  padding: 22px !important;
}

.oko-news-body strong {
  min-height: 52px !important;
  display: block !important;
  color: var(--oko-navy) !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
}

.oko-news-body em,
.oko-news-body small {
  display: block !important;
  margin-top: 12px !important;
  color: var(--oko-muted) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.oko-news-body b {
  display: inline-block !important;
  margin-top: 22px !important;
  color: var(--oko-navy) !important;
  font-size: 16px !important;
}

.oko-table-wrap {
  width: 100% !important;
  overflow-x: auto !important;
}

.oko-table {
  width: 100% !important;
  border-collapse: collapse !important;
  background: #fff !important;
  border: 1px solid #dce4ec !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

.oko-table th,
.oko-table td {
  padding: 24px !important;
  border: 1px solid #dce4ec !important;
  vertical-align: top !important;
}

.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) {
  min-width: 260px !important;
}

.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) {
  min-width: 190px !important;
}

.oko-model-compare a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border: 1px solid #061f3d !important;
  border-radius: 999px !important;
  color: #061f3d !important;
  text-decoration: none !important;
  font-weight: 780 !important;
  white-space: nowrap !important;
}

.oko-el-product-banner {
  padding: 88px 0 !important;
  background: linear-gradient(135deg, #071221, #0b1733) !important;
}

.oko-breadcrumb,
.oko-breadcrumb a {
  color: rgba(255,255,255,.82) !important;
  text-align: center !important;
  text-decoration: none !important;
}

.oko-el-product-hero {
  padding: 88px 0 !important;
}

.oko-el-product-hero > .elementor-container {
  align-items: center !important;
}

.oko-product-gallery {
  width: 100% !important;
}

.oko-gallery-main {
  aspect-ratio: 4 / 3 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #071221 !important;
}

.oko-gallery-main img,
.oko-gallery-main video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-gallery-thumbs {
  margin-top: 18px !important;
  display: flex !important;
  gap: 12px !important;
  overflow-x: auto !important;
  padding-bottom: 8px !important;
}

.oko-gallery-thumbs button {
  width: 112px !important;
  height: 84px !important;
  flex: 0 0 112px !important;
  border: 1px solid #dce4ec !important;
  border-radius: 8px !important;
  background: #fff !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

.oko-gallery-thumbs button.is-active {
  border-color: #b93438 !important;
}

.oko-gallery-thumbs img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-el-product-hero .elementor-column:last-child .elementor-widget-wrap {
  padding: 44px !important;
  border: 1px solid #dce4ec !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 26px 80px rgba(6,31,61,.1) !important;
}

.oko-model-action-row {
  margin-top: 28px !important;
}

.oko-anchor-nav {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  border: 1px solid #dce4ec !important;
  background: #fff !important;
}

.oko-anchor-nav span {
  min-height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #26364a !important;
  font-size: 15px !important;
  font-weight: 780 !important;
  border-right: 1px solid #dce4ec !important;
}

.oko-anchor-nav span:first-child {
  color: #3445c4 !important;
  border-bottom: 2px solid #5263f1 !important;
}

.oko-description-prose {
  max-width: 1120px !important;
}

.oko-description-prose article {
  margin: 26px 0 !important;
}

.oko-description-prose h3 {
  font-size: 22px !important;
}

.oko-contact-gallery,
.oko-distributor-gallery {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.35fr 1fr 1fr !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.oko-contact-gallery-item,
.oko-distributor-gallery-item {
  margin: 0 !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #dce4ec !important;
  background: #f4f7fa !important;
}

.oko-contact-gallery-item:first-child,
.oko-distributor-gallery-item:first-child {
  grid-row: span 2 !important;
}

.oko-contact-gallery img,
.oko-distributor-gallery img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-info-grid,
.oko-download-grid,
.oko-related-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

.oko-info-item,
.oko-download-card,
.oko-related-grid a {
  padding: 24px !important;
}

.oko-fluent-form-wrap,
.ff-default {
  max-width: 1180px !important;
  margin: 0 auto !important;
}

.oko-form-plugin-notice {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 22px 24px !important;
  border: 1px solid #dce4ec !important;
  border-radius: 8px !important;
  background: #fff7ed !important;
  color: #7c2d12 !important;
}

.oko-floating-contact a {
  text-decoration: none !important;
}

@media (max-width: 1180px) {
  .oko-main .elementor-section:not(.oko-el-home-reference) > .elementor-container,
  .oko-site-header .oko-brand-shell,
  .oko-site-header .oko-nav-shell,
  .oko-featured-title,
  .oko-featured-title-line,
  .oko-featured-products,
  .oko-news-list-grid,
  .oko-contact-gallery,
  .oko-distributor-gallery,
  .oko-kpi-strip {
    width: min(1320px, calc(100% - 32px)) !important;
  }

  .oko-card-grid.four,
  .oko-featured-product-track,
  .oko-news-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .oko-card-grid.three,
  .oko-about-feature-strip,
  .oko-info-grid,
  .oko-download-grid,
  .oko-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-brand-row,
  .oko-site-header .oko-brand-shell {
    min-height: 74px !important;
  }

  .oko-site-header .oko-brand-shell {
    width: calc(100% - 24px) !important;
    grid-template-columns: 1fr auto !important;
  }

  .oko-site-header .oko-top-logo,
  .oko-site-header .oko-logo,
  .oko-site-header .oko-top-logo img,
  .oko-site-header .oko-logo img {
    width: 176px !important;
    height: 54px !important;
    min-width: 176px !important;
    max-width: 176px !important;
  }

  .oko-site-header .oko-top-links,
  .oko-site-header .oko-nav-row {
    display: none !important;
  }

  .oko-site-header .oko-mobile-toggle {
    display: inline-flex !important;
  }

  .home .oko-main .oko-el-home-reference {
    height: 76vh !important;
    min-height: 560px !important;
  }

  .home .oko-main .oko-el-home-reference h1,
  .home .oko-main .oko-el-home-reference .elementor-heading-title {
    font-size: clamp(38px, 12vw, 58px) !important;
    line-height: 1.04 !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-text-editor {
    top: calc(50% + 72px) !important;
  }

  .home .oko-main .oko-el-home-reference .elementor-widget-button {
    top: calc(50% + 150px) !important;
  }

  .oko-main .elementor-section:not(.oko-el-home-reference) > .elementor-container,
  .oko-featured-title,
  .oko-featured-title-line,
  .oko-featured-products,
  .oko-news-list-grid,
  .oko-contact-gallery,
  .oko-distributor-gallery,
  .oko-kpi-strip {
    width: calc(100% - 24px) !important;
  }

  .oko-main .oko-el-section,
  .oko-main .oko-el-soft,
  .oko-main .oko-el-final {
    padding: 56px 0 !important;
  }

  .oko-main .oko-el-hero-small {
    padding: 72px 0 !important;
  }

  .oko-main .oko-el-hero-small h1,
  .oko-main .oko-el-product-banner h1 {
    font-size: clamp(34px, 10vw, 46px) !important;
  }

  .oko-kpi-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 0 !important;
  }

  .oko-kpi-strip div {
    padding: 20px !important;
    border-bottom: 1px solid #dce4ec !important;
  }

  .oko-kpi-strip strong {
    font-size: 28px !important;
  }

  .oko-card-grid.three,
  .oko-card-grid.four,
  .oko-about-feature-strip,
  .oko-news-list-grid,
  .oko-info-grid,
  .oko-download-grid,
  .oko-related-grid,
  .oko-contact-gallery,
  .oko-distributor-gallery {
    grid-template-columns: 1fr !important;
  }

  .oko-featured-product-track {
    display: flex !important;
    overflow-x: auto !important;
    gap: 16px !important;
    scroll-snap-type: x mandatory !important;
    padding-bottom: 12px !important;
  }

  .oko-featured-product {
    flex: 0 0 82vw !important;
    scroll-snap-align: start !important;
  }

  .oko-featured-product-link {
    min-height: 470px !important;
  }

  .oko-featured-product-image,
  .oko-featured-product-image .oko-card-media,
  .oko-featured-product-image .oko-media-fallback {
    height: 230px !important;
  }

  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item:first-child {
    grid-row: auto !important;
  }

  .oko-el-product-hero .elementor-column:last-child .elementor-widget-wrap {
    padding: 28px !important;
  }

  .oko-anchor-nav span {
    font-size: 13px !important;
  }

  .oko-main p,
  .oko-main li,
  .oko-main td,
  .oko-main th {
    font-size: 16px !important;
  }
}

/* FINAL 1.0.28 balanced header, page galleries, and compact help button */
.oko-site-header .oko-brand-row {
  min-height: 92px !important;
}

.oko-site-header .oko-brand-shell {
  min-height: 92px !important;
  grid-template-columns: 280px minmax(0, 1fr) auto !important;
}

.oko-site-header .oko-top-logo,
.oko-site-header .oko-logo {
  width: 245px !important;
  height: 72px !important;
  min-width: 245px !important;
  max-width: 245px !important;
  display: flex !important;
  align-items: center !important;
}

.oko-site-header .oko-top-logo img,
.oko-site-header .oko-logo img {
  width: 245px !important;
  height: 72px !important;
  max-width: 245px !important;
  max-height: 72px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.oko-site-header .oko-nav-row {
  min-height: 62px !important;
}

.oko-site-header .oko-desktop-nav > a,
.oko-site-header .oko-desktop-nav .oko-nav-item > a {
  min-height: 62px !important;
  font-size: 18px !important;
  font-weight: 780 !important;
}

.oko-site-header .oko-top-links > a,
.oko-site-header .oko-top-links .oko-region-button {
  font-size: 14px !important;
  font-weight: 700 !important;
}

.oko-page-gallery {
  width: min(1320px, calc(100% - 48px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

.oko-page-gallery-item {
  margin: 0 !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #dce4ec !important;
  background: #f4f7fa !important;
  box-shadow: 0 18px 54px rgba(6,31,61,.08) !important;
}

.oko-page-gallery-item img,
.oko-page-gallery-item .oko-card-media,
.oko-page-gallery-item .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.oko-floating-contact {
  position: fixed !important;
  right: 24px !important;
  bottom: 22px !important;
  z-index: 9998 !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.oko-floating-contact a {
  width: auto !important;
  height: 48px !important;
  min-width: 0 !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: #b93438 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 32px rgba(185,52,56,.28) !important;
  white-space: nowrap !important;
}

.oko-floating-contact a::before {
  content: "?" !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  margin-right: 9px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(100,16,24,.3) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

@media (max-width: 1180px) {
  .oko-page-gallery {
    width: min(1320px, calc(100% - 32px)) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }
}

@media (max-width: 960px) {
  .oko-site-header .oko-brand-shell {
    min-height: 72px !important;
  }

  .oko-site-header .oko-top-logo,
  .oko-site-header .oko-logo,
  .oko-site-header .oko-top-logo img,
  .oko-site-header .oko-logo img {
    width: 185px !important;
    height: 56px !important;
    min-width: 185px !important;
    max-width: 185px !important;
  }

  .oko-page-gallery {
    width: calc(100% - 24px) !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .oko-floating-contact {
    right: 14px !important;
    bottom: 14px !important;
  }

  .oko-floating-contact a {
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    padding: 0 13px !important;
    font-size: 13px !important;
  }

  .oko-floating-contact a::before {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    margin-right: 7px !important;
    font-size: 16px !important;
  }
}

/* FINAL 1.0.31 targeted content/layout corrections */
.oko-el-home-reference .oko-hero-title,
.oko-el-home-reference h1 {
  max-width: min(1050px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  text-align: center !important;
  color: #fff !important;
  font-size: clamp(44px, 5.2vw, 82px) !important;
  line-height: .98 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance !important;
}

.oko-el-home-reference .elementor-button-link,
.oko-el-home-reference .elementor-button,
.oko-el-home-reference a {
  text-decoration: none !important;
}

.oko-el-home-reference .elementor-button span,
.oko-el-home-reference .elementor-button-text {
  border-bottom: 0 !important;
  text-decoration: none !important;
}

.oko-kpi-strip {
  width: min(1320px, calc(100vw - 48px)) !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  margin: -42px auto 0 !important;
  overflow: hidden !important;
  box-shadow: 0 24px 70px rgba(6, 31, 61, .16) !important;
}

.oko-kpi-item {
  min-width: 0 !important;
  padding: 28px 30px !important;
}

.oko-kpi-item strong {
  display: block !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  font-size: clamp(30px, 2.8vw, 48px) !important;
  line-height: 1 !important;
  white-space: normal !important;
}

.oko-kpi-item span {
  display: block !important;
  margin-top: 12px !important;
  font-size: clamp(13px, 1vw, 16px) !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.oko-featured-products {
  width: min(1320px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  overflow: visible !important;
}

.oko-featured-product-track {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 24px !important;
  overflow: visible !important;
  padding: 0 !important;
}

.oko-featured-product {
  min-width: 0 !important;
}

.oko-featured-product-link {
  position: relative !important;
  height: 430px !important;
  min-height: 430px !important;
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  background: #f4f7fa !important;
  border: 1px solid #dce4ec !important;
  box-shadow: 0 20px 55px rgba(6, 31, 61, .08) !important;
  transform: translateZ(0) !important;
}

.oko-featured-product-link:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 28px 70px rgba(6, 31, 61, .14) !important;
}

.oko-featured-product-image,
.oko-featured-product-image .oko-card-media,
.oko-featured-product-image .oko-media-fallback,
.oko-featured-product-image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  border-radius: 0 !important;
}

.oko-featured-product-image img,
.oko-featured-product-image .oko-card-media img {
  object-fit: cover !important;
  object-position: center !important;
}

.oko-featured-product-link::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 0 0 0 !important;
  height: 46% !important;
  background: linear-gradient(0deg, rgba(6, 31, 61, .72), rgba(6, 31, 61, 0)) !important;
  pointer-events: none !important;
}

.oko-featured-product-button {
  position: absolute !important;
  left: 50% !important;
  bottom: 28px !important;
  transform: translateX(-50%) !important;
  z-index: 2 !important;
  min-width: 138px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 13px 24px !important;
  border: 1px solid rgba(255,255,255,.86) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.92) !important;
  color: #061f3d !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  letter-spacing: .02em !important;
  white-space: nowrap !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.18) !important;
}

.oko-el-final {
  background: transparent !important;
  border-top: 0 !important;
}

.oko-el-final .elementor-button,
.oko-el-final .elementor-button-link {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: auto !important;
  color: #061f3d !important;
}

.oko-el-final .elementor-button span {
  color: #061f3d !important;
  border-bottom: 2px solid #f26b21 !important;
  padding-bottom: 5px !important;
}

.oko-model-compare-wrap {
  width: min(1640px, calc(100vw - 64px)) !important;
  max-width: none !important;
  margin-left: 50% !important;
  transform: translateX(-50%) !important;
}

.oko-model-compare-wrap .oko-model-compare {
  width: 100% !important;
  min-width: 1420px !important;
  table-layout: fixed !important;
}

.oko-model-compare th,
.oko-model-compare td {
  white-space: nowrap !important;
  line-height: 1.35 !important;
  padding: 24px 28px !important;
}

.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) {
  width: 420px !important;
  min-width: 420px !important;
}

.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) {
  width: 230px !important;
  min-width: 230px !important;
}

.oko-related-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

.oko-related-grid a {
  min-height: 180px !important;
}

.oko-anchor-nav a {
  cursor: pointer !important;
  text-decoration: none !important;
}

.oko-wash-flow-visual {
  width: min(1180px, calc(100vw - 48px)) !important;
  min-height: 260px !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: repeat(6, 1fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
}

.oko-wash-flow-visual span {
  position: relative !important;
  display: block !important;
  min-height: 220px !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, #ffffff, #e8eef5) !important;
  border: 1px solid #dce4ec !important;
  box-shadow: 0 18px 48px rgba(6, 31, 61, .1) !important;
  overflow: hidden !important;
}

.oko-wash-flow-visual span::before {
  content: "" !important;
  position: absolute !important;
  inset: 30px 18px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, rgba(6,31,61,.95), rgba(17,55,96,.74)) !important;
  opacity: .9 !important;
}

.oko-wash-flow-visual span::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 32px !important;
  width: 34px !important;
  height: 34px !important;
  transform: translateX(-50%) !important;
  border-radius: 50% !important;
  background: #f26b21 !important;
  box-shadow: 0 0 0 12px rgba(242,107,33,.12) !important;
}

.oko-contact-gallery,
.oko-distributor-gallery {
  width: min(1180px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: 1.45fr 1fr 1fr !important;
  gap: 20px !important;
  align-items: stretch !important;
}

.oko-contact-gallery-item,
.oko-distributor-gallery-item {
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: #eef3f7 !important;
  box-shadow: 0 22px 56px rgba(6,31,61,.11) !important;
}

.oko-contact-gallery-item:first-child,
.oko-distributor-gallery-item:first-child {
  grid-row: span 2 !important;
  min-height: 470px !important;
}

.oko-contact-gallery-item:not(:first-child),
.oko-distributor-gallery-item:not(:first-child) {
  min-height: 225px !important;
}

.oko-contact-gallery img,
.oko-distributor-gallery img,
.oko-contact-gallery .oko-card-media,
.oko-distributor-gallery .oko-card-media,
.oko-contact-gallery .oko-media-fallback,
.oko-distributor-gallery .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  object-fit: cover !important;
}

@media (max-width: 1180px) {
  .oko-featured-product-track {
    grid-template-columns: repeat(5, minmax(220px, 1fr)) !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding-bottom: 10px !important;
  }

  .oko-featured-product {
    scroll-snap-align: start !important;
  }
}

@media (max-width: 960px) {
  .oko-el-home-reference .oko-hero-title,
  .oko-el-home-reference h1 {
    max-width: calc(100vw - 28px) !important;
    font-size: clamp(34px, 11vw, 48px) !important;
    line-height: 1.02 !important;
  }

  .oko-kpi-strip {
    width: calc(100vw - 24px) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: -24px !important;
  }

  .oko-kpi-item {
    padding: 18px 16px !important;
  }

  .oko-kpi-item strong {
    font-size: 24px !important;
  }

  .oko-kpi-item span {
    font-size: 12px !important;
  }

  .oko-featured-products {
    width: calc(100vw - 24px) !important;
  }

  .oko-featured-product-track {
    display: flex !important;
    gap: 16px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .oko-featured-product {
    flex: 0 0 min(78vw, 310px) !important;
  }

  .oko-featured-product-link {
    height: 360px !important;
    min-height: 360px !important;
  }

  .oko-model-compare-wrap {
    width: calc(100vw - 24px) !important;
    margin-left: 0 !important;
    transform: none !important;
    overflow-x: auto !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    min-width: 1320px !important;
  }

  .oko-related-grid {
    display: flex !important;
    overflow-x: auto !important;
    gap: 16px !important;
  }

  .oko-related-grid a {
    flex: 0 0 270px !important;
  }

  .oko-wash-flow-visual {
    width: calc(100vw - 24px) !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
  }

  .oko-wash-flow-visual span {
    min-height: 132px !important;
    border-radius: 12px !important;
  }

  .oko-contact-gallery,
  .oko-distributor-gallery {
    width: calc(100vw - 24px) !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item:first-child,
  .oko-contact-gallery-item:not(:first-child),
  .oko-distributor-gallery-item:not(:first-child) {
    grid-row: auto !important;
    min-height: 220px !important;
  }
}

/* FINAL 1.0.32 focused fixes */
.oko-el-home-reference h1,
.oko-el-home-reference .oko-hero-title {
  display: none !important;
}

.oko-el-home-reference .home-hero-copy,
.oko-el-home-reference .elementor-widget-text-editor.home-hero-copy,
.oko-el-home-reference .home-hero-copy p {
  display: none !important;
}

/* FINAL 1.0.35 EOF overrides - must remain last */
.oko-page-gallery {
  width: min(1320px, calc(100vw - 48px)) !important;
  max-width: min(1320px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 24px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}

.oko-page-gallery-item {
  flex: 0 0 calc((100% - 72px) / 4) !important;
  min-width: calc((100% - 72px) / 4) !important;
  min-height: 260px !important;
  aspect-ratio: 16 / 10 !important;
}

.oko-model-compare-wrap,
.elementor-widget-html .oko-model-compare-wrap {
  width: min(1320px, calc(100vw - 48px)) !important;
  max-width: min(1320px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  padding-bottom: 12px !important;
  transform: none !important;
}

.oko-model-compare-wrap .oko-model-compare {
  width: 1320px !important;
  min-width: 1320px !important;
  max-width: none !important;
  table-layout: fixed !important;
}

.oko-model-compare th:nth-child(1),
.oko-model-compare td:nth-child(1) { width: 130px !important; }
.oko-model-compare th:nth-child(2),
.oko-model-compare td:nth-child(2) { width: 260px !important; }
.oko-model-compare th:nth-child(3),
.oko-model-compare td:nth-child(3) { width: 230px !important; }
.oko-model-compare th:nth-child(4),
.oko-model-compare td:nth-child(4) { width: 170px !important; }
.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) { width: 360px !important; }
.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) { width: 120px !important; }

.oko-model-compare td:nth-child(6) a {
  width: 62px !important;
  min-width: 62px !important;
  max-width: 62px !important;
  height: 36px !important;
  padding: 0 !important;
  overflow: hidden !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  color: transparent !important;
  font-size: 0 !important;
}

.oko-model-compare td:nth-child(6) a::before {
  content: "View" !important;
  color: #061f3d !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

@media (max-width: 960px) {
  .oko-kpi-strip {
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-auto-flow: column !important;
    gap: 0 !important;
    overflow: visible !important;
  }

  .oko-kpi-strip > div,
  .oko-kpi-item {
    min-width: 0 !important;
    padding: 9px 5px !important;
  }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    display: block !important;
    font-size: clamp(13px, 4vw, 19px) !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  .oko-kpi-strip > div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(10px, 3vw, 14px) !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    display: block !important;
    margin-top: 6px !important;
    font-size: clamp(8px, 2.2vw, 10px) !important;
    line-height: 1.2 !important;
  }

  .oko-page-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .oko-page-gallery-item {
    flex: 0 0 72vw !important;
    min-width: 72vw !important;
    min-height: 190px !important;
    aspect-ratio: 16 / 10 !important;
  }

  .oko-model-compare-wrap,
  .elementor-widget-html .oko-model-compare-wrap {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    margin-inline: auto !important;
    touch-action: pan-x !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    width: 1120px !important;
    min-width: 1120px !important;
  }

  .oko-contact-gallery,
  .oko-distributor-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 0 12px !important;
  }

  .oko-contact-gallery-item,
  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child,
  .oko-distributor-gallery-item:nth-child(2),
  .oko-distributor-gallery-item:nth-child(3),
  .oko-distributor-gallery-item:nth-child(4),
  .oko-distributor-gallery-item:nth-child(5) {
    flex: 0 0 74vw !important;
    min-width: 74vw !important;
    max-width: 74vw !important;
    min-height: 210px !important;
    aspect-ratio: 16 / 10 !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .oko-contact-gallery-item img,
  .oko-distributor-gallery-item img,
  .oko-page-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}

/* FINAL 1.0.36 EOF overrides - active last layer */
.oko-floating-contact a {
  gap: 0 !important;
  text-decoration: none !important;
}

.oko-floating-contact a::before {
  display: none !important;
  content: none !important;
}

.oko-model-compare-wrap {
  cursor: grab !important;
  overscroll-behavior-x: contain !important;
  scrollbar-width: auto !important;
}

.oko-model-compare-wrap.is-dragging {
  cursor: grabbing !important;
  user-select: none !important;
}

@media (max-width: 960px) {
  .oko-el-kpi {
    padding-top: 8px !important;
    overflow: visible !important;
  }

  .oko-kpi-strip {
    margin-top: 6px !important;
    transform: translateY(0) !important;
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    box-shadow: 0 18px 38px rgba(6, 31, 61, .16) !important;
    border-radius: 8px !important;
  }

  .oko-kpi-strip > div,
  .oko-kpi-item {
    padding: 9px 5px 10px !important;
    min-width: 0 !important;
  }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: clamp(11px, 3.35vw, 16px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
  }

  .oko-kpi-strip > div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(9px, 2.65vw, 13px) !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    font-size: clamp(7.5px, 2vw, 9.5px) !important;
    line-height: 1.16 !important;
    white-space: normal !important;
  }

  .oko-model-compare-wrap,
  .elementor-widget-html .oko-model-compare-wrap {
    display: block !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-inline: auto !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x !important;
    scrollbar-width: auto !important;
    border-radius: 10px !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    width: 1180px !important;
    min-width: 1180px !important;
  }

  .oko-model-compare th,
  .oko-model-compare td {
    white-space: normal !important;
    word-break: normal !important;
  }
}

/* FINAL 1.0.35 active responsive corrections */
.oko-page-gallery {
  width: min(1320px, calc(100vw - 48px)) !important;
  max-width: min(1320px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 24px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  scroll-snap-type: x proximity !important;
}

.oko-page-gallery-item {
  flex: 0 0 calc((100% - 72px) / 4) !important;
  min-width: calc((100% - 72px) / 4) !important;
  min-height: 260px !important;
  aspect-ratio: 16 / 10 !important;
  scroll-snap-align: start !important;
}

.oko-model-compare-wrap,
.elementor-widget-html .oko-model-compare-wrap {
  width: min(1320px, calc(100vw - 48px)) !important;
  max-width: min(1320px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  padding-bottom: 12px !important;
  transform: none !important;
}

.oko-model-compare-wrap .oko-model-compare {
  width: 1320px !important;
  min-width: 1320px !important;
  max-width: none !important;
  table-layout: fixed !important;
}

.oko-model-compare th,
.oko-model-compare td {
  padding: 22px 24px !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.oko-model-compare th:nth-child(1),
.oko-model-compare td:nth-child(1) { width: 130px !important; }
.oko-model-compare th:nth-child(2),
.oko-model-compare td:nth-child(2) { width: 260px !important; }
.oko-model-compare th:nth-child(3),
.oko-model-compare td:nth-child(3) { width: 230px !important; }
.oko-model-compare th:nth-child(4),
.oko-model-compare td:nth-child(4) { width: 170px !important; }
.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) { width: 360px !important; }
.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) { width: 120px !important; }

.oko-model-compare td:nth-child(6) a {
  width: 62px !important;
  min-width: 62px !important;
  max-width: 62px !important;
  height: 36px !important;
  padding: 0 !important;
  overflow: hidden !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  color: transparent !important;
  font-size: 0 !important;
}

.oko-model-compare td:nth-child(6) a::before {
  content: "View" !important;
  color: #061f3d !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

@media (max-width: 960px) {
  .oko-kpi-strip {
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-auto-flow: column !important;
    gap: 0 !important;
    overflow: visible !important;
  }

  .oko-kpi-strip > div,
  .oko-kpi-item {
    min-width: 0 !important;
    padding: 9px 5px !important;
    text-align: left !important;
  }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    display: block !important;
    font-size: clamp(13px, 4vw, 19px) !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: clip !important;
  }

  .oko-kpi-strip > div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(10px, 3vw, 14px) !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    display: block !important;
    margin-top: 6px !important;
    font-size: clamp(8px, 2.2vw, 10px) !important;
    line-height: 1.2 !important;
  }

  .oko-page-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .oko-page-gallery-item {
    flex: 0 0 72vw !important;
    min-width: 72vw !important;
    min-height: 190px !important;
    aspect-ratio: 16 / 10 !important;
  }

  .oko-model-compare-wrap,
  .elementor-widget-html .oko-model-compare-wrap {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    margin-inline: auto !important;
    touch-action: pan-x !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    width: 1120px !important;
    min-width: 1120px !important;
  }

  .oko-model-compare th,
  .oko-model-compare td {
    padding: 16px 18px !important;
    font-size: 15px !important;
  }

  .oko-contact-gallery,
  .oko-distributor-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x proximity !important;
    padding: 0 0 12px !important;
  }

  .oko-contact-gallery-item,
  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child,
  .oko-distributor-gallery-item:nth-child(2),
  .oko-distributor-gallery-item:nth-child(3),
  .oko-distributor-gallery-item:nth-child(4),
  .oko-distributor-gallery-item:nth-child(5) {
    flex: 0 0 74vw !important;
    min-width: 74vw !important;
    max-width: 74vw !important;
    min-height: 210px !important;
    aspect-ratio: 16 / 10 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    scroll-snap-align: start !important;
  }

  .oko-contact-gallery-item img,
  .oko-distributor-gallery-item img,
  .oko-page-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}

/* FINAL 1.0.34 mobile, workflow, gallery, and table polish */
.oko-el-home-reference h1,
.oko-el-home-reference .oko-hero-title {
  max-width: 980px !important;
  margin-inline: auto !important;
  text-align: center !important;
  line-height: 1.08 !important;
}

.oko-el-home-reference h1 .oko-hero-line,
.oko-el-home-reference .oko-hero-title .oko-hero-line {
  display: block !important;
}

.oko-el-final .elementor-button,
.oko-el-final a.elementor-button,
.oko-el-final .oko-button-primary,
.oko-el-final .oko-button-ghost {
  background: transparent !important;
  color: #061f3d !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: auto !important;
  text-decoration: none !important;
}

.oko-el-final .elementor-button:hover,
.oko-el-final a.elementor-button:hover {
  color: #f26b21 !important;
}

.oko-page-gallery {
  width: min(1320px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

.oko-page-gallery-item {
  min-height: 360px !important;
  aspect-ratio: 16 / 9 !important;
}

.oko-model-compare-wrap {
  width: min(1480px, calc(100vw - 48px)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.oko-model-compare {
  min-width: 1260px !important;
  table-layout: fixed !important;
}

.oko-model-compare th,
.oko-model-compare td {
  overflow-wrap: normal !important;
  word-break: normal !important;
  white-space: normal !important;
}

.oko-model-compare th:nth-child(1),
.oko-model-compare td:nth-child(1) {
  width: 150px !important;
}

.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) {
  width: 360px !important;
}

.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) {
  width: 132px !important;
}

.oko-model-compare td:nth-child(6) a {
  width: 62px !important;
  min-width: 62px !important;
  max-width: 62px !important;
  height: 36px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  font-size: 0 !important;
  color: transparent !important;
}

.oko-model-compare td:nth-child(6) a::before {
  content: "View" !important;
  font-size: 14px !important;
  line-height: 1 !important;
  color: #061f3d !important;
}

.oko-process-workflow {
  width: min(1320px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
}

.oko-process-workflow .oko-section-heading {
  max-width: 840px !important;
  margin: 0 0 42px !important;
}

.oko-process-workflow .oko-section-heading h2 {
  margin: 0 0 14px !important;
  color: #061f3d !important;
  font-size: clamp(34px, 4vw, 56px) !important;
  line-height: 1.04 !important;
}

.oko-process-workflow .oko-section-heading p {
  color: #667384 !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

.oko-process-steps {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  counter-reset: process !important;
}

.oko-process-step {
  position: relative !important;
  min-height: 245px !important;
  padding: 28px !important;
  border: 1px solid #dce4ec !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 18px 50px rgba(6, 31, 61, .08) !important;
}

.oko-process-step::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: -20px !important;
  width: 20px !important;
  height: 2px !important;
  background: #f26b21 !important;
  opacity: .55 !important;
}

.oko-process-step:nth-child(3n)::after,
.oko-process-step:last-child::after {
  display: none !important;
}

.oko-process-number {
  display: inline-flex !important;
  width: 42px !important;
  height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: #061f3d !important;
  color: #fff !important;
  font-weight: 800 !important;
  margin-bottom: 20px !important;
}

.oko-process-icon {
  display: block !important;
  width: 34px !important;
  height: 3px !important;
  background: #f26b21 !important;
  border-radius: 999px !important;
  margin: 0 0 20px !important;
}

.oko-process-step h3 {
  margin: 0 0 12px !important;
  color: #061f3d !important;
  font-size: 22px !important;
  line-height: 1.18 !important;
}

.oko-process-step p {
  margin: 0 !important;
  color: #667384 !important;
  font-size: 16px !important;
  line-height: 1.62 !important;
}

.oko-process-cta {
  margin-top: 28px !important;
  padding: 30px !important;
  border-radius: 14px !important;
  background: #061f3d !important;
  color: #fff !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 24px !important;
  align-items: center !important;
}

.oko-process-cta h3 {
  color: #fff !important;
  margin: 0 0 8px !important;
  font-size: 26px !important;
}

.oko-process-cta p {
  margin: 0 !important;
  color: rgba(255,255,255,.78) !important;
}

.oko-process-cta div {
  display: flex !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
}

.oko-process-cta a {
  color: #fff !important;
  border-bottom: 2px solid #f26b21 !important;
  text-decoration: none !important;
  font-weight: 800 !important;
}

@media (max-width: 960px) {
  .oko-kpi-strip {
    width: calc(100vw - 18px) !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 0 !important;
    overflow: visible !important;
    border-radius: 8px !important;
  }

  .oko-kpi-strip div,
  .oko-kpi-item {
    min-width: 0 !important;
    padding: 10px 6px !important;
  }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    display: block !important;
    font-size: clamp(14px, 4.2vw, 20px) !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  .oko-kpi-strip div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(10px, 3.2vw, 15px) !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    display: block !important;
    margin-top: 7px !important;
    font-size: clamp(8px, 2.3vw, 10px) !important;
    line-height: 1.25 !important;
  }

  .oko-footer-shell {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px 14px !important;
  }

  .oko-footer-brand {
    grid-column: 1 / -1 !important;
  }

  .oko-footer-links h2,
  .oko-footer-links h3 {
    font-size: 13px !important;
  }

  .oko-footer-links a {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  .oko-model-compare-wrap {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    overflow-x: auto !important;
    padding-bottom: 10px !important;
  }

  .oko-model-compare {
    min-width: 1160px !important;
  }

  .oko-page-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .oko-page-gallery-item {
    min-height: 0 !important;
    aspect-ratio: 1.2 / 1 !important;
  }

  .oko-contact-gallery,
  .oko-distributor-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: grid !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    grid-auto-columns: minmax(240px, 78vw) !important;
    gap: 12px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x proximity !important;
    padding-bottom: 10px !important;
  }

  .oko-contact-gallery-item,
  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child,
  .oko-distributor-gallery-item:nth-child(2),
  .oko-distributor-gallery-item:nth-child(3),
  .oko-distributor-gallery-item:nth-child(4),
  .oko-distributor-gallery-item:nth-child(5) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 180px !important;
    aspect-ratio: 16 / 10 !important;
    scroll-snap-align: start !important;
  }

  .oko-card,
  .oko-card-grid .oko-card {
    min-height: auto !important;
    padding: 22px !important;
  }

  .oko-card-grid.three,
  .oko-card-grid.four {
    gap: 14px !important;
  }

  .oko-el-section,
  .oko-el-soft {
    padding-top: 52px !important;
    padding-bottom: 52px !important;
  }

  .oko-el-hero-small {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
  }

  .oko-process-workflow {
    width: calc(100vw - 24px) !important;
  }

  .oko-process-workflow .oko-section-heading {
    margin-bottom: 28px !important;
  }

  .oko-process-workflow .oko-section-heading h2 {
    font-size: clamp(30px, 9vw, 42px) !important;
  }

  .oko-process-workflow .oko-section-heading p {
    font-size: 15px !important;
  }

  .oko-process-steps {
    display: block !important;
    position: relative !important;
  }

  .oko-process-step {
    min-height: auto !important;
    padding: 22px !important;
    margin-bottom: 14px !important;
  }

  .oko-process-step::after {
    display: none !important;
  }

  .oko-process-step h3 {
    font-size: 20px !important;
  }

  .oko-process-step p {
    font-size: 14px !important;
  }

  .oko-process-cta {
    grid-template-columns: 1fr !important;
    padding: 24px !important;
  }
}

.oko-kpi-strip {
  width: min(1260px, calc(100vw - 56px)) !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  margin-top: -34px !important;
  border-radius: 9px !important;
}

.oko-kpi-strip div,
.oko-kpi-item {
  min-width: 0 !important;
  padding: 22px 26px !important;
}

.oko-kpi-strip strong,
.oko-kpi-item strong {
  font-size: clamp(28px, 2.15vw, 42px) !important;
  line-height: 1.03 !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

.oko-kpi-strip div:last-child strong,
.oko-kpi-item:last-child strong {
  font-size: clamp(24px, 1.75vw, 36px) !important;
  letter-spacing: -.025em !important;
}

.oko-kpi-strip span,
.oko-kpi-item span {
  font-size: clamp(12px, .88vw, 15px) !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
}

.oko-main .oko-el-final,
.oko-el-final {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.oko-main .oko-el-final .elementor-button,
.oko-main .oko-el-final .elementor-button-link,
.oko-el-final .elementor-button,
.oko-el-final .elementor-button-link {
  background: transparent !important;
  color: #061f3d !important;
  border: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

.oko-main .oko-el-final .elementor-button span,
.oko-main .oko-el-final .elementor-button-text,
.oko-el-final .elementor-button span,
.oko-el-final .elementor-button-text {
  color: #061f3d !important;
}

.oko-model-compare-wrap {
  width: min(1500px, calc(100vw - 64px)) !important;
  overflow-x: auto !important;
}

.oko-model-compare-wrap .oko-model-compare {
  min-width: 1180px !important;
  table-layout: fixed !important;
}

.oko-model-compare th,
.oko-model-compare td {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  padding: 20px 22px !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.oko-model-compare th:nth-child(1),
.oko-model-compare td:nth-child(1) { width: 120px !important; }
.oko-model-compare th:nth-child(2),
.oko-model-compare td:nth-child(2) { width: 250px !important; }
.oko-model-compare th:nth-child(3),
.oko-model-compare td:nth-child(3) { width: 220px !important; }
.oko-model-compare th:nth-child(4),
.oko-model-compare td:nth-child(4) { width: 180px !important; }
.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) { width: 320px !important; min-width: 320px !important; }
.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) { width: 110px !important; min-width: 110px !important; }

.oko-model-compare a {
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  padding: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  color: transparent !important;
  text-align: center !important;
}

.oko-model-compare a::before {
  content: "View" !important;
  color: #061f3d !important;
  display: inline-block !important;
  width: 100% !important;
  text-align: center !important;
}

.oko-page-gallery {
  width: min(1060px, calc(100vw - 48px)) !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin-inline: auto !important;
}

.oko-page-gallery-item {
  min-height: 250px !important;
  aspect-ratio: 16 / 9 !important;
}

.oko-page-gallery-item img,
.oko-page-gallery-item .oko-card-media,
.oko-page-gallery-item .oko-media-fallback {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oko-distributor-gallery {
  width: min(1320px, calc(100vw - 48px)) !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin-inline: auto !important;
}

.oko-distributor-gallery-item {
  min-height: 210px !important;
  aspect-ratio: 16 / 10 !important;
}

.oko-distributor-gallery-item:first-child {
  grid-column: span 2 !important;
  grid-row: span 2 !important;
  min-height: 440px !important;
}

.oko-distributor-gallery-item:nth-child(2),
.oko-distributor-gallery-item:nth-child(3),
.oko-distributor-gallery-item:nth-child(4),
.oko-distributor-gallery-item:nth-child(5) {
  grid-column: span 2 !important;
}

.oko-site-header .oko-brand-shell {
  position: relative !important;
}

@media (max-width: 960px) {
  .oko-site-header .oko-brand-shell {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 92px !important;
    padding: 0 18px !important;
  }

  .oko-site-header .oko-top-links,
  .oko-site-header .oko-nav-row {
    display: none !important;
  }

  .oko-site-header .oko-mobile-toggle {
    position: static !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 10px !important;
    font-size: 28px !important;
  }

  .oko-mobile-panel {
    top: 92px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }

  .oko-kpi-strip {
    width: calc(100vw - 24px) !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    margin-top: -20px !important;
  }

  .oko-kpi-strip div,
  .oko-kpi-item {
    padding: 12px 8px !important;
    text-align: left !important;
  }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    font-size: clamp(16px, 5vw, 22px) !important;
    white-space: nowrap !important;
  }

  .oko-kpi-strip div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(13px, 4vw, 18px) !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    font-size: clamp(9px, 2.5vw, 11px) !important;
    white-space: normal !important;
  }

  .oko-page-gallery {
    width: calc(100vw - 24px) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .oko-page-gallery-item {
    min-height: 128px !important;
    aspect-ratio: 1.15 / 1 !important;
  }

  .oko-distributor-gallery {
    width: calc(100vw - 24px) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .oko-distributor-gallery-item:first-child,
  .oko-distributor-gallery-item:nth-child(2),
  .oko-distributor-gallery-item:nth-child(3),
  .oko-distributor-gallery-item:nth-child(4),
  .oko-distributor-gallery-item:nth-child(5) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 128px !important;
    aspect-ratio: 1.15 / 1 !important;
  }

  .oko-model-compare-wrap {
    width: calc(100vw - 24px) !important;
    overflow-x: auto !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    min-width: 1120px !important;
  }
}

/* FINAL 1.0.32.1 hero title correction */
.oko-el-home-reference h1,
.oko-el-home-reference .oko-hero-title {
  display: block !important;
}

.oko-el-home-reference .home-hero-copy,
.oko-el-home-reference .elementor-widget-text-editor.home-hero-copy,
.oko-el-home-reference .home-hero-copy p {
  display: none !important;
}

/* FINAL 1.0.35 EOF overrides - active last layer */
.oko-floating-contact a {
  gap: 0 !important;
  text-decoration: none !important;
}

.oko-floating-contact a::before {
  content: none !important;
  display: none !important;
}

.oko-model-compare-wrap {
  cursor: grab !important;
  overscroll-behavior-x: contain !important;
  scrollbar-width: auto !important;
}

.oko-model-compare-wrap.is-dragging {
  cursor: grabbing !important;
  user-select: none !important;
}

.oko-page-gallery {
  width: min(1320px, calc(100vw - 48px)) !important;
  max-width: min(1320px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 24px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}

.oko-page-gallery-item {
  flex: 0 0 calc((100% - 72px) / 4) !important;
  min-width: calc((100% - 72px) / 4) !important;
  min-height: 260px !important;
  aspect-ratio: 16 / 10 !important;
}

.oko-model-compare-wrap,
.elementor-widget-html .oko-model-compare-wrap {
  width: min(1320px, calc(100vw - 48px)) !important;
  max-width: min(1320px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  padding-bottom: 12px !important;
  transform: none !important;
}

.oko-model-compare-wrap .oko-model-compare {
  width: 1320px !important;
  min-width: 1320px !important;
  max-width: none !important;
  table-layout: fixed !important;
}

.oko-model-compare th:nth-child(1),
.oko-model-compare td:nth-child(1) { width: 130px !important; }
.oko-model-compare th:nth-child(2),
.oko-model-compare td:nth-child(2) { width: 260px !important; }
.oko-model-compare th:nth-child(3),
.oko-model-compare td:nth-child(3) { width: 230px !important; }
.oko-model-compare th:nth-child(4),
.oko-model-compare td:nth-child(4) { width: 170px !important; }
.oko-model-compare th:nth-child(5),
.oko-model-compare td:nth-child(5) { width: 360px !important; }
.oko-model-compare th:nth-child(6),
.oko-model-compare td:nth-child(6) { width: 120px !important; }

.oko-model-compare td:nth-child(6) a {
  width: 62px !important;
  min-width: 62px !important;
  max-width: 62px !important;
  height: 36px !important;
  padding: 0 !important;
  overflow: hidden !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  color: transparent !important;
  font-size: 0 !important;
}

.oko-model-compare td:nth-child(6) a::before {
  content: "View" !important;
  color: #061f3d !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

@media (max-width: 960px) {
  .oko-el-kpi {
    padding-top: 10px !important;
    overflow: visible !important;
  }

  .oko-kpi-strip {
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-auto-flow: column !important;
    gap: 0 !important;
    overflow: visible !important;
    margin-top: 8px !important;
    transform: translateY(0) !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 38px rgba(6, 31, 61, .16) !important;
  }

  .oko-kpi-strip > div,
  .oko-kpi-item {
    min-width: 0 !important;
    padding: 9px 4px 10px !important;
    }

  .oko-kpi-strip strong,
  .oko-kpi-item strong {
    display: block !important;
    max-width: 100% !important;
    font-size: clamp(11px, 3.35vw, 16px) !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  .oko-kpi-strip > div:last-child strong,
  .oko-kpi-item:last-child strong {
    font-size: clamp(8.5px, 2.45vw, 12px) !important;
    word-break: normal !important;
  }

  .oko-kpi-strip span,
  .oko-kpi-item span {
    display: block !important;
    margin-top: 5px !important;
    font-size: clamp(7.5px, 2vw, 9.5px) !important;
    line-height: 1.16 !important;
    white-space: normal !important;
  }

  .oko-page-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .oko-page-gallery-item {
    flex: 0 0 72vw !important;
    min-width: 72vw !important;
    min-height: 190px !important;
    aspect-ratio: 16 / 10 !important;
  }

  .oko-model-compare-wrap,
  .elementor-widget-html .oko-model-compare-wrap {
    display: block !important;
    position: relative !important;
    left: 50% !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    min-width: 0 !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
    touch-action: pan-x !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: auto !important;
    padding-bottom: 14px !important;
  }

  .oko-model-compare-wrap .oko-model-compare {
    width: 1180px !important;
    min-width: 1180px !important;
    max-width: none !important;
  }

  .oko-contact-gallery,
  .oko-distributor-gallery {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 0 12px !important;
  }

  .oko-contact-gallery-item,
  .oko-contact-gallery-item:first-child,
  .oko-distributor-gallery-item,
  .oko-distributor-gallery-item:first-child,
  .oko-distributor-gallery-item:nth-child(2),
  .oko-distributor-gallery-item:nth-child(3),
  .oko-distributor-gallery-item:nth-child(4),
  .oko-distributor-gallery-item:nth-child(5) {
    flex: 0 0 74vw !important;
    min-width: 74vw !important;
    max-width: 74vw !important;
    min-height: 210px !important;
    aspect-ratio: 16 / 10 !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .oko-contact-gallery-item img,
  .oko-distributor-gallery-item img,
  .oko-page-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}
