{"id":11208,"date":"2026-04-03T20:29:33","date_gmt":"2026-04-03T20:29:33","guid":{"rendered":"https:\/\/assecoplatform.com\/retail-image-recognition-de\/"},"modified":"2026-10-21T09:04:13","modified_gmt":"2026-10-21T09:04:13","slug":"regalbilderkennung","status":"publish","type":"page","link":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/","title":{"rendered":"Regalbilderkennung"},"content":{"rendered":"\n<style>\n\n\/* ==== BAZA Design System (kopia z LP SRE #6729) ==== *\/\n\n\/* ============================================\n   ASSECO BS Design System \u2014 Global Styles\n   Based on Figma: AP_PodstronaERP + AP_Homepage + AP_Homepage_animacje\n   ============================================ *\/\n\n\/* --- Font Face --- *\/\n@font-face {\n  font-family: 'PP Mori';\n  src: url('https:\/\/assecoplatform.com\/wp-content\/themes\/asseco-lp-fse\/dist\/fonts\/subset-PPMori-Regular.woff2') format('woff2');\n  font-weight: 200;\n  font-style: normal;\n  font-display: swap;\n}\n\n@font-face {\n  font-family: 'PP Mori';\n  src: url('https:\/\/assecoplatform.com\/wp-content\/themes\/asseco-lp-fse\/dist\/fonts\/subset-PPMori-Regular.woff2') format('woff2');\n  font-weight: 400;\n  font-style: normal;\n  font-display: swap;\n}\n\n@font-face {\n  font-family: 'PP Mori';\n  src: url('https:\/\/assecoplatform.com\/wp-content\/themes\/asseco-lp-fse\/dist\/fonts\/subset-PPMori-SemiBold.woff2') format('woff2');\n  font-weight: 600;\n  font-style: normal;\n  font-display: swap;\n}\n\n\/* --- CSS Custom Properties (Design Tokens) --- *\/\n:root {\n  \/* Colors *\/\n  --color-base:        #F2F2F2;\n  --color-gray:        #F2F2F2;\n  --color-white:       #FDFDFD;\n  --color-black:       #232323;\n  --color-dark-black:  #090909;\n  --color-dark-gray:   #676767;\n  --color-medium-gray: #AEAEAE;\n  --color-light-gray:  #DFDFDF;\n\n  \/* Brand \/ ERP Colors *\/\n  --color-erp-yellow:     #FFA533;\n  --color-erp-red:        #FF4A6A;\n  --color-erp-green:      #00C2B6;\n  --color-erp-blue:       #3FA2EB;\n  --color-erp-light-orange: #FFC274;\n\n  \/* Accent \/ Gradient *\/\n  --color-accent-orange: #EF5909;\n  --color-accent-red:    #D70E44;\n  --color-accent-purple: #A046E1;\n  --gradient-brand: linear-gradient(90deg, #ef5909 0%, #d70e44 33.333%, #a046e1 66.666%, #1676c3);\n\n  \/* Surfaces *\/\n  --surface-card-dark:  #141414;\n  --surface-card-dark2: #282828;\n  --surface-icon-dark:  #484848;\n\n  \/* Typography Scale *\/\n  --font-family: 'PP Mori', arial, sans-serif;\n\n  \/* Spacing *\/\n  --space-xs:  4px;\n  --space-sm:  8px;\n  --space-md:  16px;\n  --space-lg:  24px;\n  --space-xl:  32px;\n  --space-2xl: 48px;\n  --space-3xl: 64px;\n  --space-4xl: 96px;\n\n  \/* Border Radius *\/\n  --radius-sm:   8px;\n  --radius-md:  16px;\n  --radius-lg:  24px;\n  --radius-xl:  52px;\n  --radius-full: 9999px;\n\n  \/* Status colors *\/\n  --color-status-success: #10B981;\n  --color-status-warning: #F59E0B;\n\n  \/* Max width *\/\n  --max-width: 1270px;\n  --page-padding: clamp(16px, 4vw, 48px);\n}\n\n\/* --- Typography --- *\/\n.text-h2 {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  letter-spacing: normal;\n}\n\n.text-h4 {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.125;\n  letter-spacing: normal;\n}\n\n.text-h5 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: normal;\n}\n\n.text-h7 {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  letter-spacing: 0;\n}\n\n.text-h8 {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.34;\n  letter-spacing: 0;\n}\n\n.text-h9 {\n  font-size: 18px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: normal;\n}\n\n.text-h10 {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  letter-spacing: normal;\n}\n\n.text-h11 {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n}\n\n.text-small {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n}\n\n.text-tiny {\n  font-size: 10px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.2px;\n}\n\n\/* Text colors *\/\n.text-black      { color: var(--color-black); }\n.text-white      { color: var(--color-white); }\n.text-dark-gray  { color: var(--color-dark-gray); }\n.text-medium-gray { color: var(--color-medium-gray); }\n.text-light-gray { color: var(--color-light-gray); }\n\n\/* Gradient text *\/\n.text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n\/* --- Layout --- *\/\n.container {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.section {\n  padding: var(--space-4xl) 0;\n}\n\n\/* --- Buttons --- *\/\n.btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-sm);\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  white-space: nowrap;\n  border-radius: 9999px;\n  padding: 11px 16px 9px;\n  height: 42px;\n  transition: opacity 0.2s ease, transform 0.15s ease;\n}\n\n.btn:hover {\n  opacity: 0.85;\n}\n\n\/* Button with arrow icon (::before) \u2014 matches live assecobs.pl *\/\n.btn-has-arrow {\n  flex-direction: row-reverse;\n  gap: 8px;\n}\n\n.btn-has-arrow::before {\n  content: \"\";\n  display: block;\n  width: 16px;\n  height: 16px;\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M2 6.25a.75.75 0 0 0 0 1.5v-1.5Zm12.53 1.28a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 1 0-1.06 1.06L12.939 7l-4.242 4.243a.75.75 0 0 0 1.06 1.06L14.53 7.53ZM2 7.75h12v-1.5H2v1.5Z' fill='%23232323'\/%3E%3C\/svg%3E\");\n  background-size: contain;\n  background-repeat: no-repeat;\n  flex-shrink: 0;\n  transition: transform 0.2s ease;\n}\n\n.btn-has-arrow:hover::before {\n  transform: translateX(4px);\n}\n\n.btn-primary-white.btn-has-arrow:hover {\n  opacity: 1;\n  background-color: #3FA2EB;\n  color: var(--color-white);\n}\n\n.btn-primary-white.btn-has-arrow:hover::before {\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M2 6.25a.75.75 0 0 0 0 1.5v-1.5Zm12.53 1.28a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 1 0-1.06 1.06L12.939 7l-4.242 4.243a.75.75 0 0 0 1.06 1.06L14.53 7.53ZM2 7.75h12v-1.5H2v1.5Z' fill='%23FDFDFD'\/%3E%3C\/svg%3E\");\n}\n\n.btn-primary.btn-has-arrow::before {\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M2 6.25a.75.75 0 0 0 0 1.5v-1.5Zm12.53 1.28a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 1 0-1.06 1.06L12.939 7l-4.242 4.243a.75.75 0 0 0 1.06 1.06L14.53 7.53ZM2 7.75h12v-1.5H2v1.5Z' fill='%23FDFDFD'\/%3E%3C\/svg%3E\");\n}\n\n.btn-primary.btn-has-arrow:hover {\n  opacity: 1;\n  background-color: #3FA2EB;\n}\n\n.btn:active {\n  transform: scale(0.97);\n}\n\n\/* Primary \u2014 dark fill *\/\n.btn-primary {\n  background-color: var(--color-black);\n  color: var(--color-white);\n}\n\n\/* Primary \u2014 white fill *\/\n.btn-primary-white {\n  background-color: var(--color-white);\n  color: var(--color-black);\n}\n\n\/* Outline *\/\n.btn-outline {\n  background-color: var(--color-white);\n  color: var(--color-black);\n  border: 1px solid var(--color-black);\n}\n\n\/* Hero badge (kicker label above heading) *\/\n.hero-badge {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--space-sm);\n  padding: var(--space-sm) var(--space-md);\n  border-radius: var(--radius-full);\n  border: 1px solid rgba(255, 255, 255, 0.15);\n  background: rgba(255, 255, 255, 0.06);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-lg);\n}\n\n\/* Primary with blue hover *\/\n.btn-primary--blue-hover:hover {\n  background-color: var(--color-erp-blue);\n  color: var(--color-white);\n  opacity: 1;\n}\n\n\/* Small button (header CTA) *\/\n.btn--sm {\n  padding: var(--space-sm) 20px;\n  height: auto;\n}\n\n\/* Outline on dark background *\/\n.btn-outline-white {\n  background-color: transparent;\n  color: var(--color-white);\n  border: 1px solid var(--color-white);\n}\n\n.btn-outline-white:hover {\n  background-color: var(--color-black);\n  color: var(--color-white);\n  border-color: var(--color-black);\n}\n\n\/* Outline on tinted bg *\/\n.btn-outline-tinted {\n  background-color: #e6f0ef;\n  color: var(--color-black);\n  border: 1px solid var(--color-black);\n}\n\n\/* Large pill (footer CTA) *\/\n.btn-lg {\n  height: 60px;\n  padding: 12px 24px;\n  border-radius: var(--radius-xl);\n}\n\n\/* Arrow icon inside buttons *\/\n.btn-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n}\n\n.btn-icon svg {\n  width: 100%;\n  height: 100%;\n}\n\n\/* Round arrow button (used in bran\u017ce section) *\/\n.btn-round {\n  width: 60px;\n  height: 60px;\n  border-radius: 50%;\n  padding: 0;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n}\n\n\/* --- Tags --- *\/\n.tag {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 9px 8px 7px;\n  border-radius: 8px;\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1;\n  letter-spacing: -0.02rem;\n  color: var(--color-white);\n  white-space: nowrap;\n  margin: 0;\n}\n\n.tag-blue    { background-color: rgb(22, 118, 195); }\n.tag-orange  { background-color: rgb(255, 165, 51); }\n.tag-wms     { background-color: rgb(255, 194, 116); }\n.tag-red     { background-color: rgb(255, 74, 106); }\n.tag-gray    { background-color: rgb(174, 174, 174); }\n.tag-green   { background-color: rgb(0, 194, 182); }\n.tag-salmon  { background-color: rgb(241, 107, 94); }\n.tag-yellow  { background-color: var(--color-erp-yellow); }\n\n\/* --- Cards --- *\/\n.card {\n  background-color: var(--color-white);\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n}\n\n.card-dark {\n  background-color: var(--surface-card-dark);\n  color: var(--color-white);\n  border-radius: var(--radius-lg);\n}\n\n.card-dark2 {\n  background-color: var(--surface-card-dark2);\n  color: var(--color-white);\n  border-radius: var(--radius-md);\n}\n\n\/* ERP Products Grid *\/\n.erp-products {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 38px 25px;\n  justify-content: center;\n  max-width: 1326px;\n  margin: 0 auto;\n}\n\n\/* ERP Solution Card *\/\n.card-erp {\n  position: relative;\n  background-color: var(--color-white);\n  border-radius: 25px;\n  overflow: visible;\n  cursor: pointer;\n  padding-bottom: 38px;\n}\n\n.card-erp__image {\n  position: relative;\n  overflow: hidden;\n  border-radius: 25px;\n  height: 195px;\n  margin-bottom: 25px;\n  transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.card-erp__logo {\n  position: relative;\n  padding: 0 25px;\n  display: grid;\n  grid-template-rows: 0fr;\n  overflow: visible;\n  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__logo-img,\nimg.card-erp__logo-img {\n  display: block;\n  width: auto;\n  height: 0;\n  opacity: 0;\n  min-height: 0;\n  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__logo-img img {\n  height: 50px;\n  width: auto;\n}\n\n.card-erp__open {\n  position: absolute;\n  right: 25px;\n  top: 0;\n  bottom: -52px;\n  width: 52px;\n  height: 52px;\n  border-radius: 19px;\n  background: rgba(242, 242, 242, 0.75);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border: none;\n  cursor: pointer;\n  transition: all 0.3s;\n  z-index: 2;\n}\n\n.card-erp__open:hover {\n  background: var(--color-black);\n}\n\n.card-erp__open:hover svg path {\n  stroke: white;\n}\n\n.card-erp__body {\n  padding: 0 33px;\n  margin-top: 35px;\n  transition: margin-top 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 33px;\n  color: var(--color-black);\n  margin-bottom: 13px;\n}\n\n.card-erp__desc {\n  font-size: 20px;\n  font-weight: 400;\n  line-height: 25px;\n  color: var(--color-dark-gray);\n}\n\n\/* Card hover \u2014 show logo, shrink image *\/\n.card-erp:hover .card-erp__image {\n  height: 144px;\n}\n\n.card-erp:hover .card-erp__logo {\n  grid-template-rows: 1fr;\n}\n\n.card-erp:hover .card-erp__logo-img,\n.card-erp:hover img.card-erp__logo-img {\n  height: 50px;\n  opacity: 1;\n}\n\n.card-erp:hover .card-erp__body {\n  margin-top: 27px;\n}\n\n\/* --- ERP Slide Overlay (fixed, like live site) --- *\/\n.erp-slider {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: 200;\n  display: none;\n  overflow: visible;\n}\n\n.erp-slider.is-active {\n  display: flex;\n  justify-content: flex-end;\n}\n\n.erp-slider__bg {\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  background: rgba(35, 35, 35, 0.5);\n  z-index: 0;\n}\n\n.erp-slider__panel {\n  position: relative;\n  z-index: 1;\n  width: 83.3%;\n  max-width: 1200px;\n  height: 100vh;\n  background: var(--color-base);\n  border-radius: 25px 0 0 25px;\n  overflow: hidden;\n  transform: translateX(100%);\n  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slider.is-active .erp-slider__panel {\n  transform: translateX(0);\n}\n\n\/* Nav arrows (bottom-right of panel) *\/\n.erp-slider__nav {\n  position: absolute;\n  bottom: 50px;\n  right: 54px;\n  display: flex;\n  gap: 8px;\n  z-index: 10;\n}\n\n.erp-slider__arrow {\n  width: 31px;\n  height: 31px;\n  border-radius: 9999px;\n  background: var(--color-white);\n  border: none;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  color: var(--color-black);\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slider__arrow svg {\n  width: 12px;\n  height: 12px;\n}\n\n.erp-slider__arrow:hover {\n  background: var(--color-black);\n}\n\n.erp-slider__arrow:hover svg path {\n  stroke: #fff;\n}\n\n.erp-slider__arrow svg path {\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slider__arrow:disabled {\n  opacity: 0.3;\n  cursor: default;\n}\n\n.erp-slider__arrow:disabled:hover {\n  background: var(--color-white);\n}\n\n.erp-slider__arrow:disabled:hover svg path {\n  stroke: #232323;\n}\n\n\/* Individual slide panel *\/\n.erp-slide {\n  display: none;\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  grid-template-columns: 1.18fr 1fr;\n  grid-template-rows: 1fr auto;\n  gap: 19px 69px;\n  padding: 134px 50px 50px;\n  overflow-y: auto;\n  z-index: 1;\n}\n\n.erp-slide.is-active {\n  display: grid;\n}\n\n.erp-slide__close {\n  position: absolute;\n  left: 50px;\n  top: 33px;\n  width: 52px;\n  height: 52px;\n  border-radius: 19px;\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border: none;\n  cursor: pointer;\n  z-index: 10;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slide__close svg {\n  width: 20px;\n  height: 20px;\n}\n\n.erp-slide__close:hover {\n  background: var(--color-black);\n}\n\n.erp-slide__close:hover svg path {\n  stroke: white;\n}\n\n.erp-slide__close svg path {\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slide__content {\n  padding: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  grid-row: 1;\n  grid-column: 1;\n}\n\n.erp-slide__logo {\n  width: auto;\n  height: 50px;\n  margin-bottom: 40px;\n}\n\n.erp-slide__logo img {\n  height: 100%;\n  width: auto;\n}\n\n\/* Logo badge \u2014 icon + label (DRS variant) *\/\n.erp-slide__logo-badge {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--space-md);\n  margin-bottom: var(--space-xl);\n}\n\n.erp-slide__logo-badge-icon {\n  width: 48px;\n  height: 48px;\n  border-radius: var(--radius-sm);\n  background-color: var(--color-gray);\n  background-repeat: no-repeat;\n  background-position: center;\n  background-size: 24px 24px;\n  flex-shrink: 0;\n}\n\n.erp-slide__logo-badge-label {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.erp-slide__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 56px;\n  color: var(--color-black);\n  margin-bottom: 12px;\n}\n\n.erp-slide__subheading {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 23px;\n  color: var(--color-dark-gray);\n  margin-bottom: 29px;\n}\n\n.erp-slide__checklist {\n  list-style: none;\n  padding: 0 0 0 38px;\n  display: block;\n  margin: 25px 0;\n}\n\n.erp-slide__checklist li {\n  position: relative;\n  padding: 0;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 23px;\n  color: var(--color-dark-gray);\n  margin-bottom: 13px;\n}\n\n.erp-slide__checklist li:last-child {\n  margin-bottom: 0;\n}\n\n.erp-slide__checklist li::before {\n  content: '';\n  position: absolute;\n  left: -38px;\n  top: 0;\n  width: 22px;\n  height: 22px;\n  border: none;\n  border-radius: 0;\n  background: url(\"list-check.svg\") no-repeat 0 0 \/ 22px 22px;\n}\n\n.erp-slide__image {\n  grid-row: 1 \/ 3;\n  grid-column: 2;\n  border-radius: 0;\n  overflow: visible;\n  position: relative;\n}\n\n.erp-slide__image img {\n  width: 100%;\n  height: auto;\n  object-fit: contain;\n}\n\n\/* \"Wi\u0119cej\" button *\/\n.erp-slide__more {\n  grid-row: 2;\n  grid-column: 1;\n  align-self: end;\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  background: var(--color-black);\n  color: var(--color-white);\n  border: none;\n  border-radius: 9999px;\n  padding: 11px 17px 9px;\n  font-size: 16px;\n  font-weight: 400;\n  cursor: pointer;\n  width: fit-content;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  text-decoration: none;\n}\n\n.erp-slide__more:hover {\n  background: var(--color-dark-gray);\n}\n\n.erp-slide__more svg {\n  width: 16px;\n  height: 16px;\n}\n\n.erp-slide__more svg path {\n  stroke: currentColor;\n}\n\n\/* Product category card *\/\n.card-product {\n  background-color: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 32px;\n  width: 298px;\n}\n\n.card-product--tinted {\n  background-color: rgba(0, 194, 182, 0.05);\n}\n\n.card-product__logo {\n  height: 50px;\n  margin-bottom: 48px;\n}\n\n.card-product__logo img {\n  height: 100%;\n  width: auto;\n}\n\n.card-product__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n  margin-bottom: 12px;\n}\n\n.card-product__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-black);\n  height: 71px;\n  margin-bottom: 48px;\n}\n\n.card-product--tinted .card-product__desc {\n  color: var(--color-dark-gray);\n}\n\n\/* Product card CTA \u2014 outline pill, matches .is-style-arrow-right-white-outline on live site *\/\n.card-product .btn-case-cta {\n  background: transparent;\n  border: 1px solid #232323;\n  color: #232323;\n  transition: background-color 0.3s, color 0.3s;\n}\n\n.card-product .btn-case-cta:hover {\n  background: #232323;\n  color: #FDFDFD;\n}\n\n.card-product .btn-case-cta:hover .btn-case-cta__arrow {\n  filter: invert(100%);\n  transform: translateX(0.25rem);\n  transition: filter 0.3s, transform 0.3s;\n}\n\n\/* Case study card *\/\n\/* Case Studies \u2014 matches .slider-case-studies on assecobs.pl\/erp *\/\n.card-case {\n  background-color: #141414;\n  border-radius: 1.5rem;\n  padding: clamp(1.5rem, 4vw, 3rem) clamp(1.25rem, 4vw, 4.125rem) clamp(1.5rem, 4vw, 3rem) clamp(1.25rem, 3vw, 2rem);\n  display: grid;\n  grid-template-columns: 1fr auto;\n  align-items: center;\n  gap: clamp(1rem, 4vw, 5.1875rem);\n  width: min(54.6875rem, 90vw);\n  flex-shrink: 0;\n}\n\n.card-case__content {\n  min-width: 0;\n}\n\n.card-case__title {\n  font-size: 3rem;\n  font-weight: 600;\n  line-height: 1.13;\n  color: var(--color-white);\n  margin-bottom: 2rem;\n}\n\n.card-case__desc {\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.375rem;\n  color: #F2F2F2;\n  margin-bottom: 0.5rem;\n}\n\n.card-case__author {\n  font-size: 1rem;\n  color: #AEAEAE;\n  margin-bottom: 2rem;\n}\n\n.card-case__logo {\n  background: #FDFDFD;\n  border-radius: 1.5rem;\n  padding: 1.5rem;\n  height: clamp(8rem, 20vw, 19.875rem);\n  display: grid;\n  place-items: center;\n  flex-shrink: 0;\n  max-width: min(200px, 30vw);\n}\n\n.card-case__logo img {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n  object-position: center;\n}\n\n\/* Case study CTA button \u2014 white pill, matches .is-style-arrow-right-white on live *\/\n.btn-case-cta {\n  display: inline-flex;\n  width: fit-content;\n  align-items: center;\n  gap: 0.5rem;\n  padding: 0.72rem 1rem 0.59rem;\n  border: none;\n  border-radius: 9999px;\n  background: #FDFDFD;\n  color: #090909;\n  font-size: 1rem;\n  font-weight: 400;\n  letter-spacing: -0.02rem;\n  text-decoration: none;\n  transition: background 0.3s;\n}\n\n.btn-case-cta:hover {\n  background: #e6e6e6;\n}\n\n\/* Case study nav arrows \u2014 gray bg, matches live site *\/\n.case-slider__arrow {\n  width: 1.875rem;\n  height: 1.875rem;\n  border-radius: 9999px;\n  background: rgb(103, 103, 103);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  padding: 0;\n}\n\n.case-slider__arrow svg {\n  width: 0.875rem;\n  height: 0.875rem;\n}\n\n.case-slider__arrow:hover {\n  background: rgb(253, 253, 253);\n}\n\n.case-slider__arrow:hover svg path {\n  stroke: rgb(35, 35, 35);\n}\n\n.case-slider__arrow:disabled {\n  pointer-events: none;\n  display: none;\n}\n\n\/* Case Studies section mobile fix *\/\n.section-case-studies {\n  background-size: auto min(100%, 400px) !important;\n}\n\n\/* Case Studies marquee animation *\/\n.case-studies-marquee {\n  overflow: hidden;\n  margin-left: -1.5rem;\n  margin-right: -1.5rem;\n  padding-left: 1.5rem;\n}\n\n.case-studies-marquee .slider-track {\n  overflow: visible;\n  scroll-snap-type: none;\n  width: max-content;\n  animation: caseStudiesScroll 160s linear infinite;\n  padding-top: 4px;\n  padding-bottom: 4px;\n}\n\n.case-studies-marquee .slider-track:hover {\n  animation-play-state: paused;\n}\n\n@keyframes caseStudiesScroll {\n  from { transform: translateX(0); }\n  to { transform: translateX(-50%); }\n}\n\n\/* Case card gradient border on hover *\/\n.card-case {\n  position: relative;\n}\n\n.card-case::before {\n  content: '';\n  position: absolute;\n  inset: -2px;\n  border-radius: calc(1.5rem + 2px);\n  padding: 2px;\n  background: linear-gradient(107deg, #ef5909 17%, #d70e44 34%, #a046e1 55%, #1676c3 73%);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n  pointer-events: none;\n}\n\n.card-case:hover::before {\n  opacity: 1;\n}\n\n.btn-case-cta__arrow {\n  display: block;\n  width: 1rem;\n  height: 1rem;\n  flex-shrink: 0;\n  background: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjMjMyMzIzIi8+PC9zdmc+\") center \/ 1rem no-repeat;\n}\n\n\/* ======= Video Testimonials \u2014 1:1 copy from assecobs.pl\/erp\/ .slider-video-v2 ======= *\/\n\n\/* Card \u2014 matches .box-video *\/\n.card-testimonial {\n  width: 21.25rem; \/* 340px at 16px base, matches splide slide width *\/\n  height: auto;\n  aspect-ratio: 9 \/ 16;\n  border-radius: 1.5rem;\n  overflow: hidden;\n  position: relative;\n  flex-shrink: 0;\n  background: #333;\n}\n\n.card-testimonial__image {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  display: block;\n}\n\n\/* Dark gradient overlay \u2014 matches .wp-block-video::after *\/\n.card-testimonial::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  width: 100%;\n  height: 100%;\n  background: linear-gradient(to bottom, transparent, rgba(35,35,35,0.8));\n  pointer-events: none;\n  z-index: 1;\n  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* On hover: gradient shifts to bottom-focused (keeps person info readable on static thumbnails) *\/\n.card-testimonial:hover::after {\n  background: linear-gradient(to bottom, transparent 40%, rgba(35,35,35,0.6) 100%);\n}\n\n\/* Play\/pause pill \u2014 matches .box-video__play .wp-element-button::before\/::after *\/\n.card-testimonial__play {\n  position: absolute;\n  inset: 0;\n  z-index: 40;\n  cursor: pointer;\n  display: flex;\n  align-items: flex-start;\n  justify-content: flex-end;\n  padding: 1rem;\n  background: transparent;\n}\n\n\/* Play icon pill (::before) \u2014 visible by default *\/\n.card-testimonial__play::before {\n  content: '';\n  position: absolute;\n  right: 1rem;\n  top: 1rem;\n  width: 3.125rem;\n  height: 3.125rem;\n  background-color: rgba(216, 216, 216, 0.4);\n  border-radius: 1.125rem;\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2EpIj48cGF0aCBkPSJNMTIuNTAxIDcuMTFhMS4wNDQgMS4wNDQgMCAwIDEgMCAxLjc4TDQuNjggMTMuODNjLS43MzEuNDU2LTEuNjgtLjA1My0xLjY4LS44OVYzLjA2YzAtLjgzNy45Ni0xLjM0NiAxLjY4LS44OUwxMi41IDcuMTFaIiBmaWxsPSIjRkRGREZEIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iYSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGgxNnYxNkgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPg==\");\n  background-position: center;\n  background-repeat: no-repeat;\n  background-size: 1rem;\n  opacity: 1;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Pause icon pill (::after) \u2014 hidden by default, shown on hover *\/\n.card-testimonial__play::after {\n  content: '';\n  position: absolute;\n  right: 1rem;\n  top: 1rem;\n  width: 3.125rem;\n  height: 3.125rem;\n  background-color: rgba(216, 216, 216, 0.4);\n  border-radius: 1.125rem;\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHJlY3Qgd2lkdGg9IjQiIGhlaWdodD0iMTUiIHJ4PSIxIiBmaWxsPSIjRkRGREZEIi8+PHJlY3QgeD0iOSIgd2lkdGg9IjQiIGhlaWdodD0iMTUiIHJ4PSIxIiBmaWxsPSIjRkRGREZEIi8+PC9zdmc+\");\n  background-position: center;\n  background-repeat: no-repeat;\n  background-size: 0.8125rem 0.9375rem;\n  opacity: 0;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: play fades, pause appears with dark bg *\/\n.card-testimonial:hover .card-testimonial__play::before {\n  opacity: 0;\n}\n\n.card-testimonial:hover .card-testimonial__play::after {\n  opacity: 1;\n  background-color: rgb(35, 35, 35);\n}\n\n\/* Bottom content area \u2014 matches .box-video__content with grid-template-rows animation *\/\n.card-testimonial__content {\n  position: absolute;\n  inset: auto 0 0;\n  z-index: 50;\n  display: grid;\n  align-items: flex-start;\n  grid-template-rows: 0px 0fr;\n  padding: 0 1rem;\n  transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: expand content to show CTA + tags *\/\n.card-testimonial:hover .card-testimonial__content {\n  grid-template-rows: 4.1875rem 1fr;\n}\n\n\/* Person info \u2014 positioned above the content grid via absolute *\/\n.card-testimonial__person-info {\n  position: absolute;\n  bottom: calc(100% + 1rem);\n  left: 1rem;\n  display: flex;\n  align-items: center;\n  gap: 0.75rem;\n}\n\n.card-testimonial__avatar {\n  width: 3.125rem;\n  height: 3.125rem;\n  border-radius: 50%;\n  aspect-ratio: 1 \/ 1;\n  object-fit: cover;\n  flex-shrink: 0;\n}\n\n.card-testimonial__name {\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.375rem;\n  color: var(--color-white);\n  letter-spacing: -0.02rem;\n}\n\n\/* CTA button \u2014 inside expandable grid row *\/\n.card-testimonial__cta {\n  overflow: hidden;\n  position: relative;\n  z-index: 10;\n}\n\n\/* Matches .is-style-arrow-right-white .wp-element-button on live site *\/\n.card-testimonial__cta a {\n  display: inline-flex;\n  width: fit-content;\n  align-items: center;\n  gap: 0.5rem;\n  padding: 0.72rem 1rem 0.59rem;\n  border: none;\n  border-radius: 9999px;\n  background: var(--color-white);\n  color: #232323;\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.02rem;\n  text-decoration: none;\n  transition: background 0.3s, color 0.3s;\n  white-space: nowrap;\n}\n\n\/* Arrow icon via ::before \u2014 matches live site SVG *\/\n.card-testimonial__cta a::before {\n  content: '';\n  display: block;\n  width: 1rem;\n  height: 1rem;\n  flex-shrink: 0;\n  background: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjMjMyMzIzIi8+PC9zdmc+\") center \/ 1rem no-repeat;\n}\n\n.card-testimonial__cta a:hover {\n  background: var(--color-erp-blue);\n  color: var(--color-white);\n}\n\n.card-testimonial__cta a:hover::before {\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjRkRGREZEIi8+PC9zdmc+\");\n}\n\n\/* Remove old SVG arrows from HTML \u2014 they're now in ::before *\/\n.card-testimonial__cta a svg {\n  display: none;\n}\n\n\/* Tags \u2014 inside expandable grid row, with margin-bottom transition *\/\n.card-testimonial__tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 0.25rem;\n  width: 100%;\n  overflow: hidden;\n  margin-bottom: 0;\n  transition: margin-bottom 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: add bottom margin to tags *\/\n.card-testimonial:hover .card-testimonial__tags {\n  margin-bottom: 1rem;\n}\n\n\/* ======= Slider Video Section Layout \u2014 matches assecobs.pl\/erp\/ ======= *\/\n.slider-video-section .slider-video-layout {\n  display: grid;\n  grid-template-columns: 1.13fr 1fr 1fr;\n  align-items: flex-start;\n  position: relative;\n}\n\n.slider-video-section .slider-video__text {\n  padding: 0 0 0 1.5rem;\n  grid-column: 1;\n  grid-row: 1;\n  position: relative;\n  width: 100%;\n  z-index: 10;\n}\n\n.slider-video-section .slider-video__text p {\n  letter-spacing: -0.02rem;\n  margin-bottom: 1.75rem;\n  max-width: 25rem;\n}\n\n.slider-video-section .slider-video__track-wrapper {\n  grid-column: 2 \/ 4;\n  grid-row: 1;\n  overflow: visible;\n}\n\n.slider-video-section .slider-video__track-wrapper .slider-track {\n  gap: 1.5rem;\n  padding-right: 48px;\n}\n\n\/* Nav arrows \u2014 matches .splide__arrows on live site *\/\n.slider-video__nav {\n  display: flex;\n  gap: 1rem;\n}\n\n.slider-video__arrow {\n  width: 1.875rem;\n  height: 1.875rem;\n  border-radius: 9999px;\n  background: rgb(255, 255, 255);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  padding: 0;\n}\n\n.slider-video__arrow svg {\n  width: 0.875rem;\n  height: 0.875rem;\n  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.slider-video__arrow svg path {\n  stroke: #232323;\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: dark bg, white stroke *\/\n.slider-video__arrow:hover {\n  background: rgb(35, 35, 35);\n}\n\n.slider-video__arrow:hover svg path {\n  stroke: rgb(253, 253, 253);\n}\n\n\/* Disabled: gray bg, hidden on desktop *\/\n.slider-video__arrow:disabled {\n  background: rgb(103, 103, 103);\n  pointer-events: none;\n  display: none;\n}\n\n\/* Industry tile *\/\n.tile-industry {\n  background-color: #232323;\n  border-radius: 17px;\n  width: 175px;\n  height: 159px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  padding: 21px 8px;\n  cursor: pointer;\n  transition: background-color 0.3s;\n}\n\n.tile-industry:hover {\n  background-color: #2d2d2d;\n}\n\n.tile-industry__inner {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 16px;\n}\n\n.tile-industry__icon {\n  width: 63px;\n  height: 63px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.tile-industry__icon img,\n.tile-industry__icon svg {\n  width: 63px;\n  height: 63px;\n  padding: 15px;\n  background-color: rgb(72, 72, 72);\n  border-radius: 9999px;\n  box-sizing: border-box;\n}\n\n.tile-industry__label {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-white);\n  text-align: center;\n}\n\n\/* --- Advantage Bar --- *\/\n.advantage-bar {\n  background-color: var(--color-white);\n  padding: 61px 0;\n}\n\n.advantage-bar__list {\n  display: flex;\n  align-items: flex-start;\n  justify-content: center;\n  gap: 51px;\n  list-style: none;\n}\n\n.advantage-bar__item {\n  display: flex;\n  align-items: flex-start;\n  gap: 16px;\n  max-width: 370px;\n}\n\n.advantage-bar__icon {\n  width: 22px;\n  height: 22px;\n  flex-shrink: 0;\n}\n\n.advantage-bar__text {\n  font-size: 20px;\n  font-weight: 400;\n  line-height: 1.34;\n  color: var(--color-black);\n}\n\n\/* --- Hero Section --- *\/\n.hero {\n  background-color: var(--color-gray);\n  position: relative;\n  height: 678px;\n  overflow: hidden;\n}\n\n\/* Blob background \u2014 1:1 from assecobs.pl\/erp *\/\n.hero__desktop-bg {\n  position: absolute;\n  top: 0;\n  right: 0;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: flex-start;\n  justify-content: flex-end;\n  pointer-events: none;\n}\n\n.hero__content {\n  position: relative;\n  z-index: 20;\n  margin-top: 217px;\n  margin-left: 50px;\n  width: 529px;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 32px;\n}\n\n.hero__logo {\n  height: 70px;\n  width: auto;\n}\n\n.hero__title {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.13;\n  color: var(--color-black);\n}\n\n.hero__subtitle {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* Hero slider *\/\n.hero__slider {\n  position: absolute;\n  top: 218px;\n  left: 706px;\n  width: 830px;\n  height: 460px;\n  z-index: 10;\n  overflow: hidden;\n}\n\n.hero__slider-track {\n  display: flex;\n  width: 100%;\n  height: 100%;\n  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n.hero__slide {\n  min-width: 100%;\n  height: 100%;\n}\n\n.hero__slide img {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n}\n\n.hero__arrows {\n  position: absolute;\n  top: 80px;\n  right: 65px;\n  z-index: 30;\n  display: flex;\n  gap: 8px;\n}\n\n.hero__arrow-btn {\n  width: 31px;\n  height: 31px;\n  border-radius: 9999px;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  box-shadow: none;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.hero__arrow-btn:hover {\n  background-color: var(--color-black);\n}\n\n.hero__arrow-btn:hover svg path {\n  stroke: #fff;\n}\n\n.hero__arrow-btn svg path {\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Mobile blob \u2014 hidden on desktop, shown on mobile *\/\n.hero__mobile-bg {\n  display: none;\n  position: absolute;\n  top: -40px;\n  right: -60px;\n  width: 420px;\n  height: 100%;\n  pointer-events: none;\n  overflow: visible;\n}\n\n.hero__decorative-shape {\n  position: absolute;\n  top: -20%;\n  right: -15%;\n  width: 838px;\n  height: 838px;\n  opacity: 0.15;\n}\n\n\/* --- Slider Controls --- *\/\n.slider-controls {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n}\n\n.slider-arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  background: transparent;\n  border: 1px solid var(--color-medium-gray);\n  transition: background-color 0.2s;\n}\n\n.slider-arrow:hover {\n  background: rgba(0,0,0,0.05);\n}\n\n.slider-arrow--dark {\n  border-color: var(--color-dark-gray);\n}\n\n.slider-arrow--dark:hover {\n  background: rgba(255,255,255,0.1);\n}\n\n.slider-arrow svg {\n  width: 14px;\n  height: 14px;\n}\n\n.slider-arrow--prev svg {\n  transform: rotate(180deg);\n}\n\n\/* --- Horizontal Scroll Slider --- *\/\n.slider-track {\n  display: flex;\n  gap: var(--space-lg);\n  overflow-x: auto;\n  scroll-snap-type: x mandatory;\n  -webkit-overflow-scrolling: touch;\n  scrollbar-width: none;\n  padding-bottom: 8px;\n}\n\n.slider-track::-webkit-scrollbar {\n  display: none;\n}\n\n.slider-track > * {\n  scroll-snap-align: start;\n  flex-shrink: 0;\n}\n\n\/* --- Section Headers --- *\/\n.section-header {\n  display: flex;\n  align-items: flex-start;\n  justify-content: space-between;\n  margin-bottom: var(--space-3xl);\n}\n\n.section-header__title {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.13;\n}\n\n.section-header--center {\n  justify-content: center;\n  text-align: center;\n}\n\n.section-header--center .section-header__title {\n  width: 100%;\n}\n\n\/* --- Footer --- *\/\n.footer {\n  background-color: var(--color-dark-black);\n  border-radius: var(--radius-lg) var(--radius-lg) 0 0;\n  padding: clamp(16px, 4vw, 48px);\n  color: var(--color-white);\n  overflow: hidden;\n}\n\n.footer__top {\n  display: flex;\n  align-items: center;\n  gap: 193px;\n  margin-bottom: 26px;\n}\n\n.footer__logo {\n  height: 31px;\n  width: auto;\n}\n\n.footer__cta {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  gap: 32px;\n}\n\n.footer__cta-text {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-gray);\n  max-width: 360px;\n}\n\n.footer__cta-buttons {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n}\n\n.footer__columns {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 50px;\n  margin-bottom: 26px;\n}\n\n.footer__column-title {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.4;\n  color: var(--color-gray);\n  margin-bottom: 11px;\n}\n\n.footer__link {\n  display: block;\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n  margin-bottom: 4px;\n  transition: color 0.2s;\n}\n\n.footer__link:hover {\n  color: var(--color-white);\n}\n\n.footer__divider {\n  width: 100%;\n  height: 1px;\n  background: rgba(255,255,255,0.1);\n  margin-bottom: 24px;\n}\n\n.footer__bottom {\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-start;\n}\n\n.footer__social {\n  display: flex;\n  gap: 16px;\n  margin-bottom: 12px;\n}\n\n.footer__social-link {\n  font-size: 16px;\n  color: var(--color-dark-gray);\n  transition: color 0.2s;\n}\n\n.footer__social-link:hover {\n  color: var(--color-white);\n}\n\n.footer__copyright {\n  font-size: 12px;\n  color: var(--color-dark-gray);\n  letter-spacing: -0.24px;\n}\n\n.footer__legal {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n}\n\n.footer__legal-link {\n  font-size: 10px;\n  color: var(--color-medium-gray);\n  letter-spacing: -0.2px;\n  transition: color 0.2s;\n}\n\n.footer__legal-link:hover {\n  color: var(--color-white);\n}\n\n\/* Help tag pills in footer *\/\n.footer__help-tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 9px;\n}\n\n.footer__help-tag {\n  display: inline-flex;\n  align-items: center;\n  gap: 7px;\n  background: var(--color-black);\n  border-radius: 20px;\n  padding: 10px 12px 8px;\n  height: 35px;\n  font-size: 12px;\n  color: var(--color-medium-gray);\n}\n\n.footer__help-tag-icon {\n  width: 10px;\n  height: 10px;\n}\n\n\/* --- CTA Banner (Bran\u017ce \"Nie widzisz...\") --- *\/\n.cta-banner {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 36px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 53px;\n}\n\n.cta-banner__text {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n}\n\n\/* --- Utility Classes --- *\/\n.flex { display: flex; }\n.flex-col { flex-direction: column; }\n.flex-wrap { flex-wrap: wrap; }\n.items-center { align-items: center; }\n.items-start { align-items: flex-start; }\n.justify-center { justify-content: center; }\n.justify-between { justify-content: space-between; }\n.gap-xs  { gap: var(--space-xs); }\n.gap-sm  { gap: var(--space-sm); }\n.gap-md  { gap: var(--space-md); }\n.gap-lg  { gap: var(--space-lg); }\n.gap-xl  { gap: var(--space-xl); }\n.gap-2xl { gap: var(--space-2xl); }\n.gap-3xl { gap: var(--space-3xl); }\n.text-center { text-align: center; }\n.w-full { width: 100%; }\n.relative { position: relative; }\n.overflow-hidden { overflow: hidden; }\n\n\/* ============================================\n   HOMEPAGE Components (AP_Homepage_1366px)\n   ============================================ *\/\n\n\/* --- Additional Typography (Homepage) --- *\/\n.text-h1 {\n  font-size: 68px;\n  font-weight: 600;\n  line-height: 1.06;\n  letter-spacing: -1.36px;\n}\n\n.text-h3 {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1.06;\n  letter-spacing: normal;\n}\n\n.text-h6 {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  letter-spacing: normal;\n}\n\n.text-h5-gradient {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.31;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.text-h7-regular {\n  font-size: 24px;\n  font-weight: 400;\n  line-height: 1.37;\n}\n\n\/* --- Hero Video Section --- *\/\n.hero-video {\n  position: relative;\n  width: 100%;\n  display: grid;\n  grid-template-columns: 1fr;\n  grid-template-rows: 1fr;\n  align-items: flex-end;\n  overflow: hidden;\n}\n\n.hero-video__video-wrapper {\n  grid-area: 1 \/ 1 \/ -1 \/ -1;\n  position: relative;\n  width: 100%;\n  height: 100%;\n}\n\n.hero-video__video {\n  width: 100%;\n  height: 100%;\n  min-height: 620px;\n  object-fit: cover;\n  display: block;\n}\n\n.hero-video__overlay {\n  position: absolute;\n  inset: 0;\n  background: rgba(0, 0, 0, 0.5);\n  z-index: 1;\n  pointer-events: none;\n}\n\n.hero-video__content {\n  grid-area: 1 \/ 1 \/ -1 \/ -1;\n  position: relative;\n  z-index: 10;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 130px 24px;\n  width: 100%;\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-end;\n  align-items: flex-start;\n}\n\n.hero-video__heading {\n  font-size: clamp(38px, 6vw, 68px);\n  font-weight: 600;\n  line-height: 1.15;\n  letter-spacing: -1.36px;\n  color: var(--color-white);\n  max-width: 835px;\n  margin-bottom: 32px;\n  cursor: default;\n}\n\n.hero-video__heading .text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.hero-video__watch-btn {\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  background: transparent;\n  border: none;\n  color: var(--color-white);\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  cursor: pointer;\n  padding: 0;\n  position: absolute;\n  bottom: 32px;\n  right: 48px;\n  z-index: 10;\n}\n\n.hero-video__watch-btn::after {\n  content: '';\n  position: absolute;\n  bottom: -4px;\n  left: 0;\n  width: 100%;\n  height: 1px;\n  background: var(--color-white);\n  opacity: 0;\n  transition: opacity 0.3s;\n}\n\n.hero-video__watch-btn:hover::after {\n  opacity: 1;\n}\n\n.hero-video__watch-btn svg {\n  transition: transform 0.3s;\n}\n\n.hero-video__watch-btn:hover svg {\n  transform: translateX(4px);\n}\n\n\/* Fullscreen video popup *\/\n.hero-video__fullscreen {\n  position: fixed;\n  inset: 0;\n  z-index: 40;\n  background: rgba(0, 0, 0, 0.95);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  opacity: 0;\n  visibility: hidden;\n  pointer-events: none;\n  transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.hero-video__fullscreen.is-open {\n  opacity: 1;\n  visibility: visible;\n  pointer-events: auto;\n}\n\n.hero-video__fullscreen-video {\n  max-width: 90vw;\n  max-height: 85vh;\n  border-radius: 12px;\n}\n\n.hero-video__fullscreen-close {\n  position: absolute;\n  top: 24px;\n  right: 24px;\n  background: rgba(255,255,255,0.1);\n  border: none;\n  border-radius: 50%;\n  width: 48px;\n  height: 48px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n}\n\n.hero-video__fullscreen-close:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n.hero-video__actions {\n  display: flex;\n  align-items: center;\n  gap: 24px;\n}\n\n\/* --- Button: Secondary (play + text) --- *\/\n.btn-secondary {\n  display: inline-flex;\n  align-items: center;\n  gap: 12px;\n  font-size: 16px;\n  font-weight: 600;\n  color: var(--color-white);\n  background: none;\n  border: none;\n  cursor: pointer;\n  padding: 0;\n  transition: opacity 0.2s;\n}\n\n.btn-secondary:hover {\n  opacity: 0.8;\n}\n\n.btn-secondary__play {\n  width: 48px;\n  height: 48px;\n  border-radius: 50%;\n  border: 2px solid var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n\/* --- Logo Bar --- *\/\n.logo-bar {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.logo-bar__heading {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.52px;\n  color: var(--color-black);\n  margin-bottom: 40px;\n}\n\n.logo-bar__grid {\n  display: grid;\n  grid-template-columns: repeat(6, 1fr);\n  gap: 0;\n}\n\n.logo-bar__item {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 16px 24px;\n}\n\n.logo-bar__item img {\n  max-width: 100%;\n  height: auto;\n  max-height: 80px;\n}\n\n\/* Mobile slider \u2014 hidden on desktop *\/\n.logo-bar__heading {\n  text-align: center;\n}\n\n.logo-bar__slider {\n  display: none;\n  align-items: center;\n  gap: 8px;\n  margin-top: 16px;\n}\n\n.logo-bar__slider-track {\n  flex: 1;\n  display: flex;\n  overflow: hidden;\n  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.logo-bar__slider-item {\n  flex: 0 0 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 24px;\n  min-height: 120px;\n}\n\n.logo-bar__slider-item img {\n  max-width: 200px;\n  max-height: 80px;\n  height: auto;\n}\n\n.logo-bar__arrow {\n  width: 44px;\n  height: 44px;\n  border-radius: 50%;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  flex-shrink: 0;\n  color: var(--color-black);\n  box-shadow: 0 2px 8px rgba(0,0,0,0.08);\n  transition: background 0.2s;\n}\n\n.logo-bar__arrow:hover {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n.logo-bar__dots {\n  display: none;\n  justify-content: center;\n  gap: 8px;\n  margin-top: 24px;\n}\n\n.logo-bar__dot {\n  width: 8px;\n  height: 8px;\n  border-radius: 50%;\n  background: var(--color-light-gray);\n  border: none;\n  padding: 0;\n  cursor: pointer;\n  transition: all 0.2s;\n}\n\n.logo-bar__dot.is-active {\n  width: 24px;\n  border-radius: 4px;\n  background: var(--color-erp-blue);\n}\n\n\/* Mobile breakpoint \u2014 show slider, hide grid *\/\n@media (max-width: 768px) {\n  .logo-bar__grid {\n    display: none;\n  }\n  .logo-bar__slider {\n    display: flex;\n  }\n  .logo-bar__dots {\n    display: flex;\n    flex-wrap: wrap;\n  }\n}\n\n\/* --- Card: News (dark article card) --- *\/\n.card-news {\n  background: #141414;\n  border-radius: 24px;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  width: 366px;\n  flex-shrink: 0;\n  padding: 36px;\n  text-decoration: none;\n  color: inherit;\n  transition: transform 0.25s;\n}\n\n.card-news:hover {\n  transform: translateY(-4px);\n}\n\n.card-news__image-wrap {\n  margin-bottom: 28px;\n}\n\n.card-news__image {\n  width: 100%;\n  height: 194px;\n  object-fit: cover;\n  display: block;\n  border-radius: 24px;\n}\n\n.card-news__title {\n  font-size: 18px;\n  font-weight: 600;\n  line-height: 1.31;\n  color: #676767;\n  margin-bottom: 28px;\n}\n\n.card-news__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.375;\n  color: #AEAEAE;\n  flex: 1;\n}\n\n.card-news__meta {\n  display: flex;\n  gap: 8px;\n  margin-top: 20px;\n}\n\n\/* --- Tag: Dark (date \/ reading time) --- *\/\n.tag-dark {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  padding: 6px 12px;\n  border-radius: var(--radius-full);\n  background: var(--surface-card-dark2);\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-medium-gray);\n  white-space: nowrap;\n}\n\n\/* --- Label: Pill (bordered, no fill) --- *\/\n.label-pill {\n  display: inline-flex;\n  align-items: center;\n  padding: 8px 16px;\n  border-radius: var(--radius-full);\n  border: 1px solid var(--color-dark-gray);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-white);\n  background: transparent;\n  cursor: pointer;\n  transition: all 0.2s;\n}\n\n.label-pill:hover {\n  border-color: var(--color-white);\n}\n\n.label-pill--active {\n  background: var(--color-white);\n  color: var(--color-black);\n  border-color: var(--color-white);\n}\n\n\/* --- Card: Quote (white card with avatar) --- *\/\n.card-quote {\n  background: var(--color-white);\n  border-radius: var(--radius-md);\n  padding: 40px 32px;\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n  max-width: 560px;\n  min-width: 400px;\n  flex-shrink: 0;\n}\n\n.card-quote__text {\n  font-size: 18px;\n  font-weight: 400;\n  line-height: 1.56;\n  color: var(--color-black);\n}\n\n.card-quote__footer {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 16px;\n}\n\n.card-quote__author {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n.card-quote__avatar {\n  width: 48px;\n  height: 48px;\n  border-radius: 50%;\n  background: var(--color-light-gray);\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.card-quote__avatar img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.card-quote__name {\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-black);\n  line-height: 1.4;\n}\n\n.card-quote__role {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-dark-gray);\n}\n\n.card-quote__company-logo {\n  height: 24px;\n  opacity: 0.6;\n}\n\n\/* --- Section: Benefits (dark video slider) --- *\/\n.section-benefits {\n  background: var(--color-dark-black);\n  position: relative;\n  overflow: hidden;\n  padding: 96px 0;\n}\n\n.section-benefits__bg-video {\n  position: absolute;\n  inset: 0;\n  opacity: 0.2;\n}\n\n.section-benefits__bg-video video {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.section-benefits__header {\n  position: relative;\n  z-index: 2;\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 56px;\n}\n\n.section-benefits__content {\n  position: relative;\n  z-index: 2;\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto;\n  display: flex;\n  gap: 48px;\n  align-items: flex-start;\n}\n\n.section-benefits__info {\n  flex: 1;\n  max-width: 480px;\n}\n\n.section-benefits__client {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  margin-bottom: 24px;\n}\n\n.section-benefits__client-logo {\n  width: 56px;\n  height: 56px;\n  border-radius: var(--radius-sm);\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n}\n\n.section-benefits__client-name {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--color-white);\n}\n\n.section-benefits__client-industry {\n  font-size: 14px;\n  color: var(--color-medium-gray);\n}\n\n.section-benefits__quote {\n  font-size: 24px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-white);\n  margin-bottom: 32px;\n  font-style: italic;\n}\n\n.section-benefits__stats {\n  display: flex;\n  gap: 48px;\n}\n\n.section-benefits__stat-value {\n  font-size: 68px;\n  font-weight: 400;\n  color: var(--color-white);\n  line-height: 1;\n}\n\n.section-benefits__stat-value .text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n}\n\n.section-benefits__stat-label {\n  font-size: 14px;\n  color: var(--color-medium-gray);\n  margin-top: 8px;\n}\n\n.section-benefits__visual {\n  flex: 1;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  min-height: 400px;\n  background: var(--surface-card-dark);\n}\n\n\/* --- Section: Map (globe with country pills) --- *\/\n.section-map {\n  background: var(--color-gray);\n  padding: 80px 0 100px;\n  position: relative;\n  overflow: hidden;\n  text-align: center;\n}\n\n.section-map__heading {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: 0;\n  position: relative;\n  z-index: 2;\n}\n\n.section-map {\n  min-height: 900px;\n}\n\n.section-map__globe {\n  position: relative;\n  width: 660px;\n  height: 660px;\n  margin: 0 auto;\n  z-index: 0;\n  isolation: isolate;\n}\n\n.section-map__globe video {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n  mix-blend-mode: multiply;\n}\n\n.section-map__countries {\n  position: absolute;\n  width: 100%;\n  top: 450px;\n  z-index: 10;\n  overflow: clip;\n}\n\n.section-map__row {\n  display: flex;\n  margin-bottom: 14px;\n}\n\n.section-map__row ul {\n  display: flex;\n  flex-shrink: 0;\n  list-style: none;\n  padding: 0 0 0 28px;\n  margin: 0;\n  animation: map-scroll-left 30s linear infinite;\n}\n\n.section-map__row--2 ul {\n  animation-name: map-scroll-right;\n}\n\n.section-map__row--3 ul {\n  animation-delay: -7s;\n}\n\n.section-map__row li {\n  font-size: 32px;\n  font-weight: 400;\n  line-height: 1.44;\n  color: var(--color-black);\n  background: var(--color-white);\n  border-radius: 9999px;\n  padding: 9px 30px 3px;\n  white-space: nowrap;\n  flex-shrink: 0;\n}\n\n@keyframes map-scroll-left {\n  0% { translate: 0; }\n  100% { translate: -100%; }\n}\n\n@keyframes map-scroll-right {\n  0% { translate: -100%; }\n  100% { translate: 0; }\n}\n\n@media (max-width: 768px) {\n  .section-map__heading {\n    font-size: 32px;\n  }\n\n  .section-map__globe {\n    width: 300px;\n    height: 300px;\n    margin-bottom: -100px;\n  }\n\n  .section-map__row li {\n    font-size: 20px;\n    padding: 8px 20px 4px;\n  }\n}\n\n\/* --- Section: CTA (large centered text) --- *\/\n.section-cta {\n  background: var(--color-gray);\n  padding: 100px var(--page-padding);\n  text-align: center;\n}\n\n.section-cta__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n  margin-bottom: 40px;\n  max-width: 780px;\n  margin-left: auto;\n  margin-right: auto;\n}\n\n.section-cta__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-white);\n  background: var(--color-black);\n  border: none;\n  border-radius: 9999px;\n  padding: 20px 24px 18px;\n  text-decoration: none;\n  cursor: pointer;\n  transition: opacity 0.2s;\n}\n\n.section-cta__btn:hover {\n  background: var(--color-erp-blue);\n}\n\n.section-cta__btn .arrow-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  stroke: var(--color-white);\n}\n\n\/* --- Section: Recommendations slider --- *\/\n.section-recommendations {\n  background: var(--color-gray);\n  padding: 96px 0;\n}\n\n.section-recommendations__header {\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 48px;\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-end;\n}\n\n.section-recommendations__track {\n  display: flex;\n  gap: 24px;\n  overflow-x: auto;\n  padding: 0 var(--page-padding) 16px;\n  scroll-snap-type: x mandatory;\n  -ms-overflow-style: none;\n  scrollbar-width: none;\n}\n\n.section-recommendations__track::-webkit-scrollbar {\n  display: none;\n}\n\n\/* --- Section: Popular Topics \/ News --- *\/\n.section-news {\n  background: var(--color-dark-black);\n  padding: 96px 0;\n}\n\n.section-news__header {\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 16px;\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-end;\n}\n\n.section-news__pills {\n  display: flex;\n  gap: 8px;\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 40px;\n  flex-wrap: wrap;\n}\n\n.section-news__track {\n  display: flex;\n  gap: 24px;\n  overflow-x: auto;\n  padding: 0 var(--page-padding) 16px;\n  scroll-snap-type: x mandatory;\n  -ms-overflow-style: none;\n  scrollbar-width: none;\n}\n\n.section-news__track::-webkit-scrollbar {\n  display: none;\n}\n\n\/* --- Product Cards: Homepage variant (dark bg) --- *\/\n.card-product--dark {\n  background: var(--surface-card-dark);\n  border: 1px solid rgba(255,255,255,0.08);\n}\n\n.card-product--dark .card-product__title {\n  color: var(--color-white);\n}\n\n.card-product--dark .card-product__desc {\n  color: var(--color-medium-gray);\n}\n\n\/* ============================================\n   HR SUBPAGE Components (AP_Homepage_animacje)\n   ============================================ *\/\n\n\/* --- Hero: Subpage variant --- *\/\n.hero-subpage {\n  position: relative;\n  width: 100%;\n  max-width: 100vw;\n  display: grid;\n  align-items: flex-end;\n  overflow: hidden;\n}\n\n.hero-subpage__video-wrapper {\n  position: relative;\n  grid-area: 1 \/ 1;\n  overflow: hidden;\n  min-height: 100%;\n}\n\n.hero-subpage__video-wrapper::after {\n  content: \"\";\n  position: absolute;\n  top: 0;\n  right: 0;\n  width: 100%;\n  height: 100%;\n  background-color: var(--color-dark-black);\n  opacity: 0.65;\n  pointer-events: none;\n}\n\n.hero-subpage__video-wrapper video {\n  width: 100%;\n  height: 100%;\n  min-height: 100%;\n  object-fit: cover;\n  display: block;\n  position: absolute;\n  inset: 0;\n}\n\n.hero-subpage__content {\n  grid-area: 1 \/ 1;\n  position: relative;\n  z-index: 10;\n  max-width: var(--max-width);\n  width: 100%;\n  margin: 0 auto;\n  padding: clamp(120px, 25vw, 256px) var(--page-padding) 48px;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  box-sizing: border-box;\n}\n\n.hero-subpage__logo-figure {\n  margin: 0 0 44px;\n}\n\n.hero-subpage__logo {\n  width: 89px;\n  height: 50px;\n  display: block;\n}\n\n.hero-subpage__heading {\n  font-size: clamp(38px, 5vw, 48px);\n  font-weight: 600;\n  line-height: 1.15;\n  color: var(--color-white);\n  max-width: 835px;\n  margin-bottom: clamp(24px, 4vw, 40px);\n}\n\n.hero-subpage__cta {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n}\n\n\/* --- Section: Two-Column Description --- *\/\n.section-description {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 28px;\n  padding: 96px 24px 78px;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  align-items: flex-start;\n  overflow: hidden;\n}\n\n.section-description__heading {\n  flex: 0 0 50%;\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n}\n\n.section-description__body {\n  flex: 1 1 280px;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Content Split (sticky text + stacking cards) --- *\/\n.section-content-split {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: var(--space-3xl);\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: var(--space-4xl) var(--page-padding) var(--space-2xl);\n  min-height: 200vh;\n  position: relative;\n}\n\n@media (max-width: 768px) {\n  .section-content-split {\n    grid-template-columns: 1fr;\n    min-height: 280vh;\n  }\n  .section-content-split__text {\n    position: static;\n    padding-right: 0;\n    margin-bottom: var(--space-xl);\n  }\n  .section-content-split__media:nth-child(1) {\n    top: 80px;\n  }\n  .section-content-split__media:nth-child(2) {\n    top: 110px;\n  }\n  .section-content-split__media:nth-child(3) {\n    top: 140px;\n  }\n}\n\n.section-content-split__text {\n  position: sticky;\n  top: 120px;\n  align-self: start;\n  height: fit-content;\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-lg);\n  padding-right: var(--space-2xl);\n}\n\n.section-content-split__heading {\n  font-size: clamp(24px, 5vw, 48px);\n  font-weight: 600;\n  line-height: 1.125;\n  color: var(--color-black);\n}\n\n.section-content-split__subtitle {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-black);\n}\n\n.section-content-split__body {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* Right column: stacking sticky cards *\/\n.section-content-split__cards {\n  position: relative;\n  padding-top: 0;\n}\n\n.section-content-split__media {\n  position: sticky;\n  display: flex;\n  flex-direction: column;\n  gap: 0;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  background: var(--color-white);\n  box-shadow: 0 25px 80px rgba(0, 0, 0, 0.12);\n  margin-bottom: var(--space-2xl);\n  border: 1px solid var(--color-light-gray);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.section-content-split__media:hover {\n  transform: translateY(-3px);\n  box-shadow: 0 32px 96px rgba(0, 0, 0, 0.16);\n}\n\n.section-content-split__media:nth-child(1) {\n  top: 100px;\n  z-index: 1;\n}\n\n.section-content-split__media:nth-child(2) {\n  top: 140px;\n  z-index: 2;\n}\n\n.section-content-split__media:nth-child(3) {\n  top: 180px;\n  z-index: 3;\n}\n\n.section-content-split__image {\n  width: 100%;\n  aspect-ratio: 16 \/ 10;\n  object-fit: cover;\n  display: block;\n}\n\n.section-content-split__card {\n  padding: var(--space-xl);\n}\n\n.section-content-split__card-title {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-content-split__card-desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Service Cards Grid (3-col, expandable) --- *\/\n.section-services {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.section-services__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-services__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-services__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-services__grid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: var(--space-lg);\n  align-items: stretch;\n}\n\n\/* Service card *\/\n.card-service {\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  transition: transform 0.4s ease, box-shadow 0.4s ease;\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);\n}\n\n.card-service:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.1);\n}\n\n.card-service__image {\n  width: 100%;\n  height: 200px;\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.card-service__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  transition: transform 0.6s ease;\n}\n\n.card-service:hover .card-service__image img {\n  transform: scale(1.05);\n}\n\n.card-service__header {\n  padding: var(--space-lg) var(--space-lg) var(--space-md);\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n}\n\n.card-service__title {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-md);\n}\n\n.card-service__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-bottom: var(--space-md);\n  flex: 1;\n}\n\n.card-service__metric {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--space-sm);\n  padding: 6px 14px;\n  font-size: 12px;\n  font-weight: 600;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  border-radius: var(--radius-full);\n  background: rgba(0, 0, 0, 0.05);\n  color: var(--color-dark-gray);\n  border: 1px solid var(--color-light-gray);\n  align-self: flex-start;\n  margin-top: auto;\n}\n\n.card-service__metric svg {\n  width: 14px;\n  height: 14px;\n  stroke: currentColor;\n  fill: none;\n  stroke-width: 2;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n\/* Toggle button (+) *\/\n.card-service__toggle {\n  width: 36px;\n  height: 36px;\n  border-radius: var(--radius-full);\n  border: 1.5px solid var(--color-light-gray);\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: all 0.3s ease;\n  flex-shrink: 0;\n}\n\n.card-service__toggle svg {\n  width: 16px;\n  height: 16px;\n  stroke: var(--color-black);\n  stroke-width: 1.5;\n  fill: none;\n  stroke-linecap: round;\n  transition: stroke 0.3s ease;\n}\n\n.card-service__toggle:hover {\n  border-color: var(--color-erp-blue);\n}\n\n.card-service__toggle:hover svg {\n  stroke: var(--color-erp-blue);\n}\n\n.card-service.is-open .card-service__toggle {\n  background: var(--color-erp-blue);\n  border-color: var(--color-erp-blue);\n  transform: rotate(45deg);\n}\n\n.card-service.is-open .card-service__toggle svg {\n  stroke: var(--color-white);\n}\n\n\/* Expandable body *\/\n.card-service__body {\n  max-height: 0;\n  overflow: hidden;\n  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-service.is-open .card-service__body {\n  max-height: 1200px;\n}\n\n.card-service__content {\n  padding: 0 var(--space-lg) var(--space-lg);\n  border-top: 1px solid var(--color-light-gray);\n  padding-top: var(--space-lg);\n}\n\n.card-service__lead {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-black);\n  margin-bottom: var(--space-md);\n}\n\n.card-service__content h4 {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.card-service__items {\n  list-style: none;\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-sm);\n  margin-bottom: var(--space-lg);\n}\n\n.card-service__items li {\n  display: flex;\n  align-items: flex-start;\n  gap: 10px;\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-black);\n}\n\n.card-service__items li::before {\n  content: '';\n  width: 6px;\n  height: 6px;\n  border-radius: var(--radius-full);\n  background: var(--color-erp-blue);\n  flex-shrink: 0;\n  margin-top: 7px;\n}\n\n.card-service__case {\n  background: rgba(22, 118, 195, 0.04);\n  border-left: 3px solid var(--color-erp-blue);\n  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;\n  padding: var(--space-md) var(--space-lg);\n  margin-bottom: var(--space-lg);\n}\n\n.card-service__case-label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n  line-height: 1.44;\n  color: var(--color-erp-blue);\n  margin-bottom: var(--space-sm);\n}\n\n.card-service__case p {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n  font-style: italic;\n}\n\n.card-service__when {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.card-service__when strong {\n  color: var(--color-black);\n}\n\n\/* --- Section: Results Cards (dark, gradient metrics) --- *\/\n.section-results {\n  background: var(--color-dark-black);\n  padding: var(--space-4xl) 0;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-results::before {\n  content: '';\n  position: absolute;\n  top: -30%;\n  left: -10%;\n  width: 600px;\n  height: 600px;\n  border-radius: 50%;\n  background: radial-gradient(circle, rgba(239, 89, 9, 0.08) 0%, rgba(215, 14, 68, 0.04) 40%, transparent 70%);\n  filter: blur(80px);\n  pointer-events: none;\n}\n\n.section-results::after {\n  content: '';\n  position: absolute;\n  bottom: -20%;\n  right: -5%;\n  width: 500px;\n  height: 500px;\n  border-radius: 50%;\n  background: radial-gradient(circle, rgba(22, 118, 195, 0.08) 0%, rgba(160, 70, 225, 0.04) 40%, transparent 70%);\n  filter: blur(80px);\n  pointer-events: none;\n}\n\n.section-results .container {\n  position: relative;\n  z-index: 1;\n}\n\n.section-results__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-results__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-results__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-results__grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));\n  gap: var(--space-xl);\n}\n\n\/* Result card *\/\n.card-result {\n  background: rgba(255, 255, 255, 0.03);\n  border: 1px solid rgba(255, 255, 255, 0.07);\n  border-radius: var(--radius-lg);\n  padding: var(--space-xl) var(--space-xl) var(--space-2xl);\n  transition: all 0.4s ease;\n  position: relative;\n  overflow: hidden;\n}\n\n.card-result::before {\n  content: '';\n  position: absolute;\n  inset: 0;\n  border-radius: inherit;\n  background: radial-gradient(ellipse at 30% 0%, rgba(239, 89, 9, 0.06) 0%, transparent 60%);\n  pointer-events: none;\n  opacity: 0;\n  transition: opacity 0.4s ease;\n}\n\n.card-result:hover::before {\n  opacity: 1;\n}\n\n.card-result:hover {\n  border-color: rgba(255, 255, 255, 0.15);\n  transform: translateY(-6px);\n  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.5);\n}\n\n.card-result__badge {\n  display: inline-block;\n  padding: 6px 14px;\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.08em;\n  line-height: 1.44;\n  border-radius: var(--radius-full);\n  border: 1px solid rgba(255, 255, 255, 0.12);\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-xl);\n}\n\n.card-result__metric {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1.06;\n  letter-spacing: -0.03em;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n  margin-bottom: var(--space-xs);\n}\n\n.card-result__metric-label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.1em;\n  line-height: 1.44;\n  color: var(--color-dark-gray);\n  margin-bottom: var(--space-lg);\n}\n\n.card-result__title {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.card-result__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Persona Cards (DRS \u2014 tabs + problem\/solution panels) --- *\/\n.section-persona-cards {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.section-persona-cards__header {\n  margin-bottom: var(--space-2xl);\n}\n\n.section-persona-cards__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-persona-cards__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-persona-cards__tabs {\n  display: flex;\n  gap: var(--space-md);\n  margin-bottom: var(--space-2xl);\n  flex-wrap: wrap;\n}\n\n.section-persona-cards__tab {\n  padding: 12px 24px;\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-full);\n  cursor: pointer;\n  transition: all 0.3s ease;\n}\n\n.section-persona-cards__tab:hover {\n  border-color: var(--color-black);\n  color: var(--color-black);\n}\n\n.section-persona-cards__tab.is-active {\n  background: var(--color-black);\n  border-color: var(--color-black);\n  color: var(--color-white);\n}\n\n\/* Persona panel \u2014 two columns *\/\n.persona-card-panel {\n  display: none;\n}\n\n.persona-card-panel.is-active {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: var(--space-lg);\n}\n\n\/* Left: problem \/ quote with bg image *\/\n.persona-card__problem {\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  padding: 40px;\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-start;\n  background-size: cover;\n  background-position: center;\n  position: relative;\n}\n\n.persona-card__problem::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(to top, rgba(10, 10, 10, 0.85) 0%, rgba(10, 10, 10, 0.6) 50%, rgba(10, 10, 10, 0.4) 100%);\n  border-radius: inherit;\n}\n\n.persona-card__problem > * {\n  position: relative;\n  z-index: 1;\n}\n\n.persona-card__label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.1em;\n  line-height: 1.44;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-md);\n}\n\n.persona-card__quote {\n  font-size: 16px;\n  font-weight: 400;\n  font-style: italic;\n  line-height: 1.7;\n  color: var(--color-light-gray);\n  border-left: 3px solid rgba(255, 255, 255, 0.2);\n  padding-left: var(--space-md);\n}\n\n\/* Right: solution + result *\/\n.persona-card__solution {\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-lg);\n  padding: 40px;\n  display: flex;\n  flex-direction: column;\n}\n\n.persona-card__helps {\n  list-style: none;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n  margin-bottom: var(--space-xl);\n}\n\n.persona-card__helps li {\n  display: flex;\n  align-items: flex-start;\n  gap: 14px;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-black);\n}\n\n.persona-card__helps li::before {\n  content: '';\n  width: 22px;\n  height: 22px;\n  flex-shrink: 0;\n  margin-top: 1px;\n  border-radius: var(--radius-full);\n  background: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'\/%3E%3C\/svg%3E\") center\/13px no-repeat, linear-gradient(135deg, #ef5909, #d70e44, #a046e1);\n}\n\n.persona-card__result {\n  position: relative;\n  padding: 20px var(--space-lg);\n  margin-top: auto;\n  border-radius: var(--radius-sm);\n  background: var(--color-gray);\n}\n\n.persona-card__result::before {\n  content: '';\n  position: absolute;\n  inset: -1.5px;\n  border-radius: calc(var(--radius-sm) + 1.5px);\n  background: var(--gradient-brand);\n  z-index: -1;\n}\n\n.persona-card__result-label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.08em;\n  line-height: 1.44;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.persona-card__result p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.6;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Why Cards (dark, 4-col grid with video bg) --- *\/\n.section-why-cards {\n  position: relative;\n  overflow: hidden;\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n}\n\n.section-why-cards__video-bg {\n  position: absolute;\n  inset: 0;\n  z-index: 0;\n}\n\n.section-why-cards__video-bg video {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.section-why-cards__video-bg::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background: rgba(4, 6, 18, 0.72);\n}\n\n.section-why-cards .container {\n  position: relative;\n  z-index: 1;\n}\n\n.section-why-cards__header {\n  margin-bottom: var(--space-2xl);\n}\n\n.section-why-cards__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-why-cards__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-why-cards__grid {\n  display: grid;\n  grid-template-columns: repeat(4, 1fr);\n  gap: var(--space-md);\n}\n\n\/* Why card *\/\n.card-why {\n  position: relative;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  background: rgba(255, 255, 255, 0.04);\n  backdrop-filter: blur(16px);\n  -webkit-backdrop-filter: blur(16px);\n  border: 1px solid rgba(255, 255, 255, 0.06);\n  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.3s ease;\n}\n\n.card-why:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.6);\n  border-color: transparent;\n}\n\n.card-why::before {\n  content: '';\n  position: absolute;\n  inset: -1px;\n  border-radius: inherit;\n  padding: 2px;\n  background: var(--gradient-brand);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  pointer-events: none;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.card-why:hover::before {\n  opacity: 1;\n}\n\n.card-why__inner {\n  padding: var(--space-xl);\n  height: 100%;\n  display: flex;\n  flex-direction: column;\n}\n\n.card-why__icon {\n  width: 48px;\n  height: 48px;\n  border-radius: var(--radius-sm);\n  background: var(--surface-card-dark2);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: var(--space-lg);\n}\n\n.card-why__icon svg {\n  width: 22px;\n  height: 22px;\n  stroke: var(--color-medium-gray);\n  fill: none;\n  stroke-width: 1.5;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-why__title {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.card-why__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.65;\n  color: var(--color-medium-gray);\n}\n\n\/* --- Section: Partner Cards (4-col grid, gradient border hover) --- *\/\n.section-partners {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.section-partners__header {\n  margin-bottom: var(--space-xl);\n}\n\n.section-partners__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-partners__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-partners__intro {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.7;\n  color: var(--color-dark-gray);\n  max-width: 680px;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-partners__grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));\n  gap: var(--space-md);\n}\n\n.card-partner {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              linear-gradient(var(--color-light-gray), var(--color-light-gray)) border-box;\n  border: 2px solid transparent;\n  min-width: 0;\n  overflow: hidden;\n  border-radius: var(--radius-lg);\n  padding: var(--space-lg);\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: var(--space-sm);\n  transition: all 0.3s ease;\n  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\n}\n\n.card-partner:hover {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              var(--gradient-brand) border-box;\n  transform: translateY(-3px);\n  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.1);\n}\n\n.card-partner__logo {\n  height: 36px;\n  width: auto;\n  display: block;\n  margin-bottom: var(--space-sm);\n}\n\n.card-partner__name {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-black);\n}\n\n.card-partner__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Process Timeline (dark, centered zigzag) --- *\/\n.section-process {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n  overflow: hidden;\n}\n\n.section-process__header {\n  text-align: center;\n  margin-bottom: var(--space-xl);\n}\n\n.section-process__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-process__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-process__cta {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n\/* Timeline *\/\n.process-timeline {\n  position: relative;\n  max-width: 900px;\n  margin: 0 auto;\n  padding: var(--space-xl) 0;\n}\n\n.process-timeline::before {\n  content: '';\n  position: absolute;\n  left: 50%;\n  top: 0;\n  bottom: var(--space-xl);\n  width: 2px;\n  transform: translateX(-50%) scaleY(0);\n  transform-origin: top center;\n  background: rgba(255, 255, 255, 0.35);\n  transition: transform 1.6s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.process-timeline.is-line-visible::before {\n  transform: translateX(-50%) scaleY(1);\n}\n\n\/* Timeline item *\/\n.process-timeline__item {\n  position: relative;\n  display: flex;\n  margin-bottom: 80px;\n  opacity: 0;\n  transform: translateX(-60px);\n  transition: opacity 0.75s cubic-bezier(0.4, 0, 0.2, 1), transform 0.75s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.process-timeline__item:nth-child(even) {\n  transform: translateX(60px);\n}\n\n.process-timeline__item.is-visible {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n.process-timeline__item:last-child {\n  margin-bottom: 0;\n}\n\n.process-timeline__item:nth-child(odd) {\n  justify-content: flex-start;\n  padding-right: max(0px, calc(50% + 48px));\n}\n\n.process-timeline__item:nth-child(even) {\n  justify-content: flex-end;\n  padding-left: max(0px, calc(50% + 48px));\n}\n\n@media (max-width: 768px) {\n  .process-timeline__item:nth-child(odd),\n  .process-timeline__item:nth-child(even) {\n    padding-left: 48px;\n    padding-right: 0;\n    justify-content: flex-start;\n  }\n  .process-timeline__item:nth-child(odd) .process-timeline__content,\n  .process-timeline__item:nth-child(even) .process-timeline__content {\n    text-align: left;\n  }\n  .process-timeline::before {\n    left: 16px !important;\n    transform: scaleY(0) !important;\n    transform-origin: top !important;\n  }\n  .process-timeline.is-line-visible::before {\n    transform: scaleY(1) !important;\n  }\n}\n\n.process-timeline__item:nth-child(odd) .process-timeline__content {\n  text-align: right;\n}\n\n.process-timeline__item:nth-child(even) .process-timeline__content {\n  text-align: left;\n}\n\n\/* Dot *\/\n.process-timeline__dot {\n  position: absolute;\n  left: 50%;\n  top: 8px;\n  width: 16px;\n  height: 16px;\n  border-radius: var(--radius-full);\n  background: var(--gradient-brand);\n  transform: translateX(-50%) scale(0);\n  box-shadow: 0 0 16px rgba(160, 70, 225, 0.5), 0 0 40px rgba(239, 89, 9, 0.3);\n  z-index: 2;\n  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.35s;\n}\n\n.process-timeline__item.is-visible .process-timeline__dot {\n  transform: translateX(-50%) scale(1);\n}\n\n.process-timeline__item:hover .process-timeline__dot {\n  box-shadow: 0 0 24px rgba(160, 70, 225, 0.7), 0 0 56px rgba(239, 89, 9, 0.4);\n}\n\n\/* Content *\/\n.process-timeline__label {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  margin-bottom: var(--space-sm);\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.process-timeline__content h3 {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.process-timeline__content p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.7;\n  color: var(--color-light-gray);\n  max-width: 420px;\n}\n\n.process-timeline__item:nth-child(odd) .process-timeline__content p {\n  margin-left: auto;\n}\n\n\/* --- Section: Testimonial Marquee (auto-scrolling quote cards) --- *\/\n.section-testimonial-marquee {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n  overflow: hidden;\n}\n\n.section-testimonial-marquee__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-testimonial-marquee__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-testimonial-marquee__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.testimonial-marquee__wrapper {\n  position: relative;\n}\n\n.testimonial-marquee__wrapper::before,\n.testimonial-marquee__wrapper::after {\n  content: '';\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  width: 220px;\n  z-index: 2;\n  pointer-events: none;\n}\n\n.testimonial-marquee__wrapper::before {\n  left: 0;\n  background: linear-gradient(to right, var(--color-gray) 20%, transparent);\n}\n\n.testimonial-marquee__wrapper::after {\n  right: 0;\n  background: linear-gradient(to left, var(--color-gray) 20%, transparent);\n}\n\n.testimonial-marquee__track {\n  display: flex;\n  gap: var(--space-md);\n  width: max-content;\n  animation: testimonialMarqueeScroll 50s linear infinite;\n}\n\n.testimonial-marquee__track:hover {\n  animation-play-state: paused;\n}\n\n@keyframes testimonialMarqueeScroll {\n  from { transform: translateX(0); }\n  to { transform: translateX(-50%); }\n}\n\n\/* Marquee card *\/\n.card-testimonial-marquee {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              linear-gradient(var(--color-light-gray), var(--color-light-gray)) border-box;\n  border: 2px solid transparent;\n  border-radius: var(--radius-lg);\n  padding: var(--space-xl);\n  width: 340px;\n  flex-shrink: 0;\n  transition: all 0.3s ease;\n}\n\n.card-testimonial-marquee:hover {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              var(--gradient-brand) border-box;\n  transform: translateY(-3px);\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n\n.card-testimonial-marquee__avatar {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  margin-bottom: var(--space-md);\n}\n\n.card-testimonial-marquee__avatar img {\n  width: 44px;\n  height: 44px;\n  border-radius: var(--radius-full);\n  object-fit: cover;\n  flex-shrink: 0;\n  background: var(--color-gray);\n}\n\n.card-testimonial-marquee__name {\n  font-size: 14px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n}\n\n.card-testimonial-marquee__role {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.card-testimonial-marquee__quote {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.7;\n  color: var(--color-dark-gray);\n  font-style: italic;\n}\n\n\/* --- Section: Cert Cards (dark, 4-col, icon + download) --- *\/\n.section-certs {\n  background: var(--color-dark-black);\n  padding: var(--space-4xl) 0;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-certs::before {\n  content: '';\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  width: 800px;\n  height: 400px;\n  transform: translate(-50%, -50%);\n  background: radial-gradient(ellipse, rgba(22, 118, 195, 0.06) 0%, transparent 70%);\n  pointer-events: none;\n}\n\n.section-certs .container {\n  position: relative;\n  z-index: 1;\n}\n\n.section-certs__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-certs__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-certs__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-certs__grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));\n  gap: var(--space-lg);\n}\n\n.card-cert {\n  background: rgba(255, 255, 255, 0.03);\n  border: 1px solid rgba(255, 255, 255, 0.08);\n  border-radius: var(--radius-lg);\n  padding: 40px var(--space-xl);\n  text-align: center;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  transition: all 0.4s ease;\n  position: relative;\n  overflow: hidden;\n}\n\n.card-cert::before {\n  content: '';\n  position: absolute;\n  inset: -1px;\n  border-radius: inherit;\n  padding: 2px;\n  background: var(--gradient-brand);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  pointer-events: none;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.card-cert:hover::before {\n  opacity: 1;\n}\n\n.card-cert:hover {\n  border-color: transparent;\n  transform: translateY(-4px);\n  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);\n}\n\n.card-cert__icon {\n  width: 64px;\n  height: 64px;\n  margin-bottom: var(--space-lg);\n  border-radius: var(--radius-full);\n  background: linear-gradient(135deg, rgba(22, 118, 195, 0.15), rgba(160, 70, 225, 0.1));\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.card-cert__icon svg,\n.card-cert__icon img {\n  width: 32px;\n  height: 32px;\n  stroke: rgba(255, 255, 255, 0.7);\n  stroke-width: 1.5;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-cert__name {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.card-cert__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.6;\n  color: var(--color-medium-gray);\n  flex: 1;\n}\n\n.card-cert__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  margin-top: var(--space-lg);\n  padding: var(--space-sm) var(--space-md);\n  font-family: var(--font-family);\n  font-size: 14px;\n  font-weight: 600;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n  border: 1px solid rgba(255, 255, 255, 0.18);\n  border-radius: var(--radius-full);\n  text-decoration: none;\n  background: transparent;\n  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;\n}\n\n.card-cert__btn:hover {\n  color: var(--color-white);\n  border-color: rgba(255, 255, 255, 0.45);\n  background: rgba(255, 255, 255, 0.06);\n}\n\n.card-cert__btn svg {\n  width: 13px;\n  height: 13px;\n  stroke: currentColor;\n  stroke-width: 2;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n  flex-shrink: 0;\n}\n\n\/* --- Section: CTA Banner (dark card with animated orbs) --- *\/\n.section-cta-banner {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.cta-banner-card {\n  position: relative;\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-3xl);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-2xl);\n  overflow: hidden;\n}\n\n.cta-banner-card::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(to right, var(--color-dark-black) 30%, rgba(9, 9, 9, 0.65) 55%, rgba(9, 9, 9, 0.15) 100%);\n  pointer-events: none;\n  z-index: 2;\n}\n\n\/* Animated color orbs *\/\n.cta-banner-card__orbs {\n  position: absolute;\n  top: 0;\n  right: 0;\n  width: 60%;\n  height: 100%;\n  pointer-events: none;\n  z-index: 1;\n  overflow: hidden;\n}\n\n.cta-banner-card__orb {\n  position: absolute;\n  border-radius: 50%;\n  filter: blur(60px);\n}\n\n@keyframes ctaBannerFloat1 {\n  0%, 100% { transform: translate(0, 0) scale(1); }\n  40% { transform: translate(-25px, 30px) scale(1.12); }\n  70% { transform: translate(15px, -15px) scale(0.92); }\n}\n\n@keyframes ctaBannerFloat2 {\n  0%, 100% { transform: translate(0, 0) scale(1); }\n  35% { transform: translate(20px, -28px) scale(0.9); }\n  65% { transform: translate(-18px, 20px) scale(1.1); }\n}\n\n@keyframes ctaBannerFloat3 {\n  0%, 100% { transform: translate(0, 0) scale(1); }\n  50% { transform: translate(-20px, -25px) scale(1.08); }\n}\n\n\/* Content *\/\n.cta-banner-card__content {\n  position: relative;\n  z-index: 10;\n  max-width: 600px;\n}\n\n.cta-banner-card__content h2 {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-white);\n  margin-bottom: var(--space-md);\n}\n\n.cta-banner-card__content p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.6;\n  color: var(--color-medium-gray);\n}\n\n\/* Actions *\/\n.cta-banner-card__actions {\n  position: relative;\n  z-index: 10;\n  display: flex;\n  flex-wrap: wrap;\n  gap: var(--space-md);\n  flex-shrink: 0;\n}\n\n\/* --- Section: FAQ Accordion --- *\/\n.section-faq {\n  background: var(--color-white);\n  padding: var(--space-4xl) 0;\n}\n\n.section-faq__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-faq__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-faq__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-faq__list {\n  max-width: 900px;\n  margin: 0 auto;\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-md);\n}\n\n.faq-item {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              linear-gradient(var(--color-light-gray), var(--color-light-gray)) border-box;\n  border: 1.5px solid transparent;\n  border-radius: var(--radius-md);\n  overflow: hidden;\n  transition: transform 0.25s ease, box-shadow 0.25s ease;\n}\n\n.faq-item:hover {\n  transform: translateY(-2px);\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n\n.faq-item__question {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-lg);\n  padding: var(--space-lg) var(--space-xl);\n  cursor: pointer;\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-black);\n  background: none;\n  border: none;\n  width: 100%;\n  text-align: left;\n  transition: background 0.2s ease;\n}\n\n.faq-item__question:hover {\n  background: var(--color-gray);\n}\n\n.faq-item__arrow {\n  width: 20px;\n  height: 20px;\n  flex-shrink: 0;\n  stroke: var(--color-dark-gray);\n  stroke-width: 2;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n  transition: transform 0.3s ease;\n}\n\n.faq-item.is-open .faq-item__arrow {\n  transform: rotate(180deg);\n}\n\n.faq-item__answer {\n  max-height: 0;\n  overflow: hidden;\n  transition: max-height 0.4s ease;\n}\n\n.faq-item.is-open .faq-item__answer {\n  max-height: 600px;\n}\n\n.faq-item__answer-inner {\n  padding: 0 var(--space-xl) var(--space-lg);\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.75;\n  color: var(--color-dark-gray);\n}\n\n.faq-item__answer-inner ul {\n  list-style: none;\n  margin-top: var(--space-sm);\n  display: flex;\n  flex-direction: column;\n  gap: 6px;\n}\n\n.faq-item__answer-inner ul li {\n  display: flex;\n  gap: 10px;\n}\n\n.faq-item__answer-inner ul li::before {\n  content: '2013';\n  color: var(--color-medium-gray);\n  flex-shrink: 0;\n}\n\n\/* --- Header: DRS (fixed, transparent \u2192 blur on scroll) --- *\/\n.header-drs {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  z-index: 1000;\n  height: 64px;\n  background: transparent;\n  backdrop-filter: blur(0px);\n  -webkit-backdrop-filter: blur(0px);\n  transition: background 1s ease, backdrop-filter 1s ease, -webkit-backdrop-filter 1s ease;\n}\n\n.header-drs.is-scrolled {\n  background: rgba(0, 0, 0, 0.6);\n  backdrop-filter: blur(20px);\n  -webkit-backdrop-filter: blur(20px);\n}\n\n.header-drs__inner {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-md);\n  overflow: hidden;\n}\n\n.header-drs__logo {\n  flex-shrink: 0;\n}\n\n.header-drs__logo svg {\n  height: 26px;\n  width: auto;\n  display: block;\n}\n\n.header-drs__logo svg path {\n  fill: var(--color-white);\n}\n\n.header-drs__nav {\n  display: flex;\n  align-items: center;\n  gap: 0;\n  white-space: nowrap;\n}\n\n.header-drs__nav a {\n  padding: var(--space-sm) 12px;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-white);\n  border-radius: var(--radius-sm);\n  transition: all 0.2s ease;\n  opacity: 0.85;\n  text-decoration: none;\n}\n\n.header-drs__nav a:hover {\n  opacity: 1;\n  background: rgba(255, 255, 255, 0.1);\n}\n\n.header-drs__actions {\n  display: flex;\n  align-items: center;\n  gap: var(--space-sm);\n}\n\n.header-drs__lang {\n  display: flex;\n  align-items: center;\n  gap: 4px;\n}\n\n.header-drs__lang-btn {\n  padding: 6px 10px;\n  font-family: var(--font-family);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-medium-gray);\n  border-radius: var(--radius-sm);\n  text-decoration: none;\n  transition: all 0.2s ease;\n}\n\n.header-drs__lang-btn:hover {\n  color: var(--color-white);\n  background: rgba(255, 255, 255, 0.1);\n}\n\n.header-drs__lang-btn.is-active {\n  color: var(--color-white);\n  background: rgba(255, 255, 255, 0.15);\n}\n\n\/* Nav CTA \u2014 hidden on desktop, shown in mobile overlay *\/\n.header-drs__nav-cta,\n.header-drs__nav-header,\n.header-drs__nav-lang {\n  display: none;\n}\n\n\/* Nav list wrapper \u2014 na desktopie staje si\u0119 \"prze\u017aroczysty\" (linki s\u0105 bezpo\u015brednimi flex-itemami .header-drs__nav) *\/\n.header-drs__nav-list {\n  display: contents;\n}\n\n\/* Hamburger \u2014 hidden on desktop *\/\n.header-drs__hamburger {\n  display: none;\n  background: none;\n  border: none;\n  padding: 8px;\n  cursor: pointer;\n}\n\n\/* Close button inside mobile nav *\/\n.header-drs__nav-close {\n  display: none;\n  background: none;\n  border: none;\n  padding: 8px;\n  cursor: pointer;\n  align-self: flex-end;\n  margin-bottom: 16px;\n}\n\n\/* --- Footer DRS --- *\/\n.footer-drs {\n  background: var(--color-dark-black);\n  color: var(--color-white);\n  padding: var(--space-3xl) 0 var(--space-xl);\n}\n\n.footer-drs__grid {\n  display: grid;\n  grid-template-columns: 2fr repeat(3, 1fr);\n  gap: var(--space-2xl);\n  margin-bottom: var(--space-2xl);\n}\n\n.footer-drs__brand p {\n  color: var(--color-dark-gray);\n  margin-top: var(--space-md);\n  font-size: 16px;\n  line-height: 1.6;\n}\n\n.footer-drs__address {\n  font-style: normal;\n  color: var(--color-medium-gray);\n  font-size: 14px;\n  line-height: 1.7;\n  margin-top: var(--space-md);\n}\n\n.footer-drs__legal-info {\n  color: var(--color-dark-gray);\n  font-size: 14px;\n  line-height: 1.7;\n  margin-top: var(--space-sm);\n}\n\n.footer-drs__social {\n  display: flex;\n  gap: 12px;\n  margin-top: var(--space-lg);\n}\n\n.footer-drs__social a {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  border-radius: var(--radius-full);\n  border: 1px solid rgba(255, 255, 255, 0.12);\n  color: var(--color-medium-gray);\n  transition: border-color 0.2s, color 0.2s, background 0.2s;\n}\n\n.footer-drs__social a:hover {\n  border-color: rgba(255, 255, 255, 0.35);\n  color: var(--color-white);\n  background: rgba(255, 255, 255, 0.06);\n}\n\n.footer-drs__links h4 {\n  margin-bottom: var(--space-lg);\n  font-size: 14px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n  color: var(--color-white);\n}\n\n.footer-drs__links a {\n  display: block;\n  color: var(--color-dark-gray);\n  font-size: 16px;\n  padding: var(--space-sm) 0;\n  transition: color 0.2s ease;\n  text-decoration: none;\n}\n\n.footer-drs__links a:hover {\n  color: var(--color-white);\n}\n\n.footer-drs__bottom {\n  padding-top: var(--space-xl);\n  border-top: 1px solid rgba(255, 255, 255, 0.1);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  color: var(--color-dark-gray);\n  font-size: 14px;\n  flex-wrap: wrap;\n  gap: 12px;\n}\n\n.footer-drs__bottom a {\n  color: var(--color-dark-gray);\n  margin-left: var(--space-lg);\n  text-decoration: none;\n  transition: color 0.2s;\n}\n\n.footer-drs__bottom a:hover {\n  color: var(--color-white);\n}\n\n\/* --- Section: FAQ Dark (gradient border on hover\/open) --- *\/\n.section-faq-dark {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n}\n\n.section-faq-dark__label {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-sm);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-md);\n}\n\n.section-faq-dark__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-faq-dark__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n}\n\n.section-faq-dark__list {\n  max-width: 820px;\n  margin: 0 auto;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n}\n\n.faq-item-dark {\n  background: var(--surface-card-dark);\n  border: 2px solid rgba(255, 255, 255, 0.06);\n  border-radius: var(--radius-md);\n  overflow: hidden;\n  transition: all 0.3s ease;\n  background-origin: border-box;\n  background-clip: padding-box, border-box;\n}\n\n.faq-item-dark:hover {\n  border-color: transparent;\n  background-image: linear-gradient(#1a1a1a, #1a1a1a), var(--gradient-brand);\n}\n\n.faq-item-dark.is-open {\n  border-color: transparent;\n  background-image: linear-gradient(#1a1a1a, #1a1a1a), var(--gradient-brand);\n  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);\n}\n\n.faq-item-dark__question {\n  width: 100%;\n  padding: 20px var(--space-lg);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  cursor: pointer;\n  background: none;\n  border: none;\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 600;\n  color: var(--color-light-gray);\n  text-align: left;\n  transition: color 0.3s ease;\n  gap: var(--space-md);\n}\n\n.faq-item-dark__question:hover {\n  color: var(--color-white);\n}\n\n.faq-item-dark__chevron {\n  width: 24px;\n  height: 24px;\n  transition: transform 0.3s ease;\n  flex-shrink: 0;\n  color: var(--color-white);\n  opacity: 0.85;\n}\n\n.faq-item-dark.is-open .faq-item-dark__chevron {\n  transform: rotate(45deg);\n  opacity: 1;\n}\n\n.faq-item-dark__answer {\n  max-height: 0;\n  overflow: hidden;\n  transition: max-height 0.4s ease;\n}\n\n.faq-item-dark.is-open .faq-item-dark__answer {\n  max-height: 400px;\n}\n\n.faq-item-dark__answer-inner {\n  padding: 0 var(--space-lg) 20px;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-medium-gray);\n  line-height: 1.8;\n}\n\n\/* --- Section: Comparison Cards (dark, 3-col, feature checklist) --- *\/\n\/* --- Award Banner (Gartner-style highlight) --- *\/\n.award-banner {\n  max-width: var(--max-width);\n  margin: 0 auto;\n}\n\n.award-banner__inner {\n  display: flex;\n  gap: 48px;\n  align-items: center;\n}\n\n.award-banner__card {\n  flex: 0 0 50%;\n  background: var(--color-black);\n  border-radius: 30px;\n  padding: 48px 36px;\n  display: flex;\n  flex-direction: column;\n}\n\n.award-banner__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: 48px;\n}\n\n.award-banner__image {\n  flex: 1;\n}\n\n.award-banner__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  border-radius: 30px;\n}\n\n.award-banner__disclaimer {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.8;\n  color: var(--color-dark-gray);\n  margin-top: 40px;\n}\n\n\/* --- Case Studies: Filter Bar --- *\/\n.cs-filter {\n  max-width: var(--max-width);\n  margin: 0 auto;\n}\n\n.cs-filter__bar {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 16px 24px;\n}\n\n.cs-filter__dropdown {\n  position: relative;\n}\n\n.cs-filter__dropdown-toggle {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  padding: 12px 20px;\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-sm);\n  background: transparent;\n  cursor: pointer;\n  min-width: 180px;\n  justify-content: space-between;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  transition: border-color 0.2s;\n}\n\n.cs-filter__dropdown-toggle:hover {\n  border-color: var(--color-dark-gray);\n}\n\n.cs-filter__dropdown-toggle svg {\n  color: var(--color-dark-gray);\n  transition: transform 0.2s;\n}\n\n.cs-filter__dropdown.is-open .cs-filter__dropdown-toggle {\n  border-color: var(--color-black);\n}\n\n.cs-filter__dropdown.is-open .cs-filter__dropdown-toggle svg {\n  transform: rotate(180deg);\n}\n\n.cs-filter__dropdown-menu {\n  position: absolute;\n  top: calc(100% + 4px);\n  left: 0;\n  min-width: 100%;\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-sm);\n  padding: 8px 0;\n  z-index: 100;\n  display: none;\n  box-shadow: 0 8px 24px rgba(0,0,0,0.08);\n}\n\n.cs-filter__dropdown.is-open .cs-filter__dropdown-menu {\n  display: block;\n}\n\n.cs-filter__checkbox {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  padding: 10px 20px;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  cursor: pointer;\n  transition: background 0.15s;\n}\n\n.cs-filter__checkbox:hover {\n  background: var(--color-gray);\n}\n\n.cs-filter__checkbox input {\n  display: none;\n}\n\n.cs-filter__checkmark {\n  width: 18px;\n  height: 18px;\n  border: 1.5px solid var(--color-medium-gray);\n  border-radius: 4px;\n  flex-shrink: 0;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  transition: border-color 0.15s, background 0.15s;\n}\n\n.cs-filter__checkbox input:checked + .cs-filter__checkmark {\n  background: var(--color-black);\n  border-color: var(--color-black);\n}\n\n.cs-filter__checkbox input:checked + .cs-filter__checkmark::after {\n  content: '';\n  width: 10px;\n  height: 6px;\n  border-left: 2px solid var(--color-white);\n  border-bottom: 2px solid var(--color-white);\n  transform: rotate(-45deg);\n  margin-bottom: 2px;\n}\n\n.cs-filter__clear {\n  padding: 12px 20px;\n  border: 1px solid var(--color-light-gray);\n  border-radius: 9999px;\n  background: transparent;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  cursor: pointer;\n  transition: border-color 0.2s;\n  margin-left: auto;\n}\n\n.cs-filter__clear:hover {\n  border-color: var(--color-dark-gray);\n}\n\n\/* --- Case Studies: Cards --- *\/\n.cs-cards {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.cs-card {\n  display: grid;\n  grid-template-columns: 1fr 2fr;\n  gap: 48px;\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 32px;\n  align-items: center;\n}\n\n.cs-card__image {\n  position: relative;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n}\n\n.cs-card__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  border-radius: var(--radius-lg);\n  display: block;\n}\n\n.cs-card__industry-tag {\n  position: absolute;\n  top: 16px;\n  left: 16px;\n  background: var(--color-white);\n  color: var(--color-black);\n  font-size: 12px;\n  font-weight: 500;\n  padding: 6px 16px;\n  border-radius: 9999px;\n}\n\n.cs-card__category-tags {\n  position: absolute;\n  bottom: 16px;\n  left: 16px;\n  display: flex;\n  gap: 8px;\n  flex-wrap: wrap;\n}\n\n.cs-card__category-tag {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-white);\n  padding: 7px 12px 5px;\n  border-radius: var(--radius-sm);\n  line-height: 1;\n}\n\n.cs-card__category-tag--blue {\n  background: var(--color-erp-blue);\n}\n\n.cs-card__category-tag--yellow {\n  background: var(--color-erp-yellow);\n}\n\n.cs-card__category-tag--green {\n  background: var(--color-erp-green);\n}\n\n.cs-card__category-tag--red {\n  background: var(--color-erp-red);\n}\n\n.cs-card__content {\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.cs-card__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  background: linear-gradient(107deg, #ef5909 17%, #d70e44 34%, #a046e1 55%, #1676c3 73%);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.cs-card__excerpt {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Case Studies: Pagination --- *\/\n.cs-pagination {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 12px;\n  margin-top: 48px;\n}\n\n.cs-pagination__item {\n  width: 40px;\n  height: 40px;\n  border-radius: 9999px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--color-dark-gray);\n  background: var(--color-white);\n  text-decoration: none;\n  transition: background 0.2s, color 0.2s;\n}\n\n.cs-pagination__item:hover {\n  background: var(--color-light-gray);\n  color: var(--color-black);\n}\n\n.cs-pagination__item.is-active {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n.cs-pagination__next {\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--color-black);\n  text-decoration: none;\n  margin-left: 8px;\n}\n\n.cs-pagination__next:hover {\n  color: var(--color-erp-blue);\n}\n\n.section-comparison {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-comparison .container { position: relative; z-index: 1; }\n\n.section-comparison__header { margin-bottom: var(--space-2xl); }\n\n.section-comparison__label {\n  display: flex;\n  align-items: center;\n  gap: var(--space-sm);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-md);\n}\n\n.section-comparison__label::before {\n  content: '';\n  width: 20px;\n  height: 3px;\n  border-radius: 2px;\n  background: var(--gradient-brand);\n}\n\n.section-comparison__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-comparison__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-comparison__grid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: var(--space-lg);\n}\n\n\/* Comparison card *\/\n.card-comparison {\n  background: var(--surface-card-dark);\n  border: 2px solid rgba(255, 255, 255, 0.06);\n  border-radius: var(--radius-lg);\n  display: flex;\n  flex-direction: column;\n  transition: all 0.3s ease;\n  background-origin: border-box;\n  background-clip: padding-box, border-box;\n}\n\n.card-comparison:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);\n}\n\n.card-comparison--recommended {\n  border-color: transparent;\n  background-image: linear-gradient(#0f0f0f, #0f0f0f), var(--gradient-brand);\n  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4);\n}\n\n\/* Header *\/\n.card-comparison__header {\n  padding: var(--space-xl) var(--space-lg) var(--space-lg);\n  border-bottom: 1px solid rgba(255, 255, 255, 0.06);\n}\n\n.card-comparison__badge {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  background: var(--gradient-brand);\n  color: var(--color-white);\n  font-size: 12px;\n  font-weight: 600;\n  padding: 4px 12px;\n  border-radius: var(--radius-full);\n  text-transform: uppercase;\n  letter-spacing: 0.06em;\n  margin-bottom: 12px;\n}\n\n.card-comparison__icon {\n  width: 48px;\n  height: 48px;\n  background: rgba(255, 255, 255, 0.06);\n  border-radius: var(--radius-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: var(--space-md);\n  border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.card-comparison__icon svg {\n  width: 24px;\n  height: 24px;\n  stroke: var(--color-medium-gray);\n  stroke-width: 1.5;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-comparison--recommended .card-comparison__icon {\n  background: rgba(255, 255, 255, 0.1);\n}\n\n.card-comparison--recommended .card-comparison__icon svg {\n  stroke: var(--color-light-gray);\n}\n\n.card-comparison__title {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--color-white);\n  margin-bottom: 6px;\n}\n\n.card-comparison--recommended .card-comparison__title {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.card-comparison__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* Score *\/\n.card-comparison__score {\n  padding: 20px var(--space-lg);\n  border-bottom: 1px solid rgba(255, 255, 255, 0.06);\n  display: flex;\n  align-items: baseline;\n  gap: var(--space-sm);\n}\n\n.card-comparison__score-num {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1;\n  color: var(--color-dark-gray);\n}\n\n.card-comparison:nth-child(2) .card-comparison__score-num {\n  color: var(--color-status-warning);\n}\n\n.card-comparison--recommended .card-comparison__score-num {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.card-comparison__score-label {\n  font-size: 14px;\n  font-weight: 400;\n  color: var(--color-dark-gray);\n}\n\n\/* Feature list *\/\n.card-comparison__list {\n  padding: 20px var(--space-lg) var(--space-lg);\n  list-style: none;\n  display: flex;\n  flex-direction: column;\n  gap: 10px;\n  flex: 1;\n}\n\n.card-comparison__item {\n  display: flex;\n  align-items: flex-start;\n  gap: 10px;\n  font-size: 14px;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n}\n\n.card-comparison__item.is-active {\n  color: var(--color-light-gray);\n}\n\n.card-comparison__status {\n  width: 20px;\n  height: 20px;\n  min-width: 20px;\n  border-radius: var(--radius-full);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-top: 1px;\n}\n\n.card-comparison__status svg {\n  width: 12px;\n  height: 12px;\n  stroke-width: 2.5;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-comparison__status--yes { background: rgba(16, 185, 129, 0.15) \/* --color-status-success *\/; }\n.card-comparison__status--yes svg { stroke: var(--color-status-success); }\n\n.card-comparison__status--partial { background: rgba(245, 158, 11, 0.15) \/* --color-status-warning *\/; }\n.card-comparison__status--partial svg { stroke: var(--color-status-warning); }\n\n.card-comparison__status--no { background: rgba(255, 255, 255, 0.05); }\n.card-comparison__status--no svg { stroke: rgba(255, 255, 255, 0.2); }\n\n\/* --- PDF Modal --- *\/\n.pdf-modal {\n  position: fixed;\n  inset: 0;\n  z-index: 2000;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  opacity: 0;\n  visibility: hidden;\n  transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.pdf-modal.is-active {\n  opacity: 1;\n  visibility: visible;\n}\n\n.pdf-modal__bg {\n  position: absolute;\n  inset: 0;\n  background: rgba(0, 0, 0, 0.7);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n}\n\n.pdf-modal__panel {\n  position: relative;\n  width: 90vw;\n  height: 85vh;\n  max-width: 1000px;\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  box-shadow: 0 32px 96px rgba(0, 0, 0, 0.3);\n}\n\n.pdf-modal__close {\n  position: absolute;\n  top: var(--space-md);\n  right: var(--space-md);\n  width: 40px;\n  height: 40px;\n  border-radius: var(--radius-full);\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  z-index: 10;\n  transition: background 0.2s;\n}\n\n.pdf-modal__close:hover {\n  background: var(--color-gray);\n}\n\n.pdf-modal__iframe {\n  width: 100%;\n  height: 100%;\n  border: none;\n}\n\n\/* --- Section: Marquee \/ Animated Text --- *\/\n.section-marquee {\n  text-align: center;\n  padding: 64px var(--page-padding);\n  overflow: hidden;\n}\n\n.section-marquee--animated {\n  padding: 64px 0;\n}\n\n.section-marquee__text {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.31;\n  color: var(--color-black);\n}\n\n.section-marquee:not(.section-marquee--animated) .section-marquee__text {\n  max-width: 833px;\n  margin: 0 auto;\n}\n\n\/* --- Stat Cards (gradient numbers) --- *\/\n.stat-cards {\n  display: flex;\n  gap: 24px;\n  justify-content: center;\n  flex-wrap: wrap;\n}\n\n.stat-card {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 48px 36px;\n  text-align: center;\n  width: 369px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 4px;\n}\n\n.stat-card__value {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1.06;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.stat-card__label {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-black);\n}\n\n\/* --- Stat Card: Glass variant (dark overlay, 4-column) --- *\/\n.stat-cards--glass {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n  gap: var(--space-md);\n  width: 100%;\n}\n\n.stat-card--glass {\n  background: rgba(255, 255, 255, 0.06);\n  border: 1px solid rgba(255, 255, 255, 0.1);\n  border-radius: var(--radius-md);\n  backdrop-filter: blur(12px);\n  -webkit-backdrop-filter: blur(12px);\n  padding: var(--space-lg) var(--space-lg);\n  text-align: left;\n  width: auto;\n  align-items: flex-start;\n}\n\n.stat-card--glass .stat-card__value {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  background: none;\n  -webkit-background-clip: unset;\n  -webkit-text-fill-color: unset;\n  background-clip: unset;\n  color: var(--color-white);\n}\n\n.stat-card--glass .stat-card__label {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n}\n\n\/* --- Tabs: Big pill tabs --- *\/\n.tabs-big {\n  display: flex;\n  gap: 16px;\n  align-items: center;\n  justify-content: center;\n}\n\n.tab-big {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 20px 24px 18px;\n  min-width: 150px;\n  border-radius: var(--radius-full);\n  background: var(--color-white);\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  cursor: pointer;\n  border: none;\n  transition: color 0.3s, background-color 0.3s;\n}\n\n.tab-big:hover {\n  background: #1676C3;\n  color: var(--color-white);\n}\n\n.tab-big--active {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n\/* --- Section: Personas (tabbed comparison) --- *\/\n.section-personas {\n  background: var(--color-gray);\n  padding: 96px var(--page-padding);\n  position: relative;\n  overflow: hidden;\n}\n\n.section-personas__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-black);\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-personas__blob {\n  position: absolute;\n  bottom: -350px;\n  right: 0;\n  width: 877px;\n  height: 1185px;\n  pointer-events: none;\n  z-index: 0;\n}\n\n.section-personas__blob img {\n  width: 100%;\n  height: 100%;\n}\n\n.section-personas .tabs-big,\n.section-personas .section-personas__panels-wrapper {\n  position: relative;\n  z-index: 1;\n}\n\n.section-personas__panels-wrapper {\n  position: relative;\n  margin-top: 40px;\n  min-height: 500px;\n}\n\n.section-personas__slide {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  opacity: 0;\n  pointer-events: none;\n  transition: opacity 0.4s ease;\n}\n\n.section-personas__slide.is-active {\n  position: relative;\n  opacity: 1;\n  pointer-events: auto;\n}\n\n.section-personas__panels {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: flex-start;\n  gap: 24px;\n  padding: clamp(16px, 3vw, 24px);\n  border-radius: var(--radius-lg);\n}\n\n.section-personas__quote-panel {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: clamp(20px, 4vw, 40px);\n  width: min(515px, 100%);\n  flex-shrink: 0;\n}\n\n.section-personas__quote-title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n  max-width: 361px;\n  margin-bottom: 35px;\n}\n\n.section-personas__quote-text {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n  margin-bottom: 23px;\n}\n\n.section-personas__quote-author {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n.section-personas__quote-avatar {\n  width: 50px;\n  height: 50px;\n  border-radius: 0;\n  overflow: hidden;\n  flex-shrink: 0;\n  object-fit: cover;\n}\n\n.section-personas__quote-meta {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n}\n\n.section-personas__benefits-panel {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: clamp(20px, 4vw, 40px);\n  flex: 1 1 min(100%, 400px);\n  display: flex;\n  flex-direction: column;\n  gap: 38px;\n}\n\n.section-personas__benefits-panel .btn {\n  align-self: flex-start;\n}\n\n.section-personas__benefits-header {\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-lg);\n  padding: 36px;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n}\n\n.section-personas__benefits-title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n}\n\n.section-personas__benefits-icon {\n  width: 60px;\n  height: 60px;\n  flex-shrink: 0;\n}\n\n.section-personas__benefits-icon img {\n  width: 100%;\n  height: 100%;\n}\n\n\/* Persona Tabs \u2014 Mobile nav (hidden on desktop) *\/\n.section-personas__mobile-nav {\n  display: none;\n}\n\n\/* --- Checklist --- *\/\n.checklist {\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.checklist__item {\n  display: flex;\n  gap: 14px;\n  align-items: flex-start;\n}\n\n.checklist__icon {\n  width: 21px;\n  height: 21px;\n  flex-shrink: 0;\n  color: var(--color-erp-green);\n}\n\n.checklist__icon svg {\n  width: 100%;\n  height: 100%;\n}\n\n.checklist__text {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* Checklist variant: black checkbox (like live assecobs.pl\/erp\/system-hr) *\/\n.checklist--check .checklist__icon {\n  color: var(--color-black);\n}\n\n.checklist--check .checklist__icon svg {\n  width: 21px;\n  height: 21px;\n}\n\n\/* --- Card: Feature (white card with icon) --- *\/\n.card-feature {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 0 32px 36px;\n  display: flex;\n  flex-direction: column;\n  gap: 32px;\n  cursor: pointer;\n  transition: background 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-feature__icon {\n  width: auto;\n  height: 60px;\n  padding-top: 32px;\n}\n\n.card-feature__icon img {\n  height: 100%;\n  width: auto;\n}\n\n.card-feature__content {\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n  flex: 1;\n}\n\n.card-feature__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.39;\n  color: var(--color-black);\n}\n\n.card-feature__desc {\n  font-size: 18px;\n  font-weight: 400;\n  line-height: 1.39;\n  color: var(--color-dark-gray);\n}\n\n.card-feature__action {\n  display: flex;\n  justify-content: flex-end;\n}\n\n.card-feature__detail-icon {\n  width: 50px;\n  height: 50px;\n  border-radius: 18px;\n  background: rgba(242, 242, 242, 0.75);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-feature__detail-icon svg {\n  width: 28px;\n  height: 28px;\n  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), filter 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-feature:hover .card-feature__detail-icon {\n  background: var(--color-black);\n}\n\n.card-feature:hover .card-feature__detail-icon svg {\n  transform: rotate(90deg);\n  filter: invert(1);\n}\n\n\/* --- Feature Cards Grid --- *\/\n.feature-grid {\n  display: grid;\n  grid-template-columns: repeat(3, minmax(0, 1fr));\n  gap: 36px 24px;\n  max-width: var(--max-width);\n  margin: 0 auto;\n}\n\n\/* --- Section: Feature Tags (image + tags cloud) --- *\/\n.section-feature-tags {\n  background: var(--color-gray);\n  padding: 64px var(--page-padding);\n  overflow: hidden;\n}\n\n.section-feature-tags__inner {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  display: flex;\n  flex-wrap: wrap;\n  gap: 64px;\n  align-items: flex-start;\n  position: relative;\n}\n\n.section-feature-tags__image {\n  width: 583px;\n  max-width: 100%;\n  height: 353px;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.section-feature-tags__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.section-feature-tags__content {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.section-feature-tags__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-black);\n}\n\n\/* --- Tag: Big (white, rounded) --- *\/\n.tag-big {\n  display: inline-flex;\n  align-items: center;\n  padding: 12px;\n  border-radius: var(--radius-sm);\n  background: var(--color-white);\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.28px;\n  color: var(--color-black);\n  white-space: nowrap;\n}\n\n.tag-big-cloud {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n}\n\n\/* --- Section: Interface Slider --- *\/\n.section-interface-slider {\n  background: var(--color-gray);\n  padding: 64px 0;\n  text-align: center;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-interface-slider__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 42px;\n  color: var(--color-black);\n  margin-bottom: 48px;\n}\n\n.section-interface-slider__track {\n  position: relative;\n  overflow: visible;\n  max-width: 825px;\n  margin: 0 auto;\n}\n\n.section-interface-slider__slides {\n  display: flex;\n  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.section-interface-slider__slide {\n  flex-shrink: 0;\n  width: 825px;\n  display: flex;\n  justify-content: center;\n}\n\n.section-interface-slider__slide img {\n  width: 100%;\n  height: auto;\n  border-radius: 0;\n  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);\n  transform: scale(0.9);\n}\n\n.section-interface-slider__slide.is-active img {\n  transform: scale(1.1);\n}\n\n.section-interface-slider__nav {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  transform: translate(-50%, -50%);\n  display: flex;\n  justify-content: space-between;\n  width: 100%;\n  max-width: 1060px;\n  padding: 0 24px;\n  box-sizing: border-box;\n  z-index: 2;\n  pointer-events: none;\n}\n\n.section-interface-slider__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 9999px;\n  border: none;\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  pointer-events: auto;\n  transition: background 0.2s;\n}\n\n.section-interface-slider__arrow:hover {\n  background: var(--color-black);\n}\n\n.section-interface-slider__arrow:hover svg path {\n  stroke: var(--color-white);\n}\n\n.section-interface-slider__arrows {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  left: 0;\n  right: 0;\n  display: flex;\n  justify-content: space-between;\n  padding: 0 11%;\n  pointer-events: none;\n}\n\n.section-interface-slider__arrow {\n  pointer-events: auto;\n}\n\n\/* --- Card: Video (tall card with gradient overlay) --- *\/\n.card-video {\n  width: 355px;\n  height: 631px;\n  border-radius: 18px;\n  overflow: hidden;\n  position: relative;\n  flex-shrink: 0;\n  cursor: pointer;\n  transform: scale(0.9);\n  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-video.is-visible {\n  transform: scale(1);\n}\n\n\/* Embed wrapper \u2014 holds iframe, gradient overlay via ::after *\/\n.card-video__embed {\n  position: absolute;\n  inset: 0;\n  z-index: 1;\n}\n\n.card-video__embed iframe {\n  width: 100%;\n  height: 100%;\n  border: none;\n  border-radius: inherit;\n  pointer-events: none;\n  position: relative;\n  z-index: 1;\n}\n\n.card-video.is-playing .card-video__embed iframe {\n  pointer-events: auto;\n  z-index: 70;\n}\n\n.card-video__embed::after {\n  content: \"\";\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(180deg, transparent 20%, #232323 100%);\n  opacity: 1;\n  visibility: visible;\n  pointer-events: none;\n  z-index: 2;\n  transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.card-video.is-playing .card-video__embed::after {\n  opacity: 0;\n  visibility: hidden;\n}\n\n\/* Backward-compat: old __bg \/ __overlay still work if present *\/\n.card-video__bg {\n  position: absolute;\n  inset: 0;\n}\n\n.card-video__bg img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.card-video__overlay {\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(180deg, rgba(35,35,35,0) 1.5%, rgba(35,35,35,0.8) 98%);\n  border-radius: var(--radius-lg);\n}\n\n\/* Play\/pause toggle \u2014 top-right 50\u00d750 circle *\/\n.card-video__play-toggle {\n  position: absolute;\n  top: 16px;\n  right: 16px;\n  width: 50px;\n  height: 50px;\n  border-radius: 18px;\n  background: rgba(216, 216, 216, 0.4);\n  border: none;\n  cursor: pointer;\n  z-index: 60;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  transition: background 0.3s ease;\n}\n\n.card-video__play-toggle:hover {\n  background: rgb(35, 35, 35);\n}\n\n.card-video__play-toggle .icon-pause {\n  position: absolute;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.card-video__play-toggle .icon-play {\n  opacity: 1;\n  transition: opacity 0.3s ease;\n}\n\n.card-video:hover .card-video__play-toggle .icon-play {\n  opacity: 0;\n}\n\n.card-video:hover .card-video__play-toggle .icon-pause {\n  opacity: 1;\n}\n\n\/* Legacy center play button (hidden when new toggle is used) *\/\n.card-video__play {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  transform: translate(-50%, -50%);\n  width: 60px;\n  height: 60px;\n  border-radius: 50%;\n  background: rgba(255,255,255,0.2);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n}\n\n.card-video__play:hover {\n  background: rgba(255,255,255,0.35);\n}\n\n.card-video__top {\n  display: none;\n}\n\n.card-video__top-icon {\n  display: none;\n}\n\n\/* Bottom content area *\/\n.card-video__bottom {\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  padding: 0 16px;\n  z-index: 50;\n  display: grid;\n  grid-template-rows: 0fr;\n  align-items: flex-start;\n  transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-video:hover .card-video__bottom {\n  grid-template-rows: 1fr;\n}\n\n.card-video__person {\n  position: absolute;\n  bottom: calc(100% + 16px);\n  left: 0;\n  right: 0;\n  padding: 0 16px;\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n.card-video__person-icon {\n  width: 50px;\n  height: 50px;\n  flex-shrink: 0;\n}\n\n.card-video__person-title {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.3;\n  color: var(--color-white);\n  letter-spacing: -0.02rem;\n}\n\n.card-video__tags-wrap {\n  overflow: hidden;\n}\n\n.card-video__tags {\n  display: flex;\n  gap: 4px;\n  flex-wrap: wrap;\n  overflow: hidden;\n  margin-bottom: 0;\n  transition: margin-bottom 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-video:hover .card-video__tags {\n  margin-bottom: 16px;\n}\n\n.card-video__tag {\n  font-size: 12px;\n  color: var(--color-black);\n  background: var(--color-white);\n  border-radius: 8px;\n  padding: 9px 8px 7px;\n  line-height: 1;\n  white-space: nowrap;\n  letter-spacing: -0.02rem;\n}\n\n.card-video__info {\n  position: absolute;\n  bottom: 16px;\n  left: 16px;\n  right: 16px;\n  display: none;\n  align-items: center;\n  gap: 12px;\n}\n\n.card-video__product-icon {\n  width: 50px;\n  height: 50px;\n  border-radius: 16px;\n  background: var(--gradient-brand);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.card-video__product-icon img {\n  width: 34px;\n  height: 34px;\n}\n\n.card-video__label {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-white);\n}\n\n\/* --- Section: Video Slider (text + cards) --- *\/\n.section-video-slider {\n  background: var(--color-gray);\n  padding: 96px 0;\n  overflow: hidden;\n}\n\n.section-video-slider__inner {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 32px;\n  align-items: flex-start;\n}\n\n.section-video-slider__header {\n  padding-left: var(--page-padding);\n  width: 562px;\n  max-width: 100%;\n  flex-shrink: 0;\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n}\n\n.section-video-slider__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-black);\n}\n\n.section-video-slider__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.section-video-slider__arrows {\n  display: flex;\n  gap: 16px;\n  margin-top: 24px;\n}\n\n.section-video-slider__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 9999px;\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n  color: var(--color-white);\n}\n\n.section-video-slider__arrow--prev {\n  background: #676767;\n  display: none;\n}\n\n.section-video-slider__arrow--prev.is-visible {\n  display: flex;\n}\n\n.section-video-slider__arrow--next {\n  background: var(--color-white);\n  color: var(--color-black);\n  box-shadow: 0 1px 4px rgba(0,0,0,0.1);\n}\n\n.section-video-slider__arrow:hover {\n  opacity: 0.8;\n}\n\n.section-video-slider__track {\n  display: flex;\n  gap: 24px;\n  overflow-x: auto;\n  padding-right: var(--page-padding);\n  -ms-overflow-style: none;\n  scrollbar-width: none;\n}\n\n.section-video-slider__track::-webkit-scrollbar {\n  display: none;\n}\n\n\/* --- Section: Cooperation Video Slider (Homepage) --- *\/\n\/* \u2500\u2500 Testimonials Quote Slider v2 (Homepage) \u2500\u2500 *\/\n.section-testimonials-v2 {\n  background: var(--color-base);\n  padding: 112px 0 122px;\n  position: relative;\n  overflow: visible;\n  background-image: url('images\/testimonials-blob.svg');\n  background-repeat: no-repeat;\n  background-position: 0% calc(100% + 400px);\n  background-size: 844px 1114px;\n}\n.section-testimonials-v2__left {\n  max-width: 480px;\n  padding: 0 24px;\n  margin-bottom: 40px;\n}\n.section-testimonials-v2__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.12;\n  margin-bottom: 32px;\n}\n.section-testimonials-v2__right {\n  position: relative;\n  padding-left: 24px;\n  overflow: hidden;\n}\n.section-testimonials-v2__nav {\n  display: flex;\n  gap: 16px;\n  justify-content: flex-end;\n  padding-right: 24px;\n  margin-bottom: 16px;\n}\n.section-testimonials-v2__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 50%;\n  background: var(--color-white);\n  border: none;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  z-index: 2;\n  transition: background 0.2s;\n}\n.section-testimonials-v2__arrow:hover {\n  background: var(--color-black);\n}\n.section-testimonials-v2__arrow:hover svg path {\n  stroke: #FDFDFD;\n}\n.section-testimonials-v2__track {\n  display: flex;\n  gap: 24px;\n  width: max-content;\n  animation: testimonialQuoteScroll 160s linear infinite;\n  padding: 8px 0 24px;\n}\n.section-testimonials-v2__track:hover {\n  animation-play-state: paused;\n}\n@keyframes testimonialQuoteScroll {\n  from { transform: translateX(0); }\n  to { transform: translateX(-50%); }\n}\n.section-testimonials-v2__card {\n  flex: 0 0 min(744px, 90vw);\n  background: var(--color-white);\n  border-radius: 24px;\n  padding: 36px 24px 24px;\n  display: flex;\n  flex-direction: column;\n  justify-content: space-between;\n  min-height: 380px;\n  position: relative;\n  border: 2px solid transparent;\n  transition: border-color 0.3s ease;\n}\n\n.section-testimonials-v2__card::before {\n  content: '';\n  position: absolute;\n  inset: -2px;\n  border-radius: 26px;\n  padding: 2px;\n  background: linear-gradient(107deg, #ef5909 17%, #d70e44 34%, #a046e1 55%, #1676c3 73%);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n  pointer-events: none;\n}\n\n.section-testimonials-v2__card:hover::before {\n  opacity: 1;\n}\n.section-testimonials-v2__quote {\n  font-size: 24px;\n  font-weight: 400;\n  line-height: 1.38;\n  color: var(--color-black);\n  margin-bottom: 24px;\n}\n.section-testimonials-v2__footer {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  margin-top: auto;\n}\n.section-testimonials-v2__person {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n.section-testimonials-v2__avatar {\n  width: 50px;\n  height: 50px;\n  border-radius: 0;\n  object-fit: cover;\n}\n.section-testimonials-v2__name {\n  font-size: 16px;\n  font-weight: 400;\n  color: #676767;\n  line-height: 22px;\n}\n.section-testimonials-v2__role {\n  font-size: 16px;\n  font-weight: 400;\n  color: #676767;\n  line-height: 22px;\n}\n.section-testimonials-v2__logo {\n  height: 50px;\n  width: auto;\n  max-width: 140px;\n  object-fit: contain;\n}\n\n\/* Dark pill button with arrow (matches live site) *\/\n.btn-with-arrow {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n}\n.btn-with-arrow::before {\n  content: '';\n  display: block;\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjRkRGREZEIi8+PC9zdmc+\");\n  background-size: contain;\n  background-repeat: no-repeat;\n  transition: transform 0.2s;\n}\n.btn-with-arrow:hover {\n  background-color: #3FA2EB;\n}\n.btn-with-arrow:hover::before {\n  transform: translateX(4px);\n}\n\n.section-cooperation {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: 100px 0 120px;\n}\n\n.section-cooperation__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.15;\n  letter-spacing: -0.8px;\n  color: var(--color-gray);\n  text-align: center;\n  margin-bottom: 48px;\n}\n\n.section-cooperation__slider {\n  display: flex;\n  gap: 24px;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n  align-items: flex-start;\n}\n\n.section-cooperation__video {\n  flex: 1.9;\n  border-radius: 24px;\n  overflow: hidden;\n  position: relative;\n  aspect-ratio: 16\/9;\n}\n\n.section-cooperation__video iframe {\n  width: 100%;\n  height: 100%;\n  position: absolute;\n  top: 0;\n  left: 0;\n  border-radius: 24px;\n}\n\n.section-cooperation__info {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n}\n\n.section-cooperation__nav {\n  display: flex;\n  gap: 8px;\n  justify-content: flex-end;\n}\n\n.section-cooperation__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 9999px;\n  background: var(--color-medium-gray);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  color: var(--color-white);\n  transition: background 0.2s;\n}\n\n.section-cooperation__arrow:hover {\n  background: var(--color-white);\n  color: var(--color-black);\n}\n\n.section-cooperation__card {\n  background: #141414;\n  border-radius: 24px;\n  padding: 36px 36px 40px;\n  min-height: 320px;\n  display: flex;\n  flex-direction: column;\n  position: relative;\n}\n\n.section-cooperation__slide {\n  display: none;\n  flex-direction: column;\n  flex: 1;\n}\n\n.section-cooperation__slide.is-active {\n  display: flex;\n}\n\n.section-cooperation__name {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: 8px;\n}\n\n.section-cooperation__role {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n  margin-bottom: 16px;\n}\n\n.section-cooperation__company {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-medium-gray);\n  border: 1px solid var(--color-medium-gray);\n  border-radius: 9999px;\n  padding: 8px 14px;\n  display: inline-block;\n  align-self: flex-start;\n  margin-bottom: auto;\n}\n\n.section-cooperation__tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n\n.section-cooperation__tag {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-black);\n  border-radius: 8px;\n  padding: 5px 8px;\n}\n\n@media (max-width: 768px) {\n  .section-cooperation__slider {\n    flex-direction: column;\n  }\n\n  .section-cooperation__heading {\n    font-size: 28px;\n  }\n}\n\n\/* --- Section: Stat Cards with Blob (Homepage) --- *\/\n.section-stat-cards {\n  position: relative;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.section-stat-cards__grid {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 24px;\n  position: relative;\n  z-index: 2;\n}\n\n.stat-card-home {\n  flex: 1 1 min(100%, 280px);\n  background: var(--color-white);\n  border-radius: 24px;\n  padding: 40px 32px;\n  text-align: center;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  min-height: 220px;\n}\n\n.stat-card-home__number {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1;\n  letter-spacing: -1.36px;\n  margin-bottom: 16px;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.stat-card-home__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.32px;\n  color: var(--color-black);\n  text-align: center;\n  max-width: 300px;\n}\n\n.section-stat-cards__blob {\n  position: absolute;\n  bottom: -480px;\n  right: 0;\n  width: 60%;\n  height: 1310px;\n  background: url('images\/blob-desktop.svg') no-repeat right center;\n  background-size: contain;\n  z-index: 1;\n  pointer-events: none;\n}\n\n@media (max-width: 768px) {\n  .section-stat-cards__grid {\n    flex-direction: column;\n  }\n\n  .stat-card-home__number {\n    font-size: 48px;\n  }\n\n  .section-stat-cards__blob {\n    display: none;\n  }\n}\n\n\/* --- Section: Wybierz rozwi\u0105zanie --- *\/\n.section-choose {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n  text-align: center;\n}\n\n.section-choose__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n  text-align: center;\n  margin-bottom: 36px;\n}\n\n.section-choose__video-wrapper {\n  max-width: 980px;\n  margin: 0 auto;\n  overflow: hidden;\n}\n\n.section-choose__video {\n  width: 112%;\n  height: auto;\n  display: block;\n  margin-left: -6%;\n}\n\n@media (max-width: 768px) {\n  .section-choose__heading {\n    font-size: 28px;\n  }\n}\n\n\/* --- Section: Homepage Product Cards --- *\/\n.section-products {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.section-products__header {\n  display: flex;\n  gap: 40px;\n  margin-bottom: 64px;\n  align-items: flex-start;\n}\n\n.section-products__heading {\n  flex: 1;\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.13;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n}\n\n.section-products__desc {\n  flex: 1;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.32px;\n  color: var(--color-dark-gray);\n  padding-top: 10px;\n}\n\n.section-products__cards {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 28px;\n  margin-bottom: 64px;\n}\n\n.card-product-home {\n  flex: 1 1 min(100%, 400px);\n  background: var(--color-white);\n  border-radius: 24px;\n  padding: 32px;\n  display: flex;\n  flex-direction: column;\n}\n\n.card-product-home__logo {\n  margin-bottom: 32px;\n}\n\n.card-product-home__logo img {\n  height: 66px;\n  width: auto;\n}\n\n.card-product-home__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.48px;\n  color: var(--color-black);\n  margin-bottom: 12px;\n}\n\n.card-product-home__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.32px;\n  color: var(--color-dark-gray);\n  margin-bottom: 32px;\n  flex: 1;\n}\n\n.card-product-home__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  background: var(--color-white);\n  border: 1px solid var(--color-black);\n  border-radius: 9999px;\n  padding: 11px 16px 9px;\n  text-decoration: none;\n  cursor: pointer;\n  transition: background 0.2s, color 0.2s;\n  align-self: flex-start;\n}\n\n.card-product-home__btn:hover {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n.card-product-home__btn:hover .arrow-icon {\n  stroke: var(--color-white);\n}\n\n.card-product-home__btn .arrow-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n}\n\n.section-products__cta {\n  text-align: center;\n}\n\n.section-products__cta-btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-white);\n  background: var(--color-black);\n  border: none;\n  border-radius: 9999px;\n  padding: 20px 24px 18px;\n  text-decoration: none;\n  cursor: pointer;\n  transition: opacity 0.2s;\n}\n\n.section-products__cta-btn:hover {\n  background: var(--color-erp-blue);\n}\n\n.section-products__cta-btn .arrow-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  stroke: var(--color-white);\n}\n\n@media (max-width: 768px) {\n  .section-products__header {\n    flex-direction: column;\n    gap: 24px;\n  }\n\n  .section-products__cards {\n    flex-direction: column;\n  }\n\n  .section-products__heading {\n    font-size: 28px;\n  }\n}\n\n\/* --- Section: Why Choose (Vertical Text Nav) --- *\/\n.section-why-choose {\n  max-width: 1300px;\n  margin: 0 auto;\n  padding: 0 40px;\n}\n\n.section-why-choose__grid {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 40px;\n  align-items: start;\n}\n\n.section-why-choose__left {\n  display: flex;\n  flex-direction: column;\n  gap: 64px;\n}\n\n.section-why-choose__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.12;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n}\n\n.section-why-choose__nav {\n  position: relative;\n  padding-left: 20px;\n}\n\n.section-why-choose__scrollbar {\n  position: absolute;\n  left: 0;\n  top: 0;\n  width: 12px;\n  height: 100%;\n  background: var(--color-light-gray);\n  border-radius: 9999px;\n}\n\n.section-why-choose__scrollbar-thumb {\n  position: absolute;\n  left: 0;\n  top: 0;\n  width: 12px;\n  height: 36px;\n  background: var(--color-black);\n  border-radius: 9999px;\n  transition: top 0.4s ease;\n}\n\n.section-why-choose__nav-list {\n  display: flex;\n  flex-direction: column;\n}\n\n.section-why-choose__nav-item {\n  background: none;\n  border: none;\n  padding: 14px 0 10px;\n  font-family: inherit;\n  font-size: 20px;\n  font-weight: 400;\n  line-height: 1.3;\n  letter-spacing: -0.4px;\n  color: var(--color-medium-gray);\n  text-align: left;\n  cursor: pointer;\n  transition: color 0.4s ease;\n}\n\n.section-why-choose__nav-item:hover {\n  color: var(--color-dark-gray);\n}\n\n.section-why-choose__nav-item.is-active {\n  color: var(--color-black);\n}\n\n\/* Right: content card *\/\n.section-why-choose__card {\n  position: relative;\n  background: var(--color-white);\n  border-radius: 24px;\n  overflow: hidden;\n  min-height: 620px;\n}\n\n.section-why-choose__slide {\n  display: none;\n  flex-direction: column;\n  justify-content: space-between;\n  padding: 36px;\n  min-height: 620px;\n}\n\n.section-why-choose__slide.is-active {\n  display: flex;\n}\n\n.section-why-choose__image {\n  margin: 0;\n  text-align: center;\n  overflow: hidden;\n  border-radius: var(--radius-lg);\n}\n\n.section-why-choose__image img {\n  max-width: 100%;\n  height: auto;\n  max-height: 340px;\n  border-radius: var(--radius-lg);\n}\n\n.section-why-choose__content {\n  padding: 0;\n}\n\n.section-why-choose__content p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.375;\n  letter-spacing: -0.32px;\n  color: var(--color-dark-gray);\n  margin: 0 0 8px;\n}\n\n.section-why-choose__content p:last-child {\n  margin-bottom: 0;\n}\n\n.section-why-choose__content p strong {\n  font-weight: 600;\n  color: var(--color-dark-gray);\n}\n\n.section-why-choose__tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 16px;\n}\n\n.section-why-choose__tag {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1;\n  letter-spacing: -0.24px;\n  color: var(--color-white);\n  background: var(--color-black);\n  border-radius: 8px;\n  padding: 6px 8px 4px;\n}\n\n@media (max-width: 768px) {\n  .section-why-choose__grid {\n    grid-template-columns: 1fr;\n    gap: 32px;\n  }\n\n  .section-why-choose__heading {\n    font-size: 28px;\n  }\n\n  .section-why-choose__nav-item {\n    font-size: 16px;\n  }\n\n  .section-why-choose__card {\n    min-height: auto;\n  }\n\n  .section-why-choose__slide {\n    min-height: auto;\n  }\n}\n\n\/* --- Section: Contact Form --- *\/\n.section-contact-form {\n  background: var(--color-gray);\n  padding: 96px var(--page-padding);\n  position: relative;\n  overflow: hidden;\n}\n\n.section-contact-form__header {\n  text-align: center;\n  margin-bottom: 48px;\n}\n\n.section-contact-form__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 42px;\n  color: var(--color-black);\n  margin-bottom: 16px;\n}\n\n.section-contact-form__intro {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n  text-align: center;\n  max-width: 700px;\n  margin: 0 auto;\n}\n\n.section-contact-form__fields {\n  display: flex;\n  gap: 36px;\n  max-width: 756px;\n  margin: 0 auto 32px;\n}\n\n.section-contact-form__column {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n}\n\n.section-contact-form__submit {\n  text-align: center;\n  margin-top: 32px;\n}\n\n.section-contact-form__legal {\n  font-size: 10px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.2px;\n  color: var(--color-dark-gray);\n  text-align: center;\n  max-width: 756px;\n  margin: 32px auto 0;\n}\n\n\/* --- Form: Input --- *\/\n.form-input {\n  display: flex;\n  flex-direction: column;\n  gap: 4px;\n}\n\n.form-input__label {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n}\n\n.form-input__field {\n  width: 100%;\n  padding: 12px 16px;\n  border: 1px solid var(--color-light-gray);\n  border-radius: 12px;\n  font-size: 16px;\n  font-weight: 400;\n  font-family: inherit;\n  color: var(--color-black);\n  background: var(--color-white);\n  outline: none;\n  transition: border-color 0.2s;\n}\n\n.form-input__field:focus {\n  border-color: var(--color-black);\n}\n\n.form-input__field--textarea {\n  resize: vertical;\n  min-height: 156px;\n}\n\n\/* --- Form: Checkbox --- *\/\n.form-checkbox {\n  display: flex;\n  gap: 8px;\n  align-items: flex-start;\n}\n\n.form-checkbox__box {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  border: 1px solid var(--color-medium-gray);\n  border-radius: 2px;\n  margin-top: 2px;\n  cursor: pointer;\n  appearance: none;\n  -webkit-appearance: none;\n}\n\n.form-checkbox__box:checked {\n  background: var(--color-black);\n  border-color: var(--color-black);\n}\n\n.form-checkbox__label {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Decorative Circles --- *\/\n.deco-circle {\n  position: absolute;\n  border-radius: 50%;\n  pointer-events: none;\n}\n\n.deco-circle--orange {\n  background: var(--color-erp-yellow);\n}\n\n.deco-circle--orange-light {\n  background: var(--color-erp-light-orange);\n}\n\n.deco-circle--green {\n  background: var(--color-erp-green);\n}\n\n\/* ============================================\n   ANIMATIONS & TRANSITIONS\n   ============================================ *\/\n\n\/* --- Scroll-Reveal Base --- *\/\n[data-anim] {\n  opacity: 0;\n  transform: translateY(40px);\n  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),\n              transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n[data-anim].is-visible {\n  opacity: 1;\n  transform: translateY(0);\n}\n\n\/* Variant: fade only *\/\n[data-anim=\"fade\"] {\n  transform: none;\n}\n\n\/* Variant: slide from left *\/\n[data-anim=\"slide-left\"] {\n  transform: translateX(-60px);\n}\n[data-anim=\"slide-left\"].is-visible {\n  transform: translateX(0);\n}\n\n\/* Variant: slide from right *\/\n[data-anim=\"slide-right\"] {\n  transform: translateX(60px);\n}\n[data-anim=\"slide-right\"].is-visible {\n  transform: translateX(0);\n}\n\n\/* Variant: scale up *\/\n[data-anim=\"scale\"] {\n  transform: scale(0.9);\n}\n[data-anim=\"scale\"].is-visible {\n  transform: scale(1);\n}\n\n\/* Variant: zoom in *\/\n[data-anim=\"zoom\"] {\n  transform: scale(0.85);\n}\n[data-anim=\"zoom\"].is-visible {\n  transform: scale(1);\n}\n\n\/* --- Stagger Delays (children) --- *\/\n[data-stagger] > *:nth-child(1) { transition-delay: 0s; }\n[data-stagger] > *:nth-child(2) { transition-delay: 0.1s; }\n[data-stagger] > *:nth-child(3) { transition-delay: 0.2s; }\n[data-stagger] > *:nth-child(4) { transition-delay: 0.3s; }\n[data-stagger] > *:nth-child(5) { transition-delay: 0.4s; }\n[data-stagger] > *:nth-child(6) { transition-delay: 0.5s; }\n[data-stagger] > *:nth-child(7) { transition-delay: 0.6s; }\n[data-stagger] > *:nth-child(8) { transition-delay: 0.7s; }\n[data-stagger] > *:nth-child(9) { transition-delay: 0.8s; }\n[data-stagger] > *:nth-child(10) { transition-delay: 0.9s; }\n[data-stagger] > *:nth-child(11) { transition-delay: 1.0s; }\n[data-stagger] > *:nth-child(12) { transition-delay: 1.1s; }\n\n\/* Stagger items start hidden *\/\n[data-stagger] > * {\n  opacity: 0;\n  transform: translateY(30px);\n  transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1),\n              transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n[data-stagger].is-visible > * {\n  opacity: 1;\n  transform: translateY(0);\n}\n\n\/* --- Custom Delay Attribute --- *\/\n[data-delay=\"100\"] { transition-delay: 0.1s; }\n[data-delay=\"200\"] { transition-delay: 0.2s; }\n[data-delay=\"300\"] { transition-delay: 0.3s; }\n[data-delay=\"400\"] { transition-delay: 0.4s; }\n[data-delay=\"500\"] { transition-delay: 0.5s; }\n[data-delay=\"600\"] { transition-delay: 0.6s; }\n\n\/* --- Marquee Animation --- *\/\n@keyframes marquee-scroll {\n  0% { transform: translateX(0); }\n  100% { transform: translateX(-50%); }\n}\n\n.section-marquee--animated .section-marquee__track {\n  display: flex;\n  gap: 80px;\n  white-space: nowrap;\n  animation: marquee-scroll 20s linear infinite;\n  width: max-content;\n}\n\n.section-marquee--animated .section-marquee__track:hover {\n  animation-play-state: paused;\n}\n\n\/* --- Events Ticker (Asseco Platform style) --- *\/\n.events-ticker {\n  width: 100%;\n  background: var(--color-black);\n  overflow: hidden;\n  position: relative;\n  display: flex;\n  align-items: center;\n  padding: 12px 16px;\n}\n\n.events-ticker__track {\n  display: flex;\n  gap: 2rem;\n  min-width: max-content;\n  animation: events-ticker-scroll 30s linear infinite;\n}\n\n.events-ticker__track:hover {\n  animation-play-state: paused;\n}\n\n.events-ticker__item {\n  color: var(--color-white);\n  font-size: 15px;\n  font-weight: 500;\n  white-space: nowrap;\n}\n\n.events-ticker__btn {\n  position: absolute;\n  right: 16px;\n  padding: 7px 19px;\n  background: var(--color-white);\n  color: var(--color-black);\n  border-radius: 9999px;\n  font-size: 14px;\n  font-weight: 500;\n  text-decoration: none;\n  white-space: nowrap;\n  transition: background-color 0.3s, color 0.3s;\n}\n\n.events-ticker__btn:hover {\n  background: var(--color-erp-blue);\n  color: var(--color-white);\n}\n\n@keyframes events-ticker-scroll {\n  0% { transform: translateX(0); }\n  100% { transform: translateX(-50%); }\n}\n\n\/* --- Floating Decorative Circles --- *\/\n@keyframes float-y {\n  0%, 100% { transform: translateY(0); }\n  50% { transform: translateY(-16px); }\n}\n\n@keyframes float-x {\n  0%, 100% { transform: translateX(0); }\n  50% { transform: translateX(12px); }\n}\n\n.deco-circle--float {\n  animation: float-y 4s ease-in-out infinite;\n}\n\n.deco-circle--float-alt {\n  animation: float-x 5s ease-in-out infinite;\n}\n\n\/* --- Counter Animation (number counting) --- *\/\n.stat-card__value[data-count] {\n  transition: none;\n}\n\n\/* --- Parallax-like Decorative Blobs --- *\/\n@keyframes rotate-slow {\n  0% { transform: rotate(0deg); }\n  100% { transform: rotate(360deg); }\n}\n\n.gradient-blob {\n  animation: rotate-slow 30s linear infinite;\n}\n\n\/* --- Blob Background (SVG decoration) --- *\/\n.blob-bg {\n  position: absolute;\n  pointer-events: none;\n  z-index: 0;\n  width: 900px;\n  height: auto;\n}\n\n.blob-bg--bottom-right {\n  bottom: -200px;\n  right: -260px;\n  transform: rotate(135deg);\n}\n\n.blob-bg--bottom-left {\n  bottom: -220px;\n  left: -200px;\n  transform: rotate(135deg) scaleX(-1);\n}\n\n.blob-bg--top-right {\n  top: -180px;\n  right: -200px;\n  transform: rotate(135deg);\n}\n\n\/* Decorative colored dots *\/\n.deco-dot {\n  position: absolute;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  pointer-events: none;\n  z-index: 1;\n}\n\n.deco-dot--orange  { background: var(--color-erp-yellow); }\n.deco-dot--pink    { background: var(--color-erp-red); }\n.deco-dot--cyan    { background: #27D8CD; }\n\n@media (max-width: 768px) {\n  \/* Hero mobile \u2014 1:1 from assecobs.pl\/erp *\/\n  .hero {\n    height: 549px;\n  }\n  .hero__desktop-bg {\n    display: none;\n  }\n  .hero__mobile-bg {\n    display: block;\n  }\n  .hero__content {\n    margin: 0;\n    padding: 176px 20px 56px;\n    width: 100%;\n    position: relative;\n    top: auto;\n    left: auto;\n  }\n  .hero__title {\n    font-size: 38px;\n    line-height: 44px;\n  }\n  .hero__subtitle {\n    display: none;\n  }\n  .hero__slider {\n    display: none;\n  }\n  .hero__arrows {\n    display: none;\n  }\n  .hero .btn {\n    width: 100%;\n    justify-content: center;\n  }\n\n  \/* Advantage bar mobile *\/\n  .advantage-bar__list {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .advantage-bar__item {\n    max-width: 100%;\n  }\n  .advantage-bar__text {\n    font-size: 16px;\n    line-height: 1.4;\n  }\n\n  .blob-bg {\n    width: 500px;\n  }\n  .deco-dot {\n    width: 24px;\n    height: 24px;\n  }\n\n  \/* ERP cards mobile *\/\n  .erp-products {\n    grid-template-columns: 1fr;\n    gap: 28px;\n    max-width: 335px;\n    margin: 0 auto;\n  }\n  .card-erp {\n    border-radius: 18px;\n    padding-bottom: 33px;\n  }\n  .card-erp__image {\n    height: 100px;\n    border-radius: 18px;\n  }\n  .card-erp__open {\n    width: 50px;\n    height: 50px;\n  }\n  .card-erp__logo {\n    display: none;\n  }\n  .card-erp__body {\n    margin-top: 0;\n  }\n  .card-erp__title {\n    font-size: 22px;\n    line-height: 28px;\n  }\n  .card-erp__desc {\n    font-size: 16px;\n    line-height: 22px;\n  }\n  .card-erp:hover .card-erp__image {\n    height: 100px;\n  }\n\n  \/* ERP popup mobile *\/\n  .erp-slider__panel {\n    width: 100%;\n    max-width: 100%;\n    border-radius: 0;\n  }\n  .erp-slide.is-active {\n    grid-template-columns: 1fr;\n    padding: 80px 20px 20px;\n    gap: 16px;\n  }\n  .erp-slide__image {\n    grid-column: 1;\n    grid-row: auto;\n  }\n  .erp-slide__heading {\n    font-size: 24px;\n    line-height: 34px;\n  }\n  .erp-slide__subheading {\n    font-size: 16px;\n    line-height: 20px;\n  }\n  .erp-slide__checklist li {\n    font-size: 15px;\n    line-height: 21px;\n  }\n  .erp-slider__nav {\n    bottom: 20px;\n    right: 20px;\n  }\n  .erp-slide__close {\n    top: 20px;\n    left: 20px;\n    width: 40px;\n    height: 40px;\n  }\n\n  \/* Industries mobile *\/\n  .tile-industry {\n    width: 140px;\n    height: 130px;\n  }\n}\n\n\/* --- Enhanced Hover Transitions --- *\/\n.card-erp,\n.card-product,\n.card-news,\n.card-video,\n.card-quote,\n.card-case {\n  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),\n              box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n.card-erp:hover,\n.card-quote:hover {\n  transform: translateY(-6px);\n  box-shadow: 0 12px 40px rgba(0,0,0,0.08);\n}\n\n.card-news:hover {\n  transform: translateY(-6px);\n  box-shadow: 0 12px 40px rgba(0,0,0,0.2);\n}\n\n\/* card-video: no lift\/scale hover \u2014 matches live assecobs.pl *\/\n\n\/* card-case: no hover state \u2014 matches live assecobs.pl *\/\n\/* tile-industry: no lift\/scale hover \u2014 matches live assecobs.pl *\/\n\n\/* --- Button Press Effect --- *\/\n.btn:active {\n  transform: scale(0.96);\n  transition: transform 0.1s;\n}\n\n.tab-big {\n  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n.tab-big:active {\n  transform: scale(0.95);\n}\n\n\/* --- Hero Entrance Animation --- *\/\n@keyframes hero-fade-in {\n  0% {\n    opacity: 0;\n    transform: translateY(30px);\n  }\n  100% {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\n@keyframes hero-bg-zoom {\n  0% {\n    transform: scale(1.08);\n  }\n  100% {\n    transform: scale(1);\n  }\n}\n\n.hero-video .hero-video__video-wrapper,\n.hero-subpage .hero-subpage__video-wrapper,\n.hero .hero__bg {\n  animation: hero-bg-zoom 1.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\n}\n\n.hero-video .hero-video__content,\n.hero-subpage .hero-subpage__content {\n  animation: hero-fade-in 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.3s both;\n}\n\n\/* --- Slider Track Smooth Scroll --- *\/\n.slider-track,\n.section-recommendations__track,\n.section-news__track,\n.section-video-slider__track {\n  scroll-behavior: smooth;\n}\n\n\/* --- Advantage Bar Scrolling --- *\/\n@keyframes advantage-scroll {\n  0% { transform: translateX(0); }\n  100% { transform: translateX(-50%); }\n}\n\n.advantage-bar--animated .advantage-bar__track {\n  display: flex;\n  gap: 48px;\n  animation: advantage-scroll 25s linear infinite;\n  width: max-content;\n}\n\n\/* --- Checklist Item Stagger --- *\/\n.checklist[data-stagger] .checklist__item {\n  opacity: 0;\n  transform: translateX(-20px);\n}\n\n.checklist[data-stagger].is-visible .checklist__item {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\/* --- Form Input Focus Animation --- *\/\n.form-input__field {\n  transition: border-color 0.3s, box-shadow 0.3s;\n}\n\n.form-input__field:focus {\n  border-color: var(--color-black);\n  box-shadow: 0 0 0 3px rgba(35,35,35,0.08);\n}\n\n.label-pill {\n  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n\/* --- Gradient Text Shimmer (optional) --- *\/\n@keyframes gradient-shift {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n.text-gradient--animated {\n  background-size: 200% 200%;\n  animation: gradient-shift 4s ease infinite;\n}\n\n\/* --- Stat Card Value Scale-In --- *\/\n@keyframes value-pop {\n  0% {\n    opacity: 0;\n    transform: scale(0.5);\n  }\n  60% {\n    transform: scale(1.05);\n  }\n  100% {\n    opacity: 1;\n    transform: scale(1);\n  }\n}\n\n.stat-card.is-visible .stat-card__value {\n  animation: value-pop 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;\n}\n\n\/* --- Logo Bar Hover --- *\/\n.logo-bar__item {\n  transition: transform 0.3s;\n}\n\n.logo-bar__item:hover {\n  transform: scale(1.05);\n}\n\n\/* --- Smooth Section Transitions --- *\/\n.preview-section {\n  transition: opacity 0.3s;\n}\n\n\/* --- Persona Panel Slide --- *\/\n.section-personas__panels {\n  transition: opacity 0.4s, transform 0.4s;\n}\n\n.section-personas__quote-panel,\n.section-personas__benefits-panel {\n  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1),\n              opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n\/* ======================================================\n   ON-TIME INSIGHTS SLIDER\n   ====================================================== *\/\n.slider-on-time {\n  overflow: hidden;\n  padding: 6rem 0;\n  position: relative;\n}\n\n.slider-on-time__inner {\n  max-width: 82.375rem;\n  margin: 0 auto;\n  padding: 0 48px;\n  overflow: visible;\n}\n\n\/* Nav arrows row *\/\n.slider-on-time__nav {\n  display: flex;\n  justify-content: flex-end;\n  gap: 1rem;\n  margin-bottom: 2rem;\n}\n\n.slider-on-time__arrow {\n  width: 2.5rem;\n  height: 2.5rem;\n  border-radius: 9999px;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background-color 0.3s, border-color 0.3s;\n  padding: 0;\n}\n\n.slider-on-time__arrow svg {\n  width: 1rem;\n  height: 1rem;\n}\n\n.slider-on-time__arrow svg path {\n  stroke: #232323;\n  transition: stroke 0.3s;\n}\n\n.slider-on-time__arrow:hover {\n  background: #232323;\n  border-color: #232323;\n}\n\n.slider-on-time__arrow:hover svg path {\n  stroke: #fdfdfd;\n}\n\n.slider-on-time__arrow:disabled {\n  display: none;\n}\n\n\/* Track *\/\n.slider-on-time__track {\n  display: flex;\n  gap: 1.5rem;\n  overflow: hidden;\n  position: relative;\n}\n\n.slider-on-time__track-inner {\n  display: flex;\n  gap: 1.5rem;\n  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n  will-change: transform;\n}\n\n\/* Card *\/\n.card-on-time {\n  flex: 0 0 min(90vw, 75rem);\n  scroll-snap-align: start;\n  background: var(--color-gray);\n  border-radius: 1.5rem;\n  overflow: hidden;\n  display: grid;\n  grid-template-columns: 0.81fr 1fr;\n  min-height: 18rem;\n}\n\n@media (max-width: 48.875rem) {\n  .card-on-time {\n    grid-template-columns: 1fr;\n    grid-template-rows: max-content 1fr;\n    flex: 0 0 min(90vw, 22rem);\n  }\n}\n\n\/* Card media (image or video) *\/\n.card-on-time__media {\n  overflow: hidden;\n  position: relative;\n  border-top-left-radius: 1.5rem;\n  border-bottom-left-radius: 1.5rem;\n}\n\n@media (max-width: 48.875rem) {\n  .card-on-time__media {\n    border-bottom-left-radius: 0;\n    border-top-right-radius: 1.5rem;\n  }\n}\n\n.card-on-time__media img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  display: block;\n  aspect-ratio: 520 \/ 291;\n}\n\n.card-on-time__media iframe {\n  width: 100%;\n  height: 100%;\n  border: none;\n  display: block;\n}\n\n\/* Card content *\/\n.card-on-time__content {\n  display: flex;\n  flex-direction: column;\n  justify-content: space-between;\n  background: var(--color-white);\n  padding: 2.25rem 3rem 2.5rem;\n  border-top-right-radius: 1.5rem;\n  border-bottom-right-radius: 1.5rem;\n}\n\n@media (max-width: 48.875rem) {\n  .card-on-time__content {\n    border-top-right-radius: 0;\n    border-bottom-left-radius: 1.5rem;\n    padding: 2rem 1.25rem 2.25rem;\n  }\n}\n\n.card-on-time__heading {\n  font-size: 2rem;\n  font-weight: 600;\n  line-height: 2.625rem;\n  color: var(--color-black);\n  margin-bottom: 0.75rem;\n}\n\n.card-on-time__heading .text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.card-on-time__desc {\n  font-size: 1rem;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-bottom: 2rem;\n  max-width: 27.5rem;\n}\n\n.card-on-time__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 0.75rem;\n  padding: 0.875rem 2rem;\n  background: var(--color-black);\n  color: var(--color-white);\n  border: none;\n  border-radius: 9999px;\n  font-size: 1rem;\n  font-weight: 500;\n  cursor: pointer;\n  text-decoration: none;\n  transition: background-color 0.3s;\n  width: fit-content;\n}\n\n.card-on-time__btn:hover {\n  background: var(--color-erp-blue);\n}\n\n.card-on-time__btn svg {\n  width: 1rem;\n  height: 1rem;\n}\n\n.card-on-time__btn svg path {\n  stroke: currentColor;\n}\n\n\/* ======================================================\n   POPULAR TOPICS \/ SLIDER POSTS V2 (from assecobs.pl)\n   ====================================================== *\/\n.slider-posts--v2 {\n  background: #090909;\n  border-radius: var(--radius-md);\n  padding: 128px 60px;\n  position: relative;\n  overflow: hidden;\n}\n\n.slider-posts__circle {\n  display: block;\n  width: 40px;\n  height: 40px;\n  background: #3FA2EB;\n  border-radius: 9999px;\n  position: absolute;\n  top: 114px;\n  right: 365px;\n}\n\n.slider-posts__heading {\n  font-size: 40px;\n  font-weight: 600;\n  color: #F2F2F2;\n  text-align: center;\n  margin: 0 0 100px;\n}\n\n.slider-posts__viewport {\n  position: relative;\n  max-width: 1240px;\n  margin: 0 auto;\n}\n\n.slider-posts__track {\n  display: flex;\n  gap: 1.5rem;\n  overflow: hidden;\n  scroll-behavior: smooth;\n}\n\n\/* --- Post Card --- *\/\n.post-card {\n  background: #141414;\n  border-radius: 24px;\n  padding: 36px;\n  display: flex;\n  flex-direction: column;\n  flex: 0 0 min(380px, 85vw);\n  text-decoration: none;\n  color: inherit;\n  transition: background-color 0.3s;\n}\n\n.post-card:hover {\n  background-color: #282828;\n}\n\n.post-card__image {\n  margin-bottom: 24px;\n}\n\n.post-card__image img {\n  width: 100%;\n  height: 194px;\n  object-fit: cover;\n  border-radius: 24px;\n  display: block;\n}\n\n.post-card__content {\n  display: flex;\n  flex-direction: column;\n  flex: 1;\n}\n\n.post-card__title {\n  font-size: 18px;\n  font-weight: 600;\n  line-height: 1.31;\n  margin: 0 0 28px;\n  color: #FDFDFD;\n}\n\n.post-card__excerpt {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.375;\n  color: #AEAEAE;\n  margin: 0 0 28px;\n  flex: 1;\n}\n\n.post-card__meta {\n  display: flex;\n  gap: 8px;\n  margin-top: auto;\n}\n\n.post-card__meta div {\n  font-size: 12px;\n  color: #DFDFDF;\n  background: #232323;\n  border-radius: 9999px;\n  padding: 6px 16px;\n}\n\n\/* Arrows \u2014 vertically centered on both sides *\/\n.slider-posts__arrow {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 30px;\n  height: 30px;\n  background: #676767;\n  border: none;\n  border-radius: 9999px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n  z-index: 2;\n}\n\n.slider-posts__arrow:hover {\n  background: #AEAEAE;\n}\n\n.slider-posts__arrow--prev {\n  left: -48px;\n}\n\n.slider-posts__arrow--next {\n  right: -48px;\n}\n\n\/* CTA *\/\n.slider-posts__cta {\n  display: flex;\n  justify-content: center;\n  margin-top: 80px;\n}\n\n.slider-posts__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  font-size: 16px;\n  color: #232323;\n  background: #FDFDFD;\n  border: 1px solid #232323;\n  border-radius: 9999px;\n  padding: 20px 24px 18px;\n  text-decoration: none;\n  transition: background 0.2s;\n}\n\n.slider-posts__btn:hover {\n  background: #3FA2EB;\n  color: #FDFDFD;\n  border-color: #3FA2EB;\n}\n\n.slider-posts__btn-arrow {\n  font-size: 14px;\n}\n\n\/* --- Query Form Popup --- *\/\n.query-form-popup {\n  position: fixed;\n  inset: 0;\n  z-index: 10000;\n  display: none;\n}\n\n.query-form-popup.is-active {\n  display: block;\n}\n\n.query-form-popup__bg {\n  position: absolute;\n  inset: 0;\n  background: rgba(0, 0, 0, 0.5);\n  animation: fadeIn 0.3s ease;\n}\n\n@keyframes fadeIn {\n  from { opacity: 0; }\n  to { opacity: 1; }\n}\n\n@keyframes slideInRight {\n  from { transform: translateX(100%); }\n  to { transform: translateX(0); }\n}\n\n.query-form-popup__panel {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  width: 68%;\n  max-width: 1307px;\n  background: var(--color-gray);\n  border-radius: 24px 0 0 24px;\n  padding: 32px 48px;\n  overflow-y: auto;\n  z-index: 1;\n  animation: slideInRight 0.6s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.query-form-popup__close {\n  width: 50px;\n  height: 50px;\n  border-radius: 16px;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n  margin-bottom: 24px;\n}\n\n.query-form-popup__close:hover {\n  background: var(--color-black);\n}\n\n.query-form-popup__close:hover svg path {\n  stroke: var(--color-white);\n}\n\n.query-form-popup__circle {\n  position: absolute;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n  z-index: 0;\n}\n\n.query-form-popup__circle--orange {\n  top: 80px;\n  right: 44%;\n  background: #FFA533;\n}\n\n.query-form-popup__circle--teal {\n  bottom: 30%;\n  right: 40%;\n  background: #00C2B6;\n}\n\n.query-form-popup__content {\n  display: flex;\n  gap: 53px;\n  position: relative;\n  z-index: 1;\n}\n\n.query-form-popup__left {\n  flex: 0 0 465px;\n  display: flex;\n  flex-direction: column;\n}\n\n.query-form-popup__right {\n  flex: 1;\n  max-width: 596px;\n}\n\n.query-form-popup__heading {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.1;\n  color: var(--color-black);\n  margin-bottom: 24px;\n}\n\n.query-form-popup__desc {\n  font-size: 12px;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.query-form-popup__desc a {\n  color: var(--color-black);\n  text-decoration: underline;\n}\n\n.query-form-popup__legal {\n  font-size: 11px;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-top: 24px;\n}\n\n\/* Form fields *\/\n.query-form__row {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 16px;\n}\n\n.query-form__field {\n  margin-bottom: 16px;\n}\n\n.query-form__field label {\n  display: block;\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-black);\n  margin-bottom: 16px;\n}\n\n.query-form__field input,\n.query-form__field textarea {\n  width: 100%;\n  height: 40px;\n  border: 1px solid #DFDFDF;\n  border-radius: 12px;\n  padding: 0 16px;\n  font-size: 16px;\n  font-family: var(--font-family);\n  background: var(--color-white);\n  color: var(--color-black);\n  outline: none;\n  transition: border-color 0.2s;\n  box-sizing: border-box;\n}\n\n.query-form__field input:focus,\n.query-form__field textarea:focus {\n  border-color: #1676C3;\n}\n\n.query-form__field textarea {\n  height: 160px;\n  resize: vertical;\n  padding: 12px 16px;\n}\n\n.query-form__consent-intro {\n  font-size: 12px;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-bottom: 12px;\n}\n\n.query-form__checkbox {\n  display: flex;\n  align-items: flex-start;\n  gap: 8px;\n  font-size: 14px;\n  color: var(--color-dark-gray);\n  margin-bottom: 8px;\n  cursor: pointer;\n}\n\n.query-form__checkbox input[type=\"checkbox\"] {\n  width: 18px;\n  height: 18px;\n  margin-top: 2px;\n  flex-shrink: 0;\n  accent-color: #1676C3;\n}\n\n.query-form__submit {\n  display: flex;\n  justify-content: flex-end;\n  margin-top: 24px;\n}\n\n\/* --- Query Form Inline (component preview) --- *\/\n.query-form-inline {\n  background: var(--color-gray);\n  border-radius: 24px;\n  padding: 32px 48px;\n  position: relative;\n  overflow: hidden;\n}\n\n.query-form-inline__circle {\n  position: absolute;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n  z-index: 0;\n}\n\n.query-form-inline__circle--orange {\n  top: 72px;\n  right: 44%;\n  background: #FFA533;\n}\n\n.query-form-inline__circle--teal {\n  bottom: 30%;\n  right: 40%;\n  background: #00C2B6;\n}\n\n.query-form-inline__content {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 53px;\n  position: relative;\n  z-index: 1;\n}\n\n.query-form-inline__left {\n  flex: 0 0 min(465px, 100%);\n  display: flex;\n  flex-direction: column;\n}\n\n.query-form-inline__right {\n  flex: 1;\n  max-width: 596px;\n}\n\n.query-form-inline__heading {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.1;\n  color: var(--color-black);\n  margin-bottom: 24px;\n}\n\n.query-form-inline__desc {\n  font-size: 12px;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.query-form-inline__desc a {\n  color: var(--color-black);\n  text-decoration: underline;\n}\n\n.query-form-inline__legal {\n  font-size: 11px;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-top: 24px;\n}\n\n.query-form-inline__legal a {\n  color: var(--color-black);\n  text-decoration: underline;\n}\n\n\/* ============================================\n   RESPONSIVE \u2014 Breakpoint overrides\n   ============================================ *\/\n\n\/* --- Small laptop (\u22641280px) --- *\/\n@media (max-width: 1280px) {\n  .section-feature-tags__inner {\n    gap: 32px;\n  }\n  .section-feature-tags__image {\n    width: 400px;\n    height: auto;\n  }\n  .section-video-slider__header {\n    width: 400px;\n  }\n  .card-case {\n    width: min(90vw, 54.6875rem);\n  }\n  .hero-video__heading {\n    font-size: 48px;\n  }\n}\n\n\/* --- Tablet (\u2264768px) --- *\/\n@media (max-width: 768px) {\n  \/* Feature Tags: stack vertically *\/\n  .section-feature-tags__inner {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .section-feature-tags__image {\n    width: 100%;\n    height: auto;\n  }\n\n  \/* Video Slider: stack header + track *\/\n  .section-video-slider__inner {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .section-video-slider__header {\n    width: 100%;\n    padding-left: var(--page-padding);\n    padding-right: var(--page-padding);\n  }\n  .section-video-slider__track {\n    padding-left: var(--page-padding);\n  }\n  .card-video {\n    width: 280px;\n    height: 498px;\n  }\n\n  \/* Testimonials Quote: smaller cards *\/\n  .section-testimonials-v2 {\n    padding: 64px 0;\n  }\n  .section-testimonials-v2__card {\n    flex: 0 0 min(90vw, 500px);\n    min-height: 300px;\n    padding: 24px 20px 20px;\n  }\n  .section-testimonials-v2__quote {\n    font-size: 18px;\n  }\n\n  \/* Case Studies: smaller cards *\/\n  .card-case {\n    width: min(90vw, 40rem);\n    padding: 2rem;\n    grid-template-columns: 1fr;\n    gap: 1.5rem;\n  }\n  .card-case__title {\n    font-size: 2rem;\n  }\n  .card-case__logo {\n    display: none;\n  }\n\n  \/* Insights Slider: card width responsive *\/\n  .card-on-time {\n    flex: 0 0 min(90vw, 22rem);\n  }\n\n  \/* Query Form: stack layout *\/\n  .query-form-inline__content {\n    flex-direction: column;\n    gap: 32px;\n  }\n  .query-form-inline__left {\n    flex: none;\n    width: 100%;\n  }\n  .query-form-inline__right {\n    width: 100%;\n  }\n  .query-form-inline {\n    padding: 24px;\n  }\n\n  \/* Hero Video *\/\n  .hero-video__heading {\n    font-size: 40px;\n  }\n  .hero-video__video {\n    min-height: 500px;\n  }\n  .hero-video__content {\n    padding: 80px 24px;\n  }\n\n  \/* Hero ERP *\/\n  .hero {\n    padding: 64px 24px;\n  }\n  .hero__slider {\n    display: none;\n  }\n  .hero__heading {\n    font-size: 40px;\n  }\n\n  \/* Content Split DRS: stack *\/\n  .section-content-split {\n    flex-direction: column;\n    gap: 32px;\n    padding: 64px var(--page-padding);\n  }\n  .section-content-split__text {\n    max-width: 100%;\n  }\n  .section-content-split__cards {\n    width: 100%;\n  }\n\n  \/* Award Banner: stack *\/\n  .award-banner__inner {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .award-banner__card {\n    flex: none;\n    width: 100%;\n  }\n\n  \/* CS Card: stack *\/\n  .cs-card {\n    grid-template-columns: 1fr;\n    gap: 24px;\n  }\n\n  \/* CS Filter: wrap *\/\n  .cs-filter__bar {\n    flex-wrap: wrap;\n    gap: 12px;\n  }\n  .cs-filter__dropdown {\n    flex: 1 1 calc(50% - 8px);\n  }\n  .cs-filter__dropdown-toggle {\n    min-width: 0;\n    width: 100%;\n  }\n\n  \/* Cooperation Slider *\/\n  .section-cooperation__slide {\n    grid-template-columns: 1fr;\n    gap: 24px;\n  }\n\n  \/* Why Choose *\/\n  .section-why-choose__grid {\n    grid-template-columns: 1fr;\n    gap: 32px;\n  }\n  .section-why-choose__heading {\n    font-size: 32px;\n  }\n\n  \/* Why Cards DRS *\/\n  .section-why-cards__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Partner Cards DRS *\/\n  .section-partner-cards__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Persona Tabs *\/\n  .tabs-big {\n    flex-wrap: wrap;\n    gap: 8px;\n  }\n  .tab-big {\n    font-size: 14px;\n    padding: 10px 16px;\n  }\n  .section-personas__slide {\n    grid-template-columns: 1fr;\n    gap: 24px;\n  }\n\n  \/* ERP Solutions Grid *\/\n  .erp-products {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Feature Cards Grid *\/\n  .feature-grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Industries *\/\n  .industries__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Product Cards *\/\n  .section-product-cards__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Homepage Products *\/\n  .section-products__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Footer *\/\n  .footer__columns {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Stat cards *\/\n  .stat-cards {\n    flex-wrap: wrap;\n  }\n  .stat-card {\n    flex: 1 1 calc(50% - 12px);\n  }\n  .stat-cards--glass .stat-card--glass {\n    flex: 1 1 calc(50% - 12px);\n  }\n\n  \/* Logo Bar *\/\n  .logo-bar__grid {\n    grid-template-columns: repeat(3, 1fr);\n  }\n}\n\n\/* --- Mobile (\u2264480px) --- *\/\n@media (max-width: 480px) {\n  \/* Feature Tags *\/\n  .section-feature-tags {\n    padding: 48px 16px;\n  }\n  .section-feature-tags__heading {\n    font-size: 24px;\n  }\n\n  \/* Video Slider *\/\n  .section-video-slider {\n    padding: 48px 0;\n  }\n  .section-video-slider__heading {\n    font-size: 24px;\n  }\n  .card-video {\n    width: 240px;\n    height: 426px;\n  }\n\n  \/* Testimonials Quote *\/\n  .section-testimonials-v2__card {\n    flex: 0 0 calc(100vw - 48px);\n    min-height: auto;\n  }\n  .section-testimonials-v2__quote {\n    font-size: 16px;\n  }\n  .section-testimonials-v2__heading {\n    font-size: 24px;\n  }\n\n  \/* Case Studies *\/\n  .card-case {\n    width: calc(100vw - 48px);\n    padding: 1.5rem;\n  }\n  .card-case__title {\n    font-size: 1.5rem;\n  }\n\n  \/* Insights Slider *\/\n  .card-on-time {\n    flex: 0 0 calc(100vw - 48px);\n  }\n\n  \/* Query Form *\/\n  .query-form-inline {\n    padding: 16px;\n  }\n  .query-form__row {\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  \/* Hero Video *\/\n  .hero-video__heading {\n    font-size: 32px;\n  }\n  .hero-video__content {\n    padding: 48px 16px;\n  }\n  .hero-video__video {\n    min-height: 400px;\n  }\n\n  \/* Hero ERP *\/\n  .hero__heading {\n    font-size: 32px;\n  }\n\n  \/* Hero Subpage *\/\n  .hero-subpage__heading {\n    font-size: 38px;\n    line-height: 44px;\n  }\n  .hero-subpage__content {\n    padding: 176px 20px 56px;\n  }\n  .hero-subpage__cta {\n    width: 100%;\n  }\n  .hero-subpage__cta a,\n  .hero-subpage__cta .btn {\n    width: 100%;\n    justify-content: center;\n  }\n  .hero-badge {\n    font-size: 12px;\n  }\n\n  \/* Content Split *\/\n  .section-content-split {\n    padding: 48px 16px;\n  }\n  .section-content-split__heading {\n    font-size: 24px;\n  }\n\n  \/* Award Banner *\/\n  .award-banner__card {\n    padding: 32px 20px;\n    border-radius: var(--radius-lg);\n  }\n  .award-banner__heading {\n    font-size: 24px;\n    margin-bottom: 24px;\n  }\n\n  \/* CS Cards *\/\n  .cs-card {\n    padding: 16px;\n    gap: 16px;\n  }\n  .cs-card__title {\n    font-size: 20px;\n  }\n\n  \/* CS Filter *\/\n  .cs-filter__bar {\n    padding: 12px 16px;\n  }\n  .cs-filter__dropdown {\n    flex: 1 1 100%;\n  }\n\n  \/* Why Choose *\/\n  .section-why-choose__heading {\n    font-size: 24px;\n  }\n  .section-why-choose__card {\n    padding: 24px 16px;\n  }\n\n  \/* Why Cards DRS *\/\n  .section-why-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Partner Cards DRS *\/\n  .section-partner-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* ERP Solutions \/ Feature Cards Grid *\/\n  .erp-products,\n  .feature-grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Industries *\/\n  .industries__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Product Cards *\/\n  .section-product-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Footer *\/\n  .footer__columns {\n    grid-template-columns: 1fr;\n  }\n  .footer__top {\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  \/* Stat Cards *\/\n  .stat-card {\n    flex: 1 1 100%;\n  }\n  .stat-cards--glass .stat-card--glass {\n    flex: 1 1 100%;\n  }\n  .stat-card__value {\n    font-size: 40px;\n  }\n\n  \/* Marquee *\/\n  .section-marquee__text {\n    font-size: 32px;\n  }\n\n  \/* Logo Bar *\/\n  .logo-bar__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Persona Tabs *\/\n  .tab-big {\n    font-size: 12px;\n    padding: 8px 12px;\n  }\n\n  \/* CTA Section *\/\n  .section-cta__heading {\n    font-size: 24px;\n  }\n\n  \/* Cooperation Slider *\/\n  .section-cooperation__heading {\n    font-size: 24px;\n  }\n\n  \/* Two-Column *\/\n  .section-description {\n    flex-direction: column;\n    gap: 24px;\n  }\n\n  \/* Navigation *\/\n  .site-header__nav {\n    display: none;\n  }\n\n  \/* Header DRS \u2014 mobile: only logo + hamburger *\/\n  .header-drs__hamburger {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    order: 3;\n  }\n  .header-drs__actions {\n    display: none;\n  }\n  .header-drs__inner {\n    overflow: visible;\n  }\n\n  \/* Mobile nav overlay \u2014 wz\u00f3r assecobs.pl *\/\n  .header-drs__nav {\n    display: none;\n    position: fixed;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100vh;\n    height: 100dvh;\n    background: var(--color-white);\n    z-index: 1100;\n    flex-direction: column;\n    align-items: stretch;\n    padding: 80px 24px 32px;\n    gap: 0;\n    overflow-y: auto;\n    white-space: normal;\n  }\n  .header-drs__nav.is-mobile-open {\n    display: flex;\n  }\n  .header-drs__nav-close {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    position: absolute;\n    top: 20px;\n    right: 20px;\n  }\n  .header-drs__nav a {\n    display: block;\n    color: var(--color-black);\n    font-size: 18px;\n    font-weight: 500;\n    padding: 20px 0;\n    border-bottom: 1px solid var(--color-light-gray);\n    border-radius: 0;\n    opacity: 1;\n    text-decoration: none;\n    text-align: left;\n  }\n  .header-drs__nav a:hover {\n    background: none;\n    color: var(--color-black);\n    opacity: 0.7;\n  }\n\n  \/* CTA button inside mobile nav *\/\n  .header-drs__nav-cta {\n    display: flex;\n    margin-top: auto;\n    padding-top: 24px;\n  }\n  .header-drs__nav-cta .btn {\n    display: flex !important;\n    width: 100%;\n    align-items: center !important;\n    justify-content: center !important;\n    gap: var(--space-sm) !important;\n    text-align: center !important;\n    background: var(--color-black);\n    color: var(--color-white);\n    border-color: var(--color-black);\n  }\n\n  \/* Mobile nav header \u2014 logo + close (wz\u00f3r assecobs.pl) *\/\n  .header-drs__nav-header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    padding: 16px 24px;\n    margin: -80px -24px 16px;\n    border-bottom: 1px solid var(--color-light-gray);\n    flex-shrink: 0;\n  }\n  .header-drs__nav-logo {\n    height: 36px;\n    width: auto;\n  }\n\n  \/* Mobile nav \u2014 list wrapper (zawiera linki) *\/\n  .header-drs__nav-list {\n    display: flex;\n    flex-direction: column;\n    padding: 0 24px;\n    flex-grow: 1;\n  }\n\n  \/* Mobile lang switcher \u2014 globus + dropdown popup \"Select Country\/Region\" *\/\n  .header-drs__nav-lang {\n    display: flex;\n    flex-direction: column;\n    padding: 0 24px 24px;\n    flex-shrink: 0;\n    position: relative;\n  }\n  .header-drs__nav-lang-toggle {\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n    background: transparent;\n    border: 0;\n    padding: 8px 0;\n    cursor: pointer;\n    width: fit-content;\n  }\n  .header-drs__nav-lang-toggle svg:last-child {\n    transition: transform 0.2s ease;\n  }\n  .header-drs__nav-lang.is-open .header-drs__nav-lang-toggle svg:last-child {\n    transform: rotate(180deg);\n  }\n  .header-drs__nav-lang-menu {\n    display: none;\n    flex-direction: column;\n    gap: 4px;\n    margin-top: 12px;\n    padding: 16px;\n    background: var(--color-white);\n    border: 1px solid var(--color-light-gray);\n    border-radius: var(--radius-md);\n    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);\n    width: 100%;\n    max-width: 280px;\n  }\n  .header-drs__nav-lang.is-open .header-drs__nav-lang-menu {\n    display: flex;\n  }\n  .header-drs__nav-lang-menu-header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 12px;\n    font-size: 16px;\n    font-weight: 600;\n    color: var(--color-black);\n    margin-bottom: 8px;\n  }\n  .header-drs__nav-lang-menu-close {\n    background: transparent;\n    border: 0;\n    padding: 4px;\n    cursor: pointer;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n  }\n  .header-drs__nav-lang-menu .header-drs__lang-btn {\n    padding: 8px 0;\n    font-size: 16px;\n    font-weight: 400;\n    color: var(--color-black);\n    text-decoration: none;\n    transition: color 0.2s ease;\n  }\n  .header-drs__nav-lang-menu .header-drs__lang-btn:hover {\n    color: var(--color-erp-blue);\n  }\n  .header-drs__nav-lang-menu .header-drs__lang-btn.is-active {\n    background: transparent;\n    color: var(--color-medium-gray);\n    pointer-events: none;\n  }\n\n  \/* Mobile nav: ukryj border-bottom na linkach wewn\u0105trz __nav-list oraz resetuj padding *\/\n  .header-drs__nav .header-drs__nav-list a {\n    padding: 20px 0;\n  }\n\n  \/* Process Timeline *\/\n  .timeline__item {\n    grid-template-columns: 1fr;\n    gap: 16px;\n  }\n\n  \/* Comparison Cards *\/\n  .section-comparison__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Cert Cards *\/\n  .section-cert-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Global page padding *\/\n  :root {\n    --page-padding: 16px;\n  }\n\n  \/* Header DRS: hide lang, shrink CTA *\/\n  .header-drs__lang {\n    display: none;\n  }\n  .header-drs__actions .btn {\n    font-size: 13px;\n    padding: 6px 12px;\n  }\n  .header-drs__inner {\n    overflow: visible;\n  }\n\n  \/* CTA Banner Card: stack vertically *\/\n  .cta-banner-card {\n    flex-direction: column;\n    align-items: flex-start;\n    padding: var(--space-xl);\n  }\n  .cta-banner-card__actions {\n    flex-direction: column;\n    width: 100%;\n    flex-shrink: 1;\n  }\n  .cta-banner-card__actions .btn {\n    width: 100%;\n    justify-content: center;\n  }\n  .cta-banner-card__content h2 {\n    font-size: 24px;\n  }\n\n  \/* Process Timeline: contain within viewport *\/\n  .process-timeline__item:nth-child(odd),\n  .process-timeline__item:nth-child(even) {\n    padding-left: 36px;\n    padding-right: 0;\n  }\n  .process-timeline__content p {\n    max-width: 100%;\n  }\n  .process-timeline__dot {\n    left: 8px;\n  }\n  .process-timeline::before {\n    left: 8px !important;\n  }\n\n  \/* Personas benefits panel: prevent overflow + ikona po lewej, tytu\u0142 po prawej (jak na Asseco HR live) *\/\n  .section-personas__benefits-header {\n    padding: var(--space-md);\n    flex-wrap: nowrap;\n    flex-direction: row;\n    justify-content: flex-start;\n    text-align: left;\n    gap: var(--space-md);\n  }\n  .section-personas__benefits-icon {\n    width: 44px;\n    height: 44px;\n    order: -1;\n  }\n  .section-personas__benefits-title {\n    font-size: 18px;\n  }\n  .section-personas__benefits-panel {\n    max-width: 100%;\n    overflow: hidden;\n  }\n  .checklist__item {\n    flex-wrap: wrap;\n  }\n  .checklist__text {\n    max-width: 100%;\n    word-break: break-word;\n  }\n\n  \/* Persona Tabs \u2014 ukryj tabs-big, poka\u017c mobile nav (prev \/ title \/ next) *\/\n  .section-personas .tabs-big {\n    display: none;\n  }\n  .section-personas__mobile-nav {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 12px;\n    margin-top: var(--space-lg);\n    padding: 4px var(--page-padding);\n  }\n  .section-personas__arrow {\n    width: 44px;\n    height: 44px;\n    border-radius: 50%;\n    background: var(--color-white);\n    border: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    cursor: pointer;\n    flex-shrink: 0;\n    transition: background 0.3s ease;\n  }\n  .section-personas__arrow:hover {\n    background: var(--color-black);\n  }\n  .section-personas__arrow:hover svg path {\n    stroke: #fff;\n  }\n  .section-personas__arrow svg path {\n    transition: stroke 0.3s ease;\n  }\n  .section-personas__mobile-title {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 14px 24px;\n    min-width: 150px;\n    border-radius: var(--radius-full);\n    background: var(--color-black);\n    color: var(--color-white);\n    font-size: 14px;\n    font-weight: 400;\n    text-align: center;\n  }\n\n  \/* Testimonials: contain overflow *\/\n  .section-testimonials-v2 {\n    overflow: hidden;\n  }\n}\n\n\/* ===========================================================================\n   Form validation popups (DRS) \u2014 used with .form-input \/ .form-checkbox-wrap\n   =========================================================================== *\/\n.form-input,\n.form-checkbox-wrap {\n  position: relative;\n}\n.form-input__error {\n  display: none;\n  position: absolute;\n  top: calc(100% + 8px);\n  right: 0;\n  width: fit-content;\n  background: #FFC7C1;\n  color: #232323;\n  padding: 9px 10px 7px;\n  border-radius: 8px;\n  font-size: 10px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: normal;\n  z-index: 10;\n  pointer-events: none;\n}\n.form-input__error::before {\n  content: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='18' height='12' fill='none'%3E%3Cpath d='M7.48 1.358a2 2 0 0 1 2.79 0l6.444 6.271c1.286 1.252.4 3.434-1.395 3.434H2.431c-1.795 0-2.681-2.182-1.395-3.434L7.48 1.358Z' fill='%23FFC7C1'\/%3E%3C\/svg%3E\");\n  position: absolute;\n  top: -8px;\n  left: 16px;\n  width: 18px;\n  height: 12px;\n}\n.form-input.is-invalid > .form-input__error,\n.form-checkbox-wrap.is-invalid > .form-input__error {\n  display: block;\n}\n.form-input.is-invalid .form-input__field {\n  border-color: #FF7669;\n  border-width: 1.2px;\n}\n.form-checkbox-wrap.is-invalid .form-checkbox__box {\n  border-color: #FF7669;\n}\n\n\/* Checkbox checked state \u2014 white check on dark fill *\/\n.form-checkbox__box:checked {\n  background: var(--color-black) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 6 5 8.5 9.5 4' stroke='%23FDFDFD' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\") center\/10px 10px no-repeat;\n  border-color: var(--color-black);\n}\n\n\/* Legal text link (used in intro + legal paragraph of contact form) *\/\n.section-contact-form__legal-link {\n  color: inherit;\n  text-decoration: underline;\n  text-underline-offset: 2px;\n  transition: color 0.2s ease;\n}\n.section-contact-form__legal-link:hover,\n.section-contact-form__legal-link:focus-visible {\n  color: var(--color-black);\n}\n.form-status{max-width:756px;margin:32px auto;padding:10px 10px 10px 40px;font-size:14px;line-height:1.44;color:#232323;background:transparent;border:2px solid transparent;border-radius:12px;position:relative;background-repeat:no-repeat;background-position:10px center;background-size:21px 21px}\n.form-status[hidden]{display:none}\n.form-status.is-success{border-color:rgb(70,180,80);background-image:url(\"data:image\/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Ccircle cx='10.5' cy='10.5' r='9' stroke='%2346B450' stroke-width='2'\/%3E%3Cpath d='M6 10.7l3.2 3.2 6-6' stroke='%2346B450' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\")}\n.form-status.is-error{border-color:rgb(220,50,50);background-image:url(\"data:image\/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Ccircle cx='10.5' cy='10.5' r='9' stroke='%23DC3232' stroke-width='2'\/%3E%3Cpath d='M10.5 6v5M10.5 14.5v.5' stroke='%23DC3232' stroke-width='2' stroke-linecap='round'\/%3E%3C\/svg%3E\")}\n.form-status.is-sending{border-color:rgb(0,160,210);padding-left:16px;background-image:none}\n.quiz__form .form-status{color:#FDFDFD!important}\n.quiz__form .form-status.is-error{border-color:#FF7669}\n.quiz__form .form-status.is-sending{border-color:#3FA2EB}\n\n    \/* ============================================================\n       BRAND GRADIENT OVERRIDE (page-local)\n       Nowa paleta: #F16B5E -> #D529E0 -> #3F5BEB\n       Nadpisuje --gradient-brand z styles.css TYLKO dla tej strony.\n       SVG #scope-gradient (poni\u017cej w <body>) jest zaktualizowany r\u0119cznie.\n       ============================================================ *\/\n    :root {\n      --gradient-brand: linear-gradient(107deg, #F16B5E 0%, #D529E0 50%, #3F5BEB 100%);\n      --brand-purple: #D529E0;\n      --brand-purple-dark: #9a14a6;\n    }\n\n    .arrow-icon { width: 16px; height: 16px; flex-shrink: 0; }\n    .container { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); }\n\n    \/* Hero \u2014 prosta wersja: pe\u0142na wysoko\u015b\u0107 ekranu, content u g\u00f3ry *\/\n    .hero-subpage { min-height: 100vh !important; min-height: 100dvh !important; padding-top: var(--space-xl) !important; padding-bottom: 30px !important; align-items: flex-start !important; }\n    .hero-subpage__content { margin-bottom: 0 !important; }\n\n    \/* ============================================================\n       Sekcje page-specific (TL;DR, Direct Answer, HA\/DR, Benefits,\n       Banner, Offer Scope, Product Lines, Answer-First, Award stub)\n       Skopiowane 1:1 z komponent\u00f3w DS (61, 62, 64, 67, 68, 63, 69, 70).\n       ============================================================ *\/\n\n    \/* TL;DR (61) *\/\n    .section-tldr { background: var(--color-gray); padding: var(--space-4xl) 0; }\n    .section-tldr__header { max-width: 800px; margin: 0 auto var(--space-2xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-tldr__header h2 { font-size: clamp(28px, 3.5vw, 38px); font-weight: 600; line-height: 1.2; margin: 0; }\n    \/* TL;DR \u2014 dwa osobne kafelki: lewy z bulletami, prawy ze zdj\u0119ciem (tej samej wysoko\u015bci) *\/\n    .tldr-grid { max-width: var(--max-width); margin: 0 auto; display: grid; grid-template-columns: 1.35fr 1fr; gap: var(--space-lg); align-items: stretch; }\n    .tldr-card { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-2xl) var(--space-3xl); }\n    .tldr-card.tldr-card--image { padding: 0; overflow: hidden; display: flex; }\n    .tldr-card--image img { width: 100%; height: 100%; object-fit: cover; display: block; }\n    .tldr-card .checklist { display: grid; grid-template-columns: 1fr; gap: var(--space-md); }\n    .tldr-card .checklist__item { align-items: flex-start; }\n    .tldr-card .checklist__text { font-size: 15px; line-height: 1.5; color: var(--color-black); }\n    .tldr-card .checklist__text strong { font-weight: 600; color: var(--color-black); }\n    .meta-updated { max-width: var(--max-width); margin: var(--space-lg) auto 0; padding: 0 var(--page-padding); font-size: 13px; color: var(--color-dark-gray); display: flex; align-items: center; justify-content: space-between; gap: var(--space-md); flex-wrap: wrap; }\n    .meta-updated__author { display: inline-flex; align-items: center; gap: 8px; }\n    .meta-updated__author svg { flex-shrink: 0; }\n    .meta-updated time { font-weight: 500; color: var(--color-black); }\n    @media (max-width: 900px) { .tldr-grid { grid-template-columns: 1fr; gap: var(--space-md); } .tldr-card { padding: var(--space-xl); } .tldr-card .checklist { gap: var(--space-sm); } .tldr-card--image { order: -1; max-height: 320px; } }\n\n    \/* Direct Answer (62) *\/\n    .section-direct-answer { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .direct-answer-card { max-width: var(--max-width); margin: 0 auto; background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-3xl); display: grid; grid-template-columns: 1fr 1.2fr; gap: var(--space-2xl); align-items: start; }\n    .direct-answer-card__label { font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-dark-gray); margin-bottom: var(--space-md); }\n    .direct-answer-card__question { font-size: clamp(24px, 3vw, 32px); font-weight: 600; line-height: 1.2; color: var(--color-black); margin: 0 0 var(--space-lg); text-wrap: balance; }\n    .direct-answer-card__body { font-size: 17px; line-height: 1.6; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); }\n    .direct-answer-card__list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-sm) var(--space-lg); }\n    .direct-answer-card__list li { display: flex; align-items: flex-start; gap: var(--space-sm); font-size: 15px; line-height: 1.45; color: var(--color-black); }\n    .direct-answer-card__list svg { flex-shrink: 0; margin-top: 3px; }\n    @media (max-width: 900px) { .direct-answer-card { grid-template-columns: 1fr; padding: var(--space-2xl); } .direct-answer-card__list { grid-template-columns: 1fr; } }\n\n    \/* HA\/DR Split (67) *\/\n    .section-ha-dr { background: var(--color-gray); padding: var(--space-4xl) 0; }\n    .section-ha-dr__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-ha-dr__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); }\n    .section-ha-dr__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .ha-dr-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto auto 1fr auto; gap: var(--space-lg); }\n    .ha-dr-tile { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-2xl); display: grid; grid-template-rows: subgrid; grid-row: span 5; row-gap: 0; }\n    .ha-dr-tile--negative { background: #FFF5F4; }\n    .ha-dr-tile__icon { width: 56px; height: 56px; border-radius: var(--radius-sm); background: rgba(0,0,0,.04); display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-lg); }\n    .ha-dr-tile--negative .ha-dr-tile__icon { background: rgba(215,14,68,.08); }\n    .ha-dr-tile__icon svg { width: 28px; height: 28px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .ha-dr-tile--negative .ha-dr-tile__icon svg { stroke: #d70e44; }\n    .ha-dr-tile__title { font-size: 24px; font-weight: 600; line-height: 1.25; margin: 0 0 var(--space-md); }\n    .ha-dr-tile__body { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); }\n    .ha-dr-tile__list { list-style: none; padding: 0; margin: 0 0 var(--space-lg); display: flex; flex-direction: column; gap: 10px; }\n    .ha-dr-tile__list li { font-size: 14px; line-height: 1.5; color: var(--color-black); padding-left: 22px; position: relative; }\n    .ha-dr-tile__list li::before { content: '\u2713'; position: absolute; left: 0; top: 0; color: #00C2B6; font-weight: 700; }\n    .ha-dr-tile--negative .ha-dr-tile__list li::before { content: '\u2715'; color: #d70e44; }\n    .ha-dr-tile__chips { display: flex; flex-wrap: wrap; gap: 6px; align-self: start; }\n    .ha-dr-tile__chip { display: inline-block; padding: 6px 12px; font-size: 13px; font-weight: 500; color: var(--color-black); background: var(--color-gray); border: 1px solid var(--color-light-gray); border-radius: var(--radius-full); }\n    @media (max-width: 768px) { .ha-dr-grid { grid-template-columns: 1fr; grid-template-rows: none; } .ha-dr-tile { display: flex; flex-direction: column; grid-row: auto; } .ha-dr-tile__chips { margin-top: auto; align-self: stretch; } }\n\n    \/* Benefits Grid (64) *\/\n    .section-benefits { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-benefits__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-benefits__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); }\n    .section-benefits__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .benefits-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-lg); }\n    .benefits-grid--2 { grid-template-columns: repeat(2, 1fr); max-width: 900px; }\n    .benefits-grid--2x2 { grid-template-columns: repeat(2, 1fr); max-width: 1000px; }\n    .benefit-card { background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-2xl); }\n    .benefit-card__icon { width: 56px; height: 56px; border-radius: var(--radius-sm); background: #ffffff; display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-lg); }\n    .benefit-card__icon svg { width: 28px; height: 28px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .benefit-card__title { font-size: 20px; font-weight: 600; line-height: 1.3; margin: 0 0 var(--space-sm); color: var(--color-black); }\n    .benefit-card__desc { font-size: 15px; line-height: 1.55; color: var(--color-dark-gray); margin: 0; }\n    @media (max-width: 1100px) { .benefits-grid { grid-template-columns: repeat(2, 1fr); } }\n    @media (max-width: 600px) { .benefits-grid, .benefits-grid--2, .benefits-grid--2x2 { grid-template-columns: 1fr; } }\n\n    \/* Banner DRS (68) \u2014 bia\u0142e t\u0142o zgodne z s\u0105siadami + zmniejszony padding *\/\n    .section-banner-drs { background: var(--color-white); padding: var(--space-xl) 0; }\n    .banner-drs { max-width: var(--max-width); margin: 0 auto; position: relative; overflow: hidden; background:\n        radial-gradient(circle at 88% -12%, rgba(241,107,94,.55), transparent 38%),\n        radial-gradient(circle at 50% 110%, rgba(213,41,224,.45), transparent 42%),\n        radial-gradient(circle at 8% 50%, rgba(63,91,235,.50), transparent 36%),\n        linear-gradient(135deg, #090909 0%, #1a1a1a 50%, #090909 100%);\n      border-radius: var(--radius-lg); padding: var(--space-3xl); display: grid; grid-template-columns: 1.2fr .8fr; gap: var(--space-2xl); align-items: center; }\n    \/* Dodatkowe akcentowe k\u00f3\u0142ka \u2014 wzmacniaj\u0105 charakter brand gradientu *\/\n    .banner-drs::before { content: ''; position: absolute; top: -25%; right: -8%; width: 380px; height: 380px; border-radius: 50%; background: radial-gradient(circle, rgba(241,107,94,.45), transparent 65%); pointer-events: none; filter: blur(20px); }\n    .banner-drs::after { content: ''; position: absolute; bottom: -30%; left: 35%; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(213,41,224,.40), transparent 65%); pointer-events: none; filter: blur(18px); }\n    .banner-drs__content { position: relative; z-index: 1; }\n    .banner-drs__label { display: inline-block; padding: 6px 14px; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-white); border: 1px solid rgba(255,255,255,.2); border-radius: var(--radius-full); margin-bottom: var(--space-lg); }\n    .banner-drs__title { font-size: clamp(28px, 3.5vw, 40px); font-weight: 600; line-height: 1.2; color: var(--color-white); margin: 0 0 var(--space-md); }\n    .banner-drs__desc { font-size: 16px; line-height: 1.6; color: var(--color-medium-gray); margin: 0 0 var(--space-xl); max-width: 580px; }\n    .banner-drs__stat { position: relative; z-index: 1; text-align: center; }\n    .banner-drs__stat-value { font-size: clamp(56px, 8vw, 96px); font-weight: 600; line-height: 1; margin: 0; background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }\n    .banner-drs__stat-label { font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-medium-gray); margin-top: var(--space-sm); }\n    @media (max-width: 900px) { .banner-drs { grid-template-columns: 1fr; padding: var(--space-2xl); } .banner-drs__stat { order: -1; } }\n\n    \/* Offer Scope (63) *\/\n    .section-offer-scope { background: var(--color-dark-black); padding: var(--space-4xl) 0; color: var(--color-white); }\n    .section-offer-scope__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-offer-scope__header h2 { font-size: clamp(32px, 4vw, 48px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); color: var(--color-white); }\n    .section-offer-scope__header p { font-size: 17px; line-height: 1.6; color: var(--color-medium-gray); margin: 0; }\n    .offer-scope-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-md); }\n    .offer-scope-card { background: rgba(255,255,255,.04); border-radius: var(--radius-lg); padding: var(--space-xl); transition: transform .3s ease, background .3s ease; }\n    .offer-scope-card:hover { transform: translateY(-4px); background: rgba(255,255,255,.07); }\n    .offer-scope-card__badge { display: inline-block; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-medium-gray); margin-bottom: var(--space-md); }\n    .offer-scope-card__icon { width: 48px; height: 48px; border-radius: var(--radius-sm); background: rgba(255,255,255,.06); display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-lg); }\n    .offer-scope-card__icon svg { width: 24px; height: 24px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .offer-scope-card__title { font-size: 18px; font-weight: 600; line-height: 1.3; color: var(--color-white); margin: 0 0 var(--space-sm); }\n    .offer-scope-card__desc { font-size: 14px; line-height: 1.55; color: var(--color-medium-gray); margin: 0; }\n    @media (max-width: 1024px) { .offer-scope-grid { grid-template-columns: 1fr; } }\n\n    \/* Product Lines (69) \u2014 used for \"Why Asseco\" *\/\n    .section-product-lines { background: var(--color-gray); padding: var(--space-4xl) 0; }\n    .section-product-lines__header { max-width: 760px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-product-lines__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); color: var(--color-black); }\n    .section-product-lines__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .product-lines-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); }\n    .product-line-card { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-xl); }\n    .product-line-card__badge { display: inline-block; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); margin-bottom: var(--space-md); }\n    .product-line-card__title { font-size: 22px; font-weight: 600; line-height: 1.25; color: var(--color-black); margin: 0 0 var(--space-md); }\n    .product-line-card__intro { font-size: 14px; line-height: 1.55; color: var(--color-dark-gray); margin: 0 0 var(--space-md); }\n    .product-line-card__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }\n    .product-line-card__list li { font-size: 14px; line-height: 1.45; color: var(--color-black); padding-left: 16px; position: relative; }\n    .product-line-card__list li::before { content: ''; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 50%; background: var(--gradient-brand); }\n    @media (max-width: 900px) { .product-lines-grid { grid-template-columns: 1fr; } }\n\n    \/* Answer-First Callout (70) *\/\n    .answer-first { max-width: 900px; margin: 0 auto var(--space-2xl); padding: var(--space-xl); background: var(--color-white); border-radius: var(--radius-lg); display: grid; grid-template-columns: auto 1fr; gap: var(--space-lg); align-items: start; }\n    .answer-first__icon { width: 48px; height: 48px; border-radius: var(--radius-sm); background: rgba(0,0,0,.04); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }\n    .answer-first__icon svg { width: 24px; height: 24px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .answer-first__body p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--color-black); }\n    .answer-first strong { font-weight: 600; }\n    .answer-first--on-dark { background: rgba(255,255,255,.04); }\n    .answer-first--on-dark .answer-first__icon { background: rgba(255,255,255,.06); }\n    .answer-first--on-dark .answer-first__body p { color: var(--color-light-gray); }\n    .answer-first--on-dark strong { color: var(--color-white); }\n    @media (max-width: 560px) { .answer-first { grid-template-columns: 1fr; padding: var(--space-lg); } }\n\n    \/* Industry Recognition (custom grid: Gartner \/ POI \/ ISO) *\/\n    .section-recognition { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-recognition__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-recognition__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); }\n    .section-recognition__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .recognition-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); }\n    .recognition-card { background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-2xl); display: flex; flex-direction: column; gap: var(--space-md); }\n    .recognition-card__logo { height: 60px; display: flex; align-items: center; }\n    .recognition-card__logo img { max-height: 60px; max-width: 180px; object-fit: contain; }\n    .recognition-card__title { font-size: 22px; font-weight: 600; line-height: 1.2; color: var(--color-black); margin: 0; }\n    .recognition-card__meta { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); }\n    .recognition-card__desc { font-size: 15px; line-height: 1.55; color: var(--color-dark-gray); margin: 0; }\n    @media (max-width: 900px) { .recognition-grid { grid-template-columns: 1fr; } }\n\n    \/* Logo bar trust strip (22) \u2014 override grid for FMCG brand row\n       - mix-blend-mode: multiply + grayscale = jednolity szary BEZ\n         zamieniania bia\u0142ego t\u0142a PNG (Henkel) w czarny prostok\u0105t\n       - container height + img max-height = wyr\u00f3wnana waga wizualna *\/\n    .logo-bar--trust { padding: var(--space-3xl) 0; }\n    .logo-bar--trust .logo-bar__grid {\n      \/* styles.css ukrywa .logo-bar__grid na <= ~900px (pokazuje slider).\n         Wymuszamy grid tak\u017ce na mobile + chowamy slider variant. *\/\n      display: grid !important;\n      grid-template-columns: repeat(5, 1fr);\n      align-items: center;\n      gap: var(--space-xl);\n    }\n    .logo-bar--trust .logo-bar__slider,\n    .logo-bar--trust .logo-bar__dots { display: none !important; }\n    @media (max-width: 700px) {\n      .logo-bar--trust .logo-bar__grid { grid-template-columns: repeat(3, 1fr); }\n    }\n    .logo-bar--trust .logo-bar__item {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      height: 60px;\n      padding: 0 var(--space-sm);\n      \/* Wy\u0142\u0105cz stagger fade-in \u2014 tworzy stacking context (opacity\/transform)\n         kt\u00f3ry \u0142amie mix-blend-mode: multiply na <img> w \u015brodku.\n         Bez tego nadpisu logo znikaj\u0105 zanim IntersectionObserver odpali. *\/\n      opacity: 1 !important;\n      transform: none !important;\n    }\n    .logo-bar--trust .logo-bar__item img {\n      max-height: 44px;\n      max-width: 100%;\n      width: auto;\n      height: auto;\n      object-fit: contain;\n      \/* grayscale + opacity = jednolicie szare logotypy.\n         UWAGA: mix-blend-mode: multiply (kt\u00f3re wyeliminowa\u0142oby bia\u0142e t\u0142o\n         PNG Henkel) NIE dzia\u0142a, bo ancestor .logo-bar \/ .logo-bar__grid\n         maj\u0105 data-anim \/ data-stagger kt\u00f3re tworz\u0105 stacking context.\n         Trade-off: Henkel PNG ma bia\u0142e t\u0142o \u2014 b\u0119dzie ja\u015bniejszym prostok\u0105tem\n         na szarym tle sekcji. Do trwa\u0142ego rozwi\u0105zania potrzebny SVG\/transparent PNG. *\/\n      filter: grayscale(1);\n      opacity: 0.55;\n      transition: opacity .2s ease;\n    }\n    .logo-bar--trust .logo-bar__item img:hover { opacity: 0.9; }\n    \/* Henkel ma square-ish aspect ratio (mniejszy wizualnie ni\u017c wide wordmarki).\n       Powi\u0119kszamy o 50% via transform \u2014 nie zaburza grid layoutu. *\/\n    .logo-bar--trust .logo-bar__item img[alt=\"Henkel\"] { transform: scale(1.5); transform-origin: center; }\n    @media (max-width: 900px) {\n      .logo-bar--trust .logo-bar__grid { grid-template-columns: repeat(5, 1fr); gap: var(--space-md); }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: RECEIPT 3-STAGE DETECTION (fiscal paragon mockup)\n       Odpowiednik 3-stopniowej wizualizacji paragonu z orygina\u0142u\n       (Receipt arrives \u2192 SKUs detected \u2192 Promotion match identified)\n       ============================================================ *\/\n    .section-receipt-flow { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-receipt-flow__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-receipt-flow__header h2 { font-size: clamp(28px, 3.5vw, 38px); font-weight: 600; line-height: 1.2; margin: 0 0 var(--space-md); }\n    .section-receipt-flow__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .receipt-stages { max-width: 1050px; margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--space-xl); align-items: stretch; }\n    .receipt-stage { display: flex; flex-direction: column; gap: var(--space-md); }\n    .receipt-stage__step { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-black); }\n    .receipt-stage__step-num { width: 24px; height: 24px; border-radius: 50%; background: var(--gradient-brand); color: var(--color-white); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 600; flex-shrink: 0; }\n    .receipt { background: #F1F0ED; border-radius: 4px; padding: var(--space-md) var(--space-lg); font-family: 'Courier New', Courier, monospace; font-size: 12.5px; line-height: 1.5; color: var(--color-black); flex: 1; position: relative; box-shadow: 0 8px 24px -12px rgba(0,0,0,.15); }\n    \/* Postrz\u0119pione kraw\u0119dzie g\u00f3ra\/d\u00f3\u0142 jak na prawdziwym paragonie *\/\n    .receipt::before, .receipt::after { content: ''; position: absolute; left: 0; right: 0; height: 8px; background-image: linear-gradient(135deg, transparent 40%, #F1F0ED 40%, #F1F0ED 60%, transparent 60%), linear-gradient(45deg, transparent 40%, #F1F0ED 40%, #F1F0ED 60%, transparent 60%); background-size: 12px 8px; background-repeat: repeat-x; background-position: 0 0; }\n    .receipt::before { top: -6px; }\n    .receipt::after { bottom: -6px; transform: scaleY(-1); }\n    .receipt__header { text-align: center; font-weight: 700; font-size: 12px; letter-spacing: .04em; }\n    .receipt__meta { text-align: center; font-size: 10.5px; color: var(--color-dark-gray); margin: 4px 0 0; letter-spacing: .04em; }\n    .receipt__divider { border-top: 1px dashed var(--color-medium-gray); margin: 8px 0; }\n    .receipt__items { list-style: none; padding: 0; margin: 0; }\n    .receipt__item { display: flex; justify-content: space-between; gap: 8px; padding: 2px 0; }\n    .receipt__item--highlight { background: linear-gradient(90deg, rgba(241,107,94,.18), rgba(213,41,224,.14)); margin: 1px -6px; padding: 2px 6px; border-radius: 3px; font-weight: 700; }\n    \/* Stage 3: silniejsze wyr\u00f3\u017cnienie konkretnego SKU, kt\u00f3ry dopasowa\u0142 si\u0119 do promocji *\/\n    .receipt__item--match { position: relative; background: var(--gradient-brand); color: var(--color-white); margin: 1px -6px; padding: 2px 6px 2px 22px; border-radius: 3px; font-weight: 700; box-shadow: 0 4px 12px -4px rgba(213,41,224,.45); }\n    .receipt__item--match::before { content: '\u25b6'; position: absolute; left: 6px; top: 50%; transform: translateY(-50%); font-size: 9px; color: var(--color-white); }\n    .receipt__total { display: flex; justify-content: space-between; font-weight: 700; padding-top: 2px; }\n    .receipt__flag-badge { margin-top: var(--space-md); padding: 8px 10px; background: var(--gradient-brand); color: var(--color-white); border-radius: 4px; font-family: 'PP Mori', sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; text-align: center; }\n    @media (max-width: 900px) {\n      .receipt-stages { grid-template-columns: 1fr; gap: var(--space-2xl); }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: DATA ACQUISITION FLOW (LIGHT theme, clean)\n       - bez r\u00f3\u017cowych lewych ramek \/ glow shadows\n       - badges neutralne (bia\u0142e na szarym rowie)\n       - output row jako kontrast: bia\u0142e t\u0142o + badge w gradient brand\n       - linia procesu na \u015brodku k\u00f3\u0142ek + brand gradient zamiast pink\n       ============================================================ *\/\n    \/* Compressed vertical rhythm \u2014 less whitespace between rows and inside cards *\/\n    \/* Balanced internal spacing \u2014 middle ground mi\u0119dzy \"rozsztrzelone\" a \"za ciasne\" *\/\n    .infographic-flow { max-width: 1050px; margin: var(--space-lg) auto 0; background: var(--color-white); border-radius: var(--radius-lg); padding: 24px; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 24px 60px -30px rgba(0,0,0,.18); }\n    .infographic-flow__row { position: relative; background: var(--color-gray); border-radius: var(--radius-md); padding: 14px 20px; }\n    .infographic-flow__row--row { display: grid; grid-template-columns: minmax(280px, 1fr) auto; gap: var(--space-md); align-items: center; }\n    .infographic-flow__row--output { background: rgba(213, 41, 224, 0.04); position: relative; overflow: hidden; padding: 14px 20px 16px; }\n    .infographic-flow__row--output::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--gradient-brand); }\n    .infographic-flow__row--output .infographic-flow__badge { background: var(--gradient-brand); color: var(--color-white); border: 0; }\n    .infographic-flow__row--output .infographic-flow__title { color: var(--color-black); }\n    .infographic-flow__badge { display: inline-flex; align-items: center; justify-content: center; padding: 4px 9px; font-size: 7px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; line-height: 1; background: var(--color-black); color: var(--color-white); border: 0; border-radius: var(--radius-full); margin-bottom: 5px; white-space: nowrap; }\n    .infographic-flow__title { font-size: 17px; font-weight: 600; color: var(--color-black); margin: 0; line-height: 1.2; }\n    .infographic-flow__row > .infographic-flow__title:not(:last-child) { margin-bottom: 12px; }\n    .infographic-flow__chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }\n    .infographic-flow__chip { display: inline-block; padding: 6px 14px; font-size: 13px; font-weight: 500; color: var(--color-black); background: var(--color-white); border: 1px solid var(--color-light-gray); border-radius: var(--radius-sm); }\n    .infographic-flow__chip--sm { padding: 4px 11px; font-size: 11px; font-weight: 600; letter-spacing: .04em; border-radius: var(--radius-full); }\n    .infographic-flow__arrow { display: flex; justify-content: center; padding: 0; margin: -2px 0; }\n    .infographic-flow__arrow svg { width: 18px; height: 18px; color: var(--color-medium-gray); }\n    .infographic-flow__steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-md); align-items: start; position: relative; padding: 4px var(--space-md) 2px; }\n    \/* Linia procesu na \u015brodku k\u00f3\u0142ek: top = paddingTop (4px) + circle radius (15px) = 19px *\/\n    .infographic-flow__steps::before { content: ''; position: absolute; top: 19px; left: 12.5%; right: 12.5%; height: 2px; background: var(--gradient-brand); opacity: .35; z-index: 0; border-radius: 999px; }\n    .infographic-flow__step { text-align: center; position: relative; z-index: 1; }\n    .infographic-flow__step-num { width: 30px; height: 30px; border-radius: 50%; background: var(--gradient-brand); box-shadow: 0 0 0 4px var(--color-gray); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 600; color: var(--color-white); margin-bottom: 6px; }\n    .infographic-flow__step-title { font-size: 14px; font-weight: 600; color: var(--color-black); margin: 0; line-height: 1.2; }\n    .infographic-flow__step-meta { font-size: 11px; color: var(--color-dark-gray); margin-top: 1px; }\n    .infographic-flow__output-desc { margin: 0; font-size: 13px; color: var(--color-dark-gray); line-height: 1.45; }\n    @media (max-width: 820px) {\n      .infographic-flow__row--row { grid-template-columns: 1fr; }\n      .infographic-flow__chips { justify-content: flex-start; }\n      .infographic-flow__steps { grid-template-columns: 1fr 1fr; gap: var(--space-md); }\n      .infographic-flow__steps::before { display: none; }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: SETTLEMENT REPORT DASHBOARD (light card)\n       KPI strip + bar chart (mechanic breakdown) + sample promo table.\n       ============================================================ *\/\n    .section-dashboard { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-dashboard__header { max-width: 800px; margin: 0 auto var(--space-2xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-dashboard__header h2 { font-size: clamp(28px, 3.5vw, 38px); font-weight: 600; line-height: 1.2; margin: 0 0 var(--space-md); }\n    .section-dashboard__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .infographic-dashboard { max-width: 1050px; margin: 0 auto; background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-2xl); box-shadow: 0 24px 60px -30px rgba(0,0,0,.25); }\n    .infographic-dashboard__header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: var(--space-xl); padding-bottom: var(--space-md); border-bottom: 1px solid var(--color-light-gray); flex-wrap: wrap; gap: var(--space-sm); }\n    .infographic-dashboard__title { font-size: 16px; font-weight: 600; color: var(--color-black); margin: 0; display: flex; align-items: center; gap: 8px; }\n    .infographic-dashboard__title::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--gradient-brand); }\n    .infographic-dashboard__period { font-size: 12px; font-weight: 600; color: var(--color-dark-gray); letter-spacing: .08em; text-transform: uppercase; }\n    .dashboard-kpis { display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-sm); margin-bottom: var(--space-2xl); }\n    .dashboard-kpi { padding: var(--space-md); background: var(--color-gray); border-radius: var(--radius-md); text-align: center; }\n    .dashboard-kpi__value { font-size: clamp(20px, 2.5vw, 28px); font-weight: 600; background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; line-height: 1; }\n    .dashboard-kpi__label { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--color-dark-gray); margin-top: 8px; line-height: 1.3; }\n    .dashboard-mid { display: grid; grid-template-columns: 1fr 1.3fr; gap: var(--space-2xl); margin-bottom: var(--space-lg); }\n    .dashboard-block__title { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); margin: 0 0 var(--space-md); }\n    .dashboard-bar { display: grid; grid-template-columns: 90px 1fr 38px; gap: var(--space-sm); align-items: center; margin-bottom: 10px; font-size: 13px; }\n    .dashboard-bar__label { color: var(--color-black); font-weight: 500; }\n    .dashboard-bar__track { height: 8px; background: var(--color-gray); border-radius: var(--radius-full); overflow: hidden; }\n    .dashboard-bar__fill { height: 100%; background: var(--gradient-brand); border-radius: var(--radius-full); }\n    .dashboard-table { width: 100%; border-collapse: collapse; font-size: 13px; }\n    .dashboard-table th, .dashboard-table td { padding: 9px 12px; text-align: left; border-bottom: 1px solid var(--color-light-gray); }\n    .dashboard-table th { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); font-weight: 600; }\n    .dashboard-table td { color: var(--color-black); }\n    .dashboard-table td.num { text-align: right; font-weight: 600; }\n    .dashboard-table tr.dashboard-table__more td { text-align: center; color: var(--color-dark-gray); font-style: italic; font-weight: 500; border-bottom: 0; }\n    .dashboard-chip { display: inline-block; padding: 2px 8px; font-size: 10px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; background: var(--color-gray); border-radius: var(--radius-full); color: var(--color-dark-gray); }\n    .dashboard-foot { display: flex; justify-content: space-between; align-items: center; padding-top: var(--space-md); border-top: 1px solid var(--color-light-gray); font-size: 13px; flex-wrap: wrap; gap: var(--space-sm); }\n    .dashboard-foot__label { font-size: 12px; font-weight: 600; letter-spacing: .04em; color: var(--color-dark-gray); }\n    .dashboard-foot__formats { display: flex; gap: 8px; }\n    .dashboard-foot__formats span { padding: 4px 10px; border: 1px solid var(--color-light-gray); border-radius: var(--radius-full); font-size: 11px; font-weight: 600; color: var(--color-black); }\n    @media (max-width: 900px) {\n      .dashboard-kpis { grid-template-columns: repeat(2, 1fr); }\n      .dashboard-mid { grid-template-columns: 1fr; }\n      .dashboard-bar { grid-template-columns: 80px 1fr 36px; font-size: 12px; }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: SHARE OF CATEGORY (compact dark table)\n       Lives inside the Bonus Layer (Offer Scope) section.\n       ============================================================ *\/\n    .share-of-category { max-width: 900px; margin: var(--space-3xl) auto 0; background: rgba(255,255,255,.03); border-radius: var(--radius-lg); padding: var(--space-2xl); }\n    .share-of-category__header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: var(--space-md); padding-bottom: var(--space-sm); border-bottom: 1px solid rgba(255,255,255,.08); flex-wrap: wrap; gap: var(--space-sm); }\n    .share-of-category__title { font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #f0a8f6; margin: 0; }\n    .share-of-category__period { font-size: 12px; font-weight: 600; color: var(--color-medium-gray); letter-spacing: .08em; text-transform: uppercase; }\n    .share-table { width: 100%; border-collapse: collapse; font-size: 14px; }\n    .share-table th, .share-table td { padding: 12px 10px; text-align: left; border-bottom: 1px solid rgba(255,255,255,.06); color: var(--color-white); }\n    .share-table th { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--color-medium-gray); font-weight: 600; }\n    .share-table td.num { text-align: right; font-variant-numeric: tabular-nums; }\n    .share-table td.share { text-align: right; font-weight: 600; background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }\n    .share-table tr:last-child td { border-bottom: 0; }\n    @media (max-width: 600px) { .share-table th, .share-table td { padding: 10px 6px; font-size: 12px; } }\n\n    \/* Section-process flush-top \u2014 bez border-radius u g\u00f3ry \u017ceby zlewa\u0142o si\u0119 z poprzedni\u0105 ciemn\u0105 sekcj\u0105 *\/\n    .section-process.section-process--flush-top { border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }\n\n    \/* Implementation timeline \u2014 gradient brand line z fade + kropki jak w How It Works *\/\n    .section-process .process-timeline::before {\n      background: linear-gradient(180deg, #F16B5E 0%, #D529E0 50%, #3F5BEB 100%) !important;\n      border-radius: 2px;\n      -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n              mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n    }\n    .section-process .process-timeline__dot {\n      width: 24px !important;\n      height: 24px !important;\n      top: 2px !important;\n      box-shadow: 0 0 0 6px var(--color-dark-black), 0 0 0 8px rgba(255,255,255,.06) !important;\n    }\n    .section-process .process-timeline__item:hover .process-timeline__dot {\n      box-shadow: 0 0 0 6px var(--color-dark-black), 0 0 0 10px rgba(255,255,255,.12) !important;\n    }\n\n    \/* Process timeline \u2014 mobile\/responsywne: wszystko wyr\u00f3wnane do lewej, kropki na lewej osi *\/\n    @media (max-width: 900px) {\n      .process-timeline { padding-left: 0 !important; padding-right: 0 !important; }\n      .process-timeline::before { left: 8px !important; right: auto !important; transform: none !important; }\n      .process-timeline__item { display: block !important; width: 100% !important; padding: 0 0 var(--space-xl) 36px !important; margin: 0 !important; text-align: left !important; }\n      .process-timeline__item:nth-child(even),\n      .process-timeline__item:nth-child(odd) { padding-left: 36px !important; padding-right: 0 !important; text-align: left !important; }\n      .process-timeline__dot { left: 0 !important; right: auto !important; top: 8px !important; transform: translateX(0) !important; }\n      .process-timeline__content { text-align: left !important; padding: 0 !important; max-width: 100% !important; }\n      .process-timeline__content h3 { text-align: left !important; }\n      .process-timeline__content p { text-align: left !important; max-width: 100% !important; }\n      .process-timeline__label { text-align: left !important; }\n    }\n\n    \/* Settlement formula \u2014 grid layout: formula card po lewej, image po prawej *\/\n    .formula-grid { max-width: var(--max-width); margin: var(--space-2xl) auto 0; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1.35fr 1fr; gap: var(--space-lg); align-items: stretch; }\n    .formula-box { background: var(--color-white); border: 1px solid var(--color-light-gray); border-radius: var(--radius-lg); padding: var(--space-2xl); font-family: 'PP Mori', monospace; margin: 0; }\n    .formula-box__title { font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); font-family: 'PP Mori', sans-serif; letter-spacing: .12em; }\n    .formula-box__list { display: flex; flex-direction: column; gap: var(--space-md); }\n    .formula-box__row { display: flex; gap: var(--space-md); align-items: baseline; padding: var(--space-sm) 0; border-bottom: 1px dashed var(--color-light-gray); }\n    .formula-box__row:last-child { border-bottom: 0; }\n    .formula-box__lhs { font-weight: 600; color: var(--color-black); min-width: 180px; }\n    .formula-box__rhs { color: var(--color-dark-gray); }\n    .formula-box.formula-box--image { padding: 0; overflow: hidden; display: flex; align-items: stretch; justify-content: center; background: var(--color-gray); }\n    .formula-box--image img { width: 100%; height: 100%; object-fit: cover; display: block; }\n    @media (max-width: 900px) {\n      .formula-grid { grid-template-columns: 1fr; gap: var(--space-md); }\n      .formula-box--image { order: -1; max-height: 320px; }\n    }\n    @media (max-width: 700px) { .formula-box__row { flex-direction: column; gap: 4px; } .formula-box__lhs { min-width: 0; } }\n\n    \/* ============================================================\n       HOW IT WORKS \u2014 vertical timeline (text|line+dot|visual)\n       ============================================================ *\/\n    .section-how-it-works { background: var(--color-dark-black); }\n    .hiw-header { background: var(--color-dark-black); padding: var(--space-4xl) 0 var(--space-2xl); }\n    .hiw-header__inner { max-width: 880px; margin: 0 auto; text-align: center; padding: 0 var(--page-padding); }\n    .hiw-header__inner h2 { font-size: clamp(32px, 4vw, 44px); font-weight: 600; line-height: 1.15; color: var(--color-white); margin: 0 0 var(--space-md); }\n    .hiw-header__inner p { font-size: 16px; line-height: 1.6; color: var(--color-light-gray); margin: 0; }\n\n    \/* Timeline wrapper \u2014 light gray bg, vertical center line *\/\n    .hiw-timeline {\n      background: var(--color-gray);\n      padding: var(--space-4xl) var(--page-padding);\n      position: relative;\n    }\n    .hiw-timeline::before {\n      content: '';\n      position: absolute;\n      left: 50%;\n      top: var(--space-xl);\n      bottom: var(--space-xl);\n      width: 2px;\n      margin-left: -1px;\n      background: linear-gradient(180deg, #F16B5E 0%, #D529E0 50%, #3F5BEB 100%);\n      z-index: 0;\n      border-radius: 2px;\n      \/* Fade in at the top and out at the bottom *\/\n      -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n              mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n    }\n\n    \/* Row = text (left) | center (line\/dot) | visual (right) *\/\n    .hiw-row {\n      max-width: var(--max-width);\n      margin: 0 auto var(--space-4xl);\n      display: grid;\n      grid-template-columns: 1fr 80px 1fr;\n      gap: var(--space-lg);\n      align-items: start;\n      position: relative;\n    }\n    .hiw-row:last-child { margin-bottom: 0; }\n\n    .hiw-row__text { padding: var(--space-xl) var(--space-lg) var(--space-xl) 0; min-width: 0; }\n    .hiw-row__visual { padding: var(--space-xl) 0 var(--space-xl) var(--space-lg); min-width: 0; }\n\n    .hiw-row__center {\n      display: flex;\n      justify-content: center;\n      align-items: flex-start;\n      padding-top: var(--space-2xl);\n      position: relative;\n      z-index: 1;\n    }\n    .hiw-row__dot {\n      width: 24px;\n      height: 24px;\n      border-radius: 50%;\n      background: var(--gradient-brand);\n      box-shadow: 0 0 0 6px var(--color-gray), 0 0 0 8px rgba(0,0,0,.06);\n      display: block;\n      position: relative;\n      z-index: 2;\n    }\n\n    \/* Text styling \u2014 left-aligned now (not centered) *\/\n    .hiw-step__eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 8px; }\n    .hiw-step__title { font-size: clamp(24px, 2.8vw, 32px); font-weight: 600; line-height: 1.2; color: var(--color-black); margin: 0 0 var(--space-md); }\n    .hiw-step__desc { font-size: 15px; line-height: 1.6; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); }\n    .hiw-step__bullets { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }\n    .hiw-step__bullets li { padding-left: 22px; position: relative; font-size: 14px; line-height: 1.5; color: var(--color-black); }\n    .hiw-step__bullets li::before { content: ''; position: absolute; left: 0; top: 7px; width: 8px; height: 8px; border-radius: 50%; background: var(--gradient-brand); }\n\n    \/* =====================================================\n       Compact infographics inside the narrow right column\n       (.hiw-row__visual ~ \u2264 540px on desktop)\n       ===================================================== *\/\n\n    \/* --- Trade Data Hub flow --- *\/\n    .hiw-row__visual .infographic-flow {\n      max-width: 100%;\n      margin: 0;\n      padding: 16px;\n      gap: 6px;\n      box-shadow: 0 12px 30px -18px rgba(0,0,0,.15);\n    }\n    .hiw-row__visual .infographic-flow__row { padding: 10px 14px; }\n    .hiw-row__visual .infographic-flow__row--row { grid-template-columns: minmax(0, 1fr); gap: 8px; }\n    .hiw-row__visual .infographic-flow__title { font-size: 14px; }\n    .hiw-row__visual .infographic-flow__row > .infographic-flow__title:not(:last-child) { margin-bottom: 8px; }\n    .hiw-row__visual .infographic-flow__badge { font-size: 6px; padding: 3px 7px; margin-bottom: 4px; }\n    .hiw-row__visual .infographic-flow__chips { justify-content: flex-start; gap: 4px; }\n    .hiw-row__visual .infographic-flow__chip { padding: 4px 10px; font-size: 11px; }\n    .hiw-row__visual .infographic-flow__chip--sm { padding: 3px 8px; font-size: 10px; }\n    .hiw-row__visual .infographic-flow__steps { grid-template-columns: repeat(4, 1fr); gap: 6px; padding: 4px 8px 2px; }\n    .hiw-row__visual .infographic-flow__steps::before { left: 12%; right: 12%; top: 15px; }\n    .hiw-row__visual .infographic-flow__step-num { width: 24px; height: 24px; font-size: 10px; margin-bottom: 4px; }\n    .hiw-row__visual .infographic-flow__step-title { font-size: 11px; }\n    .hiw-row__visual .infographic-flow__step-meta { font-size: 9px; }\n    .hiw-row__visual .infographic-flow__output-desc { font-size: 12px; }\n    .hiw-row__visual .infographic-flow__arrow svg { width: 14px; height: 14px; }\n\n    \/* --- Receipt carousel \u2014 one stage visible at a time (Step 02) --- *\/\n    .receipt-carousel {\n      max-width: 380px;          \/* square-ish card *\/\n      margin: 0 auto;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      gap: var(--space-md);\n    }\n    .receipt-carousel__viewport {\n      position: relative;\n      width: 100%;\n      min-height: 380px;          \/* keeps near-square aspect *\/\n    }\n    .receipt-carousel .receipt-stage {\n      position: absolute;\n      inset: 0;\n      opacity: 0;\n      visibility: hidden;\n      transform: translateY(8px);\n      transition: opacity .55s ease, transform .55s ease, visibility 0s linear .55s;\n      display: flex;\n      flex-direction: column;\n      gap: var(--space-md);\n    }\n    .receipt-carousel .receipt-stage.is-active {\n      opacity: 1;\n      visibility: visible;\n      transform: translateY(0);\n      transition: opacity .55s ease, transform .55s ease, visibility 0s linear 0s;\n    }\n    \/* Override receipt color \u2192 white on this carousel *\/\n    .receipt-carousel .receipt {\n      background: var(--color-white);\n      padding: 14px 18px;\n      font-size: 12px;\n      line-height: 1.5;\n      box-shadow: 0 14px 32px -18px rgba(0,0,0,.18);\n    }\n    .receipt-carousel .receipt::before,\n    .receipt-carousel .receipt::after {\n      background-image:\n        linear-gradient(135deg, transparent 40%, var(--color-white) 40%, var(--color-white) 60%, transparent 60%),\n        linear-gradient(45deg,  transparent 40%, var(--color-white) 40%, var(--color-white) 60%, transparent 60%);\n    }\n    .receipt-carousel .receipt-stage__step { font-size: 11px; }\n    .receipt-carousel .receipt-stage__step-num { width: 22px; height: 22px; font-size: 11px; }\n    .receipt-carousel .receipt__header { font-size: 11px; }\n    .receipt-carousel .receipt__meta { font-size: 10px; }\n    .receipt-carousel .receipt__total { font-size: 13px; }\n    .receipt-carousel .receipt__flag-badge { font-size: 11px; padding: 5px 12px; }\n\n    \/* Dots *\/\n    .receipt-carousel__dots {\n      display: flex;\n      gap: 10px;\n      padding-top: var(--space-sm);\n    }\n    .receipt-carousel__dot {\n      width: 32px;\n      height: 6px;\n      border-radius: 999px;\n      border: 0;\n      background: rgba(0,0,0,.15);\n      padding: 0;\n      cursor: pointer;\n      transition: background .3s ease, width .3s ease;\n    }\n    .receipt-carousel__dot:hover { background: rgba(0,0,0,.3); }\n    .receipt-carousel__dot.is-active {\n      background: var(--gradient-brand);\n      width: 48px;\n    }\n\n    @media (max-width: 700px) {\n      .receipt-carousel { max-width: 340px; }\n      .receipt-carousel__viewport { min-height: 360px; }\n    }\n\n    \/* --- Settlement dashboard --- *\/\n    .hiw-row__visual .infographic-dashboard {\n      max-width: 100%;\n      margin: 0;\n      padding: var(--space-lg);\n      box-shadow: 0 12px 30px -18px rgba(0,0,0,.2);\n    }\n    .hiw-row__visual .infographic-dashboard__title { font-size: 13px; }\n    .hiw-row__visual .infographic-dashboard__period { font-size: 10px; }\n    .hiw-row__visual .dashboard-kpis { grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: var(--space-lg); }\n    .hiw-row__visual .dashboard-kpi { padding: 10px 8px; }\n    .hiw-row__visual .dashboard-kpi__value { font-size: 18px; }\n    .hiw-row__visual .dashboard-kpi__label { font-size: 9px; margin-top: 4px; }\n    .hiw-row__visual .dashboard-mid { grid-template-columns: 1fr; gap: var(--space-lg); margin-bottom: var(--space-md); }\n    .hiw-row__visual .dashboard-block__title { font-size: 10px; margin-bottom: 8px; }\n    .hiw-row__visual .dashboard-bar { grid-template-columns: 70px 1fr 32px; font-size: 11px; gap: 6px; margin-bottom: 6px; }\n    .hiw-row__visual .dashboard-bar__track { height: 6px; }\n    .hiw-row__visual .dashboard-table { font-size: 11px; }\n    .hiw-row__visual .dashboard-table th { font-size: 9px; }\n    .hiw-row__visual .dashboard-table th, .hiw-row__visual .dashboard-table td { padding: 6px 8px; }\n    .hiw-row__visual .dashboard-chip { font-size: 9px; padding: 2px 6px; }\n    .hiw-row__visual .dashboard-foot { font-size: 11px; }\n    .hiw-row__visual .dashboard-foot__label { font-size: 10px; }\n    .hiw-row__visual .dashboard-foot__formats span { font-size: 10px; padding: 3px 8px; }\n\n    \/* Responsive: stack on tablet\/mobile *\/\n    @media (max-width: 1024px) {\n      .hiw-timeline::before { display: none; }\n      .hiw-row { grid-template-columns: 1fr; gap: var(--space-md); margin-bottom: var(--space-3xl); }\n      .hiw-row__text, .hiw-row__visual { padding: 0; }\n      .hiw-row__center { display: none; }\n      .hiw-row__visual .dashboard-kpis { grid-template-columns: repeat(5, 1fr); }\n      .hiw-row__visual .dashboard-mid { grid-template-columns: 1fr 1fr; }\n      .hiw-row__visual .receipt-stages { grid-template-columns: repeat(3, 1fr); }\n      .hiw-row__visual .infographic-flow__steps { grid-template-columns: repeat(4, 1fr); }\n    }\n    @media (max-width: 700px) {\n      .hiw-row__visual .dashboard-kpis { grid-template-columns: repeat(2, 1fr); }\n      .hiw-row__visual .dashboard-mid { grid-template-columns: 1fr; }\n      .hiw-row__visual .receipt-stages { grid-template-columns: 1fr; }\n      .hiw-row__visual .infographic-flow__steps { grid-template-columns: repeat(2, 1fr); }\n    }\n\n    \/* \"From receipt to refund\" \u2014 4-step horizontal flow (Settlement Model) *\/\n    .receipt-to-refund-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1fr 24px 1fr 24px 1fr 24px 1fr; gap: var(--space-md); align-items: stretch; }\n    .r2r-step { background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-lg) var(--space-xl); display: flex; flex-direction: column; gap: 8px; }\n    .r2r-step__num { font-size: 11px; font-weight: 700; letter-spacing: .14em; color: transparent; background: var(--gradient-brand); -webkit-background-clip: text; background-clip: text; }\n    .r2r-step__title { font-size: 16px; font-weight: 600; line-height: 1.3; margin: 0; color: var(--color-black); }\n    .r2r-step__desc { font-size: 13px; line-height: 1.5; color: var(--color-dark-gray); margin: 0; }\n    .r2r-arrow { display: flex; align-items: center; justify-content: center; }\n    .r2r-arrow svg { width: 24px; height: 24px; }\n    @media (max-width: 1100px) {\n      .receipt-to-refund-grid { grid-template-columns: 1fr 1fr; gap: var(--space-md); }\n      .r2r-arrow { display: none; }\n    }\n    @media (max-width: 600px) {\n      .receipt-to-refund-grid { grid-template-columns: 1fr; }\n    }\n\n    \/* Settlement report \u2014 output fields *\/\n    .output-fields { display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-md); }\n    .output-field { background: var(--color-gray); border-radius: var(--radius-md); padding: var(--space-lg); }\n    .output-field__name { font-size: 14px; font-weight: 700; color: var(--color-black); margin-bottom: 4px; }\n    .output-field__desc { font-size: 12px; line-height: 1.5; color: var(--color-dark-gray); }\n    @media (max-width: 1100px) { .output-fields { grid-template-columns: repeat(3, 1fr); } }\n    @media (max-width: 700px) { .output-fields { grid-template-columns: repeat(2, 1fr); } }\n    @media (max-width: 480px) { .output-fields { grid-template-columns: 1fr; } }\n\n    \/* Get Started \u2014 final CTA section *\/\n    .section-get-started { background: var(--color-dark-black); padding: var(--space-4xl) var(--page-padding); }\n    .get-started-card { max-width: var(--max-width); margin: 0 auto; background: linear-gradient(135deg, rgba(241,107,94,.08) 0%, rgba(213,41,224,.08) 50%, rgba(63,91,235,.08) 100%); border-radius: var(--radius-xl); padding: var(--space-4xl) var(--space-3xl); position: relative; overflow: hidden; }\n    .get-started-card::before { content: ''; position: absolute; top: -200px; right: -200px; width: 500px; height: 500px; background: radial-gradient(circle, rgba(241,107,94,.18), transparent 70%); pointer-events: none; }\n    .get-started-card::after { content: ''; position: absolute; bottom: -200px; left: -200px; width: 500px; height: 500px; background: radial-gradient(circle, rgba(63,91,235,.18), transparent 70%); pointer-events: none; }\n    .get-started-card__inner { max-width: 800px; margin: 0 auto; text-align: center; position: relative; z-index: 1; }\n    .get-started-card__title { font-size: clamp(32px, 4.2vw, 48px); font-weight: 600; line-height: 1.15; color: var(--color-white); margin: 0 0 var(--space-lg); }\n    .get-started-card__desc { font-size: 17px; line-height: 1.6; color: var(--color-light-gray); margin: 0 0 var(--space-2xl); }\n    .get-started-card__cta { display: flex; justify-content: center; gap: var(--space-md); flex-wrap: wrap; }\n    @media (max-width: 700px) { .get-started-card { padding: var(--space-3xl) var(--space-xl); } }\n\n\/* WP breakout overrides *\/\n.entry-content > .wp-block-group.alignfull {\n  width: 100vw !important;\n  max-width: 100vw !important;\n  margin-left: calc(50% - 50vw) !important;\n  margin-right: calc(50% - 50vw) !important;\n  margin-top: -100px !important;\n  padding: 0 !important;\n}\n.entry-content.wp-block-post-content { padding-left: 0 !important; padding-right: 0 !important; }\nheader.wp-block-template-part { position: relative !important; z-index: 100 !important; }\n.hero-subpage { padding-top: 100px !important; }\n\n\/* ==== KONIEC bazy DS \u2014 nizej overlay AP ==== *\/\n\/* ==== warstwa AP z LP SRE ==== *\/\n\n.ap-scope{--ap-text:#1B1B1B;--ap-body:#3A3A3A;--ap-muted:#676767;--ap-muted2:#8A8A90;--ap-line:#ECECF1;--ap-card:#F5F5F7;--ap-white:#FFFFFF;--ap-magenta:#C2298C;--ap-grad:linear-gradient(135deg,#F16B5E 0%,#D529E0 52%,#3F5BEB 100%);--ap-tint:linear-gradient(135deg,rgba(241,107,94,.09) 0%,rgba(213,41,224,.09) 52%,rgba(63,91,235,.10) 100%);font-family:\"PP Mori\",Arial,sans-serif;color:var(--ap-body);-webkit-font-smoothing:antialiased;line-height:1.5}\n.ap-scope *{box-sizing:border-box}\n.ap-grad-text{background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}\n.ap-cycle{width:100%;max-width:760px;margin:0 auto}\n.ap-cycle__cap{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 24px}\n.ap-cycle__cap svg{width:13px;height:13px;fill:none;stroke:var(--ap-muted2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}\n.ap-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);align-items:start}\n.ap-track::before{content:\"\";position:absolute;top:23px;left:12.5%;right:12.5%;height:1px;background:var(--ap-line);z-index:0}\n.ap-node{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}\n.ap-node__circle{position:relative;z-index:1;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ap-white);border:1px solid var(--ap-line)}\n.ap-node__circle svg{width:21px;height:21px;color:var(--ap-muted2)}\n.ap-node__label{font-size:14px;font-weight:500;letter-spacing:-.1px;color:var(--ap-muted2)}\n.ap-node.is-active .ap-node__circle{background:var(--ap-grad);border-color:transparent;box-shadow:0 10px 26px -8px rgba(213,41,224,.5),0 2px 8px -2px rgba(63,91,235,.32)}\n.ap-node.is-active .ap-node__circle svg{color:var(--ap-white)}\n.ap-node.is-active .ap-node__label{color:var(--ap-text);font-weight:600}\n.ap-cycle__mobile{display:none}\n.ap-mobile__phase{text-align:center;font-size:15px;font-weight:600;letter-spacing:-.2px;color:var(--ap-text);margin:0 0 14px}\n.ap-dots{display:flex;align-items:center;justify-content:center;gap:9px}\n.ap-dot{width:8px;height:8px;border-radius:999px;background:var(--ap-line)}\n.ap-dot.is-active{width:26px;background:var(--ap-grad)}\n.ap-band{padding:76px 0}\n.ap-band--grey{background:var(--ap-card)}\n.ap-band__inner{max-width:1120px;margin:0 auto;padding:0 40px}\n.ap-intro{max-width:760px;margin:44px auto 0;text-align:center}\n.ap-intro__h{font-size:40px;font-weight:600;letter-spacing:-.9px;line-height:1.1;margin:0 0 18px;color:var(--ap-text)}\n.ap-intro__lede{font-size:18px;color:var(--ap-muted);margin:0 auto;max-width:620px}\n.ap-block{max-width:940px;margin:0 auto}\n.ap-block__grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}\n.ap-block__grid--split{grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);gap:56px;align-items:center}\n.ap-block__grid--rev{grid-template-columns:minmax(0,.85fr) minmax(0,1.05fr)}\n.ap-block__head{display:flex;align-items:flex-start;gap:18px;margin-bottom:22px}\n.ap-tile{width:56px;height:56px;border-radius:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--ap-tint);border:1px solid rgba(194,41,140,.14)}\n.ap-tile svg{width:26px;height:26px;color:var(--ap-magenta)}\n.ap-block__headtext{padding-top:3px}\n.ap-block__label{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--ap-muted);margin:0 0 8px}\n.ap-genius{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--ap-white);background:var(--ap-grad);border-radius:999px;padding:3px 9px 2px;line-height:1}\n.ap-block__h{font-size:25px;font-weight:600;letter-spacing:-.4px;line-height:1.22;margin:0;color:var(--ap-text)}\n.ap-block__foundation{font-size:18px;line-height:1.62;color:var(--ap-body);margin:0}\n.ap-diff{position:relative;margin:26px 0 30px;border-radius:16px;overflow:hidden;background:var(--ap-tint);padding:22px 26px 24px 30px}\n.ap-diff::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ap-grad)}\n.ap-diff__eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 9px}\n.ap-diff__text{font-size:16.5px;line-height:1.6;color:var(--ap-text);margin:0}\n.ap-support{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 40px;margin-top:4px}\n.ap-support--one{grid-template-columns:1fr}\n.ap-point{display:flex;align-items:flex-start;gap:12px}\n.ap-point__check{width:19px;height:19px;flex-shrink:0;margin-top:2px;color:var(--ap-magenta)}\n.ap-point__check svg{width:100%;height:100%}\n.ap-point__text{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n.ap-point__text b{color:var(--ap-text);font-weight:600}\n.ap-mock{border:1px solid var(--ap-line);border-radius:18px;background:var(--ap-white);padding:20px 20px 22px;box-shadow:0 24px 60px -34px rgba(27,27,27,.28)}\n.ap-mock__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}\n.ap-mock__title{font-size:13px;font-weight:600;letter-spacing:-.1px;color:var(--ap-text)}\n.ap-mock__live{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--ap-muted2)}\n.ap-mock__live i{width:7px;height:7px;border-radius:50%;background:var(--ap-grad);display:inline-block}\n.ap-mrow{display:flex;align-items:center;gap:13px;padding:12px 4px;border-top:1px solid var(--ap-line)}\n.ap-mrow:first-of-type{border-top:none}\n.ap-mrow__rank{width:22px;height:22px;border-radius:7px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--ap-muted);background:var(--ap-card)}\n.ap-mrow--top .ap-mrow__rank{background:var(--ap-grad);color:var(--ap-white)}\n.ap-mrow__meta{min-width:0;flex:1}\n.ap-mrow__store{display:block;font-size:13px;font-weight:600;color:var(--ap-text);line-height:1.25}\n.ap-mrow__reason{display:block;font-size:11.5px;color:var(--ap-muted2);margin-top:2px}\n.ap-mrow__bar{width:52px;height:5px;border-radius:999px;background:var(--ap-card);overflow:hidden;flex-shrink:0}\n.ap-mrow__bar i{display:block;height:100%;background:var(--ap-grad);border-radius:999px}\n.ap-decor{position:relative;display:flex;align-items:center;justify-content:center;min-height:200px}\n.ap-decor svg{width:180px;height:180px;color:var(--ap-magenta);opacity:.16}\n.ap-decor__ring{position:absolute;width:230px;height:230px;border-radius:50%;background:var(--ap-tint);z-index:-1}\n@media(max-width:860px){.ap-block__grid--split,.ap-block__grid--rev{grid-template-columns:1fr;gap:34px}.ap-block__grid--rev .ap-block__vis{order:2}.ap-decor{order:-1;min-height:0}.ap-decor svg{width:120px;height:120px}.ap-decor__ring{width:150px;height:150px}}\n@media(max-width:720px){.ap-band{padding:56px 0}.ap-band__inner{padding:0 22px}.ap-intro__h{font-size:30px}.ap-intro__lede{font-size:16px}.ap-block__h{font-size:22px}.ap-block__foundation{font-size:16.5px}.ap-support{grid-template-columns:1fr;gap:16px}}\n@media(max-width:620px){.ap-track{display:none}.ap-cycle__mobile{display:block}}\n\/* placeholder visual slot (real product screenshots swap in later) *\/\n.ap-shot{position:relative;border:1px solid var(--ap-line);border-radius:18px;background:var(--ap-white);box-shadow:0 24px 60px -34px rgba(27,27,27,.28);overflow:hidden}\n.ap-shot__bar{display:flex;align-items:center;gap:6px;padding:13px 16px;border-bottom:1px solid var(--ap-line)}\n.ap-shot__bar i{width:9px;height:9px;border-radius:50%;background:var(--ap-line)}\n.ap-shot__body{aspect-ratio:4\/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:var(--ap-tint);text-align:center;padding:30px}\n.ap-shot__ico{width:46px;height:46px;color:var(--ap-magenta);opacity:.55}\n.ap-shot__ico svg{width:100%;height:100%}\n.ap-shot__label{font-size:13px;font-weight:600;letter-spacing:.1px;color:var(--ap-muted)}\n.ap-shot__note{font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--ap-muted2)}\n.ap-more{display:inline-flex;align-items:center;gap:7px;margin-top:24px;font-size:15px;font-weight:600;color:var(--ap-magenta);text-decoration:none;transition:gap .18s ease}\n.ap-more:hover{gap:11px}\n.ap-more svg{width:15px;height:15px}\n.ap-usecase{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--ap-muted);background:var(--ap-card);border:1px solid var(--ap-line);border-radius:999px;padding:3px 9px 2px;line-height:1}\n.ap-sp-note{background:var(--ap-card);padding:34px 0}\n.ap-sp-note__inner{max-width:820px;margin:0 auto;padding:0 40px;text-align:center;font-size:17px;line-height:1.6;color:var(--ap-muted)}\n@media(max-width:720px){.ap-sp-note__inner{padding:0 22px;font-size:15.5px}}\n\n.ap-head-c{text-align:center;max-width:760px;margin:0 auto}\n.ap-eyebrow{display:inline-block;font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 16px}\n.ap-head-c .ap-intro__h{margin:0 0 16px}\n.ap-head-c .ap-intro__lede{margin:0 auto}\n\/* Commercial *\/\n.ap-mini{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:940px;margin:30px auto 0}\n.ap-mini--one{grid-template-columns:1fr;max-width:560px}\n.ap-mini__card{border:1px solid var(--ap-line);border-radius:16px;background:var(--ap-white);padding:24px 26px}\n.ap-mini__head{display:flex;align-items:center;gap:12px;margin-bottom:12px}\n.ap-mini__ico{width:42px;height:42px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--ap-tint);border:1px solid rgba(194,41,140,.14)}\n.ap-mini__ico svg{width:21px;height:21px;color:var(--ap-magenta)}\n.ap-mini__h{font-size:17px;font-weight:600;color:var(--ap-text);margin:0}\n.ap-mini__p{font-size:15px;line-height:1.58;color:var(--ap-muted);margin:0}\n.ap-mini__p b{color:var(--ap-text);font-weight:600}\n@media(max-width:720px){.ap-mini{grid-template-columns:1fr}}\n\/* Proof *\/\n.ap-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1020px;margin:44px auto 0}\n.ap-stat{text-align:center;padding:26px 14px;border:1px solid var(--ap-line);border-radius:16px;background:var(--ap-white)}\n.ap-stat__v{font-size:30px;font-weight:600;letter-spacing:-1px;line-height:1;margin:0 0 8px;color:var(--ap-text)}\n.ap-stat__l{font-size:12.5px;line-height:1.4;color:var(--ap-muted);margin:0}\n.ap-proofnote{max-width:720px;margin:26px auto 0;text-align:center;font-size:14px;line-height:1.55;color:var(--ap-muted)}\n.ap-trust{max-width:840px;margin:40px auto 0;text-align:center}\n.ap-trust__cap{font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 16px}\n.ap-trust__names{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;font-size:17px;font-weight:600;color:var(--ap-text)}\n@media(max-width:860px){.ap-stats{grid-template-columns:repeat(2,1fr)}}\n@media(max-width:440px){.ap-stats{grid-template-columns:1fr}}\n\/* Ecosystem *\/\n\/* IT-facing *\/\n\/* CTA dark *\/\n.ap-cta{position:relative;overflow:hidden;background:#111114;padding:90px 0}\n.ap-cta__glow{position:absolute;inset:0;background:radial-gradient(58% 120% at 50% 0%,rgba(213,41,224,.30),transparent 62%);z-index:0}\n.ap-cta__inner{max-width:820px;margin:0 auto;padding:0 40px;text-align:center;position:relative;z-index:1}\n.ap-cta__h{font-size:40px;font-weight:600;letter-spacing:-1px;line-height:1.12;color:#fff;margin:0 0 18px}\n.ap-cta__p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.72);margin:0 auto 32px;max-width:620px}\n.ap-cta__btn{display:inline-flex;align-items:center;gap:9px;padding:15px 30px;border-radius:999px;font-size:16px;font-weight:600;color:#111114;background:#fff;text-decoration:none;transition:gap .18s ease}\n.ap-cta__btn:hover{gap:13px}\n.ap-cta__btn svg{width:17px;height:17px}\n@media(max-width:720px){.ap-cta{padding:66px 0}.ap-cta__h{font-size:30px}.ap-cta__inner{padding:0 22px}}\n\n\/* ==== sekcje 2-4 nowej LP RIR (CHG-475) ==== *\/\n\n.rir-h2{font-size:clamp(28px,3.1vw,40px);line-height:1.18;font-weight:650;margin:0 0 18px;color:var(--ap-text)}\n.rir-lede{font-size:18px;line-height:1.6;color:var(--ap-muted);max-width:44rem;margin:0 0 28px}\n\n@media(max-width:900px){}\n\n\/* ============================================================\n   AP DESIGN LAYER \u2014 nadrz\u0119dne nadpisania nad Asseco DS.\n   NIE edytuj DS styles.css. Ten plik wgrywany INLINE PO DS CSS.\n   Namespace: .ap-*  (additywne, obok klas DS).\n   ============================================================ *\/\n\n\/* --- AP Hero (na bazie DS .hero-subpage \/ 45-hero-video-drs) --- *\/\n\/* content-driven wysoko\u015b\u0107 zamiast wymuszonego min-height:100vh *\/\n.ap-hero{min-height:0 !important;height:auto !important}\n.ap-hero .hero-subpage__content{padding-top:clamp(48px,5.5vw,84px);padding-bottom:var(--space-xl)}\n@media(max-width:768px){.ap-hero .hero-subpage__content{padding-top:72px;padding-bottom:var(--space-lg)}}\n\n\/* rotator realnych klip\u00f3w wideo w tle hero (homepage-style crossfade) *\/\n.ap-hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}\n.ap-hero-vid.is-active{opacity:1}\n\n\/* ==== W-147 \/ CHG-517: warstwa wlasna LP planogram compliance ==== *\/\n.rir-quote{margin:34px 0 0;padding:36px 40px 32px;border-radius:18px;background:#fff;border:1px solid var(--ap-line);box-shadow:0 16px 44px rgba(20,20,30,.08);position:relative;overflow:hidden}\n.rir-quote::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#ff5a5f 0%,#d946ef 48%,#7B61FF 100%)}\n.rir-quote blockquote{margin:0 0 22px;padding:0;border:none;font-size:21px;line-height:1.5;color:var(--ap-text);font-weight:500;letter-spacing:-.1px}\n.rir-quote figcaption{font-size:15px;color:var(--ap-muted);line-height:1.5}\n.rir-quote figcaption strong{color:var(--ap-text)}\n.rir-faq{margin-top:26px;border-top:1px solid var(--ap-line)}\n.rir-faq details{border-bottom:1px solid var(--ap-line)}\n.rir-faq summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-size:17.5px;font-weight:650;color:var(--ap-text);position:relative}\n.rir-faq summary::-webkit-details-marker{display:none}\n.rir-faq summary::after{content:\"+\";position:absolute;right:6px;top:19px;font-size:24px;font-weight:400;color:#7B61FF;line-height:1}\n.rir-faq details[open] summary::after{content:\"\u2212\"}\n.rir-faq p{margin:0 0 22px;font-size:16px;line-height:1.62;color:var(--ap-muted);max-width:46rem}\n\/* trzy kadry na jednym zdjeciu polki, sekcja What gets measured *\/\n.rir-zoom{position:absolute;inset:0;overflow:hidden;background:#0d0f12}\n.rir-zoom__in{position:absolute;inset:0;transform:scale(var(--z));transform-origin:var(--ox) var(--oy)}\n.rir-zoom__in img{width:100%;height:100%;object-fit:cover;display:block}\n.rir-box{position:absolute;border:2px solid var(--c,#2fbf6a);border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.35)}\n.rir-box--red{--c:#ff3b30;background:rgba(255,59,48,.18)}\n.rir-box--green{--c:#2fbf6a}\n.rir-box--amber{--c:#ffb020;background:rgba(255,176,32,.14)}\n.rir-tag{position:absolute;transform:translate(-50%,-100%);background:#ff3b30;color:#fff;font-size:9px;font-weight:700;\n  letter-spacing:.4px;text-transform:uppercase;padding:3px 7px;border-radius:3px;white-space:nowrap;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}\n.rir-tag--green{background:#2fbf6a}\n.rir-read{position:absolute;left:50%;transform:translateX(-50%);bottom:11px;display:flex;gap:7px;align-items:center;\n  background:rgba(13,15,18,.9);color:#fff;padding:8px 13px;border-radius:8px;font-size:12px;line-height:1.25;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;white-space:nowrap}\n.rir-read b{font-size:15px;font-weight:700}\n.rir-read s{opacity:.6}\n.rir-read i{font-style:normal;color:#ff6b62;font-weight:700}\n.rir-legend{position:absolute;left:11px;bottom:11px;display:flex;gap:12px;font-size:10px;color:#fff;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}\n.rir-legend span{display:flex;align-items:center;gap:5px}\n.rir-legend i{width:9px;height:9px;border-radius:2px;display:block;border:2px solid #2fbf6a}\n.rir-legend i.r{border-color:#ff3b30;background:rgba(255,59,48,.25)}\n.rir-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}\n.rir-kpi__i{border-top:2px solid var(--ap-line);padding-top:18px}\n.rir-kpi__i h3{font-size:17px;font-weight:650;margin:0 0 9px;color:var(--ap-text)}\n.rir-kpi__i p{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n.rir-steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:34px}\n.rir-step3__media{position:relative;aspect-ratio:3\/4;border-radius:14px;overflow:hidden;background:#eceff1;border:1px solid var(--ap-line)}\n.rir-step3__media img{width:100%;height:100%;object-fit:cover;display:block}\n.rir-step3__n{display:block;font-size:11px;font-weight:700;letter-spacing:1.4px;color:#7B61FF;margin:0 0 10px}\n.rir-step3 h3{font-size:17px;font-weight:650;margin:0 0 8px;color:var(--ap-text);line-height:1.3}\n.rir-step3 p{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n.rir-step3{display:flex;flex-direction:column}\n.rir-step3__txt{flex:1 1 auto;margin-top:16px;background:#fff;border:1px solid var(--ap-line);border-radius:14px;padding:24px 26px 26px;box-shadow:0 14px 40px rgba(20,20,30,.07)}\n@media(max-width:900px){.rir-steps3{grid-template-columns:1fr;gap:26px}}\n\n\/* makieta ekranu aplikacji, standard smartow (wzorzec: KC Reports Mobile) *\/\n.rir-ui{position:absolute;inset:0;overflow:hidden;container-type:inline-size;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;\n  background:#eef1f4;display:flex;flex-direction:column;\n  box-shadow:inset 0 0 0 1.6cqw #0e1116, inset 0 0 0 2.4cqw #2a2f38}\n.rir-ui *{box-sizing:border-box}\n.rir-ui__status{flex:0 0 auto;height:6.4cqw;display:flex;align-items:center;justify-content:space-between;\n  padding:0 5.6cqw;font-size:3.1cqw;font-weight:600;color:#0b0b0c;background:#fff;margin:2.4cqw 2.4cqw 0;border-radius:3.4cqw 3.4cqw 0 0}\n.rir-ui__status svg{height:2.9cqw;width:auto;display:block}\n.rir-ui__stat-r{display:flex;align-items:center;gap:1.5cqw}\n.rir-ui__bar{flex:0 0 auto;background:linear-gradient(180deg,#1b3a63 0%,#16294a 100%);color:#fff;\n  padding:4.2cqw 5.6cqw 6.4cqw;margin:0 2.4cqw;display:flex;align-items:flex-start;justify-content:space-between;gap:3cqw}\n.rir-ui__ttl{min-width:0}\n.rir-ui__ttl b{display:block;font-size:4.7cqw;font-weight:650;line-height:1.2;letter-spacing:.1px}\n.rir-ui__ttl span{display:block;margin-top:1.1cqw;font-size:3.2cqw;font-weight:400;opacity:.86;line-height:1.25}\n.rir-ui__bar svg{width:4.3cqw;height:4.3cqw;flex:0 0 auto;opacity:.92}\n.rir-ui__icons{display:flex;gap:3.2cqw;align-items:center;padding-top:.8cqw}\n.rir-ui__sheet{flex:1 1 auto;min-height:0;margin:-3.4cqw 4.4cqw 0;background:#fff;border-radius:3cqw;\n  box-shadow:0 .6cqw 3.4cqw rgba(10,20,40,.14);overflow:hidden;position:relative;z-index:3}\n.rir-ui__filters{display:flex;gap:1.8cqw;padding:3.4cqw 3.6cqw 2.6cqw}\n.rir-ui__pill{font-size:2.9cqw;font-weight:600;padding:1.5cqw 3.4cqw;border-radius:99px;background:#eef1f4;color:#4a5260}\n.rir-ui__pill--on{background:#16294a;color:#fff}\n.rir-ui__card{padding:3.2cqw 3.6cqw;display:flex;align-items:center;justify-content:space-between;gap:3cqw;border-top:1px solid #edf0f3}\n.rir-ui__todo{font-size:2.8cqw;color:#7a8493;letter-spacing:.3px;text-transform:uppercase;font-weight:600}\n.rir-ui__name{font-size:4cqw;font-weight:700;color:#16294a;margin:1cqw 0 1.1cqw;line-height:1.18}\n.rir-ui__due{font-size:2.9cqw;color:#6b7482}\n.rir-ui__due b{color:#111;font-weight:700}\n.rir-ui__btn{margin-top:2.6cqw;display:inline-block;background:#1668c8;color:#fff;font-size:3.1cqw;font-weight:650;padding:2cqw 5cqw;border-radius:99px}\n.rir-ui__thumb{flex:0 0 auto}\n.rir-ui__thumb svg{width:13cqw;height:13cqw;display:block}\n.rir-ui__hbar{position:absolute;bottom:2.6cqw;left:50%;transform:translateX(-50%);width:26cqw;height:1cqw;border-radius:99px;background:#0d0d0d;opacity:.55;z-index:8}\n.rir-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);gap:44px;align-items:start}.rir-split .rir-fig{margin:0;display:flex;flex-direction:column;align-items:flex-end}.rir-split .rir-fig img{max-height:880px;width:auto;max-width:100%}.rir-split .rir-fig figcaption{text-align:left;width:100%}@media(max-width:1000px){.rir-split .rir-fig{align-items:stretch}.rir-split .rir-fig img{max-height:none;width:100%}}.rir-split .rir-lede{max-width:none}@media(max-width:1000px){.rir-split{grid-template-columns:1fr;gap:32px}}.rir-fig{margin:38px 0 0;padding:0}.rir-fig img{display:block;width:100%;height:auto;border-radius:16px}.rir-fig figcaption{margin-top:14px;font-size:14px;line-height:1.5;color:var(--ap-muted)}\n@media(max-width:900px){.rir-kpi{grid-template-columns:1fr}}\n\/* makieta raportowania per poziom analityczny, wzorzec: LP TDH sekcja One View (.ap-bi) *\/\n.rir-bi{--r:#d70e44;--o:#ef5909;--g:#1aa15a;--b:#1668c8;--mut:#6b7280;--ln:#e6e8ee;\n  margin-top:34px;border:1px solid var(--ln);border-radius:16px;overflow:hidden;background:#fff;\n  box-shadow:0 14px 40px rgba(20,20,30,.07);position:relative}\n.rir-bi *{box-sizing:border-box}\n.rir-bi__top{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fafafb;border-bottom:1px solid var(--ln)}\n.rir-bi__dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}\n.rir-bi__title{font-weight:600;font-size:13px;color:#232323;margin-right:auto}\n.rir-bi input{position:absolute;opacity:0;pointer-events:none}\n.rir-bi__tabs{display:flex;gap:4px;padding:10px 12px 0;overflow-x:auto;background:#fafafb}\n.rir-bi__tabs label{flex:0 0 auto;font-size:13px;font-weight:600;color:var(--mut);padding:9px 14px;border-radius:9px 9px 0 0;cursor:pointer;white-space:nowrap;border:1px solid transparent;border-bottom:none}\n.rir-bi__tabs label:hover{color:#232323}\n.rir-bi__panel{display:none;padding:18px}\n.rir-bi__cap{font-size:13px;color:var(--mut);margin:0 0 14px;line-height:1.5}\n.rir-bi__kpis{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}\n.rir-bi__kpi{flex:1 1 0;min-width:118px;border:1px solid var(--ln);border-radius:11px;padding:12px 14px;background:#fff}\n.rir-bi__kpi b{display:block;font-size:24px;font-weight:700;line-height:1.15;color:#232323;font-variant-numeric:tabular-nums}\n.rir-bi__kpi span{font-size:11.5px;color:var(--mut)}\n.rir-bi__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}\n.rir-bi__grid--wide{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,0.55fr);gap:16px;align-items:stretch}\n.rir-bi__card{border:1px solid var(--ln);border-radius:11px;padding:14px}\n.rir-bi__h{font-size:12px;font-weight:700;color:#232323;margin:0 0 12px}\n.rir-bi__row{display:flex;align-items:center;gap:10px;margin:9px 0;font-size:12px}\n.rir-bi__row .lab{flex:0 0 96px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.rir-bi__track{flex:1;height:9px;border-radius:6px;background:var(--ln);overflow:hidden}\n.rir-bi__fill{display:block;height:100%;border-radius:6px}\n.rir-bi__val{flex:0 0 auto;font-weight:700;color:#232323;font-variant-numeric:tabular-nums}\n.rir-bi table{width:100%;border-collapse:collapse;font-size:12px;margin:0}\n.rir-bi th{text-align:left;color:var(--mut);font-weight:600;padding:7px 8px;border-bottom:1px solid var(--ln);font-size:11px}\n.rir-bi td{padding:7px 8px;border-bottom:1px solid #f3f3f5;color:#232323}\n.rir-bi tbody tr:last-child td{border-bottom:none}\n.rir-bi td.n,.rir-bi th.n{text-align:right;font-variant-numeric:tabular-nums}\n.rir-bi__pill{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px}\n.rir-bi__lg{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:11px;color:var(--mut)}\n.rir-bi__lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}\n.rir-bi__fix{display:flex;gap:10px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #f3f3f5}\n.rir-bi__fix:last-child{border-bottom:none}\n.rir-bi__fix b{display:block;color:#232323;font-size:12.5px;font-weight:700;margin-bottom:2px}\n.rir-bi__fix span span{display:block;color:var(--mut);font-size:12px;line-height:1.45}\n.rir-bi__ix{flex:0 0 22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}\n.rir-bi__ph{display:grid;grid-template-columns:300px minmax(0,33rem);gap:34px;align-items:center}\n.rir-bi__phbox{position:relative;width:300px;max-width:100%;aspect-ratio:9\/16;border-radius:26px;overflow:hidden}\n.rir-bi__notes p{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--mut)}\n.rir-bi__notes p:last-child{margin-bottom:0}\n.rir-bi__notes b{color:#232323;font-weight:700}\n@media(max-width:820px){.rir-bi__grid,.rir-bi__grid--wide{grid-template-columns:1fr}.rir-bi__ph{grid-template-columns:1fr;gap:24px;justify-items:center}.rir-bi__notes{max-width:34rem}}\n@media(max-width:560px){.rir-bi__top{flex-wrap:wrap;row-gap:8px}.rir-bi__title{flex:1 1 auto}}\n\/* ekran KPI wlasciciela sklepu, na tej samej makiecie urzadzenia co krok 01 *\/\n.rir-ui__kwrap{padding:3.8cqw 4.4cqw 1.4cqw}\n.rir-ui__krow{padding:2.9cqw 0;border-bottom:1px solid #edf0f3}\n.rir-ui__krow:last-child{border-bottom:none}\n.rir-ui__kmain{display:flex;align-items:baseline;justify-content:space-between;gap:2cqw}\n.rir-ui__klab{font-size:3.4cqw;font-weight:650;color:#16294a}\n.rir-ui__kval{font-size:5.6cqw;font-weight:750;line-height:1;font-variant-numeric:tabular-nums}\n.rir-ui__meter{height:1.5cqw;border-radius:99px;background:#eef1f4;overflow:hidden;margin-top:1.7cqw}\n.rir-ui__meter i{display:block;height:100%;border-radius:99px}\n.rir-ui__ksub{display:block;margin-top:1.5cqw;font-size:2.8cqw;color:#7a8493;line-height:1.3}\n.rir-ui__todoline{display:flex;align-items:center;justify-content:space-between;gap:2cqw;padding:3.2cqw 4.4cqw 3cqw;font-size:3cqw;color:#4a5260;border-top:1px solid #edf0f3}\n.rir-ui__slist{padding:0 4.4cqw 4cqw}\n.rir-ui__srow{display:flex;align-items:center;justify-content:space-between;gap:2cqw;padding:2.7cqw 0;border-bottom:1px solid #f2f4f7;font-size:3cqw;color:#16294a;font-weight:600}\n.rir-ui__srow:last-child{border-bottom:none}\n.rir-ui__spill{font-style:normal;font-size:2.7cqw;font-weight:700;padding:.9cqw 2.6cqw;border-radius:99px;flex:0 0 auto}\n.rir-ui__todoline .rir-ui__btn{margin-top:0}\n\/* kroki 02 i 03: ekran wyniku rozpoznania, wzorzec z aplikacji wdrozeniowej *\/\n.rir-ui__nav{flex:0 0 auto;background:linear-gradient(180deg,#1b3a63 0%,#16294a 100%);color:#fff;margin:0 2.4cqw;padding:2.8cqw 4.2cqw;display:flex;align-items:center;gap:3cqw}\n.rir-ui__back{font-size:5.6cqw;line-height:.8;opacity:.9;flex:0 0 auto}\n.rir-ui__navt{flex:1;min-width:0;font-size:3.5cqw;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.rir-ui__nav svg{width:4.4cqw;height:4.4cqw;flex:0 0 auto;opacity:.92}\n.rir-ui__grad{flex:0 0 auto;height:1cqw;margin:0 2.4cqw;background:linear-gradient(90deg,#1aa15a 0%,#1676c3 34%,#a046e1 67%,#ef5909 100%)}\n.rir-ui__segs{flex:0 0 auto;display:flex;background:#fff;margin:0 2.4cqw}\n.rir-ui__seg{flex:1;text-align:center;padding:2.6cqw 0 2.2cqw;font-size:3cqw;font-weight:650;color:#8a929d;letter-spacing:.2px;text-transform:uppercase}\n.rir-ui__seg--on{color:#16294a;box-shadow:inset 0 -.7cqw 0 #16294a}\n.rir-ui__srch{flex:0 0 auto;display:flex;align-items:center;gap:3cqw;background:#fff;margin:0 2.4cqw;padding:2cqw 4.2cqw 2.4cqw;border-top:1px solid #eef1f4}\n.rir-ui__inp{flex:1;min-width:0;height:6.8cqw;border-radius:1.8cqw;background:#f1f3f6;display:flex;align-items:center;gap:2cqw;padding:0 3cqw;font-size:3cqw;color:#9aa3ae}\n.rir-ui__inp svg{width:4.2cqw;height:4.2cqw;flex:0 0 auto;color:#9aa3ae}\n.rir-ui__srch > svg{width:4.8cqw;height:4.8cqw;color:#4a5260;flex:0 0 auto}\n.rir-ui__shot{flex:1 1 auto;min-height:0;background:#000;margin:0 2.4cqw 2.4cqw;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}\n.rir-ui__frame{position:relative;height:100%;aspect-ratio:676\/1034;max-width:100%}\n.rir-ui__frame img{width:100%;height:100%;object-fit:cover;display:block}\n.rir-ui__bx{position:absolute;border:.4cqw solid #35d07f;border-radius:.4cqw}\n.rir-ui__bx--r{border-color:#ff3b30;background:rgba(255,59,48,.18)}\n.rir-ui__bx--hi{border-width:.8cqw;box-shadow:0 0 0 .4cqw rgba(255,59,48,.35)}\n.rir-ui__hbar--l{background:#fff;opacity:.75}\n.rir-ui__dim{position:absolute;inset:0;background:rgba(6,8,12,.66)}\n.rir-ui__pop{position:absolute;left:3.4cqw;right:3.4cqw;top:41%;background:#fff;border-radius:3cqw;overflow:hidden;box-shadow:0 1.6cqw 5cqw rgba(0,0,0,.5)}\n.rir-ui__pop-h{display:flex;align-items:center;gap:2.6cqw;padding:2.4cqw 3.4cqw 1.9cqw}\n.rir-ui__pop-th{flex:0 0 6.4cqw}\n.rir-ui__pop-th svg{width:6.4cqw;height:8.8cqw;display:block}\n.rir-ui__pop-n{flex:1;min-width:0;font-size:2.9cqw;font-weight:700;color:#16294a;line-height:1.3;text-transform:uppercase}\n.rir-ui__pop-i{flex:0 0 auto}\n.rir-ui__pop-i svg{width:5.2cqw;height:5.2cqw;display:block}\n.rir-ui__pop-w{background:#fdf3e0;color:#8a5a00;font-size:2.9cqw;font-weight:700;text-align:center;padding:2.2cqw}\n.rir-ui__pop-r{display:flex;gap:2.4cqw;padding:2.2cqw 3.4cqw}\n.rir-ui__pop-r svg{width:4.4cqw;height:4.4cqw;flex:0 0 auto}\n.rir-ui__pop-b{font-size:2.85cqw;font-weight:700;color:#16294a;line-height:1.4}\n.rir-ui__pop-s{display:block;font-weight:400;color:#7a8493;margin-top:.7cqw}\n.rir-ui__pop-s b{color:#16294a;font-weight:650}\n.rir-ui__pop-f{display:flex;align-items:center;gap:2.4cqw;padding:2.2cqw 3.4cqw;border-top:1px solid #eef1f4;font-size:2.9cqw;font-weight:700;color:#16294a}\n.rir-ui__pop-f svg{width:4.6cqw;height:4.6cqw;flex:0 0 auto}\n\/* sekcja 6: ta sama chrome co raportowanie w sekcji 5, ale jeden panel bez zakladek *\/\n.rir-bi--solo .rir-bi__panel{display:block}\n.rir-bi__ev{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}\n.rir-bi__evi{margin:0}\n.rir-bi__evb{position:relative;aspect-ratio:3\/4;border-radius:7px;overflow:hidden;background:#0d0f12}\n.rir-bi__evi .rir-zoom__in img{width:100%;height:100%;object-fit:cover;display:block}\n.rir-bi__evi figcaption{font-size:10.5px;color:var(--mut);margin-top:5px;text-align:center;line-height:1.35}\n.rir-bi__evn{margin:12px 0 0;font-size:11.5px;color:var(--mut);line-height:1.5}\n\/* sekcja 7: trzy etapy jako wykres, idiom deckowy (wzorzec: slajd two-stage, deck Paulig) *\/\n@media(max-width:900px){}\n\/* sekcja referencyjna: grafika z case study po lewej, naglowek i akapit po prawej *\/\n.rir-cs{display:grid;grid-template-columns:minmax(0,0.82fr) minmax(0,1.18fr);gap:44px;align-items:start}\n.rir-cs__fig{margin:0}\n.rir-cs__fig img{display:block;width:100%;height:auto;max-width:400px}\n@media(max-width:1000px){.rir-cs{grid-template-columns:1fr;gap:26px}.rir-cs__fig img{max-width:340px;margin:0 auto}}\n\/* sekcja 9: sciezka wspolpracy, jedna linia z trzema wezlami zamiast trzech kart ze slupkami *\/\n.rir-path{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:42px}\n.rir-path__rail{position:absolute;left:calc(16.6667% - 11.33px);right:calc(16.6667% - 11.33px);top:20px;height:4px;border-radius:4px;\n  background:linear-gradient(90deg,#e2dbff 0%,#b8a6ff 34%,#8f6cff 62%,#d946ef 86%,#ff5a5f 100%)}\n.rir-path__i{position:relative;min-width:0}\n.rir-path__node{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;\n  width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid #c9bcff;color:#7B61FF;\n  font-size:13.5px;font-weight:700;letter-spacing:.5px;margin:0 auto 20px}\n.rir-path__i:nth-of-type(2) .rir-path__node{border-color:#9b7dff}\n.rir-path__i:nth-of-type(3) .rir-path__node{border:none;color:#fff;\n  background:linear-gradient(140deg,#ff5a5f 0%,#d946ef 50%,#7B61FF 100%);\n  box-shadow:0 8px 20px rgba(123,97,255,.34)}\n.rir-path__stage{font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#7B61FF;margin:0 0 10px}\n.rir-path__i h3{font-size:18px;font-weight:650;margin:0 0 9px;color:var(--ap-text);line-height:1.28}\n.rir-path__i > p:last-child{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n@media(max-width:900px){.rir-path{grid-template-columns:1fr;gap:28px}.rir-path__rail{display:none}\n  .rir-path__node{margin:0 0 14px}}\n\n\/* ==== OTIF (CHG-524) \u2014 dodatki ponad przemianowany scoped z \/planogram-compliance\/ ==== *\/\n\n\/* przelaczniki zakladek: dwa niezalezne zestawy radio *\/\n#otm1:checked ~ .rir-bi__tabs label[for=otm1],\n#otm2:checked ~ .rir-bi__tabs label[for=otm2],\n#otm3:checked ~ .rir-bi__tabs label[for=otm3],\n#otr1:checked ~ .rir-bi__tabs label[for=otr1],\n#otr2:checked ~ .rir-bi__tabs label[for=otr2],\n#otr3:checked ~ .rir-bi__tabs label[for=otr3],\n#otr4:checked ~ .rir-bi__tabs label[for=otr4]\n{background:#fff;color:#232323;border-color:#e6e8ee;border-bottom-color:#fff;margin-bottom:-1px}\n#otm1:checked ~ .rir-bi__body #otp-m1,\n#otm2:checked ~ .rir-bi__body #otp-m2,\n#otm3:checked ~ .rir-bi__body #otp-m3,\n#otr1:checked ~ .rir-bi__body #otp-r1,\n#otr2:checked ~ .rir-bi__body #otp-r2,\n#otr3:checked ~ .rir-bi__body #otp-r3,\n#otr4:checked ~ .rir-bi__body #otp-r4\n{display:block}\n.rir-bi__body{border-top:1px solid #e6e8ee;background:#fff}\n\n\/* siatka trzykolumnowa w panelu *\/\n.rir-bi__grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;align-items:stretch}\n@media(max-width:880px){.rir-bi__grid3{grid-template-columns:1fr}}\n\n\/* tabele w panelach *\/\n.rir-tbl{width:100%;border-collapse:collapse;font-size:12.5px;margin:0}\n.rir-tbl th{text-align:left;color:#6b7280;font-weight:600;padding:7px 8px 7px 0;border-bottom:1px solid #e6e8ee;font-size:11px;text-transform:uppercase;letter-spacing:.04em}\n.rir-tbl td{padding:8px 8px 8px 0;border-bottom:1px solid #f3f3f5;color:#232323;vertical-align:middle}\n.rir-tbl tr:last-child td{border-bottom:none}\n.rir-tbl td.n,.rir-tbl th.n{text-align:right;font-variant-numeric:tabular-nums}\n.rir-bar{display:block;height:8px;border-radius:5px;background:#eef1f5;overflow:hidden;min-width:64px}\n.rir-bar i{display:block;height:100%;border-radius:5px}\n\n\/* listy w panelu \"where it breaks\" *\/\n.rir-li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f3f3f5;font-size:12.5px;color:#232323}\n.rir-li:last-child{border-bottom:none}\n.rir-li span{color:#6b7280;font-variant-numeric:tabular-nums;flex:0 0 auto}\n\n\/* pierscien i slupki *\/\n.rir-donut{display:flex;align-items:center;gap:18px;flex-wrap:wrap}\n.rir-ring{width:116px;height:116px;border-radius:50%;flex:0 0 auto;\n  background:conic-gradient(#1aa15a 0 83.4%,#e8ebef 83.4% 100%);display:grid;place-items:center}\n.rir-ring span{width:84px;height:84px;background:#fff;border-radius:50%;display:grid;place-items:center;\n  font-size:21px;font-weight:700;color:#16294a;font-variant-numeric:tabular-nums}\n.rir-donut__t{font-size:12.5px;line-height:1.7;color:#232323}\n.rir-donut__t b{font-variant-numeric:tabular-nums}\n.rir-donut__t i{font-style:normal;color:#6b7280}\n.rir-cols{display:flex;align-items:flex-end;gap:8px;height:150px;padding-top:6px}\n.rir-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}\n.rir-col b{width:100%;background:#2f7d92;display:block}\n.rir-col b.t{background:#cfe0e6;border-radius:4px 4px 0 0}\n.rir-col em{font-style:normal;font-size:10.5px;color:#6b7280}\n.rir-col u{text-decoration:none;font-size:10.5px;font-weight:700;color:#16294a;font-variant-numeric:tabular-nums}\n\n\/* telefon w panelu roli *\/\n.rir-phwrap{display:grid;place-items:center}\n.rir-ph{width:252px;border:1px solid #e6e8ee;border-radius:22px;background:#fff;padding:14px;\n  box-shadow:0 10px 30px rgba(20,20,30,.09)}\n.rir-ph__h{display:flex;justify-content:space-between;font-size:11px;color:#6b7280;margin-bottom:12px}\n.rir-ph__r{border:1px solid #e6e8ee;border-radius:9px;padding:10px 12px;margin-bottom:8px}\n.rir-ph__r b{display:block;font-size:12.5px;color:#232323}\n.rir-ph__r i{font-style:normal;display:block;font-size:11.5px;color:#6b7280;margin-top:2px;line-height:1.4}\n\n\n\/* callout i nota *\/\n.rir-callout{margin-top:26px;border-left:3px solid #2f7d92;background:#f6f9fa;border-radius:0 10px 10px 0;\n  padding:16px 20px;font-size:15.5px;line-height:1.55;color:#232323;max-width:46rem}\n\n\n\n\/* --- rewizja CHG-525: panel bez zakladek + lista warunkow umowy --- *\/\n.rir-bi__panel--open{display:block !important}\n.rir-set{display:flex !important;flex-direction:column !important}\n.rir-set__r{display:flex !important;justify-content:space-between !important;align-items:baseline;gap:18px !important;padding:10px 0 !important;margin:0 !important;border-bottom:1px solid #f3f3f5;font-size:12.5px;line-height:1.45}\n.rir-set__r:last-child{border-bottom:none}\n.rir-set__r span{color:#6b7280;flex:0 1 auto;white-space:nowrap}\n.rir-set__r b{color:#232323;text-align:right;font-weight:650;flex:1 1 auto;min-width:0}\n\n.rir-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}\n\n\/* --- rewizja CHG-525\/7: os czasu w wariancie czterowezlowym --- *\/\n.rir-path--4{grid-template-columns:repeat(4,1fr)}\n.rir-path--4 .rir-path__rail{left:calc(12.5% - 11.33px);right:calc(12.5% - 11.33px)}\n.rir-path--4 .rir-path__i:nth-of-type(3) .rir-path__node{background:#fff;border:3px solid #9b7dff;color:#7B61FF;box-shadow:none}\n.rir-path--4 .rir-path__i:nth-of-type(4) .rir-path__node{border:none;color:#fff;background:linear-gradient(140deg,#ff5a5f 0%,#d946ef 50%,#7B61FF 100%);box-shadow:0 8px 20px rgba(123,97,255,.34)}\n@media(max-width:900px){.rir-path--4{grid-template-columns:1fr}}\n\n\/* --- rewizja CHG-525\/8: linki w tresci sekcji, fiolet marki jak na \/planogram-compliance\/ --- *\/\n.rir-lede a,.rir-path__i p a,.rir-callout a,.rir-bi__cap a{color:#7B61FF !important;text-decoration:none}\n.rir-lede a:hover,.rir-path__i p a:hover,.rir-callout a:hover,.rir-bi__cap a:hover{text-decoration:underline;text-underline-offset:3px}\n\n\/* ==== Komponent 6 \u2014 etykieta grafiki AI (art. 50 AI Act), na ciemnym hero ==== *\/\n.rir26 .ap-ai-credit{display:block;font-size:12px;line-height:1.45;color:rgba(255,255,255,0.78);margin-top:14px;letter-spacing:.01em}\n.rir26 .rir-fig figcaption .ap-ai-credit{color:#475569;margin-top:6px;font-style:normal}\n\/* ==== brak sieci: przyciemnienie kadru plus ikona (CHG-565) ==== *\/\n.rir-zoom--off .rir-zoom__in{filter:grayscale(.35)}\n.rir-zoom--off::after{content:\"\";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,11,.55) 0%,rgba(8,9,11,.78) 100%);z-index:1}\n.rir-off{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:2;display:block;line-height:0}\n.rir-off svg{display:block}\n\n\/* ==== Komponent 6 v2: ikona UE \"AI GENERATED\" na grafice (kodeks KE, art. 50 AI Act), CHG-660 ==== *\/\n.ap-ai-mark{position:relative;display:block}\n.ap-ai-mark--fit{width:fit-content;max-width:100%;margin:0 auto}\n.ap-ai-badge{position:absolute;top:12px;right:12px;width:124px;height:25px;background:url(\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/eu-ai-generated-black.svg\") no-repeat center\/contain;pointer-events:none;z-index:3}\n.ap-ai-badge--light{background-image:url(\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/eu-ai-generated-white.svg\")}\n.ap-ai-badge--hero{top:24px;right:24px;width:140px;height:28px}\n@media (max-width:640px){.ap-ai-badge,.ap-ai-badge--hero{width:100px;height:20px;top:8px;right:8px}}\n\/* ==== CHG-691: sekcja problemu z wycinkiem filmu (16:9), szersza kolumna ==== *\/\n.rir26 #sec-3 .rir-split.rir-prob{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) !important}\n.rir26 .rir-fig--vid video{display:block;width:100%;height:auto;aspect-ratio:16\/9;border-radius:16px;background:#141414;object-fit:cover;box-shadow:0 18px 50px rgba(20,20,30,.14)}\n.rir26 .rir-fig--vid figcaption{margin-top:8px;font-size:12.5px;line-height:1.4;color:var(--ap-muted)}\n@media(max-width:1000px){.rir26 #sec-3 .rir-split.rir-prob{grid-template-columns:1fr !important}}\n\/* ==== CHG-690: wycinki filmu w kartach rol (autoodtwarzanie bez dzwieku, gdy karta jest widoczna) ==== *\/\n.rir26 .rir-role__vid video{display:block;width:100%;height:auto;aspect-ratio:16\/9;border-radius:16px;background:#141414;object-fit:cover;box-shadow:0 14px 40px rgba(20,20,30,.12)}\n.rir26 .rir-role__vid figcaption{margin-top:8px;font-size:12.5px;line-height:1.4;color:var(--ap-muted)}\n\/* ==== CHG-689: osobna ciemna sekcja z nagraniami (#sec-6v) ==== *\/\n.rir26 .ap-band.rir-dark{background:#0f1015 !important}\n.rir26 .rir-dark .ap-eyebrow{color:rgba(255,255,255,.62)}\n.rir26 .rir-dark .rir-h2{color:#fff}\n.rir26 .rir-dark .rir-vids{margin-top:0}\n.rir26 .rir-dark .rir-vids__lede{color:rgba(255,255,255,.72);margin-top:4px}\n.rir26 .rir-dark .rir-vids__i figcaption{color:#fff}\n.rir26 .rir-dark .rir-vids__i video{background:#000;box-shadow:0 18px 50px rgba(0,0,0,.45)}\n.rir26 .rir-dark .rir-vids__btn{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}\n.rir26 .rir-dark .rir-vids__btn:hover{background:#fff;color:#0f1015}\n.rir26 .rir-dark .rir-vids__btn[disabled]{background:transparent;color:#fff;opacity:.3}\n.rir26 .rir-dark .rir-vids__track{scrollbar-color:rgba(255,255,255,.35) transparent}\n\/* ==== CHG-688: blok Perfect Store z ekranem audytu (z LP Perfect Store) ==== *\/\n.rir26 .rir-ps--shot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:56px;align-items:center}\n.rir26 .rir-ps__pts{list-style:none;margin:18px 0 22px;padding:0;display:grid;gap:12px}\n.rir26 .rir-ps__pts li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.55;color:var(--ap-muted)}\n.rir26 .rir-ps__pts li::before{content:\"\";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:linear-gradient(140deg,#ff5a5f 0%,#d946ef 50%,#7B61FF 100%)}\n.rir26 .rir-ps__pts li b{color:#232323;font-weight:600}\n.rir26 .rir-ps__more{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:#7B61FF !important;text-decoration:none}\n.rir26 .rir-ps__more svg{width:16px;height:16px}\n.rir26 .rir-ps__more:hover{text-decoration:underline;text-underline-offset:3px}\n.rir26 .rir-ps__fig{margin:0}\n.rir26 .rir-ps__tab{display:block;background:#141414;border-radius:28px;padding:12px;box-shadow:0 24px 60px rgba(20,20,30,.22);line-height:0}\n.rir26 .rir-ps__tab img{display:block;width:100%;height:auto;border-radius:16px}\n@media(max-width:900px){.rir26 .rir-ps--shot{grid-template-columns:1fr;gap:32px}.rir26 .rir-ps__fig{max-width:360px;margin:0 auto}}\n\/* ==== CHG-687 zapis 4: karta agencji bez zakladek, kadr dzielony przed | po ==== *\/\n.rir26 .rir-ways{list-style:none;margin:0 0 14px;padding:0;counter-reset:w;display:grid;gap:12px}\n.rir26 .rir-ways li{counter-increment:w;position:relative;padding-left:40px;font-size:16px;line-height:1.55;color:var(--ap-muted)}\n.rir26 .rir-ways li::before{content:counter(w);position:absolute;left:0;top:1px;width:26px;height:26px;border-radius:50%;background:#f1ecff;color:#5b34c4;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}\n.rir26 .rir-ways li b{color:#232323;font-weight:600}\n.rir26 .rir-split2 .rir-split2__before{position:absolute;inset:0;width:100%;height:100%;clip-path:inset(0 50% 0 0)}\n.rir26 .rir-split2__line{position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1.5px;background:#fff;box-shadow:0 0 8px rgba(0,0,0,.35);z-index:2}\n.rir26 .rir-role__img .rir-role__tag.rir-role__tag--after{left:auto;right:10px;background:#1aa15a}\n\/* ==== CHG-687: kadry AI w kartach rol ==== *\/\n.rir26 .rir-role__fig{margin:0}\n.rir26 .rir-role__img{display:block;position:relative;border-radius:16px;overflow:hidden;line-height:0;box-shadow:0 14px 40px rgba(20,20,30,.10)}\n.rir26 .rir-role__img img{display:block;width:100%;height:auto}\n.rir26 .rir-role__fig figcaption{line-height:1}\n.rir26 .rir-role__tag{position:absolute;left:10px;top:10px;z-index:2;background:rgba(20,20,25,.78);color:#fff;font-size:12px;line-height:1;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;border-radius:999px}\n@media(max-width:900px){.rir26 .rir-role__fig{max-width:420px}}\n\/* ==== CHG-686: makiety OneView w kartach rol KAM i trade marketing (klocek rir-bi) ==== *\/\n.rir26 .rir-ov .rir-bi__panel{padding:16px}\n.rir26 .rir-ov__chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}\n.rir26 .rir-ov__chips span{font-size:11.5px;font-weight:600;color:#3b3b45;background:#f1f1f5;border-radius:999px;padding:4px 10px}\n.rir26 .rir-ov .rir-bi__kpi{min-width:0;padding:10px 12px}\n.rir26 .rir-ov .rir-bi__kpi b{font-size:20px}\n.rir26 .rir-ov .rir-bi__row .lab{flex:0 0 64px}\n.rir26 .rir-tbl{width:100%;border-collapse:collapse;font-size:12.5px;margin:0}\n.rir26 .rir-tbl th{text-align:left;color:#6b7280;font-weight:600;padding:7px 8px 7px 0;border-bottom:1px solid #e6e8ee;font-size:11px;text-transform:uppercase;letter-spacing:.04em}\n.rir26 .rir-tbl td{padding:8px 8px 8px 0;border-bottom:1px solid #f3f3f5;color:#232323;vertical-align:middle}\n.rir26 .rir-tbl tr:last-child td{border-bottom:none}\n.rir26 .rir-tbl td.n,.rir26 .rir-tbl th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}\n.rir26 .rir-tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}\n.rir26 .rir-tbl td:first-child{white-space:nowrap}\n@media(max-width:600px){.rir26 .rir-ov .rir-bi__kpis{gap:8px}.rir26 .rir-ov .rir-bi__kpi{flex:1 1 30%}.rir26 .rir-ov .rir-bi__kpi b{font-size:18px}}\n\/* ==== CHG-685: karuzela nagran z aplikacji pod makieta kamery ==== *\/\n.rir26 .rir-vids{margin-top:72px;max-width:1000px}\n.rir26 .rir-vids__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}\n.rir26 .rir-vids__nav{display:flex;gap:10px;margin-bottom:22px}\n.rir26 .rir-vids__btn{width:44px;height:44px;border-radius:50%;border:1px solid #d9d9e0;background:#fff;color:#232323;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s}\n.rir26 .rir-vids__btn:hover{background:#232323;color:#fff}\n.rir26 .rir-vids__btn[disabled]{opacity:.35;cursor:default;background:#fff;color:#232323}\n.rir26 .rir-vids__lede{font-size:16px;line-height:1.55;color:var(--ap-muted);max-width:46rem;margin:-8px 0 26px}\n.rir26 .rir-vids__track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;padding-bottom:12px;-webkit-overflow-scrolling:touch}\n.rir26 .rir-vids__i{margin:0;flex:0 0 calc((100% - 72px) \/ 3.4);scroll-snap-align:start}\n.rir26 .rir-vids__i video{display:block;width:100%;height:auto;aspect-ratio:2\/3;background:#141414;border-radius:18px;object-fit:cover}\n.rir26 .rir-vids__i figcaption{margin-top:10px;font-size:15px;font-weight:600;color:#232323}\n@media(max-width:700px){.rir26 .rir-vids{margin-top:56px}.rir26 .rir-vids__nav{display:none}.rir26 .rir-vids__track{gap:14px}.rir26 .rir-vids__i{flex:0 0 72%}}\n\/* ==== CHG-684: widok kamery = prawdziwy zrzut z aplikacji (tablet) + wskazniki ==== *\/\n.rir26 .rir-cam{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:64px;align-items:center;margin-top:56px;max-width:1040px}\n.rir26 .rir-cam__phone{margin:0;background:#141414;border-radius:30px;padding:14px;box-shadow:0 24px 60px rgba(20,20,30,.22)}\n.rir26 .rir-cam__screen{display:block;position:relative;border-radius:16px;overflow:hidden;line-height:0}\n.rir26 .rir-cam__screen img{display:block;width:100%;height:auto}\n.rir26 .rir-cam__eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ap-muted);margin:0 0 8px}\n.rir26 .rir-cam__h{font-size:24px;line-height:1.25;margin:0 0 22px}\n.rir26 .rir-cam__list ol{list-style:none;margin:0;padding:0;display:grid;gap:12px}\n.rir26 .rir-cam__list li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:center;background:#fff;border:1px solid #ececf1;border-radius:14px;padding:12px 16px;box-shadow:0 6px 18px rgba(20,20,30,.05)}\n.rir26 .rir-cam__ring{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#232323;background:radial-gradient(closest-side,#fff 76%,transparent 78% 100%),conic-gradient(var(--c) calc(var(--v) * 1%),#e6e6ec 0)}\n.rir26 .rir-cam__list li strong{display:block;font-size:16px;line-height:1.35;color:#232323}\n.rir26 .rir-cam__list li span{display:block;font-size:15px;line-height:1.5;color:var(--ap-muted);margin-top:2px}\n.rir26 .rir-cam__note{font-size:14.5px;line-height:1.55;color:var(--ap-muted);margin:18px 0 0}\n@media(max-width:900px){.rir26 .rir-cam{grid-template-columns:1fr;gap:36px;margin-top:40px}.rir26 .rir-cam__phone{width:100%;max-width:440px;margin:0 auto;padding:10px;border-radius:24px}.rir26 .rir-cam__screen{border-radius:14px}}\n\/* ==== CHG-683: sekcja problemu z kadrem AI i zaznaczeniem (wzor: Perfect Store #sec-3) ==== *\/\n.rir26 #sec-3 .rir-prob{grid-template-columns:minmax(0,1fr) minmax(0,440px) !important;gap:64px !important;align-items:center}\n.rir26 #sec-3 .rir-prob .rir-fig{margin:0}\n@media(max-width:1000px){.rir26 #sec-3 .rir-prob{grid-template-columns:1fr !important;gap:28px !important}}\n.rir26 .rir-ann{display:block;position:relative;line-height:0;width:100%}\n.rir26 .rir-ann__crop{display:block;width:100%;overflow:hidden;border-radius:16px}\n.rir26 #sec-3 .rir-ann__crop img{display:block;width:100% !important;max-width:none !important;max-height:none !important;height:auto;border-radius:0}\n.rir26 .rir-ann__box{position:absolute;border:2px solid var(--c,#d70e44);border-radius:8px;box-shadow:0 0 0 2px rgba(255,255,255,.7);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--c,#d70e44) 38%,transparent) 0 5px,color-mix(in srgb,var(--c,#d70e44) 10%,transparent) 5px 11px)}\n.rir26 .rir-ann__tag{position:absolute;display:inline-flex;align-items:center;background:var(--c,#d70e44);color:#fff;font-size:12px;line-height:1;font-weight:600;padding:5px 9px;border-radius:999px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.28);z-index:2}\n@media(max-width:600px){.rir26 .rir-ann__tag{font-size:10px;padding:3px 7px}}\n\/* ==== Komponent 6 v2.1 (CHG-675): ikona mniejsza w prawym dolnym rogu, podpis tylko dla czytnikow ekranu ==== *\/\n.ap-ai-badge{top:auto;bottom:10px;right:10px;width:92px;height:19px}\n.ap-ai-badge--hero{top:20px;bottom:auto;right:20px;width:108px;height:22px}\n@media (max-width:640px){.ap-ai-badge{top:auto;bottom:8px;right:8px;width:72px;height:15px}.ap-ai-badge--hero{top:12px;bottom:auto;right:12px;width:84px;height:17px}}\n.ap-ai-credit{position:absolute !important;width:1px !important;height:1px !important;margin:-1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important}\n\n\n\/* ===== CHG-665: warstwa lokalna LP RIR (klocki spoza rodziny) ===== *\/\n.rir26 .rir-kpis{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}\n.rir26 .rir-kpis li{font-size:15px;line-height:1.5;color:var(--ap-muted);padding-left:14px;position:relative}\n.rir26 .rir-kpis li::before{content:\"\";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,#ff5a5f,#7B61FF)}\n.rir26 .rir-kpis li b{color:var(--ap-text);font-weight:600}\n.rir26 .rir-ps{margin:34px 0 0;padding:28px 32px;border-radius:18px;background:#fff;border:1px solid var(--ap-line);max-width:60rem}\n.rir26 .rir-ps h3{margin:0 0 8px;font-size:20px}\n.rir26 .rir-ps p{margin:0;color:var(--ap-muted);font-size:16px;line-height:1.6}\n.rir26 .rir-places{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}\n.rir26 .rir-place{background:#fff;border:1px solid var(--ap-line);border-radius:16px;padding:22px 22px 20px}\n.rir26 .rir-place h3{font-size:17px;margin:0 0 6px;line-height:1.3}\n.rir26 .rir-place p{font-size:14.5px;line-height:1.5;color:var(--ap-muted);margin:0}\n.rir26 .rir-place__ic{display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:16px;background:linear-gradient(135deg,rgba(255,90,95,.09),rgba(123,97,255,.12));margin:0 0 16px}\n.rir26 .rir-place__ic svg{width:46px;height:46px;display:block}\n.rir26 .rir-place--ho .rir-place__ic{background:rgba(255,255,255,.08)}\n.rir26 .rir-place--ho{background:#111114;border-color:#111114}\n.rir26 .rir-place--ho h3{color:#fff}.rir26 .rir-place--ho p{color:rgba(255,255,255,.72)}\n@media(max-width:1000px){.rir26 .rir-places{grid-template-columns:repeat(2,1fr)}}\n@media(max-width:560px){.rir26 .rir-places{grid-template-columns:1fr}}\n.rir26 .rir-roles{display:grid;grid-template-columns:230px 1fr;gap:44px;margin-top:34px;align-items:start}\n.rir26 .rir-rail{position:sticky;top:110px;display:flex;flex-direction:column;gap:4px;border-left:2px solid var(--ap-line);padding-left:0}\n.rir26 .rir-rail a{display:block;padding:9px 16px;margin-left:-2px;border-left:2px solid transparent;font-size:14.5px;font-weight:500;color:var(--ap-muted);text-decoration:none;line-height:1.35}\n.rir26 .rir-rail a.is-on{color:var(--ap-text);font-weight:600;border-left-color:#7B61FF}\n.rir26 .rir-role{background:#fff;border:1px solid var(--ap-line);border-radius:20px;padding:34px 36px;margin-bottom:22px;scroll-margin-top:110px}\n.rir26 .rir-role__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:start}\n.rir26 .rir-role__pill{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#7B61FF;background:rgba(123,97,255,.09);padding:5px 11px;border-radius:999px;margin-bottom:12px}\n.rir26 .rir-role h3{font-size:22px;line-height:1.3;margin:0 0 12px}\n.rir26 .rir-role p{font-size:16px;line-height:1.62;color:var(--ap-muted);margin:0 0 12px}\n.rir26 .rir-role__hand{color:var(--ap-text)!important;font-weight:500}\n.rir26 .rir-role__foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--ap-line);font-size:13.5px;line-height:1.55;color:var(--ap-muted)}\n.rir26 .rir-role__foot b{color:var(--ap-text)}\n.rir26 .rir-shot{border-radius:16px;background:repeating-linear-gradient(135deg,#f3f3f6 0 12px,#ececf1 12px 24px);min-height:300px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;font-size:13px;color:#6b6b70;border:1px dashed #cfcfd6}\n.rir26 .rir-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 16px}\n.rir26 .rir-tabs button{font:inherit;font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;border:1px solid var(--ap-line);background:#fff;color:var(--ap-muted);cursor:pointer}\n.rir26 .rir-tabs button[aria-selected=\"true\"]{background:#111114;color:#fff;border-color:#111114}\n.rir26 .rir-tabpanel[hidden]{display:none}\n@media(max-width:980px){.rir26 .rir-roles{grid-template-columns:1fr;gap:18px}.rir26 .rir-rail{position:sticky;top:64px;z-index:5;flex-direction:row;overflow-x:auto;border-left:0;border-bottom:2px solid var(--ap-line);background:var(--color-gray,#f5f5f7)}.rir26 .rir-rail a{white-space:nowrap;margin:0 0 -2px;border-left:0;border-bottom:2px solid transparent}.rir26 .rir-rail a.is-on{border-bottom-color:#7B61FF}.rir26 .rir-role__grid{grid-template-columns:1fr}.rir26 .rir-role{padding:26px 22px}}\n.rir26 .rir-film{margin-top:34px;background:#111114;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr}\n.rir26 .rir-film__body{padding:40px 42px}\n.rir26 .rir-film__badge{font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,.55);margin:0 0 12px}\n.rir26 .rir-film h3{color:#fff;font-size:24px;line-height:1.28;margin:0 0 10px}\n.rir26 .rir-film__meta{font-size:13.5px;color:rgba(255,255,255,.6);margin:0 0 22px}\n.rir26 .rir-film blockquote{margin:0 0 14px;padding:0 0 0 20px;border-left:3px solid #7B61FF;font-size:17px;line-height:1.6;color:rgba(255,255,255,.92)}\n.rir26 .rir-film cite{display:block;font-style:normal;font-size:13.5px;color:rgba(255,255,255,.62);margin:0 0 22px}\n.rir26 .rir-film__link{color:#fff;font-weight:600;font-size:15px;text-decoration:underline}\n.rir26 .rir-film__media{position:relative;min-height:320px;background:#000}\n.rir26 .rir-film__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}\n@media(max-width:900px){.rir26 .rir-film{grid-template-columns:1fr}.rir26 .rir-film__media{min-height:240px;order:-1}.rir26 .rir-film__body{padding:28px 24px}}\n.rir26 .rir-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}\n.rir26 .rir-card{display:grid;grid-template-columns:160px 1fr;background:#fff;border:1px solid var(--ap-line);border-radius:18px;overflow:hidden;text-decoration:none;color:inherit}\n.rir26 .rir-card img{width:100%;height:100%;object-fit:cover;display:block}\n.rir26 .rir-card__b{padding:20px 22px}\n.rir26 .rir-card__k{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#7B61FF;margin:0 0 6px}\n.rir26 .rir-card h3{font-size:18px;line-height:1.3;margin:0 0 6px;color:var(--ap-text)}\n.rir26 .rir-card p{font-size:14.5px;line-height:1.5;color:var(--ap-muted);margin:0}\n@media(max-width:820px){.rir26 .rir-cards{grid-template-columns:1fr}.rir26 .rir-card{grid-template-columns:120px 1fr}}\n.rir26 .rir-nums{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;background:#f5f5f7;border-radius:18px}\n.rir26 .rir-num{padding:26px 30px;border-left:1px solid #e4e4ea}\n.rir26 .rir-num:first-child{border-left:0}\n.rir26 .rir-num b{display:block;font-size:clamp(34px,3.4vw,46px);line-height:1;font-weight:600;margin:0 0 10px;background:linear-gradient(90deg,#ff5a5f,#d946ef 55%,#7B61FF);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}\n.rir26 .rir-num span{display:block;font-size:14.5px;line-height:1.45;color:var(--ap-muted)}\n@media(max-width:760px){.rir26 .rir-nums{grid-template-columns:1fr}.rir26 .rir-num{border-left:0;border-top:1px solid #e4e4ea}.rir26 .rir-num:first-child{border-top:0}}\n.rir26 .rir-film__logo{height:30px;width:auto;margin:0 0 18px;filter:brightness(0) invert(1);display:block}\n.rir26 .rir-voice{margin:22px 0 0;display:grid;grid-template-columns:240px 1fr;background:#f5f5f7;border-radius:22px;overflow:hidden}\n.rir26 .rir-voice__brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:34px 30px;background:#fff;border:1px solid #ececf1;border-radius:22px 0 0 22px}\n.rir26 .rir-voice__brand img{width:150px;height:auto}\n.rir26 .rir-voice__brand span{font-size:13px;color:var(--ap-muted)}\n.rir26 .rir-voice__q{padding:34px 40px}\n.rir26 .rir-voice blockquote{margin:0 0 16px;padding:0;border:0;font-size:19px;line-height:1.55;color:var(--ap-text);font-weight:500}\n.rir26 .rir-voice figcaption{font-size:14px;color:var(--ap-muted)}\n.rir26 .rir-voice figcaption strong{color:var(--ap-text)}\n@media(max-width:820px){.rir26 .rir-voice{grid-template-columns:1fr}.rir26 .rir-voice__brand{border-radius:22px 22px 0 0}.rir26 .rir-voice__q{padding:26px 24px}}\n.rir26 .rir-more__h{margin:44px 0 0;font-size:20px}\n.rir26 .rir-cards .rir-card{background:#f5f5f7;border-color:#f5f5f7}\n.rir26 .rir-more__brands{margin:18px 0 0;font-size:15px;color:var(--ap-muted)}\n.rir26 .rir-qs{display:grid;gap:14px;margin-top:28px;max-width:60rem}\n.rir26 .rir-q{background:#fff;border:1px solid var(--ap-line);border-radius:16px;padding:22px 26px}\n.rir26 .rir-q h3{font-size:18px;line-height:1.35;margin:0 0 6px}\n.rir26 .rir-q p{margin:0;font-size:15.5px;line-height:1.55;color:var(--ap-muted)}\n.rir26 .rir-ph-note{font-size:13px;color:#6b6b70;margin-top:14px}\n.rir26 .ap-band:not(.ap-band--grey){background:#fff}\n.rir26 .ap-band__inner{max-width:1270px}\n.rir26 #sec-7 .ap-band__inner{max-width:1480px}\n@media(min-width:1024px){.rir26 .ap-band__inner{padding-left:48px;padding-right:48px}}\n.rir26 .rir-step3__txt a,.rir26 .rir-q a,.rir26 .rir-role a,.rir26 .rir-ps a,.rir26 .rir-faq a,.rir26 .ap-rec-card a{color:#7B61FF !important;text-decoration:none}\n.rir26 .rir-step3__txt a:hover,.rir26 .rir-q a:hover,.rir26 .rir-role a:hover,.rir26 .rir-ps a:hover,.rir26 .rir-faq a:hover,.rir26 .ap-rec-card a:hover{text-decoration:underline;text-underline-offset:3px}\n.rir26 .rir-ps{max-width:none}\n.rir26 #sec-8 .stat-card-home__number{font-size:clamp(38px,4vw,54px);line-height:1.05}\n.rir26 .rir-shot{min-height:240px}\n.rir26 .ap-rec-card{background:#fff;border:1px solid #ececed;border-radius:var(--radius-lg,20px);padding:var(--space-2xl,32px);position:relative;overflow:hidden}\n.rir26 .ap-rec-card::before{content:\"\";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ef5909,#d70e44,#a046e1,#1676c3)}\n.rir26 .ap-rec-card__logo{height:44px;margin-bottom:var(--space-md,16px);display:flex;align-items:center}\n.rir26 .ap-rec-card__logo img{height:44px;width:auto;max-width:160px;object-fit:contain}\n.rir26 .ap-rec-card h3{font-size:18px;font-weight:600;margin:0 0 6px;color:var(--color-black,#111)}\n.rir26 .ap-rec-card__sub{font-size:13px;color:#3F5BEB;margin-bottom:var(--space-sm,10px)}\n.rir26 .ap-rec-card p{font-size:15px;line-height:1.55;color:var(--color-dark-gray,#555);margin:0}\n@media(max-width:900px){.rir26 .ap-rec{grid-template-columns:1fr !important}}\n<\/style>\n\n\n\n<div class=\"wp-block-group alignfull rir26 ap-scope is-layout-flow wp-block-group-is-layout-flow\">\n\n\n<div class=\"hero-subpage ap-hero\">\n  <div class=\"hero-subpage__video-wrapper\">\n    <video class=\"ap-hero-vid is-active\" autoplay loop muted playsinline preload=\"metadata\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-hero-poster.webp\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/Tesla-Movie-V5-Short-Web2com.mp4\" type=\"video\/mp4\"><\/video>\n  <\/div>\n  <div class=\"hero-subpage__content\" data-anim=\"zoom\">\n    <span class=\"hero-badge\">Retail Image Recognition<\/span>\n    <h1 class=\"hero-subpage__heading\">Retail Image Recognition: <span class=\"text-gradient\">Wer bringt das Regal in Ordnung, wenn das Foto eine L\u00fccke zeigt?<\/span><\/h1>\n    <p style=\"font-size:clamp(20px,2.1vw,26px);line-height:1.35;font-weight:600;color:#fff;max-width:46rem;margin-bottom:var(--space-md)\">Das h\u00e4ngt vom Laden ab. Ihr Au\u00dfendienstmitarbeiter behebt die L\u00fccke noch beim Besuch, ein Merchandiser der Agentur baut den Regalabschnitt neu auf oder Ihr Key Account Manager nimmt das Thema mit zur Handelskette. Retail Image Recognition wertet das Foto direkt vor Ort aus und schickt die Aufgabe an die Person, die die L\u00fccke schlie\u00dfen kann.<\/p>\n    <p class=\"text-h10 text-light-gray\" style=\"max-width:42rem;margin-bottom:var(--space-xl)\">Retail Image Recognition f\u00fcr FMCG- und CPG-Hersteller: Regalbilderkennung auf dem Smartphone oder Tablet des Au\u00dfendienstmitarbeiters.<\/p>\n    <div class=\"hero-subpage__cta\">\n      <a href=\"https:\/\/assecoplatform.com\/de\/kontaktieren-sie-uns\/\" class=\"btn btn-primary-white btn-has-arrow\">Demo vereinbaren<\/a>\n      <a href=\"#sec-6\" class=\"btn btn-outline-white\"><svg class=\"arrow-icon\" style=\"width:16px;height:16px;flex-shrink:0;\" viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n        So funktioniert es\n      <\/a>\n    <\/div>\n    <div class=\"stat-cards stat-cards--glass\" data-stagger style=\"margin-top:var(--space-lg)\">\n      <div class=\"stat-card stat-card--glass\"><div class=\"stat-card__value\">bis zu 98&nbsp;%<\/div><div class=\"stat-card__label\">Erkennungsgenauigkeit<\/div><\/div>\n      <div class=\"stat-card stat-card--glass\"><div class=\"stat-card__value\">2&ndash;5&nbsp;Min.<\/div><div class=\"stat-card__label\">Typische Erfassungszeit der Regaldaten pro Besuch<\/div><\/div>\n      <div class=\"stat-card stat-card--glass\"><div class=\"stat-card__value\">Offline<\/div><div class=\"stat-card__label\">Funktioniert ohne Mobilfunknetz<\/div><\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n\n<!-- CHG-693: przeniesione z podgladu #9838 --><!-- SEKCJA 2: pasek logotypow, wzorzec motywu we-spread-trust 1:1 z Perfect Store #7658 (CHG-682 zapis 2). Docelowo lista zgod RIR od Michala (W-178) -->\n\n\n<section class=\"wp-block-group alignfull we-spread-trust has-gray-default-background-color has-background is-layout-constrained wp-container-core-group-is-layout-cafc2787 wp-block-group-is-layout-constrained\" style=\"padding-top:97px;padding-right:0;padding-bottom:131px;padding-left:0\">\n<div class=\"wp-block-group alignwide animate-on-visible fade-in is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"h-trusted-globally-by-leading-brands\" style=\"margin-bottom:var(--wp--preset--spacing--24-px)\">Weltweites Vertrauen f\u00fchrender Marken<\/h2>\n\n\n\t\t<div class=\"wp-block-group alignfull slider-wrapper animate-on-visible\"\n\t\t\tdata-mobile-speed=\"1000\"\n\t\t\tdata-desktop-speed=\"1000\"\n\t\t\t>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<div class=\"wp-block-group alignwide\">\n\t\t\t\t<div class=\"splide logos wrapper-cols-6\">\n\t\t\t\t\t<div class=\"splide__track \">\n\t\t\t\t\t\t<ul class=\"splide__list\">\n\t\t\t\t\t\t\t\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-13.svg\" alt=\"Dr. Oetker\" class=\"wp-image-286\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-15.svg\" alt=\"Bacardi\" class=\"wp-image-287\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-17.svg\" alt=\"Barilla\" class=\"wp-image-288\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-19.svg\" alt=\"Heineken\" class=\"wp-image-289\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-21.svg\" alt=\"Kenvue\" class=\"wp-image-290\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-22.svg\" alt=\"L\u2019Or\u00e9al\" class=\"wp-image-292\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-14.svg\" alt=\"McCormick\" class=\"wp-image-293\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/Nestle-logo-centered.svg\" alt=\"Nestl\u00e9\" class=\"wp-image-7556\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-18.svg\" alt=\"Mondelez\" class=\"wp-image-295\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-20.svg\" alt=\"Perfetti Van Melle\" class=\"wp-image-296\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-23.svg\" alt=\"Ferrero\" class=\"wp-image-297\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-24.svg\" alt=\"Pernod Ricard\" class=\"wp-image-298\" \/><\/figure>\n<\/li>\n\t\t\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"splide__nav-wrapper\">\n\t\t\t\t\t\t<div class=\"splide__arrows\">\n\t\t\t\t\t\t\t<button class=\"splide__arrow splide__arrow--prev\">\n\t\t\t\t\t\t\t\t<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t<path d=\"M1.05713 7.99023L15 7.99023\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M0.885742 7.99033L7.95913 15\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M0.885742 7.99023L7.95913 0.999905\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t\t<\/button>\n\n\t\t\t\t\t\t\t<button class=\"splide__arrow splide__arrow--next\">\n\t\t\t\t\t\t\t\t<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t<path d=\"M14.9429 8.00977L0.999993 8.00977\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M15.1143 8.00967L8.04087 1\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M15.1143 8.00977L8.04087 15.0001\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t\t<\/button>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-3\" aria-labelledby=\"sec-3h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Das Problem<\/p>\n    <div class=\"rir-split rir-prob\">\n      <div>\n      <h2 id=\"sec-3h\" class=\"rir-h2\" style=\"max-width:38rem;margin-top:0\">Warum die L\u00fccke <span class=\"text-gradient\">beim n\u00e4chsten Besuch noch da ist<\/span><\/h2>\n        <p class=\"rir-lede\" style=\"max-width:46rem\">Manuelle Store Checks zeichnen von der Umsetzung oft ein zu positives Bild, und wie gro\u00df eine L\u00fccke wirklich ist, zeigt sich meist erst sp\u00e4ter in den Verkaufszahlen. Ein Foto h\u00e4lt fest, was tats\u00e4chlich im Regal steht. Ob die L\u00fccke behoben wird, h\u00e4ngt davon ab, wer handeln darf.<\/p>\n        <p class=\"rir-lede\" style=\"max-width:46rem\">In der Filiale einer Handelskette kann der Au\u00dfendienstmitarbeiter f\u00fcr ein fehlendes Produkt keine Bestellung aufnehmen, weil das Sortiment mit der Zentrale der Kette vereinbart wird. Der Merchandiser der Agentur, der den Regalabschnitt neu aufbaut, darf nicht \u00fcber Preise verhandeln. Der Marktleiter wei\u00df oft nicht, was Sie mit der Kette vereinbart haben. Also wird die L\u00fccke dokumentiert, geht in einen Bericht und bleibt dort liegen.<\/p>\n        <div class=\"rir-callout\">Es fehlt der Schritt zwischen dem Foto und einer Person, die befugt ist, danach zu handeln.<\/div>\n      <\/div>\n      <figure class=\"rir-fig rir-fig--vid\"><video class=\"rir-autoclip\" muted loop playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-problem-oshee-v2-poster.webp\" width=\"960\" height=\"540\" aria-label=\"Film mit OSHEE: Ein Au\u00dfendienstmitarbeiter f\u00fcllt das Regal auf, scannt es mit dem Tablet und pr\u00fcft das Ergebnis am Smartphone\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-problem-oshee-v2.mp4\" type=\"video\/mp4\"><\/video><figcaption>Aus unserem Film mit OSHEE<\/figcaption><\/figure>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-4\" aria-labelledby=\"sec-4h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Definition<\/p>\n    <h2 id=\"sec-4h\" class=\"rir-h2\" style=\"max-width:38rem\">Was ist <span class=\"text-gradient\">Regalbilderkennung?<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:50rem\">Regalbilderkennung, international Retail Image Recognition genannt, ist KI-Software, die Produkte im Regal auf Fotos erkennt und daraus Regal-KPIs ableitet: Regalverf\u00fcgbarkeit, Share of Shelf, Preise und Planogrammtreue. Im Handel setzen vor allem FMCG- und CPG-Hersteller die Bilderkennung ein. Ein Modell, das mit ihren eigenen Verpackungen trainiert wurde, erkennt jedes Produkt (SKU), z\u00e4hlt seine Facings und liest das Preisschild aus. So k\u00f6nnen der Au\u00dfendienst und die Zentrale des Herstellers noch am selben Tag auf das Ergebnis reagieren.<\/p>\n    <p class=\"rir-lede\" style=\"max-width:50rem\">Retail Image Recognition von Asseco Platform ist Bilderkennung f\u00fcr die Regalausf\u00fchrung bei FMCG- und CPG-Herstellern. Die L\u00f6sung l\u00e4uft in Mobile Touch, der App f\u00fcr Sales Force Automation (SFA) von <a href=\"https:\/\/assecoplatform.com\/de\/aussendienst-software-fmcg\/\">Sales &amp; Retail Execution<\/a>. Dort plant der Au\u00dfendienstmitarbeiter den Besuch, nimmt die Bestellung auf und erh\u00e4lt seine Aufgaben. Retail Image Recognition l\u00e4sst sich auch als Erg\u00e4nzung zu einer anderen SFA-L\u00f6sung einsetzen, etwa zu <a href=\"https:\/\/assecoplatform.com\/de\/bilderkennung-salesforce-consumer-goods-cloud\/\">Salesforce Consumer Goods Cloud<\/a>. Das Erkennungsmodell l\u00e4uft direkt auf dem Mobilger\u00e4t, deshalb erfolgt die Auswertung in Echtzeit, auch in Gesch\u00e4ften ohne Mobilfunknetz.<\/p>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-5\" aria-labelledby=\"sec-5h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">KPIs<\/p>\n    <h2 id=\"sec-5h\" class=\"rir-h2\" style=\"max-width:36rem\">Was die Regalbilderkennung <span class=\"text-gradient\">misst<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:48rem\">Retail Image Recognition beantwortet zu jedem Produkt, das Sie im Blick behalten wollen, drei Fragen. Steht es im Regal? Sieht der Shopper es? Und wie stehen Preis und Aktion im Vergleich zur Vereinbarung und zum Wettbewerb da? Welche KPIs in welchem Gesch\u00e4ftstyp z\u00e4hlen, legen Sie fest.<\/p>\n    <div class=\"rir-steps3\">\n      <div class=\"rir-step3\">\n        <span class=\"rir-step3__n\">VERF\u00dcGBARKEIT<\/span>\n        <div class=\"rir-step3__media\"><div class=\"rir-zoom\"><div class=\"rir-zoom__in\" style=\"--z:2.3;--ox:29.65%;--oy:32.43%\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/09\/polka-cola.png\" alt=\"Vergr\u00f6\u00dferter Ausschnitt eines Softdrink-Regals: eine leere Stelle, rot umrandet und als fehlendes Produkt markiert\" loading=\"lazy\"><span class=\"rir-box rir-box--red\" style=\"left:30.03%;top:35.47%;width:20.27%;height:9.21%\"><\/span><span class=\"rir-tag\" style=\"left:40.16%;top:35.47%\">Fehlt<\/span><\/div><\/div><\/div>\n        <div class=\"rir-step3__txt\"><h3>Verf\u00fcgbarkeit und Regall\u00fccken<\/h3>\n        <p>F\u00fcnf KPIs zeigen, was da ist und was fehlt:<\/p><ul class=\"rir-kpis\"><li><b>Regalverf\u00fcgbarkeit:<\/b> der Anteil der Produkte, die ein Gesch\u00e4ft f\u00fchren sollte und die beim Besuch im Regal stehen<\/li><li><b>Facings:<\/b> wie viele Einheiten jedes Produkts in der vordersten Reihe stehen<\/li><li><b>Listungen:<\/b> ob das Gesch\u00e4ft die Produkte f\u00fchrt, die in seiner Listung vereinbart sind<\/li><li><b>Pflichtprodukte:<\/b> ob die Produkte, die Sie als unverzichtbar markieren, im Regal stehen<\/li><li><b>Out-of-Stock:<\/b> gelistete Produkte, die zum Zeitpunkt des Besuchs im Regal fehlen<\/li><\/ul>\n        <p style=\"margin-top:12px\">Bei einer Produkteinf\u00fchrung zeigen dieselben KPIs schon in den ersten Wochen, ob das neue Produkt im Regal angekommen ist.<\/p><\/div>\n      <\/div>\n      <div class=\"rir-step3\">\n        <span class=\"rir-step3__n\">SICHTBARKEIT<\/span>\n        <div class=\"rir-step3__media\"><div class=\"rir-zoom\"><div class=\"rir-zoom__in\" style=\"--z:1.9;--ox:67.49%;--oy:0%\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/09\/polka-cola.png\" alt=\"Ausschnitt eines Softdrink-Regals, jedes Facing umrandet: gr\u00fcn, wenn es dem Layout entspricht, rot bei einem anderen Produkt\" loading=\"lazy\"><span class=\"rir-box rir-box--green\" style=\"left:6.66%;top:11.28%;width:6.46%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:13.12%;top:11.28%;width:6.46%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:19.58%;top:11.28%;width:6.46%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:26.04%;top:11.28%;width:6.46%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:32.50%;top:11.28%;width:6.46%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:38.95%;top:11.28%;width:6.46%;height:16.20%\"><\/span><span class=\"rir-box rir-box--red\" style=\"left:51.63%;top:11.28%;width:6.66%;height:16.20%\"><\/span><span class=\"rir-box rir-box--red\" style=\"left:58.28%;top:11.28%;width:6.66%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:65.53%;top:11.28%;width:6.66%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:72.19%;top:11.28%;width:6.66%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:78.85%;top:11.28%;width:6.66%;height:16.20%\"><\/span><span class=\"rir-box rir-box--green\" style=\"left:85.50%;top:11.28%;width:6.66%;height:16.20%\"><\/span><\/div><span class=\"rir-tag\" style=\"left:50%;top:21.43%\">Falsches Produkt<\/span><div class=\"rir-legend\"><span><i><\/i>entspricht dem Regallayout<\/span><span><i class=\"r\"><\/i>entspricht nicht<\/span><\/div><\/div><\/div>\n        <div class=\"rir-step3__txt\"><h3>Sichtbarkeit und Platzierung<\/h3>\n        <p>Sechs KPIs zeigen, wie viel Platz die Marke hat und wo sie steht:<\/p><ul class=\"rir-kpis\"><li><b>Share of Shelf:<\/b> der Regalanteil der Marke, also ihr Anteil an der Fl\u00e4che der Kategorie in Facings oder Regalmetern, im Vergleich zum Wettbewerb im selben Regalabschnitt<\/li><li><b>Sichtzone:<\/b> ob wichtige Produkte in der H\u00f6he stehen, in der Shopper sie sehen<\/li><li><b>Produktnachbarschaft:<\/b> ob jedes Produkt neben den Produkten steht, die im Regalstandard vereinbart sind<\/li><li><b>Blockbildung:<\/b> ob die Produkte einer Marke oder eines Segments zusammen in einem Block stehen<\/li><li><b>Reihenfolge:<\/b> die Anordnung der Produkte entlang des Regals, zum Beispiel nach Geschmacksrichtung oder Packungsgr\u00f6\u00dfe, verglichen mit der vereinbarten Reihenfolge<\/li><li><b>Planogrammtreue:<\/b> wie genau das Regal dem aktuellen Planogramm folgt, Produkt f\u00fcr Produkt<\/li><\/ul>\n        <p style=\"margin-top:12px\">F\u00fcr H\u00e4ndler, die ihre eigenen Gesch\u00e4fte pr\u00fcfen, gibt es die Seite zur <a href=\"https:\/\/assecoplatform.com\/de\/regalkontrolle\/\">Planogrammtreue f\u00fcr H\u00e4ndler<\/a>. Lesen Sie auch, wie Hersteller <a href=\"https:\/\/assecoplatform.com\/de\/2026\/05\/14\/planogrammtreue-ohne-regal-audits\/\">die Planogrammtreue ohne manuelle Regal-Audits pr\u00fcfen<\/a>.<\/p><\/div>\n      <\/div>\n      <div class=\"rir-step3\">\n        <span class=\"rir-step3__n\">PREIS UND AKTION<\/span>\n        <div class=\"rir-step3__media\"><div class=\"rir-zoom\"><div class=\"rir-zoom__in\" style=\"--z:2.8;--ox:58.28%;--oy:45.17%\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/09\/polka-cola.png\" alt=\"Vergr\u00f6\u00dferter Ausschnitt eines Softdrink-Regals: Preisschild orange umrandet, ausgelesener Preis im Vergleich zur UVP\" loading=\"lazy\"><span class=\"rir-box rir-box--amber\" style=\"left:51.33%;top:44.79%;width:8.14%;height:4.33%\"><\/span><\/div><div class=\"rir-read\"><span>Preisschild<\/span><b>1.80<\/b><span>UVP <s>1.70<\/s><\/span><i>+0.10<\/i><\/div><\/div><\/div>\n        <div class=\"rir-step3__txt\"><h3>Preise und Aktionen<\/h3>\n        <p>Die letzten sechs KPIs betreffen Preise und die Umsetzung von Aktionen.<\/p><ul class=\"rir-kpis\"><li><b>Preispr\u00fcfung:<\/b> der Regalpreis, Produkt f\u00fcr Produkt vom Preisschild ausgelesen<\/li><li><b>Preistreue:<\/b> ob die Preise der UVP oder dem vertraglich vereinbarten Preis entsprechen<\/li><li><b>Aktionspreistreue:<\/b> ob die Aktionspreise im Regal der Aktion entsprechen, die f\u00fcr das Gesch\u00e4ft vereinbart wurde<\/li><li><b>Wettbewerbspreise:<\/b> die Preise der Wettbewerbsprodukte im selben Regal<\/li><li><b>POS- und Display-Umsetzung:<\/b> ob Displays wie Aufsteller und Paletten stehen, dem vereinbarten Typ entsprechen und best\u00fcckt sind<\/li><li><b>Werbemittel:<\/b> ob Plakate, Wobbler und Topper angebracht sind und zur vereinbarten Kampagne passen<\/li><\/ul><\/div>\n      <\/div>\n    <\/div>\n    <div class=\"rir-ps rir-ps--shot\">\n      <div class=\"rir-ps__txt\">\n        <h3>Perfect Store<\/h3>\n        <p>Retail Image Recognition kann diese KPIs pro Gesch\u00e4ft zu einem <a href=\"https:\/\/assecoplatform.com\/de\/perfect-store\/\">Perfect Store<\/a> Score zusammenfassen, gemessen an dem Standard, den Sie f\u00fcr jeden Gesch\u00e4ftstyp festlegen. Der Au\u00dfendienstmitarbeiter sieht den Score direkt am Regal, aufgeschl\u00fcsselt nach den Kriterien, die das Gesch\u00e4ft nicht erf\u00fcllt.<\/p>\n        <ul class=\"rir-ps__pts\">\n          <li><b>Score im Vergleich zum letzten Besuch.<\/b> Das Ergebnis dieses Gesch\u00e4fts neben dem Ergebnis des vorigen Besuchs.<\/li>\n          <li><b>Facings aus dem Foto.<\/b> Die Spalte Face IR zeigt f\u00fcr jedes Produkt die Facings, die Retail Image Recognition auf dem Foto gez\u00e4hlt hat.<\/li>\n          <li><b>Share of Shelf im Vergleich zum Zielwert.<\/b> Dazu die Regalmeter, die noch fehlen, um ihn zu erreichen.<\/li>\n        <\/ul>\n        <a class=\"rir-ps__more\" href=\"https:\/\/assecoplatform.com\/de\/perfect-store\/\">So funktioniert der Perfect Store Score<svg viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a>\n      <\/div>\n      <figure class=\"rir-ps__fig\"><span class=\"rir-ps__tab\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/05\/KV-Dashboard-dark-mode.png\" alt=\"Perfect-Store-Audit in Mobile Touch: Score des Gesch\u00e4fts gegen\u00fcber dem letzten Besuch, Verf\u00fcgbarkeit und Facings je Produkt\" loading=\"lazy\" width=\"1668\" height=\"2388\"><\/span><\/figure>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-5b\" aria-labelledby=\"sec-5bh\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Platzierungen<\/p>\n    <h2 id=\"sec-5bh\" class=\"rir-h2\" style=\"max-width:40rem\">Wo Retail Image Recognition funktioniert, <span class=\"text-gradient\">von der Stammplatzierung bis zur Backbar<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:48rem\">Sie bezahlen f\u00fcr mehr Fl\u00e4che als nur die Stammplatzierung. Retail Image Recognition von Asseco Platform kommt auch mit unregelm\u00e4\u00dfigen Aufbauten zurecht, sodass jede der folgenden Platzierungen einen eigenen Standard haben kann.<\/p>\n    <div class=\"rir-places\" data-stagger><svg width=\"0\" height=\"0\" style=\"position:absolute\" aria-hidden=\"true\" focusable=\"false\"><defs><linearGradient id=\"rirPG\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\"><stop offset=\"0\" stop-color=\"#ff5a5f\"\/><stop offset=\".55\" stop-color=\"#d946ef\"\/><stop offset=\"1\" stop-color=\"#7B61FF\"\/><\/linearGradient><\/defs><\/svg><div class=\"rir-place\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"7\" y=\"6\" width=\"34\" height=\"36\" rx=\"2\"\/><path d=\"M7 18h34M7 30h34\"\/><path d=\"M11 18v-7h5v7M18 18v-5h5v5M26 18v-8h5v8M33 18v-6h4v6M11 30v-6h6v6M20 30v-8h5v8M28 30v-5h5v5M11 42v-7h5v7M19 42v-5h6v5M28 42v-8h5v8\"\/><\/g><\/svg><\/span><h3>Stammplatzierung der Kategorie<\/h3><p>Der feste Platz der Kategorie im Regal, an dem das Kernsortiment und das Planogramm gelten.<\/p><\/div><div class=\"rir-place\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"13\" y=\"5\" width=\"22\" height=\"8\" rx=\"2\"\/><path d=\"M21 9h6\"\/><rect x=\"11\" y=\"13\" width=\"26\" height=\"30\" rx=\"2\"\/><path d=\"M11 23h26M11 33h26\"\/><path d=\"M15 23v-6h5v6M24 23v-7h5v7M15 33v-6h6v6M25 33v-5h5v5\"\/><\/g><\/svg><\/span><h3>Gondelk\u00f6pfe<\/h3><p>Platzierungen an der Stirnseite einer Regalreihe, vereinbart f\u00fcr Aktionen und saisonale Kampagnen.<\/p><\/div><div class=\"rir-place\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 43h20M17 43l2-10h10l2 10\"\/><rect x=\"12\" y=\"6\" width=\"24\" height=\"27\" rx=\"3\"\/><path d=\"M19 25l10-11\"\/><circle cx=\"19.5\" cy=\"15.5\" r=\"2.2\"\/><circle cx=\"28.5\" cy=\"23.5\" r=\"2.2\"\/><\/g><\/svg><\/span><h3>Aktionsdisplays<\/h3><p>Displays und frei stehende Aufsteller abseits der Stammplatzierung.<\/p><\/div><div class=\"rir-place\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 38h36M9 38v4M24 38v4M39 38v4\"\/><rect x=\"9\" y=\"25\" width=\"14\" height=\"13\" rx=\"1.5\"\/><rect x=\"25\" y=\"25\" width=\"14\" height=\"13\" rx=\"1.5\"\/><rect x=\"17\" y=\"12\" width=\"14\" height=\"13\" rx=\"1.5\"\/><path d=\"M13 29h6M29 29h6M21 16h6\"\/><\/g><\/svg><\/span><h3>Aktionsinseln<\/h3><p>Bodenplatzierungen auf offenen Fl\u00e4chen im Laden, f\u00fcr Aktionen mit gro\u00dfen Mengen.<\/p><\/div><div class=\"rir-place\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 36h38M8 36v6M40 36v6\"\/><rect x=\"26\" y=\"18\" width=\"14\" height=\"18\" rx=\"2\"\/><rect x=\"29\" y=\"10\" width=\"8\" height=\"8\" rx=\"1.5\"\/><path d=\"M29 24h8M29 28h8\"\/><path d=\"M8 36v-6h6v6M15 36v-9h5v9\"\/><\/g><\/svg><\/span><h3>Kassenplatzierung<\/h3><p>Impulsartikel an der Kasse, wo der Platz knapp und umk\u00e4mpft ist.<\/p><\/div><div class=\"rir-place\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"12\" y=\"4\" width=\"24\" height=\"40\" rx=\"3\"\/><path d=\"M12 15h24M32 8v4M32 20v6\"\/><path d=\"M22 27v10M18 29.5l8 5M26 29.5l-8 5\"\/><\/g><\/svg><\/span><h3>K\u00fchl- und Tiefk\u00fchlm\u00f6bel<\/h3><p>Gek\u00fchlte Fl\u00e4che f\u00fcr Getr\u00e4nke, Molkereiprodukte und Tiefk\u00fchlware, mit einem eigenen Standard f\u00fcr das Layout.<\/p><\/div><div class=\"rir-place rir-place--ho\"><span class=\"rir-place__ic\"><svg viewBox=\"0 0 48 48\" aria-hidden=\"true\"><g stroke=\"url(#rirPG)\" stroke-width=\"1.7\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M8 40h20\"\/><path d=\"M11 40V24l2-4v-6h2v6l2 4v16M19 40V27l2-3v-5h2v5l2 3v13\"\/><rect x=\"30\" y=\"12\" width=\"12\" height=\"28\" rx=\"1.5\"\/><path d=\"M33 18h6M33 23h6M33 28h4M33 33h6\"\/><\/g><\/svg><\/span><h3>Backbar und Getr\u00e4nkekarte (Gastronomie)<\/h3><p>Welche Flaschen hinter der Bar stehen und wie die Marke auf der Getr\u00e4nkekarte erscheint.<\/p><\/div><\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-6\" aria-labelledby=\"sec-6h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">So funktioniert es<\/p>\n    <h2 id=\"sec-6h\" class=\"rir-h2\" style=\"max-width:40rem\">Wie die Regalbilderkennung arbeitet, <span class=\"text-gradient\">vom Regalfoto bis zum korrigierten Regal<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:46rem\">Vier Schritte, und die ersten drei passieren, w\u00e4hrend der Au\u00dfendienstmitarbeiter noch vor dem Regal steht.<\/p>\n    <div class=\"rir-path rir-path--4\">\n      <span class=\"rir-path__rail\" aria-hidden=\"true\"><\/span>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">01<\/span><p class=\"rir-path__stage\">Scannen<\/p><h3>Die Kamera erfasst den ganzen Regalabschnitt<\/h3><p>Der Au\u00dfendienstmitarbeiter fotografiert den Regalabschnitt St\u00fcck f\u00fcr St\u00fcck. Eine AR-Einblendung (Augmented Reality), der gelbe Rahmen auf dem Bildschirm, zeigt, welche Teile des Abschnitts schon erfasst sind und welche noch fehlen. Die App pr\u00fcft au\u00dferdem die Qualit\u00e4t jedes Fotos.<\/p><\/div>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">02<\/span><p class=\"rir-path__stage\">Auslesen<\/p><h3>Das Ergebnis erscheint auf dem Foto<\/h3><p>Die Auswertung l\u00e4uft in Echtzeit, deshalb ist jedes Produkt auf dem Foto mit seinen Facings und seinem Regalpreis markiert.<\/p><\/div>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">03<\/span><p class=\"rir-path__stage\">Korrigieren<\/p><h3>Der Au\u00dfendienstmitarbeiter korrigiert, was in seiner Hand liegt<\/h3><p>Der Au\u00dfendienstmitarbeiter sieht eine kurze, klar formulierte Liste der Korrekturen und die n\u00f6tigen Handgriffe direkt im Kamerabild. Ein zweiter Scan best\u00e4tigt die Korrektur.<\/p><\/div>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">04<\/span><p class=\"rir-path__stage\">\u00dcbergeben<\/p><h3>Der Rest wird zur Aufgabe<\/h3><p>Was der Au\u00dfendienstmitarbeiter bei diesem Besuch nicht beheben kann, wird zur Aufgabe f\u00fcr die Person, die es kann, mit dem Regalergebnis im Anhang.<\/p><\/div>\n    <\/div>\n    <div class=\"rir-cam\">\n      <figure class=\"rir-cam__phone rir-cam__phone--tab\">\n        <span class=\"rir-cam__screen\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-app-screen-shelf-kpi.webp\" alt=\"In der App: Cerealienregal, erkannte Produkte in gr\u00fcnen Rahmen, Preise, Verf\u00fcgbarkeit, Facings, Share of Shelf, Preistreue\" loading=\"lazy\" width=\"768\" height=\"1024\"><\/span>\n      <\/figure>\n      <div class=\"rir-cam__list\">\n        <p class=\"rir-cam__eyebrow\">Bildschirm aus der App<\/p>\n        <h3 class=\"rir-cam__h\">Was der Au\u00dfendienstmitarbeiter an diesem Regalabschnitt sieht<\/h3>\n        <ol>\n          <li><b class=\"rir-cam__ring\" style=\"--c:#2fb344;--v:70\">70%<\/b><div><strong>Presence check<\/strong><span>Regalverf\u00fcgbarkeit: der Anteil der geforderten Produkte, die die App im Regalabschnitt gefunden hat.<\/span><\/div><\/li>\n          <li><b class=\"rir-cam__ring\" style=\"--c:#f59f00;--v:50\">50%<\/b><div><strong>Facings<\/strong><span>Facings im Regal im Vergleich zu Ihrem Zielwert f\u00fcr die Marke.<\/span><\/div><\/li>\n          <li><b class=\"rir-cam__ring\" style=\"--c:#e4202e;--v:43\">43%<\/b><div><strong>Shelf share<\/strong><span>Share of Shelf: der Anteil der Marke an der Fl\u00e4che dieses Regalabschnitts.<\/span><\/div><\/li>\n          <li><b class=\"rir-cam__ring\" style=\"--c:#2fb344;--v:85\">85%<\/b><div><strong>Pricing compliance<\/strong><span>Preistreue: Produkte, deren Preisschild den erwarteten Preis zeigt.<\/span><\/div><\/li>\n        <\/ol>\n        <p class=\"rir-cam__note\">Gr\u00fcne Rahmen markieren die Produkte, die die App erkannt hat, mit dem Preis vom Preisschild. Was unter dem Zielwert liegt, kommt auf die Liste der Korrekturen.<\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n<section class=\"ap-band rir-dark\" id=\"sec-6v\" aria-labelledby=\"sec-6vh\">\n  <div class=\"ap-band__inner\">\n    <div class=\"rir-vids\">\n      <div class=\"rir-vids__head\">\n        <div>\n          <p class=\"ap-eyebrow\">In der App aufgezeichnet<\/p>\n          <h2 id=\"sec-6vh\" class=\"rir-h2\" style=\"max-width:36rem\">Retail Image Recognition an echten Regalen, <span class=\"text-gradient\">in sechs Kategorien<\/span><\/h2>\n        <\/div>\n        <div class=\"rir-vids__nav\">\n          <button type=\"button\" class=\"rir-vids__btn\" data-dir=\"-1\" aria-label=\"Vorherige Aufnahmen\"><svg viewBox=\"0 0 16 16\" width=\"16\" height=\"16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M10 3 5 8l5 5\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/button>\n          <button type=\"button\" class=\"rir-vids__btn\" data-dir=\"1\" aria-label=\"N\u00e4chste Aufnahmen\"><svg viewBox=\"0 0 16 16\" width=\"16\" height=\"16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M6 3l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/button>\n        <\/div>\n      <\/div>\n      <p class=\"rir-vids__lede\">Bildschirmaufnahmen aus der App in Gesch\u00e4ften in Polen, ein Regalabschnitt pro Kategorie.<\/p>\n      <div class=\"rir-vids__track\" tabindex=\"0\" aria-label=\"Sechs Bildschirmaufnahmen, f\u00fcr weitere seitlich scrollen\">\n          <figure class=\"rir-vids__i\">\n            <video controls muted playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-ketchup-poster.webp\" width=\"480\" height=\"720\" aria-label=\"Bildschirmaufnahme aus der App: Regalscan, Ketchup und Saucen\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-ketchup-v2.mp4\" type=\"video\/mp4\"><\/video>\n            <figcaption>Ketchup und Saucen<\/figcaption>\n          <\/figure>\n          <figure class=\"rir-vids__i\">\n            <video controls muted playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-petfood-poster.webp\" width=\"480\" height=\"720\" aria-label=\"Bildschirmaufnahme aus der App: Regalscan, Tiernahrung\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-petfood.mp4\" type=\"video\/mp4\"><\/video>\n            <figcaption>Tiernahrung<\/figcaption>\n          <\/figure>\n          <figure class=\"rir-vids__i\">\n            <video controls muted playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-water-poster.webp\" width=\"480\" height=\"720\" aria-label=\"Bildschirmaufnahme aus der App: Regalscan, Wasser in Flaschen\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-water.mp4\" type=\"video\/mp4\"><\/video>\n            <figcaption>Wasser in Flaschen<\/figcaption>\n          <\/figure>\n          <figure class=\"rir-vids__i\">\n            <video controls muted playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-mayonnaise-poster.webp\" width=\"480\" height=\"720\" aria-label=\"Bildschirmaufnahme aus der App: Regalscan, Mayonnaise\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-mayonnaise.mp4\" type=\"video\/mp4\"><\/video>\n            <figcaption>Mayonnaise<\/figcaption>\n          <\/figure>\n          <figure class=\"rir-vids__i\">\n            <video controls muted playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-sachets-poster.webp\" width=\"480\" height=\"720\" aria-label=\"Bildschirmaufnahme aus der App: Regalscan, Fix-Produkte im Beutel\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-sachets.mp4\" type=\"video\/mp4\"><\/video>\n            <figcaption>Fix-Produkte im Beutel<\/figcaption>\n          <\/figure>\n          <figure class=\"rir-vids__i\">\n            <video controls muted playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-babyfood-poster.webp\" width=\"480\" height=\"720\" aria-label=\"Bildschirmaufnahme aus der App: Regalscan, Babynahrung\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-ir-nestle-babyfood.mp4\" type=\"video\/mp4\"><\/video>\n            <figcaption>Babynahrung<\/figcaption>\n          <\/figure>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-7\" aria-labelledby=\"sec-7h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">F\u00fcnf Rollen<\/p>\n    <h2 id=\"sec-7h\" class=\"rir-h2\" style=\"max-width:36rem\">Wer die L\u00fccke schlie\u00dft, <span class=\"text-gradient\">Kanal f\u00fcr Kanal<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:46rem\">Wer handelt, h\u00e4ngt vom Kanal ab, von Ihrem Vertrag mit dem H\u00e4ndler und davon, was die Person im Laden ver\u00e4ndern darf.<\/p>\n    <div class=\"rir-roles\"><nav class=\"rir-rail\" aria-label=\"F\u00fcnf Rollen\"><a href=\"#role-1\" class=\"is-on\">Au\u00dfendienst im inhabergef\u00fchrten Handel<\/a><a href=\"#role-2\">Merchandising-Agentur<\/a><a href=\"#role-3\">Key Account Manager<\/a><a href=\"#role-4\">Trade Marketing<\/a><a href=\"#role-5\">Ladenpersonal<\/a><\/nav><div><article class=\"rir-role\" id=\"role-1\"><span class=\"rir-role__pill\">Rep in the traditional trade<\/span><div class=\"rir-role__grid\"><div><h3>Der Au\u00dfendienstmitarbeiter korrigiert das Regal noch beim Besuch<\/h3><p>In einem inhabergef\u00fchrten Gesch\u00e4ft entscheidet der Inhaber vor Ort, deshalb l\u00e4sst sich das meiste, was das Foto zeigt, noch beim selben Besuch erledigen. Nach dem Scan sieht der Au\u00dfendienstmitarbeiter die fehlenden Produkte und die Platzierungsfehler auf dem Foto markiert und r\u00fcckt die Packungen von Hand so zurecht, wie es das Kamerabild zeigt. F\u00fcr die fehlenden Produkte erstellt <a href=\"https:\/\/assecoplatform.com\/de\/5-klassen-ki-agenten-fmcg\/\">Asseco Platform Genius<\/a>, die in die Plattform integrierte KI, einen Bestellvorschlag. Der Au\u00dfendienstmitarbeiter pr\u00fcft ihn, passt ihn an und holt die Freigabe des Inhabers ein, bevor er den Laden verl\u00e4sst.<\/p><p class=\"rir-role__hand\">Einen ganzen Regalabschnitt neu aufzubauen dauert l\u00e4nger, als ein Verkaufsbesuch zul\u00e4sst, deshalb \u00fcbernimmt diese Arbeit die Agentur.<\/p><p class=\"rir-role__foot\"><b>Verantwortlich:<\/b> Vertriebsleitung. <b>Messgr\u00f6\u00dfen:<\/b> Regalverf\u00fcgbarkeit, beim Besuch behobene L\u00fccken, Bestellwert aus Regalbefunden.<\/p><\/div><figure class=\"rir-role__fig rir-role__vid\"><video class=\"rir-autoclip\" muted loop playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-role-film-rep-v2-poster.webp\" width=\"960\" height=\"540\" aria-label=\"Film von Asseco Platform: Im kleinen Laden scannt der Au\u00dfendienstmitarbeiter das Regal und erh\u00e4lt einen Bestellvorschlag\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-role-film-rep-v2.mp4\" type=\"video\/mp4\"><\/video><figcaption>Aus dem Film von Asseco Platform<\/figcaption><\/figure><\/div><\/article><article class=\"rir-role\" id=\"role-2\"><span class=\"rir-role__pill\">Merchandising agency<\/span><div class=\"rir-role__grid\"><div><h3>Die Agentur bekommt die Aufgabe und belegt die erledigte Arbeit mit einem Foto<\/h3><ol class=\"rir-ways\">\n<li><b>Der Au\u00dfendienstmitarbeiter schickt die Aufgabe.<\/b> Sein Foto ist angeh\u00e4ngt, sodass der Merchandiser schon vor der Ankunft wei\u00df, welchen Regalabschnitt er neu aufbauen muss.<\/li>\n<li><b>Der Besuch des Merchandisers.<\/b> Ein Foto vor Arbeitsbeginn zeigt, was zu korrigieren ist. Ein zweites Foto danach ist der Beleg, und der Besuchsbericht geht automatisch an Sie.<\/li>\n<li><b>Zur\u00fcck an den Au\u00dfendienst.<\/b> Ist f\u00fcr die Korrektur ein Gespr\u00e4ch mit dem Inhaber n\u00f6tig, etwa \u00fcber einen Preis oder ein zus\u00e4tzliches Display, geht die Aufgabe an Ihren Au\u00dfendienstmitarbeiter.<\/li>\n<\/ol>\n<p class=\"rir-role__hand\">In einer Handelskette geht die Aufgabe an den Key Account Manager.<\/p><p class=\"rir-role__foot\"><b>Verantwortlich:<\/b> Trade Marketing und Au\u00dfendienststeuerung. <b>Messgr\u00f6\u00dfen:<\/b> erledigte Aufgaben, Zeit bis zur Korrektur, Compliance vor und nach dem Einsatz.<\/p><\/div><figure class=\"rir-role__fig rir-role__vid\"><video class=\"rir-autoclip\" muted loop playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-role-oshee-agency-poster.webp\" width=\"960\" height=\"540\" aria-label=\"Film mit OSHEE: Ware kommt aus dem Lager, Flaschen werden vorgezogen, das Regal wird mit dem Tablet gescannt\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-role-oshee-agency.mp4\" type=\"video\/mp4\"><\/video><figcaption>Aus unserem Film mit OSHEE<\/figcaption><\/figure><\/div><\/article><article class=\"rir-role\" id=\"role-3\"><span class=\"rir-role__pill\">Key account manager<\/span><div class=\"rir-role__grid\"><div><h3>In der Handelskette sammelt der Au\u00dfendienst Belege<\/h3><p>In Discounter- und Supermarktketten kann der Au\u00dfendienstmitarbeiter im Laden keine Bestellung aufnehmen. Deshalb arbeitet der Key Account Manager mit der Kette als Ganzes. Er sieht \u00fcber alle besuchten Gesch\u00e4fte hinweg, wo das Produkt fehlt, was an seiner Stelle im Regal steht und wie weit der Share of Shelf vom Zielwert entfernt ist. Die Ergebnisse aus den besuchten Gesch\u00e4ften laufen in OneView zusammen, dem Reporting der Plattform. F\u00e4llt der Share of Shelf unter den Zielwert, erh\u00e4lt der Key Account Manager eine Aufgabe mit beiden Zahlen. Mit der Zahl der Gesch\u00e4fte und den Fotos geht er ins n\u00e4chste Gespr\u00e4ch mit dem Eink\u00e4ufer.<\/p><p class=\"rir-role__foot\"><b>Verantwortlich:<\/b> Leitung Key Account Management. <b>Messgr\u00f6\u00dfen:<\/b> Verf\u00fcgbarkeit nach Handelskette, Share of Shelf im Vergleich zum Zielwert, Preisabweichungen nach Handelskette.<\/p><\/div><div class=\"rir-bi rir-bi--solo rir-ov\" aria-label=\"Beispielansicht eines OneView-Berichts f\u00fcr eine Handelskette\" style=\"margin-top:0\">\n        <div class=\"rir-bi__top\"><span class=\"rir-bi__dot\" style=\"background:#ef5909\"><\/span><span class=\"rir-bi__dot\" style=\"background:#a046e1\"><\/span><span class=\"rir-bi__dot\" style=\"background:#1668c8\"><\/span><span class=\"rir-bi__title\">OneView &middot; chain view &middot; example<\/span><\/div>\n        <div class=\"rir-bi__body\"><div class=\"rir-bi__panel rir-bi__panel--open\">\n          <div class=\"rir-ov__chips\"><span>Chain A<\/span><span>Coffee<\/span><span>Last 4 weeks<\/span><\/div>\n          <div class=\"rir-bi__kpis\">\n            <div class=\"rir-bi__kpi\"><b>48<\/b><span>stores visited<\/span><\/div>\n            <div class=\"rir-bi__kpi\"><b style=\"color:var(--r)\">14<\/b><span>with a product missing<\/span><\/div>\n            <div class=\"rir-bi__kpi\"><b>21%<\/b><span>share of shelf, target 25%<\/span><\/div>\n          <\/div>\n          <div class=\"rir-tblwrap\"><table class=\"rir-tbl\">\n            <tr><th>Store<\/th><th>Missing products<\/th><th class=\"n\">Share \/ target<\/th><\/tr>\n<tr><td>Store 112<\/td><td>Coffee 250 g, Coffee 500 g<\/td><td class=\"n\"><b style=\"color:var(--r)\">14%<\/b> \/ 25%<\/td><\/tr>\n<tr><td>Store 087<\/td><td>Coffee 500 g<\/td><td class=\"n\"><b style=\"color:var(--r)\">18%<\/b> \/ 25%<\/td><\/tr>\n<tr><td>Store 205<\/td><td>Instant coffee 200 g<\/td><td class=\"n\"><b style=\"color:var(--r)\">19%<\/b> \/ 25%<\/td><\/tr>\n<tr><td>Store 031<\/td><td>Coffee 250 g<\/td><td class=\"n\"><b style=\"color:var(--r)\">22%<\/b> \/ 25%<\/td><\/tr>\n          <\/table><\/div>\n          <p class=\"rir-bi__cap\" style=\"margin:12px 0 0\">Jede Zeile \u00f6ffnet die Regalfotos des letzten Besuchs.<\/p>\n        <\/div><\/div>\n      <\/div><\/div><\/article><article class=\"rir-role\" id=\"role-4\"><span class=\"rir-role__pill\">Trade marketing<\/span><div class=\"rir-role__grid\"><div><h3>Ihre Zentrale sieht, wo der Standard nicht eingehalten wird<\/h3><p>Das Trade Marketing sieht dieselben Regaldaten in OneView nach Region, Ladenformat und Handelskette und kann eine Aktion noch w\u00e4hrend der Kampagne korrigieren. Neben diesen Daten lassen sich auch der Sell-in und der Distributor-Sell-out aus <a href=\"https:\/\/assecoplatform.com\/de\/trade-data-hub\/\">Trade Data Hub<\/a> anzeigen.<\/p><p class=\"rir-role__foot\"><b>Verantwortlich:<\/b> Leitung Trade Marketing. <b>Messgr\u00f6\u00dfen:<\/b> Compliance nach Standard, Region und Format; Umsetzung der Aktion w\u00e4hrend der Kampagne.<\/p><\/div><div class=\"rir-bi rir-bi--solo rir-ov\" aria-label=\"Beispielansicht eines OneView-Berichts zur Einhaltung der Standards nach Region und Ladenformat\" style=\"margin-top:0\">\n        <div class=\"rir-bi__top\"><span class=\"rir-bi__dot\" style=\"background:#ef5909\"><\/span><span class=\"rir-bi__dot\" style=\"background:#a046e1\"><\/span><span class=\"rir-bi__dot\" style=\"background:#1668c8\"><\/span><span class=\"rir-bi__title\">OneView &middot; standard compliance &middot; example<\/span><\/div>\n        <div class=\"rir-bi__body\"><div class=\"rir-bi__panel rir-bi__panel--open\">\n          <div class=\"rir-ov__chips\"><span>Summer promotion<\/span><span>Week 2 of 4<\/span><span>All chains<\/span><\/div>\n          <div class=\"rir-bi__card\" style=\"margin-bottom:14px\">\n            <p class=\"rir-bi__h\">Compliance with the standard, by region<\/p>\n            <div class=\"rir-bi__row\"><span class=\"lab\">North<\/span><span class=\"rir-bi__track\"><span class=\"rir-bi__fill\" style=\"width:86%;background:var(--g)\"><\/span><\/span><span class=\"rir-bi__val\">86%<\/span><\/div>\n            <div class=\"rir-bi__row\"><span class=\"lab\">Central<\/span><span class=\"rir-bi__track\"><span class=\"rir-bi__fill\" style=\"width:78%;background:var(--o)\"><\/span><\/span><span class=\"rir-bi__val\">78%<\/span><\/div>\n            <div class=\"rir-bi__row\"><span class=\"lab\">West<\/span><span class=\"rir-bi__track\"><span class=\"rir-bi__fill\" style=\"width:71%;background:var(--o)\"><\/span><\/span><span class=\"rir-bi__val\">71%<\/span><\/div>\n            <div class=\"rir-bi__row\"><span class=\"lab\">South<\/span><span class=\"rir-bi__track\"><span class=\"rir-bi__fill\" style=\"width:64%;background:var(--r)\"><\/span><\/span><span class=\"rir-bi__val\">64%<\/span><\/div>\n          <\/div>\n          <div class=\"rir-tblwrap\"><table class=\"rir-tbl\">\n            <tr><th>Store format<\/th><th class=\"n\">Compliance<\/th><th>Standard failing most<\/th><\/tr>\n<tr><td>Hypermarket<\/td><td class=\"n\"><b style=\"color:var(--g)\">81%<\/b><\/td><td>Secondary display<\/td><\/tr>\n<tr><td>Supermarket<\/td><td class=\"n\"><b style=\"color:var(--o)\">74%<\/b><\/td><td>Share of shelf<\/td><\/tr>\n<tr><td>Discounter<\/td><td class=\"n\"><b style=\"color:var(--r)\">62%<\/b><\/td><td>Must-stock products<\/td><\/tr>\n<tr><td>Traditional trade<\/td><td class=\"n\"><b style=\"color:var(--r)\">69%<\/b><\/td><td>Price labels<\/td><\/tr>\n          <\/table><\/div>\n          <p class=\"rir-bi__cap\" style=\"margin:12px 0 0\">Bei einem Wert unter 70&nbsp;% erh\u00e4lt das Aktionsteam eine Warnung, solange die Kampagne noch l\u00e4uft.<\/p>\n        <\/div><\/div>\n      <\/div><\/div><\/article><article class=\"rir-role\" id=\"role-5\"><span class=\"rir-role__pill\">Store staff<\/span><div class=\"rir-role__grid\"><div><h3>Der Laden belegt, was er zugesagt hat<\/h3><p>Das Ladenpersonal best\u00e4tigt einige Vereinbarungen, die das Gesch\u00e4ft mit Ihnen getroffen hat, etwa ein zus\u00e4tzliches Display oder ein K\u00fchlm\u00f6bel, das dem Standard entspricht. Die Mitarbeiter im Laden fotografieren mit Smartphone oder Tablet, ohne Schulung auf der Plattform. Retail Image Recognition pr\u00fcft das Foto und schickt Ihnen das Ergebnis. <a href=\"https:\/\/assecoplatform.com\/trade-terms-settlement\/\">Trade Terms &amp; Settlement<\/a> kann dem Gesch\u00e4ft anschlie\u00dfend gutschreiben, was ihm nach der Vereinbarung zusteht.<\/p><p class=\"rir-role__foot\"><b>Verantwortlich:<\/b> Trade Marketing und Key Account Management. <b>Messgr\u00f6\u00dfen:<\/b> best\u00e4tigte Platzierungen aus Vereinbarungen, abgerechneter Wert.<\/p><\/div><figure class=\"rir-role__fig rir-role__vid\"><video class=\"rir-autoclip\" muted loop playsinline preload=\"none\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-role-nestle-store-v2-poster.webp\" width=\"960\" height=\"540\" aria-label=\"Film mit Nestl\u00e9: Ein Merchandiser baut ein Display auf, die Marktleiterin fotografiert es, die App best\u00e4tigt die Leistung\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-role-nestle-store-v2.mp4\" type=\"video\/mp4\"><\/video><figcaption>Aus unserem Film mit Nestl\u00e9<\/figcaption><\/figure><\/div><\/article><\/div><\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-8\" aria-labelledby=\"sec-8h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Nachweise<\/p>\n    <h2 id=\"sec-8h\" class=\"rir-h2\" style=\"max-width:38rem\">Wer heute schon <span class=\"text-gradient\">mit Retail Image Recognition arbeitet<\/span><\/h2>\n    <div class=\"rir-nums\">\n      <div class=\"rir-num\"><b>bis zu 20&nbsp;%<\/b><span>h\u00f6here Regalverf\u00fcgbarkeit in unseren eigenen Implementierungen bei FMCG-Herstellern, nach dem Start regelm\u00e4\u00dfiger Regalmessungen mit Retail Image Recognition<\/span><\/div>\n      <div class=\"rir-num\"><b>74<\/b><span>L\u00e4nder, in denen die Plattform im Au\u00dfendienst im Einsatz ist<\/span><\/div>\n      <div class=\"rir-num\"><b>\u00fcber 450<\/b><span>FMCG-Implementierungen der Plattform<\/span><\/div>\n    <\/div>\n    <article class=\"rir-film\">\n      <div class=\"rir-film__body\">\n        <img decoding=\"async\" class=\"rir-film__logo\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/nestle.svg\" alt=\"Nestl\u00e9 logo\" loading=\"lazy\">\n        <h3>Nestl\u00e9: Regaldaten, Au\u00dfendienstdaten und Distributor-Sell-out an einer Stelle<\/h3>\n        <p class=\"rir-film__meta\">Lebensmittel &amp; Getr\u00e4nke &middot; EMENA<\/p>\n        <blockquote>&ldquo;The platform gave us one version of the data truth across our entire commercial organization. Field execution, distributor sell-out, and shelf data &#45; finally in one place and trustworthy enough to build our AI models on top of.&rdquo;<\/blockquote>\n        <cite>Marcin \u0141api\u0144ski, Chief Digital Officer for Central Eastern Europe, Nestl\u00e9<\/cite>\n        <a class=\"rir-film__link\" href=\"https:\/\/www.youtube.com\/watch?v=yK_IXPejSF8\" target=\"_blank\" rel=\"noopener\">Den ganzen Film ansehen<\/a>\n      <\/div>\n      <div class=\"rir-film__media\"><video autoplay muted loop playsinline preload=\"metadata\" poster=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2025\/02\/okladka-nestle-2.jpg\"><source src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/Nestle-short-v1.mp4\" type=\"video\/mp4\"><\/video><\/div>\n    <\/article>\n    <figure class=\"rir-voice\">\n      <div class=\"rir-voice__brand\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/kraft-heinz.svg\" alt=\"Logo von Kraft Heinz\" loading=\"lazy\"><span>Lebensmittel &amp; Getr\u00e4nke &middot; Polen<\/span><\/div>\n      <div class=\"rir-voice__q\"><blockquote>&ldquo;Our sales representatives recommend the intuitive nature of the Image Recognition solution. Its advanced Augmented Reality shelf scanning capabilities and visual Key Performance Indicators (KPIs) have proven effective in monitoring business metrics, such as shelf presence and product availability.&rdquo;<\/blockquote><figcaption><strong>Adam Imielski<\/strong>, Managing Director Poland &amp; Ukraine | Board Member at The Kraft Heinz Company<\/figcaption><\/div>\n    <\/figure>\n    <p class=\"rir-more__h\"><a href=\"https:\/\/assecoplatform.com\/de\/fallstudien\/\">Weitere Kundenbeispiele<\/a><\/p>\n    <div class=\"rir-cards\">\n      <a class=\"rir-card\" href=\"https:\/\/assecoplatform.com\/de\/case-studies\/eurocash-image-recognition-filialstandards\/\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/08\/Eurocash-hero-ang.png\" alt=\"Fallstudie Eurocash Group\" loading=\"lazy\"><div class=\"rir-card__b\"><p class=\"rir-card__k\">Fallstudie<\/p><h3>Eurocash Group<\/h3><p>Wie eine Gro\u00dfhandels- und Franchisegruppe die Standards in ihren Gesch\u00e4ften mit Retail Image Recognition pr\u00fcft.<\/p><\/div><\/a>\n      <a class=\"rir-card\" href=\"https:\/\/assecoplatform.com\/de\/2026\/04\/21\/oshee-retail-execution-55-maerkte\/\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/oshee-shelf-moment-of-truth-retail-summit-2026.jpg\" alt=\"OSHEE-Produkte in einem Ladenregal\" loading=\"lazy\"><div class=\"rir-card__b\"><p class=\"rir-card__k\">Kundenbeispiel<\/p><h3>OSHEE: eine einheitliche Regalauswertung in Polen und Finnland<\/h3><p>Der eigene Au\u00dfendienst von OSHEE und ein lokaler Au\u00dfendienstpartner in Finnland arbeiten mit derselben Regalauswertung und berichten nach denselben KPIs. So hat die Zentrale Helsinki genauso im Blick wie Warschau.<\/p><\/div><\/a>\n    <\/div>\n    <p class=\"rir-more__brands\">Zu den weiteren Herstellern, die Retail Image Recognition nutzen, geh\u00f6ren Ferrero, Perfetti Van Melle, Lotte Wedel, Herbapol-Lublin und McCormick.<\/p>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-9\" aria-labelledby=\"sec-9h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Anerkennung in der Branche<\/p>\n    <h2 id=\"sec-9h\" class=\"rir-h2\" style=\"max-width:40rem\">Externe Belege <span class=\"text-gradient\">f\u00fcr Asseco Platform<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:52rem\">Drei externe Belege. Im POI-Report Vendor Panorama 2026 hat Asseco Platform neun Best-in-Class-Auszeichnungen erhalten, jeweils in einer eigenen Kategorie. Im Gartner<sup>&reg;<\/sup> Market Guide for Retail Execution Management in Fast-Moving Consumer Goods wird Asseco Platform als Representative Vendor genannt. Dazu kommt die Zertifizierung nach ISO\/IEC 27001:2022.<\/p>\n    <div class=\"ap-rec\" data-stagger style=\"display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);margin-top:28px\">\n      <div class=\"ap-rec-card\"><div class=\"ap-rec-card__logo\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/poi.png\" alt=\"Promotion Optimization Institute\" loading=\"lazy\"><\/div><h3>POI-Best-in-Class-Auszeichnungen, jeweils in einer eigenen Kategorie<\/h3><div class=\"ap-rec-card__sub\">POI 2026 Consumer Goods Enterprise Planning &amp; Retail Execution Vendor Panorama<\/div><p>Neun Kategorien: Advanced Imaging Technology (IR\/AR), Coaching &amp; Training, Guided Selling, Mobile UI\/UX, Omnichannel Engagement, Playbooks &amp; Customer Presentations, Predictive &amp; Prescriptive Analytics (AI\/ML\/Agentic), Retail Activity Optimization (RAO) und Retail Merchandising. <a href=\"https:\/\/assecoplatform.com\/de\/poi-vendor-panorama-2026-best-in-class\/\">Die Auszeichnungen 2026 ansehen<\/a>.<\/p><\/div>\n      <div class=\"ap-rec-card\"><div class=\"ap-rec-card__logo\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/gartner.svg\" alt=\"Gartner\" loading=\"lazy\"><\/div><h3>Gartner Representative Vendor<\/h3><div class=\"ap-rec-card__sub\">Gartner Market Guide for Retail Execution Management in Fast-Moving Consumer Goods, April 2025 (G00768127)<\/div><p>Asseco Platform wird in diesem Market Guide als Representative Vendor genannt.<\/p><\/div>\n      <div class=\"ap-rec-card\"><div class=\"ap-rec-card__logo\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/iso.svg\" alt=\"ISO\/IEC 27001:2022\" loading=\"lazy\"><\/div><h3>ISO\/IEC 27001:2022<\/h3><div class=\"ap-rec-card__sub\">Zertifiziert von Alcumus ISOQAR, Februar 2026<\/div><p>Inhaber des Zertifikats ist Asseco Business Solutions, der Geltungsbereich umfasst die FMCG-L\u00f6sungen. Das ist wichtig, wenn Regalfotos von Au\u00dfendienst, Agenturen und Ladenpersonal zusammen mit Handelsdaten und Abrechnungszahlen an Sie \u00fcbermittelt werden.<\/p><\/div>\n    <\/div>\n    <p class=\"ap-gartner-note\" style=\"margin:34px 0 0;font-size:12px;line-height:1.55;color:#6b6b70\">Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner&#39;s research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose. GARTNER is a registered trademark and service mark of Gartner, Inc. and\/or its affiliates in the U.S. and internationally, and is used herein with permission. All rights reserved.<\/p>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-10\" aria-labelledby=\"sec-10h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Anbieterauswahl<\/p>\n    <h2 id=\"sec-10h\" class=\"rir-h2\" style=\"max-width:38rem\">Fragen, die Sie <span class=\"text-gradient\">jedem Anbieter f\u00fcr Regalbilderkennung stellen sollten<\/span><\/h2>\n    <p class=\"rir-lede\" style=\"max-width:46rem\">Jeder Anbieter zeigt in einer Demo Genauigkeit und Geschwindigkeit. Diese drei Fragen kl\u00e4ren, was nach dem Foto passiert.<\/p>\n    <div class=\"rir-qs\">\n      <div class=\"rir-q\"><h3>Wer bekommt die Aufgabe, wenn die Person, die das Foto gemacht hat, das Regal nicht korrigieren kann?<\/h3><p>Eine gute Antwort nennt f\u00fcr jeden Kanal, wer zust\u00e4ndig ist: der Au\u00dfendienstmitarbeiter im inhabergef\u00fchrten Gesch\u00e4ft, eine Agentur f\u00fcr den Umbau eines Regalabschnitts, der Key Account Manager f\u00fcr eine Handelskette und der Laden selbst f\u00fcr seine eigenen Vereinbarungen. Lautet die Antwort &bdquo;ein Bericht f\u00fcr Ihre Zentrale&ldquo;, wartet die L\u00fccke bis zum n\u00e4chsten Besuch.<\/p><\/div>\n      <div class=\"rir-q\"><h3>\u00c4ndert das Ergebnis, was der Au\u00dfendienstmitarbeiter bei diesem Besuch tut?<\/h3><p>Lassen Sie sich den Bildschirm zeigen, den der Au\u00dfendienstmitarbeiter nach dem Scan bekommt. Der Bildschirm sollte in klaren Worten sagen, was zu korrigieren ist, und die Korrektur nach einem zweiten Scan best\u00e4tigen. Wo der Au\u00dfendienstmitarbeiter Bestellungen aufnehmen kann, erstellt Asseco Platform Genius au\u00dferdem einen Bestellvorschlag.<\/p><\/div>\n      <div class=\"rir-q\"><h3>Kann eine Agentur oder der Laden selbst belegen, dass die Arbeit erledigt ist?<\/h3><p>Fragen Sie, ob ein Foto, das nicht Ihr eigener Au\u00dfendienst gemacht hat, als Beleg z\u00e4hlt. Bei Asseco Platform schlie\u00dfen Vorher-nachher-Fotos eine Agenturaufgabe ab, und ein Foto des Ladenpersonals kann ein vereinbartes Display f\u00fcr die Abrechnung in Trade Terms &amp; Settlement best\u00e4tigen.<\/p><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<style>\n.apx-arch *{box-sizing:border-box;margin:0;padding:0;}\n.apx-arch{--apx-coral:#F16B5E;--apx-magenta:#D529E0;--apx-blue:#3F5BEB;--apx-slate:#1E293B;--apx-gray:#676767;font-family:inherit;color:var(--apx-slate);margin-top:44px}\n.apx-arch__inner{max-width:none;margin:0;padding:0;container-type:inline-size;container-name:apxarch;}\n.apx-arch__stage{position:relative;isolation:isolate;}\n.apx-brackets{position:absolute;inset:0;z-index:0;pointer-events:none;}\n.apx-brackets__outer,.apx-brackets__inner{position:absolute;}\n.apx-brackets__outer{left:-2.4%;right:-2.4%;top:30%;bottom:6.2%;}\n.apx-brackets__inner{left:0.8%;right:0.8%;top:33%;bottom:20.9%;}\n.apx-brackets svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;}\n.apx-brackets rect{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-dasharray:0.01 11;}\n.apx-arch__row{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1fr 2fr 1fr;gap:15px;align-items:stretch;}\n.apx-panel{position:relative;background:#fff;border-radius:22px;padding:29px 21px 27px;min-width:0;}\n.apx-panel__cols{display:grid;grid-template-columns:1fr 1fr;gap:19px;}\n.apx-pill{display:inline-block;background:#0b0b0d;color:#fff;font-size:12.5px;font-weight:500;line-height:1;padding:7px 14px;border-radius:999px;margin-bottom:20px;}\n.apx-panel--exec .apx-pill{margin-bottom:18px;}\n.apx-mod{display:flex;flex-direction:column;min-width:0;}\n.apx-mod__head{display:flex;align-items:center;gap:12px;margin-bottom:18px;}\n.apx-mod__icon{flex:0 0 auto;width:46px;height:46px;display:flex;align-items:center;justify-content:center;}\n.apx-mod__icon svg{width:100%;height:100%;display:block;}\n.apx-mod__title{font-size:16px;font-weight:600;line-height:1.28;color:#111;letter-spacing:-.01em;overflow-wrap:break-word;min-width:0;margin:0;}\n.apx-mod__intro{font-size:11.2px;line-height:1.5;color:var(--apx-gray);font-weight:400;margin-bottom:16px;}\n.apx-mod__list{list-style:none;display:flex;flex-direction:column;gap:11px;}\n.apx-mod__list li{position:relative;padding-left:16px;font-size:10.4px;line-height:1.5;color:var(--apx-slate);font-weight:400;overflow-wrap:break-word;}\n.apx-mod__list li::before{content:\"\";position:absolute;left:2px;top:8px;width:3px;height:3px;border-radius:50%;background:var(--apx-slate);}\n.apx-mod__list strong{font-weight:600;color:#000;}\n.apx-mod__more{margin-top:15px;font-size:10.6px;font-weight:600;color:var(--apx-magenta);display:inline-flex;gap:5px;align-items:center;text-decoration:none;}\n.apx-mod__more svg{width:13px;height:13px}\n.apx-panel--here{background:linear-gradient(#fff,#fff) padding-box,var(--ap-grad) border-box;border:1.5px solid transparent;}\n.apx-here{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#fff;background:var(--ap-grad);padding:5px 11px;border-radius:999px;margin-bottom:14px;}\n.apx-here__note{font-size:10.6px;line-height:1.55;color:var(--apx-slate);font-weight:500;padding-left:2px;}\n.apx-here__note b{color:#000}\n.apx-arch__wide{position:relative;z-index:1;width:88%;max-width:1040px;margin:38px auto 0;display:flex;flex-direction:column;gap:14px;}\n.apx-wide{display:flex;align-items:center;gap:8px;background:#fff;border-radius:26px;padding:26px 40px;}\n.apx-wide--genius{box-shadow:0 2px 34px rgba(0,0,0,.09);}\n.apx-wide--oneview{box-shadow:0 4px 26px rgba(0,0,0,.09);}\n.apx-wide__brand{display:flex;align-items:center;gap:16px;flex:0 0 auto;width:240px;}\n.apx-wide__icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}\n.apx-wide__icon svg{width:100%;height:100%;display:block;}\n.apx-wide__name{font-size:17px;font-weight:500;color:#111;letter-spacing:.01em;}\n.apx-wide__body{flex:1 1 auto;min-width:0;overflow-wrap:break-word;}\n.apx-wide__eyebrow{font-size:12px;color:#666;font-weight:400;margin-bottom:10px;line-height:1.3;}\n.apx-wide__text{font-size:12px;color:var(--apx-slate);line-height:1.5;font-weight:400;}\n.apx-wide__text strong{font-weight:600;color:#000;}\n@container apxarch (min-width:1001px) and (max-width:1230px){.apx-mod__head{flex-direction:column;align-items:flex-start;gap:12px;}}\n@container apxarch (max-width:1000px){.apx-arch__row{grid-template-columns:1fr 1fr;gap:15px;}.apx-panel--exec{grid-column:1 \/ -1;}.apx-arch__wide{width:100%;}.apx-brackets{display:none;}}\n@container apxarch (max-width:640px){.apx-arch__row{grid-template-columns:1fr;gap:16px;}.apx-panel--exec{grid-column:auto;}.apx-panel__cols{grid-template-columns:1fr;gap:30px;}.apx-wide{flex-direction:column;align-items:flex-start;gap:16px;padding:26px 24px;}.apx-wide__brand{width:auto;}}\n<\/style>\n<section class=\"ap-band ap-band--grey\" id=\"sec-11\" aria-labelledby=\"eco-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"ap-head-c\">\n      <p class=\"ap-eyebrow\">Eine Plattform<\/p>\n      <h2 class=\"ap-intro__h\" id=\"eco-h\">Eine Plattform. <span class=\"ap-grad-text\">F\u00fcr jeden Schritt der Umsetzung in der FMCG-Branche.<\/span><\/h2>\n      <p class=\"ap-intro__lede\">Retail Image Recognition liest das Regal aus und ist Teil einer einzigen kommerziellen Suite, in der Ausf\u00fchrung, Daten, Planung und Abrechnung auf dieselben Zahlen zugreifen.<\/p>\n    <\/div>\n    <div class=\"apx-arch\"><div class=\"apx-arch__inner\"><div class=\"apx-arch__stage\">\n      <div class=\"apx-brackets\" aria-hidden=\"true\">\n        <div class=\"apx-brackets__outer\"><svg preserveAspectRatio=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs>\n          <linearGradient id=\"apxGradOuter\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\"><stop offset=\"0\" stop-color=\"#16A3A3\"\/><stop offset=\"0.5\" stop-color=\"#5665CA\"\/><stop offset=\"1\" stop-color=\"#A353F9\"\/><\/linearGradient>\n          <linearGradient id=\"apxGradInner\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\"><stop offset=\"0\" stop-color=\"#A353F9\"\/><stop offset=\"0.55\" stop-color=\"#5665CA\"\/><stop offset=\"1\" stop-color=\"#16A3A3\"\/><\/linearGradient>\n        <\/defs><rect x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" rx=\"80\" stroke=\"url(#apxGradOuter)\"\/><\/svg><\/div>\n        <div class=\"apx-brackets__inner\"><svg preserveAspectRatio=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><rect x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" rx=\"38\" stroke=\"url(#apxGradInner)\"\/><\/svg><\/div>\n      <\/div>\n      <div class=\"apx-arch__row\">\n        <article class=\"apx-panel apx-panel--capture\"><span class=\"apx-pill\">Datenerfassung<\/span>\n          <div class=\"apx-mod\"><div class=\"apx-mod__head\"><span class=\"apx-mod__icon\"><svg viewBox=\"139.0 174.9 69.85 68.98\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M195.399 219.469C193.207 219.506 191.176 220.17 189.467 221.287L187.976 222.05C186.892 222.605 185.58 221.937 185.394 220.732L185.211 219.55L185.171 219.298C184.861 214.625 181.683 210.759 177.406 209.401C181.687 208.043 184.864 204.177 185.171 199.504L185.211 199.252L185.394 198.069C185.58 196.865 186.892 196.193 187.976 196.751L189.467 197.514C191.235 198.672 193.353 199.343 195.632 199.332C201.663 199.303 206.638 194.389 206.744 188.362C206.853 182.189 201.926 177.1 195.753 177.001C189.584 176.903 184.503 181.824 184.404 187.986C184.397 188.479 184.422 188.965 184.477 189.443V189.468C184.287 190.71 182.91 191.378 181.822 190.757C179.853 188.837 177.172 187.636 174.206 187.588C168.055 187.49 162.989 192.382 162.861 198.522L162.726 199.42C162.503 200.891 160.874 201.683 159.577 200.946C157.561 199.157 154.898 198.088 151.991 198.131C145.891 198.23 141.015 203.195 141 209.262C141 209.277 141 209.295 141 209.31C141 209.335 141 209.364 141 209.39C141 209.415 141 209.445 141 209.47C141 209.485 141 209.503 141 209.518C141.015 215.589 145.891 220.554 151.991 220.649C154.898 220.696 157.561 219.623 159.577 217.834C160.87 217.096 162.503 217.889 162.726 219.36L162.861 220.258C162.989 226.398 168.055 231.286 174.206 231.192C177.176 231.144 179.853 229.943 181.822 228.023C182.914 227.402 184.287 228.07 184.474 229.311V229.337C184.422 229.815 184.397 230.301 184.404 230.797C184.503 236.963 189.584 241.881 195.753 241.782C201.922 241.684 206.842 236.605 206.744 230.44C206.645 224.274 201.564 219.356 195.395 219.455L195.399 219.469Z\" fill=\"#86E050\"><\/path><\/svg><\/span><h4 class=\"apx-mod__title\">Trade<br>Data&nbsp;Hub<\/h4><\/div>\n            <p class=\"apx-mod__intro\">Sehen Sie, wo Ihre Produkte wirklich verkauft werden.<\/p>\n            <ul class=\"apx-mod__list\"><li>Erkennen Sie, welche Gesch\u00e4fte Ihre Produkte tats\u00e4chlich f\u00fchren und welche regelm\u00e4\u00dfig nachordern<\/li><li>Bis hinunter zu Gesch\u00e4ften, die Sie nur indirekt \u00fcber Distributoren und Gro\u00dfh\u00e4ndler erreichen<\/li><li>\u00dcber alle Vertriebswege hinweg: Distributoren, Handelsketten, Gastronomie, Onlinehandel<\/li><\/ul>\n            <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/de\/trade-data-hub\/\">Mehr zu Trade Data Hub<svg viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a><\/div>\n        <\/article>\n        <article class=\"apx-panel apx-panel--plan\"><span class=\"apx-pill\">Planung<\/span>\n          <div class=\"apx-mod\"><div class=\"apx-mod__head\"><span class=\"apx-mod__icon\"><svg viewBox=\"485.0 179.07 80.99 68.8\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M551.005 235.304C551.036 241.149 546.318 245.867 540.473 245.836C537.296 245.82 534.44 244.401 532.496 242.177L532.487 242.166L532.478 242.155C532.474 242.151 532.466 242.139 532.455 242.126C531.029 240.504 528.953 239.481 526.649 239.469C524.349 239.457 522.297 240.454 520.899 242.045C520.896 242.049 520.893 242.052 520.89 242.055C520.883 242.064 520.876 242.073 520.868 242.081L520.858 242.093L520.848 242.104C518.919 244.318 516.069 245.708 512.888 245.691L511.603 245.685L511.603 245.602C506.372 244.941 502.302 240.473 502.274 235.074C502.243 229.229 506.959 224.512 512.804 224.543C515.984 224.56 518.84 225.978 520.783 228.202L520.803 228.224C520.812 228.235 520.82 228.246 520.826 228.253C522.25 229.874 524.326 230.898 526.631 230.911C528.927 230.923 530.976 229.928 532.377 228.339C532.391 228.323 532.402 228.309 532.409 228.3L532.412 228.298L532.431 228.276C534.36 226.062 537.208 224.671 540.389 224.687C546.224 224.72 550.974 229.47 551.005 235.304ZM532.426 228.281C532.426 228.281 532.425 228.283 532.422 228.287C532.42 228.288 532.418 228.291 532.416 228.293C532.422 228.287 532.426 228.281 532.426 228.281Z\" fill=\"#FFD232\"><\/path><path d=\"M563.963 213.201C563.994 219.046 559.276 223.765 553.431 223.734C550.254 223.717 547.398 222.299 545.454 220.075L545.445 220.064L545.436 220.052C545.432 220.048 545.424 220.037 545.413 220.024C543.987 218.401 541.911 217.379 539.607 217.367C537.307 217.354 535.255 218.352 533.857 219.943C533.854 219.946 533.851 219.949 533.848 219.953C533.841 219.961 533.834 219.97 533.826 219.979L533.816 219.991L533.806 220.002C531.877 222.215 529.027 223.606 525.847 223.589L524.561 223.582L524.561 223.499C519.33 222.838 515.26 218.37 515.232 212.971C515.201 207.126 519.917 202.41 525.762 202.441C528.942 202.457 531.798 203.876 533.741 206.1L533.761 206.122C533.77 206.133 533.778 206.143 533.784 206.151C535.208 207.772 537.284 208.796 539.589 208.808C541.885 208.82 543.934 207.826 545.335 206.237C545.349 206.22 545.36 206.206 545.367 206.198L545.37 206.195L545.389 206.173C547.318 203.959 550.166 202.568 553.347 202.585C559.182 202.617 563.932 207.367 563.963 213.201ZM545.384 206.178C545.384 206.178 545.383 206.18 545.38 206.184C545.378 206.186 545.376 206.188 545.374 206.191C545.38 206.184 545.384 206.178 545.384 206.178Z\" fill=\"#FFD232\"><\/path><path d=\"M548.718 191.86C548.749 197.705 544.03 202.424 538.185 202.393C535.008 202.376 532.152 200.958 530.209 198.734L530.199 198.723L530.19 198.711C530.187 198.707 530.178 198.696 530.168 198.683C528.742 197.061 526.666 196.038 524.362 196.026C522.062 196.014 520.01 197.011 518.612 198.602C518.609 198.605 518.606 198.609 518.603 198.612C518.596 198.62 518.589 198.629 518.581 198.638L518.571 198.65L518.561 198.661C516.632 200.875 513.782 202.265 510.601 202.248L509.316 202.241L509.316 202.158C504.085 201.497 500.015 197.03 499.986 191.63C499.956 185.786 504.672 181.069 510.517 181.1C513.697 181.117 516.553 182.535 518.496 184.759L518.516 184.781C518.525 184.792 518.533 184.802 518.539 184.81C519.963 186.431 522.039 187.455 524.344 187.467C526.64 187.479 528.689 186.485 530.09 184.896C530.104 184.879 530.115 184.865 530.122 184.857L530.125 184.854L530.144 184.832C532.073 182.619 534.92 181.227 538.102 181.244C543.937 181.277 548.687 186.026 548.718 191.86ZM530.139 184.838C530.139 184.838 530.138 184.839 530.135 184.843C530.133 184.845 530.131 184.847 530.129 184.85C530.135 184.844 530.139 184.838 530.139 184.838Z\" fill=\"#FFD232\"><\/path><path d=\"M508.653 213.236C508.653 219.216 503.806 224.062 497.827 224.062C491.848 224.062 487 219.216 487 213.236C487 207.257 491.848 202.409 497.827 202.409C503.807 202.409 508.653 207.257 508.653 213.236Z\" fill=\"#FFD232\"><\/path><\/svg><\/span><h4 class=\"apx-mod__title\">Route-to-Market<br>Optimization<\/h4><\/div>\n            <p class=\"apx-mod__intro\">Entscheiden Sie, wo sich Vertriebsaufwand lohnt und wo Wachstum m\u00f6glich ist.<\/p>\n            <ul class=\"apx-mod__list\"><li>Erkennen Sie, wo das gr\u00f6\u00dfte Wachstumspotenzial liegt, im Handel und in der Gastronomie, und steuern Sie Ihren Au\u00dfendienst dorthin<\/li><li>Route-to-Market Optimization zeigt Ihnen die Gesch\u00e4fte und Gebiete, die Sie noch nicht erreichen<\/li><li>Planen Sie Aktionen dort, wo sie sich rechnen, bevor Sie starten<\/li><\/ul>\n            <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/route-to-market-optimization\/\">Mehr zu Route-to-Market Optimization<svg viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a><\/div>\n        <\/article>\n        <article class=\"apx-panel apx-panel--exec\"><span class=\"apx-pill\">Ausf\u00fchrung<\/span>\n          <div class=\"apx-panel__cols\">\n            <div class=\"apx-mod\"><div class=\"apx-mod__head\"><span class=\"apx-mod__icon\"><svg viewBox=\"823.0 175.0 68.82 68.78\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M889.819 209.392C889.819 205.919 887.903 202.881 885.069 201.29C883.049 200.16 882.051 197.824 882.689 195.6C882.962 194.639 883.088 193.617 883.034 192.555C882.793 187.848 878.962 184.022 874.255 183.781C873.218 183.727 872.213 183.845 871.27 184.108C869.055 184.724 866.66 183.827 865.555 181.816C863.978 178.951 860.931 177 857.413 177C853.895 177 850.899 178.915 849.307 181.747C848.176 183.766 845.839 184.763 843.614 184.126C842.652 183.853 841.63 183.727 840.567 183.781C835.857 184.022 832.029 187.851 831.788 192.555C831.734 193.613 831.856 194.636 832.13 195.593C832.767 197.821 831.77 200.157 829.75 201.29C826.912 202.885 825 205.926 825 209.392C825 212.858 826.916 215.903 829.75 217.493C831.77 218.623 832.767 220.959 832.13 223.183C831.856 224.144 831.73 225.167 831.784 226.228C832.026 230.936 835.857 234.762 840.567 235.003C841.626 235.057 842.649 234.935 843.607 234.661C845.836 234.024 848.173 235.021 849.307 237.04C850.899 239.876 853.942 241.784 857.409 241.784C860.877 241.784 863.97 239.836 865.548 236.972C866.657 234.956 869.055 234.06 871.273 234.675C872.213 234.938 873.214 235.053 874.251 234.999C878.962 234.758 882.79 230.929 883.034 226.225C883.088 225.167 882.966 224.144 882.692 223.187C882.055 220.959 883.052 218.623 885.073 217.49C887.91 215.899 889.819 212.858 889.819 209.392ZM864.619 224.119C864.467 224.99 863.474 225.426 862.75 224.918C861.241 223.853 859.397 223.227 857.409 223.227C855.422 223.227 853.578 223.853 852.069 224.918C851.345 225.429 850.351 224.99 850.2 224.119C849.53 220.293 846.502 217.267 842.674 216.597C841.802 216.446 841.367 215.453 841.874 214.729C842.94 213.221 843.567 211.378 843.567 209.392C843.567 207.405 842.94 205.562 841.874 204.054C841.363 203.331 841.802 202.341 842.674 202.186C846.495 201.517 849.53 198.501 850.2 194.664C850.351 193.793 851.345 193.358 852.069 193.865C853.578 194.931 855.422 195.557 857.409 195.557C859.397 195.557 861.241 194.931 862.75 193.865C863.474 193.354 864.467 193.793 864.619 194.664C865.288 198.49 868.313 201.517 872.145 202.186C873.016 202.338 873.452 203.331 872.944 204.054C871.878 205.562 871.252 207.405 871.252 209.392C871.252 211.378 871.878 213.221 872.944 214.729C873.456 215.453 873.016 216.446 872.145 216.597C868.317 217.267 865.288 220.29 864.619 224.119Z\" fill=\"#F16B5E\"><\/path><path d=\"M857.41 216.003C861.063 216.003 864.025 213.043 864.025 209.392C864.025 205.74 861.063 202.78 857.41 202.78C853.756 202.78 850.794 205.74 850.794 209.392C850.794 213.043 853.756 216.003 857.41 216.003Z\" fill=\"#F16B5E\"><\/path><\/svg><\/span><h4 class=\"apx-mod__title\">Sales &amp; Retail<br>Execution<\/h4><\/div><p class=\"apx-mod__intro\">Mehr Verkauf pro Besuch, weniger Verwaltung f\u00fcr Ihren Au\u00dfendienst.<\/p><ul class=\"apx-mod__list\"><li>Planen Sie Besuche und optimieren Sie Routen: mehr Verkauf, weniger Fahrzeit<\/li><li>Erfassen Sie Bestellungen und arbeiten Sie alle Aufgaben im Laden ab<\/li><li>Erreichen Sie Ihre Regalstandards mit Perfect Store, live bewertet bei jedem Besuch<\/li><li>F\u00fchren Sie jeden Au\u00dfendienstmitarbeiter zum n\u00e4chsten sinnvollen Schritt (RAO)<\/li><li>Mit integrierten Funktionen f\u00fcr Motivation und Coaching bleiben Ihre Teams in Form<\/li><li>Starten Sie Aktionen und kontrollieren Sie die Umsetzung im Laden<\/li><\/ul><a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/de\/aussendienst-software-fmcg\/\">Mehr zu Sales &amp; Retail Execution<svg viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a><\/div>\n            <div class=\"apx-mod apx-panel--here\" style=\"border-radius:16px;padding:18px 16px;height:100%;\"><div class=\"apx-mod__head\"><span class=\"apx-mod__icon\"><svg viewBox=\"1172.0 175.0 68.82 68.78\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M1233.09 222.035C1232.23 221.546 1231.73 220.981 1231.73 220.376C1231.73 219.714 1232.33 219.095 1233.35 218.577V218.569C1236.61 216.802 1238.82 213.354 1238.82 209.392C1238.82 203.63 1234.14 198.954 1228.38 198.954C1225.24 198.954 1222.42 200.34 1220.5 202.532C1220.49 202.554 1220.47 202.572 1220.45 202.589C1219.91 203.223 1219.44 203.925 1219.06 204.677C1218.57 205.541 1218 206.037 1217.4 206.037C1216.73 206.037 1216.11 205.44 1215.6 204.418H1215.59C1215.57 204.367 1215.53 204.321 1215.51 204.274C1215.46 204.191 1215.42 204.108 1215.37 204.026C1215.33 203.961 1215.29 203.9 1215.25 203.835C1215.2 203.763 1215.16 203.694 1215.11 203.622C1215.07 203.554 1215.02 203.489 1214.97 203.424C1214.93 203.36 1214.88 203.299 1214.84 203.234C1214.79 203.165 1214.74 203.097 1214.69 203.032C1214.64 202.975 1214.6 202.917 1214.55 202.859C1214.5 202.791 1214.44 202.723 1214.39 202.654C1214.37 202.633 1214.35 202.611 1214.33 202.589C1214.32 202.572 1214.3 202.55 1214.28 202.532C1214.26 202.51 1214.24 202.492 1214.22 202.471C1214.15 202.388 1214.07 202.305 1214 202.226C1213.95 202.179 1213.91 202.132 1213.86 202.086C1213.78 202.003 1213.7 201.924 1213.62 201.844C1213.57 201.801 1213.53 201.762 1213.49 201.719C1213.4 201.636 1213.3 201.553 1213.21 201.474C1213.17 201.441 1213.13 201.405 1213.09 201.369C1212.98 201.276 1212.87 201.189 1212.75 201.099C1212.73 201.081 1212.7 201.06 1212.68 201.042C1212.53 200.934 1212.39 200.83 1212.24 200.732C1212.24 200.725 1212.23 200.722 1212.22 200.714C1212.08 200.624 1211.94 200.534 1211.8 200.448C1211.75 200.419 1211.7 200.39 1211.65 200.365C1211.55 200.304 1211.45 200.246 1211.34 200.189C1211.28 200.157 1211.22 200.124 1211.16 200.095C1211.15 200.092 1211.14 200.085 1211.13 200.081C1210.27 199.591 1209.77 199.026 1209.77 198.422C1209.77 197.76 1210.37 197.14 1211.39 196.622V196.615C1214.64 194.848 1216.86 191.4 1216.86 187.437C1216.86 181.675 1212.18 177 1206.41 177C1203.27 177 1200.46 178.386 1198.54 180.577C1198.52 180.599 1198.51 180.617 1198.49 180.635C1197.94 181.269 1197.48 181.97 1197.09 182.723C1196.6 183.586 1196.04 184.083 1195.43 184.083C1194.77 184.083 1194.15 183.486 1193.63 182.463H1193.63C1193.27 181.808 1192.85 181.197 1192.37 180.639C1192.35 180.621 1192.33 180.599 1192.31 180.581C1190.4 178.386 1187.58 177 1184.44 177C1178.67 177 1174 181.672 1174 187.437C1174 191.458 1176.28 194.945 1179.61 196.687V196.694C1180.55 197.198 1181.09 197.788 1181.09 198.418C1181.09 199.048 1180.58 199.595 1179.71 200.088C1176.32 201.812 1174 205.332 1174 209.392C1174 215.154 1178.67 219.829 1184.44 219.829C1187.58 219.829 1190.4 218.443 1192.31 216.252C1192.33 216.23 1192.35 216.212 1192.36 216.194C1192.88 215.593 1193.33 214.931 1193.7 214.225H1193.7C1194.21 213.29 1194.8 212.75 1195.43 212.75C1196.06 212.75 1196.6 213.25 1197.09 214.117C1197.13 214.197 1197.17 214.272 1197.21 214.348C1197.24 214.398 1197.27 214.448 1197.3 214.499C1197.35 214.585 1197.4 214.675 1197.45 214.762C1197.49 214.823 1197.53 214.88 1197.56 214.942C1197.61 215.017 1197.66 215.089 1197.7 215.165C1197.75 215.229 1197.79 215.291 1197.83 215.355C1197.88 215.424 1197.93 215.489 1197.97 215.553C1198.02 215.618 1198.07 215.683 1198.12 215.748C1198.16 215.809 1198.21 215.87 1198.26 215.928C1198.31 215.992 1198.37 216.057 1198.42 216.122C1198.44 216.144 1198.46 216.169 1198.48 216.194C1198.5 216.212 1198.51 216.234 1198.53 216.252C1198.55 216.273 1198.57 216.295 1198.59 216.316C1198.66 216.396 1198.74 216.475 1198.81 216.554C1198.85 216.604 1198.9 216.655 1198.95 216.702C1199.02 216.781 1199.11 216.856 1199.19 216.932C1199.23 216.975 1199.28 217.022 1199.33 217.065C1199.41 217.144 1199.5 217.223 1199.59 217.299C1199.64 217.335 1199.68 217.375 1199.72 217.411C1199.83 217.501 1199.94 217.583 1200.05 217.67C1200.08 217.691 1200.1 217.716 1200.13 217.738C1200.27 217.846 1200.42 217.947 1200.57 218.048C1200.58 218.055 1200.59 218.062 1200.6 218.069C1200.73 218.159 1200.87 218.246 1201.01 218.332C1201.06 218.361 1201.11 218.389 1201.16 218.415C1201.26 218.476 1201.36 218.533 1201.47 218.591C1201.5 218.609 1201.53 218.623 1201.57 218.641V218.649C1202.5 219.152 1203.04 219.743 1203.04 220.373C1203.04 221.002 1202.54 221.549 1201.67 222.043C1198.28 223.767 1195.96 227.283 1195.96 231.346C1195.96 237.112 1200.63 241.784 1206.4 241.784C1209.54 241.784 1212.35 240.398 1214.27 238.206C1214.28 238.184 1214.3 238.166 1214.32 238.148C1214.84 237.547 1215.28 236.885 1215.65 236.18H1215.66C1216.16 235.244 1216.76 234.704 1217.39 234.704C1218.02 234.704 1218.56 235.204 1219.05 236.072C1219.43 236.82 1219.9 237.519 1220.44 238.148C1220.46 238.166 1220.47 238.188 1220.49 238.206C1222.41 240.398 1225.22 241.784 1228.36 241.784C1234.13 241.784 1238.8 237.112 1238.8 231.346C1238.8 227.279 1236.47 223.756 1233.08 222.035H1233.09ZM1193.62 204.414C1193.27 203.759 1192.84 203.147 1192.36 202.589C1192.35 202.572 1192.33 202.55 1192.31 202.532C1191.43 201.528 1190.36 200.693 1189.16 200.085C1188.3 199.595 1187.8 199.026 1187.8 198.422C1187.8 197.76 1188.4 197.14 1189.42 196.622V196.615C1190.52 196.018 1191.5 195.233 1192.31 194.301C1192.33 194.279 1192.35 194.261 1192.36 194.243C1192.88 193.642 1193.33 192.98 1193.7 192.275H1193.7C1194.21 191.339 1194.8 190.799 1195.43 190.799C1196.06 190.799 1196.6 191.299 1197.09 192.167C1197.48 192.915 1197.94 193.613 1198.48 194.243C1198.5 194.261 1198.52 194.283 1198.53 194.301C1199.38 195.276 1200.41 196.09 1201.57 196.694V196.701C1202.51 197.205 1203.05 197.796 1203.05 198.425C1203.05 199.055 1202.54 199.602 1201.67 200.092C1201.66 200.092 1201.66 200.099 1201.65 200.103C1201.59 200.131 1201.53 200.16 1201.48 200.193C1201.37 200.25 1201.26 200.311 1201.16 200.372C1201.11 200.398 1201.06 200.423 1201.02 200.452C1200.87 200.538 1200.73 200.632 1200.59 200.725C1200.59 200.725 1200.58 200.732 1200.58 200.736C1200.43 200.837 1200.28 200.941 1200.14 201.045C1200.11 201.067 1200.09 201.089 1200.06 201.107C1199.95 201.193 1199.84 201.279 1199.73 201.373C1199.68 201.409 1199.64 201.445 1199.6 201.481C1199.51 201.56 1199.42 201.639 1199.33 201.719C1199.28 201.762 1199.24 201.805 1199.19 201.848C1199.11 201.927 1199.03 202.003 1198.95 202.082C1198.9 202.129 1198.86 202.179 1198.81 202.226C1198.74 202.305 1198.66 202.384 1198.59 202.464C1198.57 202.485 1198.55 202.507 1198.53 202.528C1198.51 202.55 1198.5 202.568 1198.48 202.586C1198.46 202.607 1198.44 202.633 1198.42 202.654C1198.37 202.719 1198.31 202.787 1198.26 202.852C1198.21 202.91 1198.17 202.971 1198.12 203.029C1198.07 203.093 1198.02 203.158 1197.97 203.223C1197.93 203.288 1197.88 203.353 1197.83 203.421C1197.79 203.486 1197.74 203.547 1197.7 203.612C1197.65 203.684 1197.6 203.756 1197.56 203.831C1197.52 203.892 1197.48 203.954 1197.44 204.015C1197.39 204.101 1197.34 204.187 1197.3 204.274C1197.27 204.328 1197.23 204.378 1197.21 204.432C1197.16 204.511 1197.12 204.594 1197.08 204.673C1196.59 205.537 1196.03 206.034 1195.42 206.034C1194.76 206.034 1194.14 205.436 1193.62 204.414ZM1220.5 224.486C1220.49 224.508 1220.47 224.526 1220.45 224.544C1219.91 225.177 1219.44 225.879 1219.06 226.631C1218.57 227.495 1218 227.992 1217.4 227.992C1216.73 227.992 1216.11 227.394 1215.6 226.372H1215.59C1215.23 225.717 1214.81 225.105 1214.33 224.548C1214.31 224.53 1214.3 224.508 1214.28 224.49C1213.4 223.486 1212.33 222.651 1211.13 222.043C1210.26 221.553 1209.76 220.984 1209.76 220.38C1209.76 219.718 1210.36 219.099 1211.38 218.58V218.573C1211.47 218.523 1211.56 218.472 1211.65 218.418C1211.7 218.389 1211.74 218.364 1211.79 218.339C1211.94 218.253 1212.08 218.159 1212.22 218.066C1212.23 218.066 1212.23 218.062 1212.23 218.058C1212.38 217.958 1212.53 217.853 1212.67 217.745C1212.69 217.727 1212.71 217.709 1212.74 217.691C1212.86 217.601 1212.97 217.511 1213.09 217.418C1213.13 217.385 1213.16 217.353 1213.2 217.317C1213.29 217.234 1213.39 217.155 1213.48 217.069C1213.53 217.029 1213.57 216.986 1213.61 216.946C1213.69 216.867 1213.78 216.784 1213.86 216.702C1213.9 216.658 1213.95 216.612 1213.99 216.565C1214.07 216.482 1214.14 216.399 1214.22 216.316C1214.24 216.295 1214.26 216.277 1214.28 216.255C1214.3 216.234 1214.31 216.216 1214.33 216.198C1214.35 216.176 1214.36 216.154 1214.38 216.133C1214.44 216.064 1214.5 215.996 1214.55 215.928C1214.59 215.874 1214.64 215.816 1214.68 215.759C1214.74 215.69 1214.79 215.622 1214.84 215.553C1214.89 215.492 1214.93 215.431 1214.97 215.366C1215.02 215.298 1215.07 215.233 1215.11 215.165C1215.16 215.096 1215.2 215.028 1215.25 214.956C1215.29 214.891 1215.33 214.826 1215.37 214.762C1215.42 214.682 1215.46 214.6 1215.51 214.517C1215.54 214.459 1215.57 214.402 1215.61 214.344C1215.63 214.305 1215.65 214.265 1215.67 214.222H1215.67C1216.18 213.286 1216.77 212.746 1217.4 212.746C1218.03 212.746 1218.57 213.246 1219.06 214.114C1219.45 214.862 1219.91 215.561 1220.45 216.19C1220.47 216.208 1220.49 216.23 1220.5 216.248C1221.35 217.223 1222.38 218.037 1223.54 218.641V218.649C1224.48 219.152 1225.02 219.743 1225.02 220.373C1225.02 221.002 1224.51 221.553 1223.63 222.043C1222.44 222.651 1221.38 223.482 1220.5 224.483L1220.5 224.486Z\" fill=\"#3FA2EB\"><\/path><\/svg><\/span><h4 class=\"apx-mod__title\">Retail<br>Image Recognition<\/h4><\/div><span class=\"apx-here\">&#9679; Sie sind hier<\/span><p class=\"apx-here__note\">Retail Image Recognition macht aus Regalfotos KPIs f\u00fcr den Au\u00dfendienst und f\u00fcr OneView.<\/p><\/div>\n          <\/div>\n        <\/article>\n        <article class=\"apx-panel apx-panel--settle\"><span class=\"apx-pill\">Abrechnung<\/span>\n          <div class=\"apx-mod\"><div class=\"apx-mod__head\"><span class=\"apx-mod__icon\"><svg viewBox=\"1516.4 178.4 61.42 61.42\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M1537.47 199.466C1541.58 195.358 1541.58 188.697 1537.47 184.588C1533.36 180.48 1526.7 180.48 1522.59 184.588C1518.48 188.697 1518.48 195.358 1522.59 199.466C1526.7 203.575 1533.36 203.575 1537.47 199.466Z\" fill=\"#D529E0\"><\/path><path d=\"M1571.63 233.631C1575.74 229.523 1575.74 222.862 1571.63 218.753C1567.52 214.645 1560.86 214.645 1556.75 218.753C1552.64 222.862 1552.64 229.523 1556.75 233.631C1560.86 237.74 1567.52 237.74 1571.63 233.631Z\" fill=\"#D529E0\"><\/path><path d=\"M1571.63 184.588C1567.44 180.397 1560.65 180.397 1556.46 184.588C1547.32 193.724 1550.75 200.071 1544.41 206.413C1538.58 212.247 1529.66 211.38 1522.59 218.455C1518.4 222.646 1518.4 229.44 1522.59 233.63L1522.6 233.614L1522.59 233.631C1526.78 237.821 1533.57 237.821 1537.76 233.631C1546.9 224.495 1543.46 218.148 1549.81 211.806C1555.64 205.971 1564.56 206.838 1571.63 199.764C1575.82 195.573 1575.82 188.779 1571.63 184.588L1571.61 184.604L1571.63 184.588Z\" fill=\"#D529E0\"><\/path><\/svg><\/span><h4 class=\"apx-mod__title\">Trade Terms<br>&amp; Settlement<\/h4><\/div>\n            <p class=\"apx-mod__intro\">Vereinbaren Sie Handelsvertr\u00e4ge und rechnen Sie sie anschlie\u00dfend mit den tats\u00e4chlichen Zahlen ab.<\/p>\n            <ul class=\"apx-mod__list\"><li>Verwalten Sie alle Handelsvertr\u00e4ge an einer Stelle: Ziele, Boni, Aktionskonditionen<\/li><li>Verfolgen Sie, ob Partner p\u00fcnktlich und vollst\u00e4ndig liefern (OTIF)<\/li><li>Aktionen und Boni werden automatisch auf Basis der tats\u00e4chlichen Verkaufsdaten abgerechnet<\/li><\/ul>\n            <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/trade-terms-settlement\/\">Mehr zu Trade Terms &amp; Settlement<svg viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a><\/div>\n        <\/article>\n      <\/div>\n      <div class=\"apx-arch__wide\">\n        <article class=\"apx-wide apx-wide--genius\"><div class=\"apx-wide__brand\"><span class=\"apx-wide__icon\"><svg viewBox=\"374.62 712.75 67.86 72.21\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M395.176 754.789C400.043 763.219 410.822 766.107 419.251 761.24C425.5 757.633 428.409 752.803 428.305 747.122C428.245 743.814 430.878 741.083 434.186 741.022C437.494 740.961 440.225 743.594 440.286 746.902C440.486 757.845 434.413 766.323 425.243 771.617C411.082 779.793 392.975 774.941 384.799 760.781C376.624 746.62 381.476 728.513 395.636 720.338C405.309 714.754 416.816 715.254 425.731 720.621C428.565 722.328 429.48 726.01 427.773 728.844C426.066 731.679 422.385 732.593 419.551 730.887C414.22 727.677 407.374 727.397 401.628 730.715C393.198 735.582 390.31 746.36 395.176 754.789Z\" fill=\"#A353F9\"><\/path><path d=\"M411.331 763.794C404.492 763.794 398.949 768.086 398.949 773.38C398.949 778.674 404.492 782.966 411.331 782.966C418.169 782.966 423.712 778.674 423.712 773.38C423.712 768.086 418.169 763.794 411.331 763.794Z\" fill=\"#A353F9\"><\/path><path d=\"M411.474 752.89C415.303 752.89 418.407 749.788 418.407 745.961C418.407 742.134 415.303 739.031 411.474 739.031C407.645 739.031 404.541 742.134 404.541 745.961C404.541 749.788 407.645 752.89 411.474 752.89Z\" fill=\"#A353F9\"><\/path><\/svg><\/span><span class=\"apx-wide__name\">Asseco Platform Genius<\/span><\/div>\n          <div class=\"apx-wide__body\"><div class=\"apx-wide__eyebrow\">KI in jedem Schritt<\/div><div class=\"apx-wide__text\">Eine KI f\u00fcr die gesamte Plattform. Asseco Platform Genius empfiehlt den n\u00e4chsten sinnvollen Schritt, beantwortet Ihre Fragen in nat\u00fcrlicher Sprache und erstellt aus dem Befund des Regalfotos einen Bestellvorschlag.<\/div><\/div>\n        <\/article>\n        <article class=\"apx-wide apx-wide--oneview\"><div class=\"apx-wide__brand\"><span class=\"apx-wide__icon\"><svg viewBox=\"372.0 888.0 70.0 59.0\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><rect x=\"374\" y=\"926.385\" width=\"18.6154\" height=\"18.6154\" rx=\"9.30768\" fill=\"#42C5A7\"><\/rect><rect x=\"397.692\" y=\"908.615\" width=\"18.6154\" height=\"36.3846\" rx=\"9.30768\" fill=\"#42C5A7\"><\/rect><rect x=\"421.385\" y=\"890\" width=\"18.6154\" height=\"54.9999\" rx=\"9.30768\" fill=\"#42C5A7\"><\/rect><\/svg><\/span><span class=\"apx-wide__name\">OneView<\/span><\/div>\n          <div class=\"apx-wide__body\"><div class=\"apx-wide__eyebrow\">Ein gemeinsames Reporting f\u00fcr alle Zahlen<\/div><div class=\"apx-wide__text\">Au\u00dfendienst, Daten, Planung und Abrechnung laufen in einem gemeinsamen Reporting zusammen. Vertrieb, Trade Marketing und Finanzen arbeiten mit denselben Zahlen, statt zu streiten, wessen Report stimmt.<\/div><\/div>\n        <\/article>\n      <\/div>\n    <\/div><\/div><\/div>\n  <\/div>\n<\/section>\n\n\n\n<style>\n.rir26 .ap-faq2{max-width:none;margin:40px auto 0}\n.rir26 .ap-faq2__head{max-width:none;margin:0;text-align:left}\n.rir26 .ap-faq2__head .ap-eyebrow{display:inline-block;margin-bottom:14px;background:rgba(17,17,17,.06);color:#56565C;padding:5px 12px;border-radius:20px}\n.rir26 .ap-faq2__lede{font-size:18px;line-height:1.6;color:var(--ap-muted);margin:0;max-width:780px}\n.rir26 .ap-faq2__lede a{color:#7B61FF;font-weight:500;text-decoration:none}\n.rir26 .ap-faq2__group{margin-bottom:52px}\n.rir26 .ap-faq2__group:last-child{margin-bottom:0}\n.rir26 .ap-faq2__h{font-size:18px;font-weight:600;color:var(--ap-text);margin:0 0 22px;padding-bottom:8px;border-bottom:2px solid transparent;border-image:linear-gradient(90deg,#F16B5E,#D529E0,#3F5BEB) 1\/1\/0 stretch}\n.rir26 .ap-faq2__qs{display:grid;grid-template-columns:1fr 1fr;gap:22px 64px}\n.rir26 .ap-faq2__qa{padding-bottom:22px;border-bottom:1px solid rgba(0,0,0,.08)}\n.rir26 .ap-faq2__qa .q{font-weight:600;color:var(--ap-text);font-size:16px;line-height:1.35;margin:0 0 8px}\n.rir26 .ap-faq2__qa .a{font-size:15px;line-height:1.62;color:var(--ap-muted);margin:0}\n.rir26 .ap-faq2__qa .a a{color:#7B61FF;font-weight:500;text-decoration:none}\n@media(max-width:820px){.rir26 .ap-faq2__qs{grid-template-columns:1fr;gap:22px}}\n<\/style>\n<section class=\"ap-band\" id=\"sec-12\" aria-labelledby=\"faq-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"ap-faq2__head\">\n      <p class=\"ap-eyebrow\">FAQ<\/p>\n      <h2 id=\"faq-h\" class=\"rir-h2\" style=\"max-width:40rem\">Die h\u00e4ufigsten Fragen <span class=\"text-gradient\">zu Retail Image Recognition<\/span><\/h2>\n      <p class=\"ap-faq2__lede\">Falls Ihre Frage nicht dabei ist, <a href=\"https:\/\/assecoplatform.com\/de\/kontaktieren-sie-uns\/\">nehmen Sie Kontakt mit uns auf<\/a>.<\/p>\n    <\/div>\n    <div class=\"ap-faq2\"><div class=\"ap-faq2__group\"><h3 class=\"ap-faq2__h\">Au\u00dfendienst und Kanal<\/h3><div class=\"ap-faq2__qs\"><div class=\"ap-faq2__qa\"><p class=\"q\">Ist das ein Instrument, um den Au\u00dfendienst zu kontrollieren?<\/p><p class=\"a\">Retail Image Recognition wurde entwickelt, um das Regal in Ordnung zu bringen. Die Hinweise erreichen den Au\u00dfendienstmitarbeiter w\u00e4hrend des Scans, solange er im Laden noch etwas \u00e4ndern kann. So beginnen Gespr\u00e4che \u00fcber den Laden mit dem Foto vom Regal.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Unsere Au\u00dfendienstmitarbeiter k\u00f6nnen in den Filialen der Handelsketten nichts ver\u00e4ndern. Was haben wir davon?<\/p><p class=\"a\">In Handelsketten wird das Foto des Au\u00dfendienstmitarbeiters zum Beleg f\u00fcr Ihren Key Account Manager. Mit der Zahl der besuchten Gesch\u00e4fte, in denen das Produkt fehlt, und den Fotos zu jedem dieser Gesch\u00e4fte geht er ins Gespr\u00e4ch mit dem Eink\u00e4ufer.<\/p><\/div><\/div><\/div><div class=\"ap-faq2__group\"><h3 class=\"ap-faq2__h\">Genauigkeit und Geschwindigkeit<\/h3><div class=\"ap-faq2__qs\"><div class=\"ap-faq2__qa\"><p class=\"q\">Wie hoch ist die Genauigkeit der Regalbilderkennung?<\/p><p class=\"a\">Retail Image Recognition erreicht eine Erkennungsgenauigkeit von bis zu 98&nbsp;%. Die Genauigkeit h\u00e4ngt von der Qualit\u00e4t der Fotos ab und davon, wie gut das Modell die Verpackungen kennt. Deshalb pr\u00fcft die App das Foto schon w\u00e4hrend des Scans, und das Modell wird mit Ihren eigenen Produkten trainiert.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Wie lange dauert ein Store Check mit Retail Image Recognition?<\/p><p class=\"a\">Die Erfassung der Regaldaten dauert in der Regel 2\u20135 Minuten pro Besuch, gegen\u00fcber 15\u201320 Minuten f\u00fcr eine manuelle Checkliste bei einem Audit \u00fcber mehrere Kategorien. Bei einem einfachen Audit einer einzigen Kategorie f\u00e4llt die Zeitersparnis prozentual gr\u00f6\u00dfer aus, in gro\u00dfen Filialen der Handelsketten kleiner. Das Gespr\u00e4ch im Laden und die Bestellung dauern so lange wie bisher.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Funktioniert Retail Image Recognition auch offline?<\/p><p class=\"a\">Ja. Das Erkennungsmodell l\u00e4uft auf dem Smartphone oder Tablet des Au\u00dfendienstmitarbeiters. So liest Asseco Platform das Regal aus und zeigt das Ergebnis auch in Gesch\u00e4ften ohne Mobilfunknetz. Die Daten werden automatisch synchronisiert, sobald das Ger\u00e4t wieder Empfang hat.<\/p><\/div><\/div><\/div><div class=\"ap-faq2__group\"><h3 class=\"ap-faq2__h\">Onboarding und Integration<\/h3><div class=\"ap-faq2__qs\"><div class=\"ap-faq2__qa\"><p class=\"q\">Erkennt das System unsere Produkte vom ersten Tag an?<\/p><p class=\"a\">Beim Onboarding wird das Modell schon vor dem ersten Besuch im Laden vorbereitet. Unser Team scannt die Verpackungen, erstellt 3D-Modelle der Produkte und trainiert das Modell mit synthetischen Regalszenen. Produkte, die w\u00e4hrend des Projekts auf den Markt kommen, durchlaufen denselben Prozess.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">K\u00f6nnen wir Retail Image Recognition in unsere bestehende SFA-L\u00f6sung einbinden?<\/p><p class=\"a\">Ja. Retail Image Recognition l\u00e4sst sich innerhalb von Asseco Platform einsetzen oder als Erg\u00e4nzung zu einer anderen SFA- oder CRM-L\u00f6sung. F\u00fcr Salesforce Consumer Goods Cloud gibt es eine Integration, die bereits produktiv im Einsatz ist. Mehr dazu auf der Seite <a href=\"https:\/\/assecoplatform.com\/de\/bilderkennung-salesforce-consumer-goods-cloud\/\">Retail Image Recognition f\u00fcr Salesforce Consumer Goods Cloud<\/a>.<\/p><\/div><\/div><\/div><\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-13\" aria-labelledby=\"sec-13h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Der Einstieg<\/p>\n    <h2 id=\"sec-13h\" class=\"rir-h2\" style=\"max-width:34rem\">Starten Sie <span class=\"text-gradient\">mit einer Kategorie<\/span><\/h2>\n    <div class=\"rir-path\">\n      <span class=\"rir-path__rail\" aria-hidden=\"true\"><\/span>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">01<\/span><p class=\"rir-path__stage\">Start<\/p><h3>Eine Kategorie, eine Gruppe von Gesch\u00e4ften<\/h3><p>Wir trainieren das Modell mit Ihren Verpackungen und legen gemeinsam mit Ihnen fest, was als L\u00fccke gilt.<\/p><\/div>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">02<\/span><p class=\"rir-path__stage\">Ausbau<\/p><h3>Weitere Kategorien und Kan\u00e4le<\/h3><p>Der Standard wird auf weitere Kategorien, auf Handelsketten und auf die Arbeit von Agenturen ausgeweitet.<\/p><\/div>\n      <div class=\"rir-path__i\"><span class=\"rir-path__node\">03<\/span><p class=\"rir-path__stage\">Voller Umfang<\/p><h3>Der vollst\u00e4ndige Standard<\/h3><p>Perfect Store Score f\u00fcr alle Gesch\u00e4ftstypen. Au\u00dfendienst, Agenturen und Ladenpersonal greifen auf dieselben Daten zu.<\/p><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-cta\" id=\"sec-14\">\n  <div class=\"ap-cta__inner\">\n    <h2 class=\"ap-cta__h\">Retail Image Recognition an Ihren eigenen Regalen sehen<\/h2>\n    <p class=\"ap-cta__p\">Nennen Sie uns die Kategorie und den Kanal, mit denen Sie beginnen m\u00f6chten, und wir zeigen Ihnen Retail Image Recognition mit Ihren Produkten.<\/p>\n    <a href=\"https:\/\/assecoplatform.com\/de\/kontaktieren-sie-uns\/\" class=\"ap-cta__btn\">Demo vereinbaren\n      <svg viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n    <\/a>\n  <\/div>\n<\/section>\n\n\n\n<script type=\"application\/ld+json\">{\n \"@context\": \"https:\/\/schema.org\",\n \"@type\": \"SoftwareApplication\",\n \"name\": \"Retail Image Recognition\",\n \"applicationCategory\": \"BusinessApplication\",\n \"applicationSubCategory\": \"Retail image recognition software\",\n \"screenshot\": \"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-app-screen-shelf-kpi.webp\",\n \"operatingSystem\": \"Android, iOS\",\n \"url\": \"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/\",\n \"description\": \"Regalbilderkennung (Retail Image Recognition) f\u00fcr FMCG- und CPG-Hersteller. Regalfotos werden auf dem Mobilger\u00e4t des Au\u00dfendienstmitarbeiters ausgewertet, auch ohne Mobilfunknetz, und jeder Befund wird zur Aufgabe f\u00fcr die Person, die handeln kann.\",\n \"featureList\": [\n  \"Regalverf\u00fcgbarkeit\",\n  \"Facings\",\n  \"Listungen\",\n  \"Pflichtprodukte\",\n  \"Out-of-Stock\",\n  \"Share of Shelf\",\n  \"Sichtzone\",\n  \"Produktnachbarschaft\",\n  \"Blockbildung\",\n  \"Reihenfolge\",\n  \"Planogrammtreue\",\n  \"Preispr\u00fcfung\",\n  \"Preistreue\",\n  \"Aktionspreistreue\",\n  \"Wettbewerbspreise\",\n  \"POS- und Display-Umsetzung\",\n  \"Werbemittel\",\n  \"Perfect Store Score\"\n ],\n \"publisher\": {\n  \"@type\": \"Organization\",\n  \"name\": \"Asseco Platform\",\n  \"url\": \"https:\/\/assecoplatform.com\"\n },\n \"inLanguage\": \"de\"\n}<\/script>\n<script type=\"application\/ld+json\">{\n \"@context\": \"https:\/\/schema.org\",\n \"@type\": \"FAQPage\",\n \"mainEntity\": [\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Ist das ein Instrument, um den Au\u00dfendienst zu kontrollieren?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Retail Image Recognition wurde entwickelt, um das Regal in Ordnung zu bringen. Die Hinweise erreichen den Au\u00dfendienstmitarbeiter w\u00e4hrend des Scans, solange er im Laden noch etwas \u00e4ndern kann. So beginnen Gespr\u00e4che \u00fcber den Laden mit dem Foto vom Regal.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Unsere Au\u00dfendienstmitarbeiter k\u00f6nnen in den Filialen der Handelsketten nichts ver\u00e4ndern. Was haben wir davon?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"In Handelsketten wird das Foto des Au\u00dfendienstmitarbeiters zum Beleg f\u00fcr Ihren Key Account Manager. Mit der Zahl der besuchten Gesch\u00e4fte, in denen das Produkt fehlt, und den Fotos zu jedem dieser Gesch\u00e4fte geht er ins Gespr\u00e4ch mit dem Eink\u00e4ufer.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Wie hoch ist die Genauigkeit der Regalbilderkennung?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Retail Image Recognition erreicht eine Erkennungsgenauigkeit von bis zu 98 %. Die Genauigkeit h\u00e4ngt von der Qualit\u00e4t der Fotos ab und davon, wie gut das Modell die Verpackungen kennt. Deshalb pr\u00fcft die App das Foto schon w\u00e4hrend des Scans, und das Modell wird mit Ihren eigenen Produkten trainiert.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Wie lange dauert ein Store Check mit Retail Image Recognition?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Die Erfassung der Regaldaten dauert in der Regel 2\u20135 Minuten pro Besuch, gegen\u00fcber 15\u201320 Minuten f\u00fcr eine manuelle Checkliste bei einem Audit \u00fcber mehrere Kategorien. Bei einem einfachen Audit einer einzigen Kategorie f\u00e4llt die Zeitersparnis prozentual gr\u00f6\u00dfer aus, in gro\u00dfen Filialen der Handelsketten kleiner. Das Gespr\u00e4ch im Laden und die Bestellung dauern so lange wie bisher.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Funktioniert Retail Image Recognition auch offline?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Ja. Das Erkennungsmodell l\u00e4uft auf dem Smartphone oder Tablet des Au\u00dfendienstmitarbeiters. So liest Asseco Platform das Regal aus und zeigt das Ergebnis auch in Gesch\u00e4ften ohne Mobilfunknetz. Die Daten werden automatisch synchronisiert, sobald das Ger\u00e4t wieder Empfang hat.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Erkennt das System unsere Produkte vom ersten Tag an?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Beim Onboarding wird das Modell schon vor dem ersten Besuch im Laden vorbereitet. Unser Team scannt die Verpackungen, erstellt 3D-Modelle der Produkte und trainiert das Modell mit synthetischen Regalszenen. Produkte, die w\u00e4hrend des Projekts auf den Markt kommen, durchlaufen denselben Prozess.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"K\u00f6nnen wir Retail Image Recognition in unsere bestehende SFA-L\u00f6sung einbinden?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Ja. Retail Image Recognition l\u00e4sst sich innerhalb von Asseco Platform einsetzen oder als Erg\u00e4nzung zu einer anderen SFA- oder CRM-L\u00f6sung. F\u00fcr Salesforce Consumer Goods Cloud gibt es eine Integration, die bereits produktiv im Einsatz ist. Mehr dazu auf der Seite Retail Image Recognition f\u00fcr Salesforce Consumer Goods Cloud.\"\n   }\n  }\n ],\n \"inLanguage\": \"de\"\n}<\/script>\n\n\n\n<script>\n\/* AP HERO + init scroll-reveal (kopia ze strony OTIF, CHG-524). Inline na koncu tresci strony. *\/\n(function(){\n  var vids=document.querySelectorAll('.ap-hero-vid');\n  if(vids.length>1){\n    var i=0;\n    try{vids[0].play();}catch(e){}\n    setInterval(function(){\n      var cur=vids[i]; i=(i+1)%vids.length; var nxt=vids[i];\n      try{nxt.currentTime=0; nxt.play();}catch(e){}\n      nxt.classList.add('is-active'); cur.classList.remove('is-active');\n    },8000);\n  }\n})();\n\/* scroll-reveal (DS data-anim\/data-stagger -> .is-visible) *\/\nvar apAnim, apStagger;\nfunction apInitObservers(){\n  if(apAnim)apAnim.disconnect(); if(apStagger)apStagger.disconnect();\n  apAnim=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('is-visible');apAnim.unobserve(e.target);}});},{threshold:0.15,rootMargin:'0px 0px -40px 0px'});\n  document.querySelectorAll('[data-anim]').forEach(function(el){if(!el.classList.contains('is-visible'))apAnim.observe(el);});\n  apStagger=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('is-visible');apStagger.unobserve(e.target);}});},{threshold:0.1,rootMargin:'0px 0px -20px 0px'});\n  document.querySelectorAll('[data-stagger]').forEach(function(el){if(!el.classList.contains('is-visible'))apStagger.observe(el);});\n}\napInitObservers();\n<\/script>\n\n\n\n<script>\n\/* CHG-690: wycinki filmu w kartach rol graja tylko, gdy sa widoczne *\/\n(function(){\n  var vs=[].slice.call(document.querySelectorAll('.rir26 video.rir-autoclip')); if(!vs.length) return;\n  if(!('IntersectionObserver' in window)){vs.forEach(function(v){v.setAttribute('controls','');});return;}\n  var io=new IntersectionObserver(function(es){es.forEach(function(e){var v=e.target;if(e.isIntersecting){var p=v.play();if(p&&p.catch)p.catch(function(){v.setAttribute('controls','');});}else{v.pause();}});},{threshold:0.45});\n  vs.forEach(function(v){io.observe(v);});\n})();\n<\/script>\n<script>\n\/* CHG-685: karuzela nagran RIR (strzalki + jedno wideo naraz) *\/\n(function(){\n  var box=document.querySelector('.rir26 .rir-vids'); if(!box) return;\n  var tr=box.querySelector('.rir-vids__track'), bs=box.querySelectorAll('.rir-vids__btn');\n  function step(){var i=tr.querySelector('.rir-vids__i');return i?i.getBoundingClientRect().width+24:300}\n  function upd(){var max=tr.scrollWidth-tr.clientWidth-2;bs[0].disabled=tr.scrollLeft<=2;bs[1].disabled=tr.scrollLeft>=max}\n  [].forEach.call(bs,function(b){b.addEventListener('click',function(){tr.scrollBy({left:step()*(+b.getAttribute('data-dir')),behavior:'smooth'})})});\n  tr.addEventListener('scroll',upd,{passive:true}); window.addEventListener('resize',upd); upd();\n  var vs=tr.querySelectorAll('video');\n  [].forEach.call(vs,function(v){v.addEventListener('play',function(){[].forEach.call(vs,function(o){if(o!==v&&!o.paused)o.pause()})})});\n})();\n<\/script>\n<script>\n\/* CHG-665: rail rol (scroll-spy) + zakladki scenariuszy agencji *\/\n(function(){\n  var links=[].slice.call(document.querySelectorAll('.rir26 .rir-rail a'));\n  var map={};links.forEach(function(a){map[a.getAttribute('href').slice(1)]=a;});\n  if('IntersectionObserver' in window && links.length){\n    var io=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){links.forEach(function(l){l.classList.remove('is-on');});var a=map[e.target.id];if(a)a.classList.add('is-on');}});},{rootMargin:'-35% 0px -55% 0px'});\n    Object.keys(map).forEach(function(id){var el=document.getElementById(id);if(el)io.observe(el);});\n  }\n  var tl=document.querySelector('.rir26 .rir-tabs');\n  if(tl){var bs=[].slice.call(tl.querySelectorAll('[role=tab]'));\n    function sel(b){bs.forEach(function(x){var on=x===b;x.setAttribute('aria-selected',on?'true':'false');x.tabIndex=on?0:-1;var p=document.getElementById(x.getAttribute('aria-controls'));if(p)p.hidden=!on;});}\n    bs.forEach(function(b,i){b.addEventListener('click',function(){sel(b);});b.addEventListener('keydown',function(e){var k=e.key;if(k==='ArrowRight'||k==='ArrowLeft'){e.preventDefault();var n=bs[(i+(k==='ArrowRight'?1:bs.length-1))%bs.length];sel(n);n.focus();}});});}\n})();\n<\/script>\n\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Das h\u00e4ngt vom Laden ab. Ihr Au\u00dfendienstmitarbeiter behebt die L\u00fccke noch beim Besuch, ein Merchandiser der Agentur baut den Regalabschnitt neu auf oder Ihr Key Account Manager nimmt das Thema&hellip;<\/p>\n","protected":false},"author":0,"featured_media":11198,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"wp-custom-template-page-with-dark-footer","meta":{"_eb_attr":"","footnotes":""},"class_list":["post-11208","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.0 (Yoast SEO v28.6) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Regalbilderkennung: Retail Image Recognition | Asseco Platform<\/title>\n<meta name=\"description\" content=\"Regalbilderkennung f\u00fcr FMCG-Hersteller: bis zu 98 % Genauigkeit, offline auf dem Mobilger\u00e4t. Jede Regall\u00fccke geht an die Person, die sie beheben kann.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Retail Image Recognition: Wer bringt das Regal in Ordnung, wenn das Foto eine L\u00fccke zeigt?\" \/>\n<meta property=\"og:description\" content=\"Regalbilderkennung f\u00fcr FMCG-Hersteller: bis zu 98 % Genauigkeit, offline auf dem Mobilger\u00e4t. Jede Regall\u00fccke geht an die Person, die sie beheben kann.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/\" \/>\n<meta property=\"og:site_name\" content=\"Asseco Platform\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-21T09:04:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Regalbilderkennung\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"19 Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/\",\"name\":\"Regalbilderkennung: Retail Image Recognition | Asseco Platform\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/rir-og-nestle-display-scan.jpg\",\"datePublished\":\"2026-04-03T20:29:33+00:00\",\"dateModified\":\"2026-10-21T09:04:13+00:00\",\"description\":\"Regalbilderkennung f\u00fcr FMCG-Hersteller: bis zu 98 % Genauigkeit, offline auf dem Mobilger\u00e4t. Jede Regall\u00fccke geht an die Person, die sie beheben kann.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/rir-og-nestle-display-scan.jpg\",\"contentUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/rir-og-nestle-display-scan.jpg\",\"width\":1200,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/regalbilderkennung\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/homepage\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Regalbilderkennung\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/#website\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/\",\"name\":\"Asseco Platform\",\"description\":\"Solutions for FMCG\",\"publisher\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/#organization\",\"name\":\"Asseco Platform\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/asseco_platform.svg\",\"contentUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/asseco_platform.svg\",\"caption\":\"Asseco Platform\"},\"image\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Regalbilderkennung: Retail Image Recognition | Asseco Platform","description":"Regalbilderkennung f\u00fcr FMCG-Hersteller: bis zu 98 % Genauigkeit, offline auf dem Mobilger\u00e4t. Jede Regall\u00fccke geht an die Person, die sie beheben kann.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/","og_locale":"de_DE","og_type":"article","og_title":"Retail Image Recognition: Wer bringt das Regal in Ordnung, wenn das Foto eine L\u00fccke zeigt?","og_description":"Regalbilderkennung f\u00fcr FMCG-Hersteller: bis zu 98 % Genauigkeit, offline auf dem Mobilger\u00e4t. Jede Regall\u00fccke geht an die Person, die sie beheben kann.","og_url":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/","og_site_name":"Asseco Platform","article_modified_time":"2026-10-21T09:04:13+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_title":"Regalbilderkennung","twitter_image":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"19 Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/","url":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/","name":"Regalbilderkennung: Retail Image Recognition | Asseco Platform","isPartOf":{"@id":"https:\/\/assecoplatform.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/#primaryimage"},"image":{"@id":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/#primaryimage"},"thumbnailUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg","datePublished":"2026-04-03T20:29:33+00:00","dateModified":"2026-10-21T09:04:13+00:00","description":"Regalbilderkennung f\u00fcr FMCG-Hersteller: bis zu 98 % Genauigkeit, offline auf dem Mobilger\u00e4t. Jede Regall\u00fccke geht an die Person, die sie beheben kann.","breadcrumb":{"@id":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/assecoplatform.com\/de\/regalbilderkennung\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/#primaryimage","url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg","contentUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/rir-og-nestle-display-scan.jpg","width":1200,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/assecoplatform.com\/de\/regalbilderkennung\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/assecoplatform.com\/de\/homepage\/"},{"@type":"ListItem","position":2,"name":"Regalbilderkennung"}]},{"@type":"WebSite","@id":"https:\/\/assecoplatform.com\/de\/#website","url":"https:\/\/assecoplatform.com\/de\/","name":"Asseco Platform","description":"Solutions for FMCG","publisher":{"@id":"https:\/\/assecoplatform.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/assecoplatform.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/assecoplatform.com\/de\/#organization","name":"Asseco Platform","url":"https:\/\/assecoplatform.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/assecoplatform.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/07\/asseco_platform.svg","contentUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/07\/asseco_platform.svg","caption":"Asseco Platform"},"image":{"@id":"https:\/\/assecoplatform.com\/de\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/pages\/11208","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/comments?post=11208"}],"version-history":[{"count":2,"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/pages\/11208\/revisions"}],"predecessor-version":[{"id":11211,"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/pages\/11208\/revisions\/11211"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/media\/11198"}],"wp:attachment":[{"href":"https:\/\/assecoplatform.com\/de\/wp-json\/wp\/v2\/media?parent=11208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}