{"id":6746,"date":"2026-04-08T11:22:01","date_gmt":"2026-04-08T11:22:01","guid":{"rendered":"https:\/\/assecoplatform.com\/sprzedaz-i-realizacja-w-handlu-detalicznym\/"},"modified":"2026-08-17T13:32:21","modified_gmt":"2026-08-17T13:32:21","slug":"sprzedaz-i-realizacja-w-handlu-detalicznym","status":"publish","type":"page","link":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/","title":{"rendered":"Sales &amp; Retail Execution"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull is-layout-flow wp-block-group-is-layout-flow\" style=\"padding-top:0;padding-right:0;padding-bottom:0;padding-left:0\">\n<style>\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\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\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\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\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\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    \/* ============================================================\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\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<\/style>\n<!-- ===== AP CYCLE + CAPABILITY SYSTEM (CHG-356 \u00b7 Claude design) ===== -->\n<svg width=\"0\" height=\"0\" style=\"position:absolute\" aria-hidden=\"true\" focusable=\"false\"><defs>\n<symbol id=\"ic-prepare\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\"\/><rect x=\"8\" y=\"2\" width=\"8\" height=\"4\" rx=\"1\"\/><path d=\"M12 11h4\"\/><path d=\"M12 16h4\"\/><path d=\"M8 11h.01\"\/><path d=\"M8 16h.01\"\/><\/symbol>\n<symbol id=\"ic-instore\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7\"\/><path d=\"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8\"\/><path d=\"M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4\"\/><path d=\"M2 7h20\"\/><\/symbol>\n<symbol id=\"ic-execute\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"3\" width=\"20\" height=\"5\" rx=\"1\"\/><path d=\"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8\"\/><path d=\"M10 12h4\"\/><\/symbol>\n<symbol id=\"ic-review\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 3v16a2 2 0 0 0 2 2h16\"\/><path d=\"m19 9-5 5-4-4-3 3\"\/><path d=\"M19 9h-3\"\/><path d=\"M19 9v3\"\/><\/symbol>\n<symbol id=\"cap-planning\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\"\/><path d=\"M16 2v4\"\/><path d=\"M8 2v4\"\/><path d=\"M3 10h18\"\/><path d=\"m9 16 2 2 4-4\"\/><\/symbol>\n<symbol id=\"cap-priorities\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><circle cx=\"12\" cy=\"12\" r=\"6\"\/><circle cx=\"12\" cy=\"12\" r=\"2\"\/><\/symbol>\n<symbol id=\"cap-route\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"6\" cy=\"19\" r=\"3\"\/><path d=\"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15\"\/><circle cx=\"18\" cy=\"5\" r=\"3\"\/><\/symbol>\n<symbol id=\"cap-segmentation\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21.21 15.89A10 10 0 1 1 8 2.83\"\/><path d=\"M22 12A10 10 0 0 0 12 2v10z\"\/><\/symbol>\n<symbol id=\"ic-check\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M20 6 9 17l-5-5\"\/><\/symbol>\n<symbol id=\"ic-recycle\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\"\/><path d=\"M21 3v5h-5\"\/><path d=\"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\"\/><path d=\"M8 16H3v5\"\/><\/symbol>\n<symbol id=\"cap-visit\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect width=\"7\" height=\"7\" x=\"3\" y=\"3\" rx=\"1\"\/><rect width=\"7\" height=\"7\" x=\"14\" y=\"3\" rx=\"1\"\/><rect width=\"7\" height=\"7\" x=\"14\" y=\"14\" rx=\"1\"\/><rect width=\"7\" height=\"7\" x=\"3\" y=\"14\" rx=\"1\"\/><\/symbol>\n<symbol id=\"cap-orders\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"8\" cy=\"21\" r=\"1\"\/><circle cx=\"19\" cy=\"21\" r=\"1\"\/><path d=\"M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12\"\/><\/symbol>\n<symbol id=\"cap-story\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M16 7h6v6\"\/><path d=\"m22 7-8.5 8.5-5-5L2 17\"\/><\/symbol>\n<symbol id=\"cap-agreement\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4\"\/><path d=\"M14 2v4a2 2 0 0 0 2 2h4\"\/><path d=\"m3 15 2 2 4-4\"\/><\/symbol>\n<symbol id=\"cap-perfectstore\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z\"\/><path d=\"m9 12 2 2 4-4\"\/><\/symbol>\n<symbol id=\"cap-rir\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z\"\/><circle cx=\"12\" cy=\"13\" r=\"3\"\/><\/symbol>\n\n<symbol id=\"cap-checks\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m3 17 2 2 4-4\"\/><path d=\"m3 7 2 2 4-4\"\/><path d=\"M13 6h8\"\/><path d=\"M13 12h8\"\/><path d=\"M13 18h8\"\/><\/symbol>\n<symbol id=\"cap-pos\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect width=\"20\" height=\"14\" x=\"2\" y=\"3\" rx=\"2\"\/><line x1=\"8\" x2=\"16\" y1=\"21\" y2=\"21\"\/><line x1=\"12\" x2=\"12\" y1=\"17\" y2=\"21\"\/><\/symbol>\n<symbol id=\"cap-promo\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z\"\/><circle cx=\"7.5\" cy=\"7.5\" r=\".5\" fill=\"currentColor\"\/><\/symbol>\n<symbol id=\"cap-oneview\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 3v16a2 2 0 0 0 2 2h16\"\/><path d=\"M18 17V9\"\/><path d=\"M13 17V5\"\/><path d=\"M8 17v-3\"\/><\/symbol>\n<symbol id=\"cap-coaching\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\"\/><circle cx=\"9\" cy=\"7\" r=\"4\"\/><path d=\"M22 21v-2a4 4 0 0 0-3-3.87\"\/><path d=\"M16 3.13a4 4 0 0 1 0 7.75\"\/><\/symbol>\n<symbol id=\"cap-incentives\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 9H4.5a2.5 2.5 0 0 1 0-5H6\"\/><path d=\"M18 9h1.5a2.5 2.5 0 0 0 0-5H18\"\/><path d=\"M4 22h16\"\/><path d=\"M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22\"\/><path d=\"M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22\"\/><path d=\"M18 2H6v7a6 6 0 0 0 12 0V2Z\"\/><\/symbol>\n<\/defs><\/svg>\n<style>\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<\/style>\n\n<!-- ===== HERO (45-hero-video-drs) + AP Design Layer .ap-hero ===== -->\n<style>\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.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<\/style>\n<section>\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=\"auto\"><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\">Platforma retail execution dla FMCG<\/span>\n      <h1 class=\"hero-subpage__heading\">Sales &amp; Retail Execution: <span class=\"text-gradient\">prze\u0142\u00f3\u017c strategi\u0119 na to, co naprawd\u0119 dzieje si\u0119 na p\u00f3\u0142ce<\/span>.<\/h1>\n      <p style=\"font-size:clamp(20px,2.1vw,26px);line-height:1.35;font-weight:600;color:#fff;max-width:44rem;margin-bottom:var(--space-md)\">Twoja strategia handlowa jest warta tyle, ile jej wykonanie przy p\u00f3\u0142ce.<\/p>\n      <p class=\"text-h10 text-light-gray\" style=\"max-width:42rem;margin-bottom:var(--space-xl)\">Sales &amp; Retail Execution to platforma retail execution, kt\u00f3ra prowadzi ca\u0142y cykl wizyty &mdash; planowanie, realizacj\u0119, przegl\u0105d &mdash; dzi\u0119ki czemu ka\u017cda wizyta w terenie przek\u0142ada strategi\u0119 na mierzalne wyniki w sklepie.<\/p>\n      <div class=\"hero-subpage__cta\">\n        <a href=\"https:\/\/assecoplatform.com\/pl\/skontaktuj-sie-z-nami\/\" class=\"btn btn-primary-white btn-has-arrow\">Um\u00f3w demo na \u017cywo<\/a>\n        <a href=\"#how-it-works\" class=\"btn btn-outline-white\">\n          <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          Zobacz, jak to dzia\u0142a\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\">\n          <div class=\"stat-card__value\">125,000+<\/div>\n          <div class=\"stat-card__label\">U\u017cytkownik\u00f3w platformy<\/div>\n        <\/div>\n        <div class=\"stat-card stat-card--glass\">\n          <div class=\"stat-card__value\">74<\/div>\n          <div class=\"stat-card__label\">Kraj\u00f3w<\/div>\n        <\/div>\n        <div class=\"stat-card stat-card--glass\">\n          <div class=\"stat-card__value\">5&times;<\/div>\n          <div class=\"stat-card__label\">POI Best-in-Class (2025)<\/div>\n        <\/div>\n        <div class=\"stat-card stat-card--glass\">\n          <div class=\"stat-card__value\">Gartner<\/div>\n          <div class=\"stat-card__label\">Representative Vendor, Retail Execution<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== STICKY SUB-NAV (visit cycle scroll-spy + persistent CTA) ===== -->\n<style>\n.sre-subnav{position:fixed;top:0;left:0;right:0;z-index:120;transform:translateY(-100%);opacity:0;transition:transform .3s ease,opacity .3s ease;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid #ECECF1;font-family:\"PP Mori\",Arial,sans-serif}\n.sre-subnav.is-pinned{transform:translateY(0);opacity:1}\nbody.admin-bar .sre-subnav{top:32px}\n@media(max-width:782px){body.admin-bar .sre-subnav{top:46px}}\n.sre-subnav__inner{max-width:1120px;margin:0 auto;padding:0 40px;height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px}\n.sre-subnav__phases{display:flex;align-items:center;gap:4px;min-width:0}\n.sre-subnav__link{position:relative;display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:999px;font-size:14px;font-weight:500;letter-spacing:-.1px;color:#5A5A62;background:#F1F1F4;text-decoration:none;white-space:nowrap;transition:all .15s ease}\n.sre-subnav__link:hover{color:#1B1B1B;background:#E7E7EC}\n.sre-subnav__num{font-size:11px;font-weight:700;opacity:.5}\n.sre-subnav__link.is-active{color:#fff;font-weight:600;background:linear-gradient(135deg,#F16B5E 0%,#D529E0 52%,#3F5BEB 100%);box-shadow:0 6px 16px -6px rgba(213,41,224,.5)}\n.sre-subnav__link.is-active:hover{color:#fff}\n.sre-subnav__link.is-active .sre-subnav__num{opacity:.75}\n.sre-subnav__cta{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:999px;font-size:14px;font-weight:600;color:#fff;background:linear-gradient(135deg,#F16B5E 0%,#D529E0 52%,#3F5BEB 100%);text-decoration:none;white-space:nowrap}\n.sre-subnav__cta svg{width:15px;height:15px}\n.sre-subnav__descwrap{border-top:1px solid #F0F0F3;background:rgba(250,250,252,.7)}\n.sre-subnav__desc{max-width:1120px;margin:0 auto;padding:9px 40px;font-size:13px;line-height:1.4;color:#5A5A62;font-weight:500;letter-spacing:-.1px}\n.sre-subnav__desc b{color:#1B1B1B;font-weight:600}\n@media(max-width:900px){.sre-subnav__inner{padding:0 14px;height:52px;gap:12px}.sre-subnav__phases{gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sre-subnav__phases::-webkit-scrollbar{display:none}.sre-subnav__num{display:none}.sre-subnav__link{padding:6px 11px;font-size:12.5px;gap:0}.sre-subnav__link.is-active{background:linear-gradient(135deg,#F16B5E 0%,#D529E0 52%,#3F5BEB 100%);color:#fff}.sre-subnav__cta{padding:8px 13px;font-size:12.5px}.sre-subnav__descwrap{display:none}}\n@media(max-width:560px){.sre-subnav__cta .sre-subnav__ctatxt{display:none}.sre-subnav__cta{padding:8px 10px}}\n#how-it-works,#sre-sell,#sre-execute,#sre-review{scroll-margin-top:104px}\nbody.admin-bar #how-it-works,body.admin-bar #sre-sell,body.admin-bar #sre-execute,body.admin-bar #sre-review{scroll-margin-top:138px}\nhtml{scroll-behavior:smooth}\n<\/style>\n<div class=\"sre-subnav\" id=\"sre-subnav\" aria-label=\"Visit cycle navigation\">\n  <div class=\"sre-subnav__inner\">\n    <div class=\"sre-subnav__phases\">\n      <a class=\"sre-subnav__link\" href=\"#how-it-works\" data-spy=\"how-it-works\" data-phase=\"Prepare\" data-desc=\"the right stores, the best route, and the priorities worth acting on, before the rep sets off.\"><span class=\"sre-subnav__num\">1<\/span><span class=\"sre-subnav__txt\">Prepare<\/span><\/a>\n      <a class=\"sre-subnav__link\" href=\"#sre-sell\" data-spy=\"sre-sell\" data-phase=\"Sell\" data-desc=\"win the order and the bigger deal in every store: the right assortment, sold in on the store's own numbers.\"><span class=\"sre-subnav__num\">2<\/span><span class=\"sre-subnav__txt\">Sell<\/span><\/a>\n      <a class=\"sre-subnav__link\" href=\"#sre-execute\" data-spy=\"sre-execute\" data-phase=\"Execute\" data-desc=\"make the shelf match the plan and prove it: availability, visibility, price and promotion, scored on every visit.\"><span class=\"sre-subnav__num\">3<\/span><span class=\"sre-subnav__txt\">Execute<\/span><\/a>\n      <a class=\"sre-subnav__link\" href=\"#sre-review\" data-spy=\"sre-review\" data-phase=\"Review\" data-desc=\"see what actually drove sales, and act on it while the period is still open.\"><span class=\"sre-subnav__num\">4<\/span><span class=\"sre-subnav__txt\">Review<\/span><\/a>\n    <\/div>\n    <a class=\"sre-subnav__cta\" href=\"https:\/\/assecoplatform.com\/pl\/skontaktuj-sie-z-nami\/\"><span class=\"sre-subnav__ctatxt\">Book a demo<\/span><svg viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a>\n  <\/div>\n  <div class=\"sre-subnav__descwrap\"><p class=\"sre-subnav__desc\" id=\"sre-desc\"><b>Prepare<\/b> &mdash; the right stores, the best route, and the priorities worth acting on, before the rep sets off.<\/p><\/div>\n<\/div>\n\n<!-- ===== SECTION 1: THE GAP \/ WHY ===== -->\n<section style=\"padding:var(--space-4xl) 0;background:var(--color-gray)\">\n  <div class=\"container\">\n    <div data-anim=\"fade\" style=\"max-width:48rem\">\n      <span style=\"display:inline-block;background:rgba(17,17,17,0.06);color:#56565c;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;font-size:11px;padding:5px 12px;border-radius:20px;margin-bottom:var(--space-md)\">Luka<\/span>\n      <h2 class=\"text-h5 text-black\" style=\"margin-bottom:var(--space-md)\">Dlaczego strategia <span class=\"text-gradient\">zatrzymuje si\u0119 przy p\u00f3\u0142ce<\/span>?<\/h2>\n      <p class=\"text-h10 text-dark-gray\" style=\"margin:0 0 var(--space-md)\">Asortyment, ceny, promocje i standardy p\u00f3\u0142ki ustalasz w centrali. Czy rzeczywi\u015bcie trafiaj\u0105 do sklep\u00f3w &mdash; do ka\u017cdego z osobna, zgodnie z planem &mdash; zale\u017cy od przedstawiciela przy p\u00f3\u0142ce. I to jest najs\u0142abiej widoczna cz\u0119\u015b\u0107 ca\u0142ej operacji. Rynki si\u0119 r\u00f3\u017cni\u0105, a spor\u0105 cz\u0119\u015b\u0107 dnia przedstawiciela wci\u0105\u017c zjadaj\u0105 dojazdy i administracja, wi\u0119c jako\u015b\u0107 egzekucji rozje\u017cd\u017ca si\u0119 mi\u0119dzy sklepami, a centrala cz\u0119sto dowiaduje si\u0119 o tym za p\u00f3\u017ano.<\/p>\n      <p class=\"text-black\" style=\"font-size:clamp(19px,1.9vw,23px);font-weight:600;line-height:1.4;margin:0\">Nie pokierujesz tym, czego nie widzisz.<\/p>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== SECTION 2: WHAT IT IS ===== -->\n<section style=\"padding:var(--space-4xl) 0;background:var(--color-white)\">\n  <div class=\"container\">\n    <div style=\"display:flex;gap:var(--space-2xl);align-items:center;flex-wrap:wrap\">\n      <div data-anim=\"fade\" style=\"flex:3 1 380px;min-width:0;max-width:48rem\">\n        <h2 class=\"text-black\" style=\"font-size:clamp(22px,2.6vw,30px);font-weight:600;line-height:1.25;margin:0 0 var(--space-md)\">Czym jest Sales &amp; Retail Execution?<\/h2>\n        <p class=\"text-dark-gray\" style=\"font-size:clamp(17px,1.6vw,20px);line-height:1.55;margin:0\">Sales &amp; Retail Execution to oprogramowanie, w kt\u00f3rym zesp\u00f3\u0142 terenowy FMCG prowadzi ca\u0142\u0105 prac\u0119 w sklepie: w\u0142a\u015bciwy asortyment na p\u00f3\u0142ce, we w\u0142a\u015bciwej cenie, z promocjami i ekspozycjami wystawionymi tak, jak ustalono. Przedstawiciel pracuje na tablecie przez ca\u0142y cykl wizyty: planuje wizyt\u0119, dzia\u0142a przy p\u00f3\u0142ce, podsumowuje efekty. Dzi\u0119ki temu strategia ustalona w centrali rzeczywi\u015bcie trafia do ka\u017cdego sklepu, a z ka\u017cdej wizyty wracaj\u0105 dane, na kt\u00f3rych mo\u017cesz od razu dzia\u0142a\u0107.<\/p>\n      <\/div>\n      <div data-anim=\"fade\" style=\"flex:1 1 220px;min-width:0\">\n        <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-WhatIs.webp\" alt=\"Mobile Touch on iPad \u2014 the field app home with today's visits and live targets\" loading=\"lazy\" style=\"width:100%;height:auto;border-radius:18px;box-shadow:0 30px 70px -40px rgba(27,27,27,0.5);display:block\">\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== VISIT CYCLE (Attio-style sticky rail) ===== -->\n<style>\n\/* hide top sub-nav: the left rail is the wayfinding now *\/\n.sre-subnav{display:none !important}\n#how-it-works{scroll-margin-top:80px;background:var(--ap-card);padding-top:34px}\n#how-it-works .ap-band__inner{max-width:1480px}\n\/* ===== VISIT CYCLE \u2014 sticky rail + scroll content ===== *\/\n.cyc{display:grid;grid-template-columns:270px 1fr;gap:64px;margin-top:8px;align-items:start}\n.cyc .rail{position:sticky;top:100px;align-self:start}\n.cyc .rail__cap{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 20px}\n.cyc .rail__cap svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}\n.cyc .ph{margin-bottom:20px}\n.cyc .ph__name{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:600;letter-spacing:-.3px;color:var(--ap-muted2);margin:0 0 12px;cursor:pointer;transition:color .2s}\n.cyc .ph__name .num{width:22px;height:22px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:var(--ap-card);color:var(--ap-muted2);transition:all .2s}\n.cyc .ph.is-active .ph__name{color:var(--ap-text)}\n.cyc .ph.is-active .ph__name .num{background:var(--ap-grad);color:#fff}\n.cyc .ph__items{list-style:none;margin:0;padding:0 0 0 32px;display:none}\n.cyc .ph.is-active .ph__items{display:block}\n.cyc .ph__item{position:relative;font-size:14.5px;line-height:1.35;color:var(--ap-muted2);padding:7px 0 7px 16px;cursor:pointer;transition:color .18s}\n.cyc .ph__item::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:2px;border-radius:2px;background:var(--ap-line)}\n.cyc .ph__item:hover{color:var(--ap-muted)}\n.cyc .ph__item.is-active{color:var(--ap-text);font-weight:600}\n.cyc .ph__item.is-active::before{background:var(--ap-grad)}\n.cyc .rc{display:flex;flex-direction:column;gap:22px}\n.cyc .rc__block{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:center;padding:40px 46px;background:var(--ap-white);border:1px solid var(--ap-line);border-radius:22px;box-shadow:0 24px 56px -40px rgba(27,27,27,.32)}\n\n.cyc .rc__label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}.cyc .rc__name{display:inline-flex;align-items:center;font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#fff;background:var(--ap-magenta);border-radius:999px;padding:6px 14px 5px;line-height:1}\n.cyc .rc__badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:var(--ap-magenta);background:#fff;border:1.5px solid var(--ap-magenta);border-radius:999px;padding:3px 10px 2px;line-height:1}\n.cyc .ap-usecase{font-size:10px;font-weight:700;letter-spacing:1.1px;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.cyc .rc__h{font-size:26px;font-weight:600;letter-spacing:-.5px;line-height:1.2;margin:0 0 16px;color:var(--ap-text)}\n.cyc .rc__p{font-size:16px;line-height:1.62;color:var(--ap-body);margin:0 0 18px}\n.cyc .rc__diff{position:relative;border-radius:14px;overflow:hidden;background:var(--ap-tint);padding:16px 20px 18px 24px;margin:0 0 20px}\n.cyc .rc__diff::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ap-grad)}\n.cyc .rc__diff b{display:block;font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;margin:0 0 7px;background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n.cyc .rc__diff p{font-size:15px;line-height:1.55;color:var(--ap-text);margin:0}\n.cyc .rc__pts{list-style:none;margin:0;padding:0;display:grid;gap:9px}\n.cyc .rc__pts li{position:relative;padding-left:24px;font-size:14px;line-height:1.5;color:var(--ap-muted)}\n.cyc .rc__pts li b{color:var(--ap-text);font-weight:600}\n.cyc .rc__pts li a{color:var(--ap-magenta);font-weight:600;text-decoration:underline;text-underline-offset:2px}\n.cyc .rc__more{margin-top:14px}\n.cyc .rc__more a{color:var(--ap-magenta);font-weight:600;text-decoration:underline;text-underline-offset:2px}\n.cyc .rc__pts li::before{content:\"\";position:absolute;left:2px;top:6px;width:11px;height:6px;border-left:2px solid var(--ap-magenta);border-bottom:2px solid var(--ap-magenta);transform:rotate(-45deg)}\n\/* iPad *\/\n.cyc .ipad{width:100%;max-width:340px;justify-self:center}\n.cyc .rc__scene{width:100%;max-width:340px;justify-self:center;margin:0;border-radius:20px;overflow:hidden;box-shadow:0 44px 90px -44px rgba(27,27,27,.62)}\n.cyc .rc__scene img{display:block;width:100%;height:auto}\n.cyc .ipad__f{aspect-ratio:834\/1194;border-radius:30px;background:#0f0f12;padding:9px;box-shadow:0 44px 90px -44px rgba(27,27,27,.62)}\n.cyc .ipad__s{width:100%;height:100%;border-radius:21px;overflow:hidden;background:#fff;display:flex;flex-direction:column}\n.cyc .ipad__h{padding:13px 14px 11px;border-bottom:1px solid var(--ap-line);flex-shrink:0}\n.cyc .ipad__hr{display:flex;align-items:center;justify-content:space-between}\n.cyc .ipad__app{font-size:11px;font-weight:700;color:var(--ap-text)}\n.cyc .ipad__live{font-size:8.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--ap-muted2);display:inline-flex;align-items:center;gap:5px}\n.cyc .ipad__live i{width:6px;height:6px;border-radius:50%;background:var(--ap-grad)}\n.cyc .ipad__sub{font-size:9px;color:var(--ap-muted2);margin:2px 0 0}\n.cyc .ipad__c{flex:1;padding:12px;display:flex;flex-direction:column;gap:9px;overflow:hidden}\n.cyc .ipad__c--ph{align-items:center;justify-content:center;text-align:center;gap:13px;background:var(--ap-tint)}\n.cyc .ipad__phico{width:50px;height:50px;color:var(--ap-magenta);opacity:.6}\n.cyc .ipad__phico svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}\n.cyc .ipad__phlbl{font-size:12px;font-weight:600;color:var(--ap-muted)}\n.cyc .ipad__phnote{font-size:9px;letter-spacing:.6px;text-transform:uppercase;color:var(--ap-muted2)}\n.cyc .ipad__s--img{padding:0}\n.cyc .ipad__s--img img{width:100%;height:100%;object-fit:cover;display:block}\n.cyc .mt{width:100%;height:100%;display:flex;flex-direction:column;background:#fff;overflow:hidden}\n.cyc .mt__status{display:flex;align-items:center;justify-content:space-between;background:#0a0a0c;color:#fff;padding:5px 12px 3px;font-size:8px;font-weight:700}\n.cyc .mt__hdr{display:flex;align-items:center;justify-content:space-between;background:#0a0a0c;color:#fff;padding:3px 12px 8px}\n.cyc .mt__hdr .t{font-weight:700;font-size:10.5px}\n.cyc .mt__hdr .l,.cyc .mt__hdr .r{color:#c8c8d0;font-size:9px}\n.cyc .mt__bar{height:3px;background:var(--ap-grad);flex-shrink:0}\n.cyc .mt__body{flex:1;overflow:hidden;padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px;background:#fff}\n.cyc .mt__store{border:1px solid var(--ap-line);border-radius:9px;padding:7px 9px}\n.cyc .mt__store b{display:block;font-size:11px;color:var(--ap-text);font-weight:700;line-height:1.2}\n.cyc .mt__store span{display:block;font-size:8.5px;color:var(--ap-muted2);margin-top:1px}\n.cyc .mt__store .cur{display:inline-block;margin-top:5px;font-size:8px;font-weight:700;color:#8A6D1F;background:rgba(232,161,60,.18);border-radius:999px;padding:2px 8px}\n.cyc .mt__sec{display:flex;justify-content:space-between;align-items:baseline;font-size:8px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--ap-muted2);margin-top:1px}\n.cyc .mt__sec em{font-style:normal;font-weight:600;color:var(--ap-magenta);letter-spacing:0;text-transform:none;font-size:8px}\n.cyc .mt__q{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 0;border-top:1px solid var(--ap-line)}\n.cyc .mt__q:first-of-type{border-top:none}\n.cyc .mt__q .qq{font-size:9px;color:var(--ap-text);line-height:1.25}\n.cyc .mt__a{flex-shrink:0;font-size:8.5px;font-weight:600;color:var(--ap-text);background:var(--ap-card);border:1px solid var(--ap-line);border-radius:999px;padding:3px 8px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}\n.cyc .mt__a svg{width:7px;height:7px;color:var(--ap-muted2);fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}\n.cyc .mt__a--pos{color:var(--ap-magenta);border-color:rgba(194,41,140,.3);background:var(--ap-tint)}\n.cyc .mt__a--pos svg{color:var(--ap-magenta)}\n.cyc .mt__reco{margin-top:2px;border-radius:11px;background:var(--ap-tint);border:1px solid rgba(194,41,140,.2);padding:8px 11px}\n.cyc .mt__reco .e{font-size:7.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ap-muted);margin-bottom:6px}\n.cyc .mt__seg{display:flex;align-items:center;gap:8px;margin-bottom:6px}\n.cyc .mt__seg .from{width:21px;height:21px;border-radius:6px;background:#e6e6ea;color:var(--ap-muted);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center}\n.cyc .mt__seg .arr{color:var(--ap-magenta);font-weight:800;font-size:12px}\n.cyc .mt__seg .to{width:26px;height:26px;border-radius:7px;background:var(--ap-grad);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px -6px rgba(213,41,224,.6)}\n.cyc .mt__seg .lbl{font-size:9px;color:var(--ap-text);font-weight:700}\n.cyc .mt__reco .why{font-size:8px;color:var(--ap-muted);line-height:1.42;margin-bottom:8px}\n.cyc .mt__btns{display:flex;gap:6px}\n.cyc .mt__btn{flex:1;text-align:center;font-size:9px;font-weight:700;border-radius:7px;padding:6px 0}\n.cyc .mt__btn--p{color:#fff;background:var(--ap-grad)}\n.cyc .mt__btn--s{color:var(--ap-muted);background:#fff;border:1px solid var(--ap-line)}\n.cyc .mt__phs{display:flex;flex-direction:column;margin-top:1px}\n.cyc .mt__phrow{display:flex;align-items:center;gap:8px;padding:3.5px 0;border-top:1px solid var(--ap-line)}\n.cyc .mt__phrow:first-of-type{border-top:none}\n.cyc .mt__phdot{width:15px;height:15px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:#fff;line-height:1}\n.cyc .mt__phdot--done{background:#c2c2ca}\n.cyc .mt__phdot--active{background:var(--ap-grad);box-shadow:0 5px 12px -5px rgba(213,41,224,.7)}\n.cyc .mt__phdot--next{background:#fff;border:1.5px solid var(--ap-line)}\n.cyc .mt__phname{flex:1;font-size:9.5px;font-weight:600;color:var(--ap-text)}\n.cyc .mt__phmeta{font-size:8px;color:var(--ap-muted2);white-space:nowrap;text-transform:capitalize}\n.cyc .mt__phstat{font-size:7.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:2px 8px;border-radius:999px;white-space:nowrap;color:var(--ap-magenta);background:var(--ap-tint)}\n.cyc .mt--promo .mt__store{display:flex;align-items:flex-start;gap:10px}\n.cyc .mt--promo .mt__stxt{flex:1;min-width:0}\n.cyc .mt__dispc{flex-shrink:0;width:60px;border-radius:8px;overflow:hidden;background:#fff;border:1px solid var(--ap-line);box-shadow:0 6px 15px -8px rgba(27,27,27,.45)}\n.cyc .mt__dispc img{display:block;width:100%;height:auto}\n.cyc .mt__mech{font-size:9px;color:var(--ap-text);line-height:1.45;background:var(--ap-card);border:1px solid var(--ap-line);border-radius:9px;padding:7px 9px}\n.cyc .mt__mech b{color:var(--ap-magenta);font-weight:700}\n.cyc .mt__progt{height:7px;border-radius:999px;background:#e6e6ea;overflow:hidden;margin-top:1px}\n.cyc .mt__progf{height:100%;border-radius:999px;background:var(--ap-grad)}\n.cyc .mt__progl{display:flex;justify-content:space-between;align-items:center}\n.cyc .mt__progl b{font-size:9.5px;font-weight:700;color:var(--ap-text)}\n.cyc .mt__progl .ok{font-size:7.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--ap-magenta);background:var(--ap-tint);border-radius:999px;padding:2px 7px}\n.cyc .mt__foot{margin-top:auto;display:flex;gap:8px;border-top:1px solid var(--ap-line);padding-top:8px}\n.cyc .mt__footcol{flex:1}\n.cyc .mt__footcol span{display:block;font-size:7.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--ap-muted2)}\n.cyc .mt__footcol b{display:block;font-size:11px;font-weight:700;color:var(--ap-text);margin-top:2px}\n.cyc .mt__tgt{display:flex;align-items:center;gap:11px;padding:6px 0;border-top:1px solid var(--ap-line)}\n.cyc .mt__tgt:first-of-type{border-top:none}\n.cyc .mt__donut{position:relative;width:38px;height:38px;flex-shrink:0}\n.cyc .mt__donut svg{width:38px;height:38px;transform:rotate(-90deg)}\n.cyc .mt__donut circle{fill:none;stroke-width:4}\n.cyc .mt__ring-bg{stroke:#e9e9ee}\n.cyc .mt__ring-fg{stroke:var(--ap-magenta);stroke-linecap:round}\n.cyc .mt__ring-fg--ok{stroke:#37b34a}\n.cyc .mt__ring-fg--warn{stroke:#e8a13c}\n.cyc .mt__donut-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:var(--ap-text)}\n.cyc .mt__tgtx{flex:1;min-width:0}\n.cyc .mt__tgtn{display:block;font-size:9.5px;font-weight:600;color:var(--ap-text)}\n.cyc .mt__tgtm{display:block;font-size:8px;color:var(--ap-muted2);margin-top:2px}\n.cyc .mt__bud{padding:5px 0 3px;border-top:1px solid var(--ap-line)}\n.cyc .mt__bud:first-of-type{border-top:none}\n.cyc .mt__budr{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}\n.cyc .mt__budn{font-size:9.5px;font-weight:600;color:var(--ap-text)}\n.cyc .mt__budv{font-size:9px;font-weight:700;color:var(--ap-text)}\n.cyc .mt__budm{font-size:8px;color:var(--ap-muted2);margin-top:4px}\n.cyc .r{display:flex;align-items:center;gap:9px;padding:8px 2px;border-top:1px solid var(--ap-line)}\n.cyc .r:first-child{border-top:none}\n.cyc .r__k{width:19px;height:19px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:700;color:var(--ap-muted);background:var(--ap-card)}\n.cyc .r--t .r__k{background:var(--ap-grad);color:#fff}\n.cyc .r__m{min-width:0;flex:1}.cyc .r__s{display:block;font-size:11px;font-weight:600;color:var(--ap-text);line-height:1.2}.cyc .r__r{display:block;font-size:9.5px;color:var(--ap-muted2);margin-top:1px}\n.cyc .r__b{width:34px;height:4px;border-radius:999px;background:var(--ap-card);overflow:hidden;flex-shrink:0}.cyc .r__b i{display:block;height:100%;background:var(--ap-grad)}\n.cyc .cal{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}\n.cyc .cal__d{border:1px solid var(--ap-line);border-radius:8px;padding:6px 3px;text-align:center;font-size:8px;color:var(--ap-muted2)}.cyc .cal__d b{display:block;font-size:11px;color:var(--ap-text);font-weight:600;margin-top:2px}\n.cyc .cal__d--v{background:var(--ap-tint);border-color:rgba(194,41,140,.25)}.cyc .cal__d--x{border-color:#E4933A;background:rgba(228,147,58,.09)}.cyc .cal__d--x b{color:#C9781F}\n.cyc .flag{display:flex;align-items:center;gap:6px;font-size:9.5px;color:#C9781F;background:rgba(228,147,58,.1);border-radius:8px;padding:7px 9px}\n.cyc .flag--m{color:var(--ap-magenta);background:var(--ap-tint)}\n.cyc .rt svg{width:100%;height:auto;display:block}\n.cyc .chips{display:flex;gap:5px;flex-wrap:wrap}.cyc .chip{font-size:9px;font-weight:600;color:var(--ap-text);background:var(--ap-card);border:1px solid var(--ap-line);border-radius:999px;padding:4px 8px}.cyc .chip--g{color:#fff;background:var(--ap-grad);border-color:transparent}\n.cyc .tier{display:flex;align-items:center;gap:10px;border:1px solid var(--ap-line);border-radius:10px;padding:9px 10px}\n.cyc .tier__b{width:25px;height:25px;border-radius:7px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}\n.cyc .tier__m{flex:1;min-width:0}.cyc .tier__n{display:block;font-size:11px;font-weight:600;color:var(--ap-text)}.cyc .tier__s{display:block;font-size:9px;color:var(--ap-muted2);margin-top:1px}.cyc .tier__c{font-size:12px;font-weight:700;color:var(--ap-text)}\n.cyc .mini{font-size:9px;color:var(--ap-muted2);text-align:center;margin-top:auto;padding-top:4px}\n@media(max-width:900px){.cyc{grid-template-columns:1fr;gap:22px}.cyc .rail{position:static}.cyc .ph__items{display:block}.cyc .rc__block{grid-template-columns:1fr;gap:24px}.cyc .ipad{max-width:260px}.cyc .rc__scene{max-width:300px}}\n<\/style>\n<div class=\"ap-scope\">\n<!-- ===== CYCLE OVERTURE \u2014 entry into the step-by-step walkthrough ===== -->\n<style>\n.sre-over{padding:74px 0 44px;background:var(--ap-card);border-top:1px solid var(--ap-line)}\n.sre-over__inner{max-width:1000px;margin:0 auto;padding:0 40px;text-align:center}\n.sre-over__eye{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 16px}\n.sre-over__eye svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}\n.sre-over__h{font-size:clamp(30px,3.6vw,42px);font-weight:600;letter-spacing:-.9px;line-height:1.1;margin:0 0 18px;color:var(--ap-text)}\n.sre-over__lede{font-size:18px;line-height:1.6;color:var(--ap-muted);margin:0 auto 8px;max-width:680px}\n.sre-map{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:960px;margin:46px auto 0;position:relative}\n.sre-map::before{content:\"\";position:absolute;top:29px;left:12.5%;right:12.5%;height:2px;background:var(--ap-grad);opacity:.28;z-index:0}\n.sre-map__step{position:relative;z-index:1;text-align:center;padding:8px 6px 10px;border-radius:16px;cursor:pointer;transition:transform .18s ease,background .18s ease}\n.sre-map__step:hover{transform:translateY(-4px);background:rgba(255,255,255,.6)}\n.sre-map__step:focus-visible{outline:2px solid var(--ap-magenta);outline-offset:2px}\n.sre-map__ico{width:58px;height:58px;margin:0 auto 16px;border-radius:17px;background:var(--ap-grad);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 26px -10px rgba(213,41,224,.5);transition:box-shadow .18s ease}\n.sre-map__step:hover .sre-map__ico{box-shadow:0 18px 34px -10px rgba(213,41,224,.62)}\n.sre-map__ico svg{width:27px;height:27px;color:#fff;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}\n.sre-map__ph{font-size:10.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 4px}\n.sre-map__nm{font-size:18px;font-weight:600;letter-spacing:-.3px;color:var(--ap-text);margin:0 0 8px}\n.sre-map__d{font-size:14px;line-height:1.5;color:var(--ap-muted);margin:0}\n.sre-over__cue{display:inline-flex;flex-direction:column;align-items:center;gap:9px;margin:40px auto 0;background:none;border:0;cursor:pointer;color:var(--ap-muted2)}\n.sre-over__line{width:1px;height:30px;background:linear-gradient(to bottom,transparent,var(--ap-magenta))}\n.sre-over__cuetxt{font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--ap-muted2)}\n.sre-over__chev{width:26px;height:26px;border-radius:50%;background:var(--ap-white);border:1px solid var(--ap-line);display:flex;align-items:center;justify-content:center;animation:sreBob 1.8s ease-in-out infinite}\n.sre-over__chev svg{width:14px;height:14px;color:var(--ap-magenta);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}\n.sre-over__cue:hover .sre-over__chev{border-color:var(--ap-magenta)}\n@keyframes sreBob{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}\n@media(prefers-reduced-motion:reduce){.sre-over__chev{animation:none}}\n@media(max-width:720px){.sre-over{padding:52px 0 36px}.sre-over__inner{padding:0 22px}.sre-map{grid-template-columns:1fr 1fr;gap:26px 16px}.sre-map::before{display:none}}\n@media(max-width:420px){.sre-map{grid-template-columns:1fr}}\n<\/style>\n<section class=\"sre-over\" aria-labelledby=\"over-h\">\n  <div class=\"sre-over__inner\">\n    <p class=\"sre-over__eye\"><svg aria-hidden=\"true\"><use href=\"#ic-recycle\"\/><\/svg>Jak to dzia\u0142a &middot; cykl wizyty<\/p>\n    <h2 class=\"sre-over__h\" id=\"over-h\">Zobacz dzie\u0144 przedstawiciela <span class=\"ap-grad-text\">od \u015brodka<\/span><\/h2>\n    <p class=\"sre-over__lede\">Jedna wizyta to cztery fazy &mdash; i ten sam cykl powtarza si\u0119 w ka\u017cdym sklepie. Poni\u017cej przejdziesz go z przedstawicielem od pocz\u0105tku do ko\u0144ca albo skoczysz od razu do fazy, kt\u00f3ra Ci\u0119 interesuje.<\/p>\n    <div class=\"sre-map\"><div class=\"sre-map__step\" role=\"button\" tabindex=\"0\" data-goto=\"b-planning\"><div class=\"sre-map__ico\"><svg aria-hidden=\"true\"><use href=\"#ic-prepare\"\/><\/svg><\/div><p class=\"sre-map__ph\">Faza 1<\/p><p class=\"sre-map__nm\">Przygotowanie<\/p><p class=\"sre-map__d\">Zanim ruszysz: kt\u00f3re sklepy si\u0119 licz\u0105, jaka trasa jest najlepsza i co zrobi\u0107 w ka\u017cdym z nich.<\/p><\/div><div class=\"sre-map__step\" role=\"button\" tabindex=\"0\" data-goto=\"b-visit\"><div class=\"sre-map__ico\"><svg aria-hidden=\"true\"><use href=\"#ic-execute\"\/><\/svg><\/div><p class=\"sre-map__ph\">Faza 2<\/p><p class=\"sre-map__nm\">Realizacja<\/p><p class=\"sre-map__d\">Praca przy p\u00f3\u0142ce: merchandising, kontrole w sklepie i poprawianie na miejscu tego, co odbiega od standardu.<\/p><\/div><div class=\"sre-map__step\" role=\"button\" tabindex=\"0\" data-goto=\"b-orders\"><div class=\"sre-map__ico\"><svg aria-hidden=\"true\"><use href=\"#ic-instore\"\/><\/svg><\/div><p class=\"sre-map__ph\">Faza 3<\/p><p class=\"sre-map__nm\">Sprzeda\u017c<\/p><p class=\"sre-map__d\">Zam\u00f3wienie i wi\u0119kszy kontrakt &mdash; na podstawie tego, co w\u0142a\u015bnie pokaza\u0142a wizyta.<\/p><\/div><div class=\"sre-map__step\" role=\"button\" tabindex=\"0\" data-goto=\"b-oneview\"><div class=\"sre-map__ico\"><svg aria-hidden=\"true\"><use href=\"#ic-review\"\/><\/svg><\/div><p class=\"sre-map__ph\">Faza 4<\/p><p class=\"sre-map__nm\">Przegl\u0105d<\/p><p class=\"sre-map__d\">Zobacz, co naprawd\u0119 nap\u0119dzi\u0142o sprzeda\u017c, i reaguj, p\u00f3ki ma to jeszcze znaczenie.<\/p><\/div><\/div>\n    <button class=\"sre-over__cue\" type=\"button\" data-goto=\"b-planning\" aria-label=\"Start the walkthrough\">\n      <span class=\"sre-over__line\"><\/span>\n      <span class=\"sre-over__chev\"><svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4 6l4 4 4-4\"\/><\/svg><\/span>\n      <span class=\"sre-over__cuetxt\">Zacznij od fazy 1<\/span>\n    <\/button>\n  <\/div>\n<\/section>\n<script>\n(function(){var els=[].slice.call(document.querySelectorAll('.sre-map__step,.sre-over__cue'));function go(t){var el=document.getElementById(t);if(el){el.scrollIntoView({behavior:'smooth',block:'center'});}}els.forEach(function(e){e.addEventListener('click',function(){go(e.getAttribute('data-goto'));});e.addEventListener('keydown',function(ev){if(ev.key==='Enter'||ev.key===' '){ev.preventDefault();go(e.getAttribute('data-goto'));}});});})();\n<\/script>\n<section class=\"ap-band\" id=\"how-it-works\" aria-labelledby=\"cyc-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"cyc\">\n      <nav class=\"rail\" aria-label=\"Visit cycle outline\"><p class=\"rail__cap\"><svg aria-hidden=\"true\"><use href=\"#ic-recycle\"\/><\/svg>Cykl wizyty<\/p><div class=\"ph is-active\" data-ph=\"prepare\"><p class=\"ph__name\" data-first=\"b-planning\"><span class=\"num\">1<\/span>Przygotowanie<\/p><ul class=\"ph__items\"><li class=\"ph__item is-active\" data-t=\"planning\">Planowanie wizyt<\/li><li class=\"ph__item\" data-t=\"rao\">Retail Activity Optimization<\/li><li class=\"ph__item\" data-t=\"dro\">Optymalizacja trasy<\/li><li class=\"ph__item\" data-t=\"targets\">Cele<\/li><li class=\"ph__item\" data-t=\"budgets\">Bud\u017cety<\/li><\/ul><\/div><div class=\"ph\" data-ph=\"execute\"><p class=\"ph__name\" data-first=\"b-visit\"><span class=\"num\">2<\/span>Realizacja<\/p><ul class=\"ph__items\"><li class=\"ph__item\" data-t=\"visit\">Wizyta<\/li><li class=\"ph__item\" data-t=\"perfectstore\">Perfect Store<\/li><li class=\"ph__item\" data-t=\"rir\">Image Recognition<\/li><li class=\"ph__item\" data-t=\"checks\">Kontrole w sklepie<\/li><li class=\"ph__item\" data-t=\"seg\">Profilowanie sklepu<\/li><li class=\"ph__item\" data-t=\"pos\">POS i ekspozycje<\/li><li class=\"ph__item\" data-t=\"promo\">Promocje konsumenckie<\/li><\/ul><\/div><div class=\"ph\" data-ph=\"sell\"><p class=\"ph__name\" data-first=\"b-orders\"><span class=\"num\">3<\/span>Sprzeda\u017c<\/p><ul class=\"ph__items\"><li class=\"ph__item\" data-t=\"orders\">Przyjmowanie zam\u00f3wie\u0144<\/li><li class=\"ph__item\" data-t=\"trade\">Promocje sprzeda\u017cowe<\/li><li class=\"ph__item\" data-t=\"story\">Selling Stories<\/li><li class=\"ph__item\" data-t=\"agreement\">Outlet Agreements<\/li><\/ul><\/div><div class=\"ph\" data-ph=\"review\"><p class=\"ph__name\" data-first=\"b-oneview\"><span class=\"num\">4<\/span>Przegl\u0105d<\/p><ul class=\"ph__items\"><li class=\"ph__item\" data-t=\"oneview\">OneView<\/li><li class=\"ph__item\" data-t=\"coaching\">Coaching<\/li><li class=\"ph__item\" data-t=\"incentives\">Incentives<\/li><li class=\"ph__item\" data-t=\"motivation\">Motivation<\/li><\/ul><\/div><\/nav>\n      <div class=\"rc\"><article class=\"rc__block\" id=\"b-planning\" data-t=\"planning\" data-ph=\"prepare\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Planowanie wizyt<\/span><\/p><h3 class=\"rc__h\">U\u0142\u00f3\u017c dzie\u0144 w terenie, kt\u00f3ry <span class=\"ap-grad-text\">naprawd\u0119 da si\u0119 dowie\u017a\u0107<\/span><\/h3><p class=\"rc__p\">Planowanie wizyt to spos\u00f3b, w jaki przedstawiciel decyduje, kogo i kiedy odwiedzi\u0107. Uk\u0142ada kolejne dni z klient\u00f3w, kt\u00f3rymi si\u0119 opiekuje, \u017ceby czas w terenie trafia\u0142 do w\u0142a\u015bciwych sklep\u00f3w we w\u0142a\u015bciwym momencie.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Wybierz kilku klient\u00f3w na jeden dzie\u0144, a plan sam roz\u0142o\u017cy ich w ci\u0105gu dnia pracy. Uwzgl\u0119dnia czas przejazdu mi\u0119dzy punktami i d\u0142ugo\u015b\u0107 wizyty, jakiej potrzebuje ka\u017cdy klient &mdash; kr\u00f3tszej w ma\u0142ym sklepie, d\u0142u\u017cszej w du\u017cym &mdash; wi\u0119c dzie\u0144 jest wykonalny, zanim przedstawiciel wyruszy.<\/p><\/div><ul class=\"rc__pts\"><li><b>Planuj wed\u0142ug tego, co wa\u017cne.<\/b> Wybieraj, kogo odwiedzi\u0107, po segmencie, obszarze lub czasie od ostatniej wizyty, \u017ceby plan odpowiada\u0142 Twoim priorytetom.<\/li><li><b>Zobacz, kogo trzeba odwiedzi\u0107.<\/b> Plan wie, jak cz\u0119sto nale\u017cy bywa\u0107 w ka\u017cdym punkcie, i kolorem oznacza te zaleg\u0142e, \u017ceby utrzyma\u0107 pokrycie i nikogo po cichu nie pomin\u0105\u0107.<\/li><li><b>Ca\u0142y dzie\u0144 w jednym widoku.<\/b> Wizyty uk\u0142adaj\u0105 si\u0119 obok spotka\u0144 i rozm\u00f3w, kt\u00f3re przedstawiciel ju\u017c ma, wi\u0119c nie trzeba skaka\u0107 mi\u0119dzy narz\u0119dziami, a plan odpowiada realnemu dniu pracy.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: the rep's visit planning calendar for the day.\">\n                <div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-VisitPlanning.webp\" alt=\"Mobile Touch visit planning calendar on iPad \u2014 the day planned by cadence, with RAO priorities\" loading=\"lazy\"><\/div><\/div>\n              <\/div>\n              <\/article>\n<article class=\"rc__block\" id=\"b-rao\" data-t=\"rao\" data-ph=\"prepare\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Retail Activity Optimization &middot; RAO<\/span><span class=\"rc__badge\">POI Best-in-Class<\/span><\/p><h3 class=\"rc__h\">Zobacz, kt\u00f3re sklepy wymagaj\u0105 uwagi, <span class=\"ap-grad-text\">i dlaczego<\/span><\/h3><p class=\"rc__p\">Retail Activity Optimization (RAO) to sztuczna inteligencja, kt\u00f3ra ustawia Twoje sklepy w kolejno\u015bci wed\u0142ug tego, kt\u00f3re najpilniej wymagaj\u0105 uwagi teraz, i pokazuje dlaczego. Odczytuje sygna\u0142y istotne dla ka\u017cdego klienta &mdash; spadek sprzeda\u017cy, zbli\u017caj\u0105cy si\u0119 brak towaru, obni\u017caj\u0105cy si\u0119 udzia\u0142 w kategorii &mdash; i zamienia je w jeden bie\u017c\u0105cy priorytet na sklep, z gotowym dzia\u0142aniem naprawczym na wizyt\u0119.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>RAO rozk\u0142ada te\u017c priorytety na kolejne dni, wi\u0119c widzisz, gdzie i kiedy priorytet ro\u015bnie oraz kt\u00f3re sklepy le\u017c\u0105 blisko trasy, kt\u00f3r\u0105 przedstawiciel i tak jedzie. Pilny sklep mo\u017cna wtedy obs\u0142u\u017cy\u0107 po drodze, bez osobnego wyjazdu.<\/p><\/div><ul class=\"rc__pts\"><li><b>Ka\u017cdy priorytet ma sw\u00f3j pow\u00f3d.<\/b> Widzisz dok\u0142adn\u0105 skal\u0119 spadku sprzeda\u017cy albo kwot\u0119 zagro\u017con\u0105 brakiem towaru.<\/li><li><b>Wa\u017cone pod Twoje priorytety.<\/b> Sam wybierasz, kt\u00f3re sygna\u0142y si\u0119 licz\u0105 i jak mocno.<\/li><li><b>Cz\u0119\u015b\u0107 Asseco Platform Genius.<\/b> Warstwa AI dzia\u0142aj\u0105ca w ca\u0142ej platformie.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: Retail Activity Optimization showing a store's drop-in-sales and anticipated out-of-stock, with the reason behind the priority.\">\n                <div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-RAO.webp\" alt=\"Retail Activity Optimization in Mobile Touch \u2014 drop in sales and anticipated out-of-stock with the reason behind each store's priority\" loading=\"lazy\"><\/div><\/div>\n              <\/div>\n              <\/article>\n<article class=\"rc__block\" id=\"b-dro\" data-t=\"dro\" data-ph=\"prepare\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Optymalizacja trasy<\/span><\/p><h3 class=\"rc__h\">U\u0142\u00f3\u017c wizyty z jednego dnia w <span class=\"ap-grad-text\">najkr\u00f3tsz\u0105 tras\u0119<\/span><\/h3><p class=\"rc__p\">Optymalizacja trasy uk\u0142ada wybrane na dany dzie\u0144 wizyty w najkr\u00f3tsz\u0105, najbardziej efektywn\u0105 tras\u0119. Jedno dotkni\u0119cie ustala kolejno\u015b\u0107, wi\u0119c przedstawiciel mniej czasu sp\u0119dza w drodze, a wi\u0119cej u klient\u00f3w.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Trasa nad\u0105\u017ca, gdy dzie\u0144 si\u0119 zmienia. Je\u015bli klient odwo\u0142a wizyt\u0119 albo przedstawiciel dorzuci nowy punkt, kolejne dotkni\u0119cie przelicza tras\u0119 na nowo, wi\u0119c dzie\u0144 pozostaje efektywny i nikt nie musi uk\u0142ada\u0107 go r\u0119cznie od pocz\u0105tku.<\/p><\/div><ul class=\"rc__pts\"><li><b>Prawdziwe drogi, prawdziwy ruch.<\/b> Kolejno\u015b\u0107 uwzgl\u0119dnia rzeczywiste odleg\u0142o\u015bci i bie\u017c\u0105cy ruch, wi\u0119c sprawdza si\u0119 w praktyce.<\/li><li><b>Kr\u00f3tsza droga do domu.<\/b> Ostatnia wizyta wypada najbli\u017cej miejsca zamieszkania przedstawiciela, wi\u0119c dzie\u0144 ko\u0144czy si\u0119 bez d\u0142ugiego powrotu.<\/li><li><b>Wi\u0119cej ni\u017c jeden dzie\u0144.<\/b> Aby planowa\u0107 trasy w ca\u0142ym cyklu wizyt, zobacz <a href=\"https:\/\/assecoplatform.com\/pl\/dynamiczna-optymalizacja-tras\/\">Dynamic Route Optimization<\/a>.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: route optimization map with an optimised numbered route and suggested on-route stores.\">\n                <div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-DRO.webp\" alt=\"Route optimization in Mobile Touch \u2014 an optimised numbered route across Barcelona with suggested on-route stores\" loading=\"lazy\"><\/div><\/div>\n              <\/div>\n              <\/article>\n\n<article class=\"rc__block\" id=\"b-targets\" data-t=\"targets\" data-ph=\"prepare\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Cele<\/span><\/p><h3 class=\"rc__h\">Ustaw cel na dowolnym obszarze, <span class=\"ap-grad-text\">a\u017c po pojedyncz\u0105 wizyt\u0119<\/span><\/h3><p class=\"rc__p\">Cele mog\u0105 obejmowa\u0107 ka\u017cd\u0105 cz\u0119\u015b\u0107 pracy, kt\u00f3r\u0105 chcesz sterowa\u0107: warto\u015b\u0107 zam\u00f3wie\u0144, dystrybucj\u0119, pokrycie wizytami, jako\u015b\u0107 ankiet, kontrakty, a nawet wyniki Perfect Store. Ka\u017cdy z nich opiera si\u0119 na danych z platformy albo zintegrowanych z zewn\u0105trz, np. na fakturach samego dystrybutora, wi\u0119c cel oddaje pe\u0142ny obraz sprzeda\u017cy. Razem tworz\u0105 jeden plan, dopasowany do tego, jak pracuj\u0105 Twoje si\u0142y sprzeda\u017cy.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Cel si\u0119ga pojedynczej wizyty i jest skrojony pod to, ile dany sklep realnie mo\u017ce kupi\u0107. Plan schodzi kaskad\u0105 &mdash; region, przedstawiciel, klient, wizyta &mdash; wed\u0142ug potencja\u0142u ka\u017cdego punktu, wi\u0119c przedstawiciel zaczyna ka\u017cd\u0105 wizyt\u0119 z konkretn\u0105, osi\u0105galn\u0105 liczb\u0105 i widzi wynik w chwili jej zako\u0144czenia.<\/p><\/div><ul class=\"rc__pts\"><li><b>Dowolny cel, jeden mechanizm.<\/b> Sprzeda\u017c, dystrybucja, aktywno\u015b\u0107 w terenie, jako\u015b\u0107 ankiet, kontrakty i KPI, ustawiane na danych z platformy lub na zintegrowanych danych sprzeda\u017cy z zewn\u0105trz.<\/li><li><b>A\u017c do klienta i wizyty.<\/b> Cele schodz\u0105 kaskad\u0105 przez region, przedstawiciela, klienta, a\u017c po pojedyncz\u0105 wizyt\u0119 &mdash; ka\u017cdy skrojony pod potencja\u0142 danego punktu.<\/li><li><b>Na \u017cywo na ekranie przedstawiciela.<\/b> Cel dzienny na starcie dnia, wynik po ka\u017cdej wizycie w chwili jej zako\u0144czenia oraz &mdash; tam, gdzie to w\u0142\u0105czysz &mdash; ranking na tle zespo\u0142u.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a rep&rsquo;s targets &mdash; the day&rsquo;s target with live progress, and per-goal targets for distribution, category and Perfect Store, each with how far to the goal and days left.\"><div class=\"ipad__f\"><div class=\"ipad__s\"><div class=\"mt\"><div class=\"mt__status\"><span>14:58<\/span><span>&#9679;&#9679;&#9679; &#9203; 92%<\/span><\/div><div class=\"mt__hdr\"><span class=\"l\">&lsaquo; Profile<\/span><span class=\"t\">Targets<\/span><span class=\"r\">&#9881;<\/span><\/div><div class=\"mt__bar\"><\/div><div class=\"mt__body\"><div class=\"mt__store\"><b>Alex Rivera<\/b><span>Field rep &middot; Barcelona East<\/span><span class=\"cur\">Period &middot; August<\/span><\/div><div class=\"mt__sec\">Targets<em>this period<\/em><\/div><div class=\"mt__tgt\"><div class=\"mt__donut\"><svg viewBox=\"0 0 38 38\"><circle class=\"mt__ring-bg\" cx=\"19\" cy=\"19\" r=\"15\"\/><circle class=\"mt__ring-fg mt__ring-fg--warn\" cx=\"19\" cy=\"19\" r=\"15\" stroke-dasharray=\"64.09 94.25\"\/><\/svg><span class=\"mt__donut-pct\">68%<\/span><\/div><div class=\"mt__tgtx\"><span class=\"mt__tgtn\">Order value<\/span><span class=\"mt__tgtm\">&euro;3,400 \/ &euro;5,000 &middot; 7 days left<\/span><\/div><\/div><div class=\"mt__tgt\"><div class=\"mt__donut\"><svg viewBox=\"0 0 38 38\"><circle class=\"mt__ring-bg\" cx=\"19\" cy=\"19\" r=\"15\"\/><circle class=\"mt__ring-fg mt__ring-fg--ok\" cx=\"19\" cy=\"19\" r=\"15\" stroke-dasharray=\"77.28 94.25\"\/><\/svg><span class=\"mt__donut-pct\">82%<\/span><\/div><div class=\"mt__tgtx\"><span class=\"mt__tgtn\">Distribution<\/span><span class=\"mt__tgtm\">41 \/ 50 outlets &middot; 15 days left<\/span><\/div><\/div><div class=\"mt__tgt\"><div class=\"mt__donut\"><svg viewBox=\"0 0 38 38\"><circle class=\"mt__ring-bg\" cx=\"19\" cy=\"19\" r=\"15\"\/><circle class=\"mt__ring-fg mt__ring-fg--warn\" cx=\"19\" cy=\"19\" r=\"15\" stroke-dasharray=\"56.55 94.25\"\/><\/svg><span class=\"mt__donut-pct\">60%<\/span><\/div><div class=\"mt__tgtx\"><span class=\"mt__tgtn\">Coffee category<\/span><span class=\"mt__tgtm\">&euro;1,800 \/ &euro;3,000 &middot; 22 days left<\/span><\/div><\/div><div class=\"mt__tgt\"><div class=\"mt__donut\"><svg viewBox=\"0 0 38 38\"><circle class=\"mt__ring-bg\" cx=\"19\" cy=\"19\" r=\"15\"\/><circle class=\"mt__ring-fg mt__ring-fg--ok\" cx=\"19\" cy=\"19\" r=\"15\" stroke-dasharray=\"82.94 94.25\"\/><\/svg><span class=\"mt__donut-pct\">88%<\/span><\/div><div class=\"mt__tgtx\"><span class=\"mt__tgtn\">Perfect Store<\/span><span class=\"mt__tgtm\">22 \/ 25 stores &middot; 22 days left<\/span><\/div><\/div><div class=\"mt__foot\"><div class=\"mt__footcol\"><span>This visit<\/span><b>+&euro;520<\/b><\/div><div class=\"mt__footcol\"><span>Team rank<\/span><b>#3 \/ 12<\/b><\/div><div class=\"mt__footcol\"><span>Period<\/span><b>August<\/b><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-budgets\" data-t=\"budgets\" data-ph=\"prepare\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Bud\u017cety<\/span><\/p><h3 class=\"rc__h\">Ogranicz wydatki dok\u0142adnie tam, <span class=\"ap-grad-text\">gdzie si\u0119 je ponosi<\/span><\/h3><p class=\"rc__p\">Bud\u017cety kontroluj\u0105 pieni\u0105dze i gratisy, kt\u00f3re przedstawiciel mo\u017ce rozda\u0107 w terenie: rabaty, upominki, materia\u0142y POS, koszt promocji. Ustawiasz je kwotowo lub ilo\u015bciowo, na dany okres, a platforma pilnuje limitu w trakcie pracy przedstawiciela. Bud\u017cet mo\u017ce schodzi\u0107 kaskad\u0105 przez organizacj\u0119, od regionu po pojedynczego przedstawiciela, albo region mo\u017ce korzysta\u0107 ze wsp\u00f3lnej puli; przy centralnym kontrakcie z sieci\u0105 bud\u017cet nale\u017cy do key account managera, kt\u00f3ry nim zarz\u0105dza.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Limit dzia\u0142a na \u017cywo w chwili wydania. Gdy przedstawiciel sk\u0142ada zam\u00f3wienie lub uruchamia promocj\u0119, pozosta\u0142y bud\u017cet wida\u0107 wprost przy pozycji i topnieje w miar\u0119 wydawania, wi\u0119c nikt nie rozda pieni\u0119dzy, kt\u00f3rych nie ma. Niewykorzystany bud\u017cet mo\u017ce przej\u015b\u0107 na kolejny okres.<\/p><\/div><ul class=\"rc__pts\"><li><b>Kwotowo lub ilo\u015bciowo.<\/b> Ogranicz warto\u015b\u0107 rabatu albo liczb\u0119 upomink\u00f3w, pr\u00f3bek czy materia\u0142\u00f3w POS &mdash; na okres, na klienta, nawet na dzie\u0144.<\/li><li><b>Kaskadowo lub wsp\u00f3lnie.<\/b> Bud\u017cet centralny dzieli si\u0119 na regiony, zespo\u0142y lub przedstawicieli, albo region korzysta ze wsp\u00f3lnej puli, a wydatki i rezerwacje s\u0105 widoczne dla wszystkich, kt\u00f3rzy z niej korzystaj\u0105.<\/li><li><b>Twardy limit lub mi\u0119kkie ostrze\u017cenie.<\/b> Przekroczenie mo\u017ce ca\u0142kowicie zablokowa\u0107 zam\u00f3wienie albo tylko je oznaczy\u0107 i pozwoli\u0107 przedstawicielowi kontynuowa\u0107.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a rep&rsquo;s budgets &mdash; promo gifts, discount value, POS materials and a daily gift cap, each drawing down against its limit with what&rsquo;s left.\"><div class=\"ipad__f\"><div class=\"ipad__s\"><div class=\"mt\"><div class=\"mt__status\"><span>14:58<\/span><span>&#9679;&#9679;&#9679; &#9203; 92%<\/span><\/div><div class=\"mt__hdr\"><span class=\"l\">&lsaquo; Profile<\/span><span class=\"t\">Budgets<\/span><span class=\"r\">&#9881;<\/span><\/div><div class=\"mt__bar\"><\/div><div class=\"mt__body\"><div class=\"mt__store\"><b>Alex Rivera<\/b><span>Field rep &middot; Barcelona East<\/span><span class=\"cur\">August<\/span><\/div><div class=\"mt__sec\">Budgets<em>this period<\/em><\/div><div class=\"mt__bud\"><div class=\"mt__budr\"><span class=\"mt__budn\">Promo gifts<\/span><span class=\"mt__budv\">&euro;420 \/ &euro;600<\/span><\/div><div class=\"mt__progt\"><div class=\"mt__progf\" style=\"width:70%\"><\/div><\/div><div class=\"mt__budm\">&euro;180 left<\/div><\/div><div class=\"mt__bud\"><div class=\"mt__budr\"><span class=\"mt__budn\">Discount value<\/span><span class=\"mt__budv\">&euro;1,240 \/ &euro;2,000<\/span><\/div><div class=\"mt__progt\"><div class=\"mt__progf\" style=\"width:62%\"><\/div><\/div><div class=\"mt__budm\">&euro;760 left<\/div><\/div><div class=\"mt__bud\"><div class=\"mt__budr\"><span class=\"mt__budn\">POS materials<\/span><span class=\"mt__budv\">14 \/ 20 units<\/span><\/div><div class=\"mt__progt\"><div class=\"mt__progf\" style=\"width:70%\"><\/div><\/div><div class=\"mt__budm\">6 left<\/div><\/div><div class=\"mt__bud\"><div class=\"mt__budr\"><span class=\"mt__budn\">Daily gift cap<\/span><span class=\"mt__budv\">4 \/ 10 today<\/span><\/div><div class=\"mt__progt\"><div class=\"mt__progf\" style=\"width:40%\"><\/div><\/div><div class=\"mt__budm\">6 left today<\/div><\/div><div class=\"mt__foot\"><div class=\"mt__footcol\"><span>Spent<\/span><b>&euro;1,660<\/b><\/div><div class=\"mt__footcol\"><span>Left<\/span><b>&euro;960<\/b><\/div><div class=\"mt__footcol\"><span>Rolls over<\/span><b>Yes<\/b><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-visit\" data-t=\"visit\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Wizyta<\/span><\/p><h3 class=\"rc__h\">Wizyta skrojona pod sklep, <span class=\"ap-grad-text\">w kt\u00f3rym w\u0142a\u015bnie jeste\u015b<\/span><\/h3><p class=\"rc__p\">Wizyta to przebieg pracy, kt\u00f3ry przedstawiciel realizuje w sklepie, dopasowany do sklepu, w kt\u00f3rym w\u0142a\u015bnie jest. Powstaje na podstawie kana\u0142u sklepu, kategorii i powodu wizyty, po czym prowadzi przedstawiciela przez w\u0142a\u015bciwe dla tego klienta kroki. Wizyta mo\u017ce mie\u0107 tyle wariant\u00f3w, ile masz rodzaj\u00f3w sklep\u00f3w.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Wizyta to Twoje dobre praktyki zamienione w \u015bcie\u017ck\u0119, kt\u00f3ra prowadzi przedstawiciela za r\u0119k\u0119. Projektujesz kroki pasuj\u0105ce do ka\u017cdego rodzaju sklepu &mdash; od jednego po pe\u0142n\u0105 sekwencj\u0119: przygotowanie, merchandising, sprzeda\u017c, promocja, podsumowanie &mdash; a przedstawiciel przechodzi je po kolei, robi\u0105c w\u0142a\u015bciw\u0105 rzecz we w\u0142a\u015bciwym momencie dla danego sklepu.<\/p><\/div><ul class=\"rc__pts\"><li><b>Zadania, kt\u00f3re w\u0142\u0105czaj\u0105 si\u0119 wtedy, kiedy trzeba.<\/b> W\u0142a\u015bciwe zadanie pojawia si\u0119 zale\u017cnie od sklepu i momentu, trafia we w\u0142a\u015bciwy krok i jest oznaczone jako obowi\u0105zkowe lub opcjonalne. Zadania te\u017c si\u0119 \u0142\u0105cz\u0105: kontrola promocji mo\u017ce wywo\u0142a\u0107 zam\u00f3wienie na uzupe\u0142nienie towaru na ekspozycji.<\/li><li><b>Zadania z RAO, tam gdzie jest w\u0142\u0105czone.<\/b> Gdy Retail Activity Optimization dzia\u0142a dla sklepu, dok\u0142ada w\u0142a\u015bciwe zadanie: propozycj\u0119 zam\u00f3wienia uzupe\u0142niaj\u0105cego przy braku towaru, diagnoz\u0119 przy spadku sprzeda\u017cy.<\/li><li><b>Wszystko w jednej wizycie.<\/b> Zam\u00f3wienia, ankiety, kontrole Perfect Store i promocje tocz\u0105 si\u0119 w ramach tej samej wizyty i razem wracaj\u0105 w jednym raporcie.<\/li><li><b>Wizyta domyka p\u0119tl\u0119.<\/b> Podsumowanie ujmuje, co zrobiono, co pozostaje otwarte i jaki by\u0142 wynik, wi\u0119c kolejna wizyta zaczyna tam, gdzie sko\u0144czy\u0142a si\u0119 poprzednia.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: the in-store visit running its five steps &mdash; Preparation, Merchandising, Promotions, Sales, Summary &mdash; with the customer card and tasks.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-TheVisit.webp\" alt=\"Mobile Touch visit on iPad \u2014 the five-step visit flow with customer card, KPIs and tasks\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-perfectstore\" data-t=\"perfectstore\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Perfect Store<\/span><\/p><h3 class=\"rc__h\">Oce\u0144 p\u00f3\u0142k\u0119, <span class=\"ap-grad-text\">p\u00f3ki przedstawiciel jest jeszcze w sklepie<\/span><\/h3><p class=\"rc__p\">Wi\u0119kszo\u015b\u0107 marek ma zdefiniowany perfekcyjny sklep &mdash; w\u0142a\u015bciwy asortyment, dost\u0119pno\u015b\u0107, widoczno\u015b\u0107, cen\u0119 i promocj\u0119 dla ka\u017cdego rodzaju sklepu. Trudno\u015b\u0107 polega na tym, by wiedzie\u0107, czy ka\u017cdy sklep rzeczywi\u015bcie temu odpowiada. Perfect Store mierzy ka\u017cdy sklep wzgl\u0119dem Twojego standardu automatycznie, przy ka\u017cdej wizycie, i zamienia subiektywne &bdquo;wygl\u0105da okej&rdquo; w jeden obiektywny, audytowalny wynik.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Wi\u0119kszo\u015b\u0107 audyt\u00f3w m\u00f3wi, co by\u0142o nie tak, dopiero gdy przedstawiciela ju\u017c nie ma. Perfect Store ocenia sklep, p\u00f3ki przedstawiciel wci\u0105\u017c w nim jest. Wskazuje dok\u0142adnie to, co odbiega od standardu, wi\u0119c przedstawiciel poprawia to przed wyj\u015bciem, a sklep zmienia si\u0119 na lepsze ju\u017c podczas samej wizyty.<\/p><\/div><ul class=\"rc__pts\"><li><b>Zbudowany pod Tw\u00f3j standard.<\/b> Ustal, co znaczy &bdquo;perfekcyjny&rdquo; wed\u0142ug kana\u0142u, segmentu lub regionu &mdash; asortyment, p\u00f3\u0142ka, cena, promocja &mdash; i zmieniaj to samodzielnie, bez projektu IT.<\/li><li><b>Jakkolwiek sprawdzasz p\u00f3\u0142k\u0119.<\/b> Przedstawiciel mo\u017ce oceni\u0107 sklep r\u0119cznie albo pozwoli\u0107, by rozpoznawanie obrazu odczyta\u0142o dost\u0119pno\u015b\u0107, facingi i zgodno\u015b\u0107 z planogramem ze zdj\u0119cia, tam gdzie jest w\u0142\u0105czone. Tak czy inaczej wynik jest dok\u0142adnie taki sam.<\/li><li><b>Wynik, na podstawie kt\u00f3rego dzia\u0142asz.<\/b> Zasila coaching, cele i systemy motywacyjne, a jest na tyle obiektywny, \u017ce mo\u017cna go wnie\u015b\u0107 do rozmowy z sieci\u0105.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a Perfect Store audit scoring the store 64 out of 100, with distribution, shelf share and shelf rules broken out and fixes recommended.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-PerfectStore.webp\" alt=\"Perfect Store audit in Mobile Touch on iPad \u2014 an objective store score with distribution, shelf share and shelf rules\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-rir\" data-t=\"rir\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Retail Image Recognition<\/span><\/p><h3 class=\"rc__h\">P\u00f3\u0142ka sama odczytuje si\u0119 <span class=\"ap-grad-text\">ze zdj\u0119cia<\/span><\/h3><p class=\"rc__p\">Przedstawiciel fotografuje p\u00f3\u0142k\u0119, a rozpoznawanie obrazu j\u0105 odczytuje &mdash; dost\u0119pno\u015b\u0107, facingi, udzia\u0142 w p\u00f3\u0142ce, zgodno\u015b\u0107 z planogramem i ceny jako obiektywne liczby w kilka sekund, z dok\u0142adno\u015bci\u0105 do 98%. R\u0119czna checklista znika, a z ni\u0105 rozjazd mi\u0119dzy tym, co si\u0119 raportuje, a tym, co naprawd\u0119 jest na p\u00f3\u0142ce.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Odczyt od razu przek\u0142ada si\u0119 na dzia\u0142anie, w tej samej wizycie. Gdy tylko zdj\u0119cie zostanie przeanalizowane, przedstawiciel dostaje na urz\u0105dzeniu nast\u0119pny ruch: zam\u00f3w to, czego brakuje, popraw b\u0142\u0119dn\u0105 cen\u0119, odbuduj ekspozycj\u0119, kt\u00f3ra jest poni\u017cej standardu. Wniosek trafia w chwili, gdy przedstawiciel wci\u0105\u017c mo\u017ce zareagowa\u0107.<\/p><\/div><ul class=\"rc__pts\"><li><b>Jedna prawda, kt\u00f3rej wszyscy ufaj\u0105.<\/b> Centrala, teren, agencje merchandisingowe i sieci widz\u0105 to samo zdj\u0119cie i ten sam wynik.<\/li><li><b>Zasila reszt\u0119 wizyty.<\/b> Odczyt nap\u0119dza wynik Perfect Store, liczy si\u0119 do cel\u00f3w i trafia do Twojej analityki.<\/li><li><b>Audytuj o wiele wi\u0119cej i o wiele cz\u0119\u015bciej.<\/b> Skoro kontrola to tylko zdj\u0119cie, obejmiesz znacznie wi\u0119cej sklep\u00f3w bez dok\u0142adania godzin pracy przedstawicieli.<\/li><li><b>Samodzielny produkt.<\/b> Retail Image Recognition to pe\u0142ne rozwi\u0105zanie samo w sobie &mdash; zobacz <a href=\"https:\/\/assecoplatform.com\/pl\/cyfrowe-rozpoznawanie-polek\/\">Retail Image Recognition<\/a>.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: image recognition reading a cereal shelf from a photo, products detected with prices and a planogram-compliance alert.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-ImageRecognition.webp\" alt=\"Retail image recognition in Mobile Touch on iPad \u2014 a shelf photo with products detected, prices read and a planogram-compliance alert\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n\n<article class=\"rc__block\" id=\"b-checks\" data-t=\"checks\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Kontrole w sklepie<\/span><\/p><h3 class=\"rc__h\">Zadaj terenowi dowolne pytanie, <span class=\"ap-grad-text\">kiedy potrzebujesz<\/span><\/h3><p class=\"rc__p\">Kontrole w sklepie to spos\u00f3b, by dosta\u0107 odpowied\u017a na wszystko, co firma musi wiedzie\u0107 w sklepie, wtedy gdy tego potrzebuje: czy launch si\u0119 uda\u0142, czy nowa ekspozycja stoi, jak wygl\u0105da obs\u0142uga i dost\u0119pno\u015b\u0107 przy regale, co robi konkurencja. W odr\u00f3\u017cnieniu od sta\u0142ego scorecardu Perfect Store kontrola powstaje na dan\u0105 chwil\u0119 &mdash; zadajesz terenowi pytanie, uruchamiasz je w kilka dni i wycofujesz, gdy masz odpowied\u017a.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Kontrola trafia z pytania do terenu w kilka dni, a nie w cyklu projektu. Odpowied\u017a wraca z ju\u017c ustawionym nast\u0119pnym dzia\u0142aniem, wi\u0119c przedstawiciel reaguje na to, co znalaz\u0142, przed wyj\u015bciem ze sklepu, a to, o co pytasz w danym tygodniu, w tym samym tygodniu dostaje odpowied\u017a i reakcj\u0119.<\/p><\/div><ul class=\"rc__pts\"><li><b>Poza scorecardem p\u00f3\u0142ki.<\/b> Obs\u0142uga, czysto\u015b\u0107, uk\u0142ad, launch, ruch konkurencji &mdash; rzeczywisto\u015b\u0107, kt\u00f3ra kszta\u0142tuje sell-through, a le\u017cy poza Twoimi sta\u0142ymi KPI.<\/li><li><b>Szybko odpowiadaj na nowe pytania.<\/b> Gdy priorytet si\u0119 zmienia, nowa kontrola jest w terenie w kilka dni, bez projektu i bez czekania na IT, wi\u0119c teren nad\u0105\u017ca za firm\u0105.<\/li><li><b>Jeden wiarygodny odczyt, wsz\u0119dzie.<\/b> Ka\u017cdy sklep odpowiada w ten sam spos\u00f3b, online i offline, wi\u0119c mened\u017cerowie i centrala pracuj\u0105 na tym samym obrazie.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: an in-store check with a conditional question flow and an image-recognition planogram step, saving actions on the visit.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-InStoreChecks.webp\" alt=\"In-store check in Mobile Touch on iPad \u2014 a configurable survey with conditional questions and an image-recognition planogram step\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-seg\" data-t=\"seg\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Profilowanie sklepu<\/span><\/p><h3 class=\"rc__h\">Zbierz o sklepie to, <span class=\"ap-grad-text\">czego dane sprzeda\u017cowe nie pokazuj\u0105<\/span><\/h3><p class=\"rc__p\">Profilowanie sklepu zbiera o ka\u017cdym punkcie te mniej wymierne informacje, kt\u00f3re nigdy nie pojawiaj\u0105 si\u0119 w danych sprzeda\u017cowych. W\u0142\u0105cz je, gdy jest co\u015b, co chcesz wiedzie\u0107, a przedstawiciele zbior\u0105 to podczas wizyty: czy sklep ma stoisko mi\u0119sne, ogr\u00f3dek piwny, umow\u0119 z konkurencj\u0105. Je\u015bli co\u015b opisuje punkt sprzeda\u017cy, mo\u017cesz o to zapyta\u0107.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>To, czego przedstawiciel si\u0119 dowiaduje, aktualizuje sam\u0105 kart\u0119 klienta. Wczytuje to, co ju\u017c wiadomo, zapisuje to, co si\u0119 zmieni\u0142o, i wype\u0142nia puste pola, a potem od\u015bwie\u017ca wizyt\u0119 na miejscu, wi\u0119c nowy obraz od razu jest w u\u017cyciu.<\/p><\/div><ul class=\"rc__pts\"><li><b>Pytania zale\u017cne od odpowiedzi.<\/b> Jedna odpowied\u017a otwiera lub ukrywa kolejn\u0105, wi\u0119c przedstawiciel odpowiada tylko na to, co dotyczy danego sklepu.<\/li><li><b>W\u0142\u0105czone, gdy tego potrzebujesz.<\/b> W\u0142\u0105cz rund\u0119 profilowania na sezon albo jedno pytanie, zbierz, czego potrzebujesz, i wy\u0142\u0105cz, \u017ceby wizyta nigdy nie zape\u0142nia\u0142a si\u0119 pytaniami, kt\u00f3re ju\u017c nie maj\u0105 znaczenia.<\/li><li><b>Szerszy obraz.<\/b> Aby podzieli\u0107 ca\u0142y rynek na poziomy i kszta\u0142towa\u0107 strategi\u0119 route-to-market, zobacz <a href=\"https:\/\/assecoplatform.com\/pl\/segmentacja-sklepow\/\">Store segmentation<\/a>.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a store profiling form collecting outlet attributes, with a follow-up question revealed and answers saved to the customer record.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><div class=\"mt\"><div class=\"mt__status\"><span>14:58<\/span><span>&#9679;&#9679;&#9679; &#9203; 92%<\/span><\/div><div class=\"mt__hdr\"><span class=\"l\">&lsaquo; Visit<\/span><span class=\"t\">Store profiling<\/span><span class=\"r\">&#9881;<\/span><\/div><div class=\"mt__bar\"><\/div><div class=\"mt__body\"><div class=\"mt__store\"><b>Omega Store<\/b><span>Barcelona, Avinguda Diagonal 4<\/span><span class=\"cur\">Grocery &middot; 640 m&sup2;<\/span><\/div><div class=\"mt__sec\">Outlet attributes<em>synced to the customer record<\/em><\/div><div class=\"mt__q\"><span class=\"qq\">Fresh meat counter<\/span><span class=\"mt__a mt__a--pos\">Yes<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4 6l4 4 4-4\"\/><\/svg><\/span><\/div><div class=\"mt__q\"><span class=\"qq\">In-store bakery<\/span><span class=\"mt__a mt__a--pos\">Yes<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4 6l4 4 4-4\"\/><\/svg><\/span><\/div><div class=\"mt__q\" style=\"padding-left:16px\"><span class=\"qq\">&#8627; Chilled promo space nearby<\/span><span class=\"mt__a mt__a--pos\">Available<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4 6l4 4 4-4\"\/><\/svg><\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Checkouts<\/span><span class=\"mt__a\">6<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4 6l4 4 4-4\"\/><\/svg><\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Chiller space for us<\/span><span class=\"mt__a mt__a--pos\">Expanding<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4 6l4 4 4-4\"\/><\/svg><\/span><\/div><div class=\"mt__reco\"><div class=\"e\">On save<\/div><div class=\"why\">The bakery answer revealed the chilled-space question. Filled fields write back to the customer record, and this visit refreshes with the new profile.<\/div><div class=\"mt__btns\"><span class=\"mt__btn mt__btn--p\">Save to record<\/span><span class=\"mt__btn mt__btn--s\">Cancel<\/span><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-pos\" data-t=\"pos\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Zarz\u0105dzanie POS i ekspozycjami<\/span><\/p><h3 class=\"rc__h\">Poka\u017c sklepowi ekspozycj\u0119, <span class=\"ap-grad-text\">zanim j\u0105 wy\u015blesz<\/span><\/h3><p class=\"rc__p\">Materia\u0142y POS s\u0105 dwojakiego rodzaju i oba kosztuj\u0105. Ekspozycje tymczasowe, zwykle kartonowe, wchodz\u0105 pod promocj\u0119 i s\u0105 wyrzucane, gdy ta si\u0119 ko\u0144czy. Trwa\u0142e elementy &mdash; metalowe stojaki, lod\u00f3wki, rega\u0142y i ekrany &mdash; zostaj\u0105 na d\u0142ugo i s\u0105 warte realnych pieni\u0119dzy. Zarz\u0105dzanie POS i ekspozycjami obejmuje jedno i drugie: dopilnowanie, by materia\u0142 stan\u0105\u0142, i prowadzenie ewidencji tego, co warto \u015bledzi\u0107.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Przedstawiciel wygrywa miejsce na ekspozycj\u0119 jeszcze w sklepie, w rozmowie. Zanim cokolwiek pojedzie, pokazuje kierownikowi sklepu, jak ekspozycja naprawd\u0119 b\u0119dzie wygl\u0105da\u0107 w jego sklepie: model 3D wstawiony w przestrze\u0144 przez rozszerzon\u0105 rzeczywisto\u015b\u0107. Kierownik widzi go we w\u0142asnej alejce, zanim odda na niego miejsce.<\/p><\/div><ul class=\"rc__pts\"><li><b>Dwa rodzaje POS, jeden system.<\/b> Tymczasowe ekspozycje promocyjne, kt\u00f3re wchodz\u0105 na kampani\u0119 i schodz\u0105, gdy ta si\u0119 ko\u0144czy, oraz trwa\u0142e elementy &mdash; stojaki, lod\u00f3wki, rega\u0142y i ekrany &mdash; zbudowane, by zosta\u0107.<\/li><li><b>Ka\u017cdy trwa\u0142y element w ewidencji.<\/b> Ka\u017cdy z nich ma w\u0142asny kod QR lub kreskowy i unikalne ID, wi\u0119c rejestrujesz go i \u015bledzisz jak \u015brodek trwa\u0142y. Gdy jego czas w jednym sklepie si\u0119 ko\u0144czy, przenosisz go do kolejnego klienta, zamiast go spisywa\u0107 na straty.<\/li><li><b>Uzasadnienie, kt\u00f3re zdobywa miejsce.<\/b> By pom\u00f3c przedstawicielowi przekona\u0107 sklep, Selling Story prognozuje, co ekspozycja wnios\u0142aby w tym punkcie i gdzie zwraca si\u0119 najbardziej &mdash; przy kasie czy na p\u00f3\u0142ce. Tam, gdzie masz dane sell-out, opiera si\u0119 na realnych liczbach.<\/li><\/ul><\/div><figure class=\"rc__scene\" role=\"img\" aria-label=\"Mobile Touch on iPad, held in a store aisle: an augmented-reality 3D model of a branded display dropped into the space, with a panel projecting the sales growth it would add.\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-PosDisplay.webp\" alt=\"POS &#038; display in Mobile Touch on iPad \u2014 an augmented-reality 3D display placed into a store aisle, with a projected sales uplift\" loading=\"lazy\"><\/figure><\/article>\n<article class=\"rc__block\" id=\"b-promo\" data-t=\"promo\" data-ph=\"execute\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Promocje konsumenckie<\/span><\/p><h3 class=\"rc__h\">Poprowad\u017a ka\u017cd\u0105 promocj\u0119 konsumenck\u0105 <span class=\"ap-grad-text\">od planu po dow\u00f3d<\/span><\/h3><p class=\"rc__p\">Promocja konsumencka jest skierowana do kupuj\u0105cego, zwykle to lepsza cena na p\u00f3\u0142ce wsparta dzia\u0142aniami w sklepie. Mo\u017ce powsta\u0107 na trzy sposoby: ustawiona centralnie przez key account managera dla ca\u0142ej sieci, ustalona centralnie, ale aktywowana sklep po sklepie wed\u0142ug uznania przedstawiciela, albo zaprojektowana przez przedstawiciela w ramach lokalnego bud\u017cetu. Jakkolwiek si\u0119 zaczyna, platforma prowadzi j\u0105 przez ka\u017cdy etap w sklepie.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Ka\u017cda promocja toczy si\u0119 jako sekwencja, nie pojedyncze zdarzenie: zaplanuj j\u0105, sprowad\u017a towar, sprawd\u017a, czy aktywacja dzia\u0142a i jest poprawna, a potem zmierz jej efekt. Ka\u017cdy etap ma w\u0142asn\u0105 checklist\u0119 i formularze, wi\u0119c pomini\u0119ta degustacja albo ekspozycja, kt\u00f3ra nigdy nie stan\u0119\u0142a, wychodzi na jaw, gdy okno promocji wci\u0105\u017c jest otwarte, a nie w raporcie po kampanii.<\/p><\/div><ul class=\"rc__pts\"><li><b>Ustawiana centralnie, regionalnie lub lokalnie.<\/b> Promocja dla ca\u0142ej sieci, kt\u00f3r\u0105 przedstawiciel tylko weryfikuje, centralna oferta aktywowana sklep po sklepie albo taka, kt\u00f3r\u0105 przedstawiciel projektuje w ramach lokalnego bud\u017cetu.<\/li><li><b>Wsparta realnymi dzia\u0142aniami.<\/b> Degustacje, materia\u0142y POS, media promocyjne i personel w sklepie &mdash; planowane i sprawdzane obok ceny.<\/li><li><b>Sprawdzana na ka\u017cdym etapie.<\/b> Sprowadzenie towaru, aktywacja i efekt maj\u0105 w\u0142asn\u0105 ankiet\u0119, wi\u0119c to, co zamierza\u0142e\u015b zmierzy\u0107, zostaje zmierzone podczas wizyty.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a consumer promotion with its conditions at the top &mdash; products in scope, shopper price, dates and in-store support &mdash; and its phases below: plan, stock in, activation check and effect check.\"><div class=\"ipad__f\"><div class=\"ipad__s\"><div class=\"mt mt--promo\"><div class=\"mt__status\"><span>14:58<\/span><span>&#9679;&#9679;&#9679; &#9203; 92%<\/span><\/div><div class=\"mt__hdr\"><span class=\"l\">&lsaquo; Visit<\/span><span class=\"t\">Consumer promotion<\/span><span class=\"r\">&#9881;<\/span><\/div><div class=\"mt__bar\"><\/div><div class=\"mt__body\"><div class=\"mt__store\"><div class=\"mt__stxt\"><b>Halloween<\/b><span>Omega Store &middot; Barcelona<\/span><span class=\"cur\">Regional &middot; TV-backed campaign<\/span><\/div><div class=\"mt__dispc\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-PromoDisplay.webp\" alt=\"Halloween promotional display\" loading=\"lazy\"><\/div><\/div><div class=\"mt__sec\">Conditions<em>set centrally, run in store<\/em><\/div><div class=\"mt__q\"><span class=\"qq\">Products in scope<\/span><span class=\"mt__a\">3 SKUs<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Shopper price<\/span><span class=\"mt__a mt__a--pos\">&minus;15%<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Runs<\/span><span class=\"mt__a\">6 Oct &ndash; 31 Oct<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">In-store support<\/span><span class=\"mt__a\">Tasting + POS<\/span><\/div><div class=\"mt__sec\">Phases<\/div><div class=\"mt__phs\"><div class=\"mt__phrow\"><span class=\"mt__phdot mt__phdot--done\">&#10003;<\/span><span class=\"mt__phname\">Plan<\/span><span class=\"mt__phmeta\">done<\/span><\/div><div class=\"mt__phrow\"><span class=\"mt__phdot mt__phdot--done\">&#10003;<\/span><span class=\"mt__phname\">Stock in<\/span><span class=\"mt__phmeta\">done<\/span><\/div><div class=\"mt__phrow\"><span class=\"mt__phdot mt__phdot--active\"><\/span><span class=\"mt__phname\">Activation check<\/span><span class=\"mt__phstat\">Now<\/span><\/div><div class=\"mt__phrow\"><span class=\"mt__phdot mt__phdot--next\"><\/span><span class=\"mt__phname\">Effect check<\/span><span class=\"mt__phmeta\">upcoming<\/span><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-orders\" data-t=\"orders\" data-ph=\"sell\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Przyjmowanie zam\u00f3wie\u0144<\/span><\/p><h3 class=\"rc__h\">Ka\u017cde zam\u00f3wienie <span class=\"ap-grad-text\">od razu pasuje do sklepu<\/span><\/h3><p class=\"rc__p\">Ka\u017cde zam\u00f3wienie, kt\u00f3re przedstawiciel przyjmuje, od razu pasuje do danego sklepu: asortyment w\u0142a\u015bciwy dla tego sklepu (jego listing, produkty obowi\u0105zkowe i priorytetowe SKU), cena obowi\u0105zuj\u0105ca danego klienta (jego warunki rabatowe, liczone automatycznie) oraz to, co naprawd\u0119 jest dost\u0119pne &mdash; u Ciebie lub u Twojego partnera.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Zam\u00f3wienie ro\u015bnie te\u017c w trakcie sk\u0142adania. System podpowiada kolejne SKU warte dodania &mdash; luk\u0119 w asortymencie, pozycj\u0119, kt\u00f3r\u0105 ten sklep zwykle zamawia ponownie, albo SKU b\u0119d\u0105ce teraz priorytetem &mdash; wi\u0119c priorytet ustawiony w centrali staje si\u0119 kolejn\u0105 podpowiedzian\u0105 pozycj\u0105, dok\u0142adnie w momencie sprzeda\u017cy.<\/p><\/div><ul class=\"rc__pts\"><li><b>Niezale\u017cnie od modelu sprzeda\u017cy.<\/b> Zrealizuj zam\u00f3wienie od razu albo skieruj je do hurtownika lub dystrybutora, kt\u00f3ry je realizuje.<\/li><li><b>Nawet tam, gdzie sie\u0107 sama wprowadza zam\u00f3wienia.<\/b> Wygeneruj czytelny PDF z kodami kreskowymi, kt\u00f3ry przedstawiciel przekazuje sklepowi do wprowadzenia w kilka sekund.<\/li><li><b>Obejmuje Twoje promocje.<\/b> Jedno zam\u00f3wienie mo\u017ce obj\u0105\u0107 kilka promocji naraz, ka\u017cd\u0105 na w\u0142asnych warunkach danego klienta.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: an order for an outlet with its line items broken down by brand and SKU &mdash; net value, ordered, delivered and open quantities, and per-line discounts.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-OrderCapture.webp\" alt=\"Order capture in Mobile Touch on iPad \u2014 an order broken down by brand and SKU with net value, quantities and per-line discounts\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-trade\" data-t=\"trade\" data-ph=\"sell\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Promocje sprzeda\u017cowe<\/span><\/p><h3 class=\"rc__h\">Nagr\u00f3d\u017a sklep <span class=\"ap-grad-text\">za wi\u0119kszy zakup<\/span><\/h3><p class=\"rc__p\">Promocje sprzeda\u017cowe to oferty skierowane do samego sklepu: kup wi\u0119cej, dosta\u0144 wi\u0119cej. Ustalasz, co daje nagrod\u0119 &mdash; osi\u0105gni\u0119cie warto\u015bci, zam\u00f3wienie okre\u015blonej ilo\u015bci albo zam\u00f3wienie gotowego pakietu na warunkach promocyjnych &mdash; i co sklep dostaje w zamian: lepsz\u0105 cen\u0119, rabat, gratisy lub wsparcie marketingowe. Przedstawiciel uruchamia w\u0142a\u015bciw\u0105 przy zam\u00f3wieniu, w ramach ustawionego przez Ciebie bud\u017cetu.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Promocj\u0119 ustawiasz wewn\u0105trz zam\u00f3wienia, bez osobnej negocjacji. Gdy przedstawiciel sk\u0142ada zam\u00f3wienie, oferta nak\u0142ada si\u0119 na w\u0142asne warunki danego sklepu, wi\u0119c jedno zam\u00f3wienie mo\u017ce obejmowa\u0107 kilka promocji naraz, a ka\u017cda wci\u0105\u017c mie\u015bci si\u0119 w swoim bud\u017cecie i limitach.<\/p><\/div><ul class=\"rc__pts\"><li><b>Trzy sposoby nagrodzenia zakupu.<\/b> Za wydan\u0105 warto\u015b\u0107, za zam\u00f3wion\u0105 ilo\u015b\u0107 albo w formie gotowego pakietu na warunkach promocyjnych.<\/li><li><b>Nagroda dopasowana do klienta.<\/b> Lepsza cena, rabat, gratisy lub wsparcie marketingowe &mdash; dobrane do tego, co dzia\u0142a na dany sklep.<\/li><li><b>Wycelowane w Twoje cele.<\/b> Gdy produkt jest obj\u0119ty Twoim celem, podpowiadana jest ta promocja, kt\u00f3ra pomaga go osi\u0105gn\u0105\u0107, wi\u0119c oferta przedstawiciela s\u0142u\u017cy te\u017c planowi centrali.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a sales promotion applied at the order &mdash; order the range to a value threshold and earn free goods, with progress toward the threshold and the free units added to the order.\"><div class=\"ipad__f\"><div class=\"ipad__s\"><div class=\"mt\"><div class=\"mt__status\"><span>14:58<\/span><span>&#9679;&#9679;&#9679; &#9203; 92%<\/span><\/div><div class=\"mt__hdr\"><span class=\"l\">&lsaquo; Order<\/span><span class=\"t\">Sales promotion<\/span><span class=\"r\">&#9881;<\/span><\/div><div class=\"mt__bar\"><\/div><div class=\"mt__body\"><div class=\"mt__store\"><b>Autumn stock-up deal<\/b><span>Omega Store &middot; Barcelona<\/span><span class=\"cur\">Buy for value<\/span><\/div><div class=\"mt__sec\">The deal<\/div><div class=\"mt__mech\">Order <b>&euro;2,000<\/b> of the range and get <b>10 units free<\/b>.<\/div><div class=\"mt__progt\"><div class=\"mt__progf\" style=\"width:100%\"><\/div><\/div><div class=\"mt__progl\"><b>&euro;2,230 \/ &euro;2,000<\/b><span class=\"ok\">Earned<\/span><\/div><div class=\"mt__sec\">In this order<\/div><div class=\"mt__q\"><span class=\"qq\">Can 0.33L &middot; tray of 24<\/span><span class=\"mt__a\">&times;60<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Bottle 1L &middot; case of 6<\/span><span class=\"mt__a\">&times;40<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Gift &middot; free units<\/span><span class=\"mt__a mt__a--pos\">&times;10<\/span><\/div><div class=\"mt__foot\"><div class=\"mt__footcol\"><span>Order net<\/span><b>&euro;2,230<\/b><\/div><div class=\"mt__footcol\"><span>Free goods<\/span><b>10 units<\/b><\/div><div class=\"mt__footcol\"><span>Lines<\/span><b>3<\/b><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-story\" data-t=\"story\" data-ph=\"sell\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Selling Stories<\/span><span class=\"rc__badge\">POI Best-in-Class<\/span><\/p><h3 class=\"rc__h\">Sprzedawaj <span class=\"ap-grad-text\">liczbami tego konkretnego sklepu<\/span><\/h3><p class=\"rc__p\">Ilekro\u0107 przedstawiciel musi przekona\u0107 sklep do jakiego\u015b kroku, Selling Story wspiera go interaktywnym uzasadnieniem opartym na liczbach tego w\u0142a\u015bnie sklepu. Czy chodzi o launch, ekspozycj\u0119, promocj\u0119 czy program lojalno\u015bciowy, przedstawiciel pokazuje, co to oznacza\u0142oby tutaj: kalkulator prognozuje dodatkowy obr\u00f3t, bior\u0105c pod uwag\u0119 to, ile ten sklep i sklepy w jego okolicy ju\u017c sprzedaj\u0105, a\u017c po sell-out. Kupuj\u0105cy widzi liczb\u0119, kt\u00f3r\u0105 rozpoznaje jako w\u0142asn\u0105.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>W\u0142a\u015bciwa historia jest gotowa na dan\u0105 chwil\u0119: uzasadnienie launchu przy launchu, symulacja rozmieszczenia przy propozycji ekspozycji. Ka\u017cda opiera si\u0119 na danych z por\u00f3wnywalnych sklep\u00f3w i na sell-out, wi\u0119c uzasadnienie si\u0119 broni, gdy kupuj\u0105cy zg\u0142asza w\u0105tpliwo\u015bci.<\/p><\/div><ul class=\"rc__pts\"><li><b>Interaktywnie, na ekranie.<\/b> Prezentacje, film promocyjny i kalkulatory, kt\u00f3re kupuj\u0105cy \u015bledzi w trakcie rozmowy z przedstawicielem.<\/li><li><b>Oparte na realnych danych.<\/b> Prognozy korzystaj\u0105 z wynik\u00f3w por\u00f3wnywalnych sklep\u00f3w i z sell-out, wi\u0119c liczby nale\u017c\u0105 do samego sklepu.<\/li><li><b>Zobacz, kt\u00f3re historie dzia\u0142aj\u0105.<\/b> Sprawdzaj, ile czasu kupuj\u0105cy sp\u0119dzaj\u0105 nad ka\u017cdym materia\u0142em, \u017ceby trade marketing stawia\u0142 mocniej na to, z czego korzystaj\u0105.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: the Selling Stories material library &mdash; presentations, planograms and marketing materials the rep can pull, filtered by brand and type.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-SellingStories.webp\" alt=\"Selling Stories in Mobile Touch on iPad \u2014 a library of presentations, planograms and marketing materials the rep can pull for a sell-in conversation\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-agreement\" data-t=\"agreement\" data-ph=\"sell\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Outlet Agreements<\/span><span class=\"ap-usecase\">Pharma &amp; HoReCa<\/span><\/p><h3 class=\"rc__h\">Zmie\u0144 punkt w <span class=\"ap-grad-text\">zaanga\u017cowanego partnera<\/span><\/h3><p class=\"rc__p\">W aptekach, barach i restauracjach wzrost bierze si\u0119 ze sta\u0142ej umowy z punktem. Przedstawiciel siada do rozmowy z punktem i negocjuje zobowi\u0105zanie: w skali roku &mdash; w rozbiciu na kwarta\u0142y &mdash; punkt zobowi\u0105zuje si\u0119 do konkretnych produkt\u00f3w, marek lub kategorii warto\u015bciowo albo ilo\u015bciowo, a Ty w zamian zobowi\u0105zujesz si\u0119 do wsparcia. Ca\u0142\u0105 umow\u0119 buduje si\u0119, podpisuje cyfrowo i \u015bledzi w terenie.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Zobowi\u0105zanie mo\u017ce dotyczy\u0107 tego, jak punkt sprzedaje, a nie tylko ile: produkty trzymane na widoku, wpisane do menu, polecane przez obs\u0142ug\u0119. A to, co dajesz w zamian, dopasowuje si\u0119 do partnera: op\u0142ata marketingowa, inwestycja w lokal albo program lojalno\u015bciowy, w kt\u00f3rym obs\u0142uga zbiera punkty za realizacj\u0119 cel\u00f3w.<\/p><\/div><ul class=\"rc__pts\"><li><b>Prowadzone kwarta\u0142 po kwartale.<\/b> Post\u0119p \u015bledzisz w trakcie roku, wi\u0119c gdy punkt zostaje w tyle, reagujesz w czasie trwania umowy, przed ko\u0144cem roku.<\/li><li><b>Mierzone na podstawie realnych danych.<\/b> Realizacj\u0119 \u015bledzisz na podstawie sell-out, danych z terenu i rozpoznawania obrazu, wi\u0119c rozliczenie oddaje to, co punkt naprawd\u0119 osi\u0105gn\u0105\u0142.<\/li><li><b>Odnawia si\u0119 samo.<\/b> Gdy umowa dobiega ko\u0144ca, kolejna proponowana jest automatycznie, z warunkami ukszta\u0142towanymi przez to, co ten punkt zrealizowa\u0142.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: an outlet agreement summary for a venue &mdash; turnover, expected profit per customer, cash investment split by brand and portfolio, and total investment as a share of turnover.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-OutletAgreements2.webp\" alt=\"Outlet agreement summary in Mobile Touch on iPad \u2014 turnover, expected profit per customer, cash investment by brand and portfolio, and total investment as a share of turnover\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-oneview\" data-t=\"oneview\" data-ph=\"review\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">OneView<\/span><\/p><h3 class=\"rc__h\">Zobacz, co naprawd\u0119 dzieje si\u0119 w Twoich sklepach, <span class=\"ap-grad-text\">p\u00f3ki mo\u017cesz to jeszcze zmieni\u0107<\/span><\/h3><p class=\"rc__p\">OneView to warstwa analityczna platformy &mdash; zamienia ka\u017cd\u0105 wizyt\u0119 Twoich zespo\u0142\u00f3w terenowych w raporty, kt\u00f3re centrala mo\u017ce wykorzysta\u0107. Widzisz jako\u015b\u0107 egzekucji i sprzeda\u017c, kt\u00f3ra za ni\u0105 stoi: zam\u00f3wienia i ich warto\u015b\u0107, realizacj\u0119 wzgl\u0119dem celu oraz kluczowe KPI (Perfect Store, dost\u0119pno\u015b\u0107 na p\u00f3\u0142ce, strike rate, pokrycie), sklep po sklepie i przedstawiciel po przedstawicielu. Mened\u017cer odr\u00f3\u017cni wizyt\u0119, kt\u00f3ra realnie prze\u0142o\u017cy\u0142a si\u0119 na sprzeda\u017c, od rutynowego zajrzenia i wkroczy, p\u00f3ki okres jest jeszcze otwarty &mdash; poprowadzi coaching, skoryguje kierunek albo zajmie si\u0119 osuwaj\u0105cym si\u0119 klientem.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Pokazuje, czy ta egzekucja rzeczywi\u015bcie si\u0119 op\u0142aca. Poniewa\u017c analiza znajduje si\u0119 na tej samej platformie co egzekucja, \u0142\u0105czy to, co dzieje si\u0119 na p\u00f3\u0142ce, z tym, co si\u0119 sprzedaje: widzisz, czy wy\u017csze wyniki Perfect Store i lepsza dost\u0119pno\u015b\u0107 przek\u0142adaj\u0105 si\u0119 na wi\u0119kszy sell-out, i mo\u017cesz wspiera\u0107 te standardy, kt\u00f3re naprawd\u0119 nap\u0119dzaj\u0105 sprzeda\u017c.<\/p><p class=\"rc__more\"><a href=\"https:\/\/assecoplatform.com\/pl\/2026\/08\/17\/warstwa-raportowa-wdrozenie-retail-execution\/\">Zobacz, jak budujemy t\u0119 warstw\u0119 raportow\u0105 w realnym wdro\u017ceniu.<\/a><\/p><\/div><ul class=\"rc__pts\"><li><b>Per sklep i per przedstawiciel.<\/b> Schod\u017a z poziomu regionu do pojedynczego punktu lub przedstawiciela, \u017ceby obie strony zaczyna\u0142y rozmow\u0119 od tych samych dowod\u00f3w.<\/li><li><b>KPI, na kt\u00f3rych opiera si\u0119 kategoria.<\/b> Perfect Store, dost\u0119pno\u015b\u0107 na p\u00f3\u0142ce, strike rate, pokrycie &mdash; \u015bledzone sp\u00f3jnie na wszystkich rynkach.<\/li><li><b>Domyka p\u0119tl\u0119.<\/b> To, co pokazuje analiza, trafia wprost do kolejnej sesji coachingowej i kolejnej kontroli celu.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad, dark mode: a OneView store dashboard &mdash; self-sale versus category, Perfect Store score, plan versus result, out-of-stocks, discount mix and a year-on-year sales comparison.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-OneView.webp\" alt=\"OneView store dashboard in Mobile Touch on iPad \u2014 self-sale vs category, Perfect Store score, plan vs result, out-of-stocks, discount mix and year-on-year sales\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-coaching\" data-t=\"coaching\" data-ph=\"review\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Coaching<\/span><span class=\"rc__badge\">POI Best-in-Class<\/span><\/p><h3 class=\"rc__h\">Dotrzyj do przedstawiciela, <span class=\"ap-grad-text\">zanim wyniki si\u0119 osun\u0105<\/span><\/h3><p class=\"rc__p\">Zwykle coaching trafia do przedstawicieli, kt\u00f3rych mened\u017cer ju\u017c zna, albo rusza miesi\u0105c po tym, jak wyniki spadn\u0105. Tutaj jest odwrotnie: system czyta dane ka\u017cdego przedstawiciela &mdash; wizyty, jako\u015b\u0107 audyt\u00f3w, post\u0119p cel\u00f3w, wyniki Perfect Store, histori\u0119 zam\u00f3wie\u0144 &mdash; i wskazuje, kto potrzebuje coachingu i w czym, z konkretnymi obserwacjami do wykorzystania. Dzi\u0119ki temu cichy \u015bredniak, kt\u00f3ry zacz\u0105\u0142 dryfowa\u0107, zostaje wychwycony wcze\u015bnie, zanim liczby to obna\u017c\u0105.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>To program, kt\u00f3ry mo\u017cesz rozliczy\u0107 od g\u00f3ry do do\u0142u. Liderzy widz\u0105, ile sesji faktycznie si\u0119 odbywa, jakie kompetencje s\u0105 s\u0142abe w kt\u00f3rym regionie, jak zmieniaj\u0105 si\u0119 wyniki przedstawiciela w ci\u0105gu 60&ndash;90 dni po sesji i czy sami mened\u017cerowie rzeczywi\u015bcie prowadz\u0105 coaching.<\/p><\/div><ul class=\"rc__pts\"><li><b>Wejd\u017a na spotkanie 1:1 przygotowany.<\/b> Dane s\u0105 zebrane, a sesja zaplanowana z g\u00f3ry; mened\u017cer i przedstawiciel widz\u0105 ten sam obraz, a kolejna sesja planuje si\u0119 sama.<\/li><li><b>Opiera si\u0119 na ju\u017c zebranych danych.<\/b> Zasilaj\u0105 go wizyty, wyniki Perfect Store, cele i zam\u00f3wienia.<\/li><li><b>Doceniona za to.<\/b> Asseco Platform zosta\u0142a uznana za Best-in-Class w kategorii Coaching w POI 2025 Enterprise Planning &amp; Retail Execution Vendor Panorama.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a coaching summary for a rep &mdash; competency scores against the last visit across openness, flexibility, development focus, collaboration and customer orientation.\"><div class=\"ipad__f\"><div class=\"ipad__s ipad__s--img\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-Coaching.webp\" alt=\"Coaching summary in Mobile Touch on iPad \u2014 a rep's competency scores against the last visit across openness, flexibility, development, collaboration and customer orientation\" loading=\"lazy\"><\/div><\/div><\/div><\/article>\n<article class=\"rc__block\" id=\"b-incentives\" data-t=\"incentives\" data-ph=\"review\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Incentives<\/span><\/p><h3 class=\"rc__h\">Nagradzaj dok\u0142adnie to, <span class=\"ap-grad-text\">co nap\u0119dza Tw\u00f3j biznes<\/span><\/h3><p class=\"rc__p\">Incentives nagradzaj\u0105 przedstawicieli za efekty, od kt\u00f3rych zale\u017cy Twoja strategia, wi\u0119c to, co centrala chce rozwija\u0107, staje si\u0119 tym, do czego d\u0105\u017cy ka\u017cdy przedstawiciel. Zbuduj plan z element\u00f3w pasuj\u0105cych do Twojej strategii &mdash; zwyk\u0142e premie, wyp\u0142aty powi\u0105zane z realizacj\u0105 celu, progi premiowe i nagrody za jako\u015b\u0107 egzekucji wzgl\u0119dem Twoich standard\u00f3w Perfect Store &mdash; dla pojedynczego przedstawiciela, obszaru albo ca\u0142ego regionu. Niezale\u017cnie od tego, ile element\u00f3w po\u0142\u0105czysz, sk\u0142adaj\u0105 si\u0119 w jedn\u0105 czyteln\u0105 wyp\u0142at\u0119.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>To motywacja, kt\u00f3r\u0105 przedstawiciel naprawd\u0119 widzi. Oparta na celach, kt\u00f3re aktualizuj\u0105 si\u0119 w trakcie pracy, pozwala ka\u017cdemu przedstawicielowi obserwowa\u0107, jak jego premia ro\u015bnie na bie\u017c\u0105co &mdash; ile ju\u017c zarobi\u0142, jak blisko jest kolejny pr\u00f3g &mdash; wi\u0119c wyp\u0142ata przestaje by\u0107 niespodziank\u0105 na koniec miesi\u0105ca, a staje si\u0119 czym\u015b, do czego d\u0105\u017cy przez ca\u0142y miesi\u0105c.<\/p><\/div><ul class=\"rc__pts\"><li><b>Opiera si\u0119 na Twoich celach i standardach.<\/b> Czyta wprost z cel\u00f3w i KPI Perfect Store, kt\u00f3re ju\u017c ustawi\u0142e\u015b.<\/li><li><b>Zrywy w trakcie sezonu.<\/b> Pojedyncze elementy mog\u0105 trwa\u0107 kr\u00f3cej ni\u017c ca\u0142y plan &mdash; miesi\u0105c launchu, weekendowy zryw &mdash; bez przebudowywania go.<\/li><li><b>Jako\u015b\u0107 i wolumen razem.<\/b> Nagradzaj sprzeda\u017c i spos\u00f3b, w jaki zosta\u0142a zrealizowana.<\/li><\/ul><\/div><div class=\"ipad\" role=\"img\" aria-label=\"Mobile Touch on iPad: a rep's bonuses card &mdash; the incentive programs active this month, each with the euro earned so far, and how much is left to the next step.\"><div class=\"ipad__f\"><div class=\"ipad__s\"><div class=\"mt\"><div class=\"mt__status\"><span>14:58<\/span><span>&#9679;&#9679;&#9679; &#9203; 92%<\/span><\/div><div class=\"mt__hdr\"><span class=\"l\">&lsaquo; Profile<\/span><span class=\"t\">Bonuses<\/span><span class=\"r\">&#9881;<\/span><\/div><div class=\"mt__bar\"><\/div><div class=\"mt__body\"><div class=\"mt__store\"><b>Alex Rivera<\/b><span>Field rep &middot; Barcelona East<\/span><span class=\"cur\">August &middot; running<\/span><\/div><div class=\"mt__sec\">Bonuses<em>active this month<\/em><\/div><div class=\"mt__q\"><span class=\"qq\">Target attainment<\/span><span class=\"mt__a mt__a--pos\">&euro;640<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Distribution building<\/span><span class=\"mt__a\">&euro;420<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Perfect Store improvement<\/span><span class=\"mt__a\">&euro;300<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">New listings<\/span><span class=\"mt__a\">&euro;180<\/span><\/div><div class=\"mt__q\"><span class=\"qq\">Personal growth<\/span><span class=\"mt__a\">&euro;120<\/span><\/div><div class=\"mt__progt\"><div class=\"mt__progf\" style=\"width:83%\"><\/div><\/div><div class=\"mt__progl\"><b>&euro;340 to the next step<\/b><span class=\"ok\">then +&euro;200<\/span><\/div><div class=\"mt__foot\"><div class=\"mt__footcol\"><span>Earned<\/span><b>&euro;1,660<\/b><\/div><div class=\"mt__footcol\"><span>Programs<\/span><b>5<\/b><\/div><div class=\"mt__footcol\"><span>Paid<\/span><b>Monthly<\/b><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article><article class=\"rc__block\" id=\"b-motivation\" data-t=\"motivation\" data-ph=\"review\"><div class=\"rc__copy\"><p class=\"rc__label\"><span class=\"rc__name\">Motivation<\/span><\/p><h3 class=\"rc__h\">Zamie\u0144 wyniki w wy\u015bcig, <span class=\"ap-grad-text\">kt\u00f3ry przedstawiciele chc\u0105 wygra\u0107<\/span><\/h3><p class=\"rc__p\">Motivation zamienia wyniki przedstawiciela w bie\u017c\u0105c\u0105 pozycj\u0119 w rankingu, kt\u00f3r\u0105 widzi i po kt\u00f3rej chce pi\u0105\u0107 si\u0119 w g\u00f3r\u0119. Uruchom ranking dla ca\u0142ych si\u0142 sprzeda\u017cy albo jednego regionu, albo ustaw konkurs na celach wa\u017cnych w tym okresie, a ka\u017cdy przedstawiciel widzi, na kt\u00f3rym jest miejscu, jak si\u0119 przesun\u0105\u0142 i ile brakuje do kolejnej pozycji. Uznanie i odrobina rywalizacji nie daj\u0105 ca\u0142emu zespo\u0142owi zwolni\u0107.<\/p><div class=\"rc__diff\"><b>R\u00f3\u017cnica<\/b><p>Dzia\u0142a na \u017cywo, przez ca\u0142y okres. Przedstawiciel widzi, jak jego pozycja zmienia si\u0119 w trakcie pracy, a system prognozuje, gdzie sko\u0144czy, je\u015bli utrzyma bie\u017c\u0105ce tempo, wi\u0119c pozycja w rankingu jest czym\u015b, na co mo\u017cna zareagowa\u0107 ju\u017c teraz, p\u00f3ki okres jest jeszcze otwarty.<\/p><\/div><ul class=\"rc__pts\"><li><b>Rankingi, kt\u00f3re sam kszta\u0142tujesz.<\/b> Ustaw ranking dla ca\u0142ych si\u0142 sprzeda\u017cy albo jednego regionu i zdecyduj, ile przedstawiciele widz\u0105 nawzajem ze swoich wynik\u00f3w.<\/li><li><b>Konkursy na cele danego okresu.<\/b> Ustaw rywalizacj\u0119 z w\u0142asnym rankingiem i oknem czasowym, na celach, kt\u00f3re licz\u0105 si\u0119 teraz.<\/li><li><b>Opiera si\u0119 na ju\u017c zebranych wynikach.<\/b> Jest na karcie przedstawiciela, obok jego cel\u00f3w, zbudowany na danych, kt\u00f3re platforma ju\u017c \u015bledzi.<\/li><\/ul><\/div><figure class=\"rc__scene\" role=\"img\" aria-label=\"Mobile Touch on iPad: a sales contest shown as a leaderboard &mdash; a balloon race up the ranks, a podium of top locations, and each rep's position, movement and gap to the next place.\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-Motivation.webp\" alt=\"Motivation in Mobile Touch on iPad \u2014 a gamified sales contest leaderboard with a balloon race, a podium and live rankings\" loading=\"lazy\"><\/figure><\/article><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n<\/div>\n<script>\n(function(){var root=document.querySelector('.cyc');if(!root)return;\nvar blocks=[].slice.call(root.querySelectorAll('.rc__block'));\nvar items=[].slice.call(root.querySelectorAll('.ph__item'));\nvar phEls=[].slice.call(root.querySelectorAll('.ph'));\nfunction setActive(slug,ph){items.forEach(function(i){i.classList.toggle('is-active',i.getAttribute('data-t')===slug);});phEls.forEach(function(p){p.classList.toggle('is-active',p.getAttribute('data-ph')===ph);});}\nvar io=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){setActive(e.target.getAttribute('data-t'),e.target.getAttribute('data-ph'));}});},{rootMargin:'-45% 0px -45% 0px',threshold:0});\nblocks.forEach(function(b){io.observe(b);});\nitems.forEach(function(i){i.addEventListener('click',function(){var el=document.getElementById('b-'+i.getAttribute('data-t'));if(el){el.scrollIntoView({behavior:'smooth',block:'center'});}});});\nphEls.forEach(function(p){var n=p.querySelector('.ph__name');if(n){n.addEventListener('click',function(){var el=document.getElementById(n.getAttribute('data-first'));if(el){el.scrollIntoView({behavior:'smooth',block:'start'});}});}});\n})();\n<\/script>\n\n\n\n<!-- ===== SECTIONS 7-11 (Commercial \u00b7 Proof \u00b7 Part of platform \u00b7 IT-facing \u00b7 CTA) \u2014 \u00a79.5 copy ===== -->\n<svg width=\"0\" height=\"0\" style=\"position:absolute\" aria-hidden=\"true\" focusable=\"false\"><defs>\n<symbol id=\"cap-wallet\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M20 12V8H6a2 2 0 0 1-2-2c0-1.1.9-2 2-2h12v4\"\/><path d=\"M4 6v12c0 1.1.9 2 2 2h14v-4\"\/><path d=\"M18 12a2 2 0 0 0-2 2c0 1.1.9 2 2 2h4v-4Z\"\/><\/symbol>\n<symbol id=\"cap-tdh\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><ellipse cx=\"12\" cy=\"5\" rx=\"9\" ry=\"3\"\/><path d=\"M3 5v14a9 3 0 0 0 18 0V5\"\/><path d=\"M3 12a9 3 0 0 0 18 0\"\/><\/symbol>\n<symbol id=\"cap-rmo\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.62v12.76a1 1 0 0 1-.553.9l-4.553 2.28a2 2 0 0 1-1.788 0l-4.212-2.11a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.38V6.62a1 1 0 0 1 .553-.9l4.553-2.27a2 2 0 0 1 1.788 0Z\"\/><path d=\"M15 5.76v15\"\/><path d=\"M9 3.24v15\"\/><\/symbol>\n<symbol id=\"cap-tts\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 2v20l2-1 2 1 2-1 2 1 2-1 2 1 2-1 2 1V2l-2 1-2-1-2 1-2-1-2 1-2-1Z\"\/><path d=\"M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8\"\/><path d=\"M12 17.5v-11\"\/><\/symbol>\n<symbol id=\"it-device\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect width=\"16\" height=\"20\" x=\"4\" y=\"2\" rx=\"2\"\/><path d=\"M12 18h.01\"\/><\/symbol>\n<symbol id=\"it-plug\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 22v-5\"\/><path d=\"M9 8V2\"\/><path d=\"M15 8V2\"\/><path d=\"M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z\"\/><\/symbol>\n<symbol id=\"it-sliders\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"4\" x2=\"4\" y1=\"21\" y2=\"14\"\/><line x1=\"4\" x2=\"4\" y1=\"10\" y2=\"3\"\/><line x1=\"12\" x2=\"12\" y1=\"21\" y2=\"12\"\/><line x1=\"12\" x2=\"12\" y1=\"8\" y2=\"3\"\/><line x1=\"20\" x2=\"20\" y1=\"21\" y2=\"16\"\/><line x1=\"20\" x2=\"20\" y1=\"12\" y2=\"3\"\/><line x1=\"2\" x2=\"6\" y1=\"14\" y2=\"14\"\/><line x1=\"10\" x2=\"14\" y1=\"8\" y2=\"8\"\/><line x1=\"18\" x2=\"22\" y1=\"16\" y2=\"16\"\/><\/symbol>\n<symbol id=\"it-globe\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20\"\/><path d=\"M2 12h20\"\/><\/symbol>\n<symbol id=\"it-pin\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M20 10c0 4.99-5.54 10.19-7.4 11.8a1 1 0 0 1-1.2 0C9.54 20.19 4 14.99 4 10a8 8 0 0 1 16 0\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/symbol>\n<symbol id=\"it-shield\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1Z\"\/><path d=\"m9 12 2 2 4-4\"\/><\/symbol>\n<symbol id=\"ic-award\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526\"\/><circle cx=\"12\" cy=\"8\" r=\"6\"\/><\/symbol>\n<\/defs><\/svg>\n<style>\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<\/style>\n\n<div class=\"ap-scope\">\n\n\n\n<!-- ===== [INSERT LATER] CUSTOMER SUCCESS STORIES \u2014 port 2 case studies from live #6729 ===== -->\n<!-- ===== CUSTOMER SUCCESS STORIES (rebuilt in .ap-scope; content ported from live #6729, canon-clean) ===== -->\n<style>\n.ap-cases{display:grid;grid-template-columns:1fr;gap:26px;max-width:1080px;margin:44px auto 0}\n.ap-case{background:#111114;border-radius:22px;overflow:hidden}\n.ap-case__grid{display:grid;grid-template-columns:1.4fr .6fr;align-items:stretch}\n.ap-case__body{padding:42px 44px}\n.ap-case__badge{font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 14px;display:inline-block}\n.ap-case__h{font-size:24px;font-weight:600;line-height:1.26;letter-spacing:-.4px;margin:0 0 18px;color:#fff}\n.ap-case__meta{display:flex;flex-direction:column;gap:6px;margin-bottom:24px}\n.ap-case__meta span{font-size:13.5px;color:rgba(255,255,255,.6)}\n.ap-case__meta b{color:#fff;font-weight:600}\n.ap-case__quote{position:relative;padding-left:20px;margin:0 0 28px}\n.ap-case__quote::before{content:\"\";position:absolute;left:0;top:2px;bottom:2px;width:3px;border-radius:2px;background:var(--ap-grad)}\n.ap-case__quote p{font-size:16.5px;line-height:1.62;color:rgba(255,255,255,.9);margin:0 0 10px}\n.ap-case__quote cite{font-size:13px;color:var(--ap-muted2);font-style:normal}\n.ap-case__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}\n.ap-case__stat{background:rgba(255,255,255,.05);border-radius:13px;padding:20px 12px;text-align:center}\n.ap-case__v{font-size:30px;font-weight:600;line-height:1;margin:0 0 8px;background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}\n.ap-case__sl{font-size:12.5px;color:rgba(255,255,255,.72);margin:0 0 3px;font-weight:600}\n.ap-case__sn{font-size:10.5px;color:var(--ap-muted2);margin:0;line-height:1.35}\n.ap-case__media{position:relative;min-height:100%}\n.ap-case__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}\n@media(max-width:860px){.ap-case__grid{grid-template-columns:1fr}.ap-case__media{min-height:240px;order:-1}.ap-case__media img{position:relative}.ap-case__body{padding:32px 26px}}\n@media(max-width:520px){.ap-case__stats{grid-template-columns:repeat(2,1fr)}}\n<\/style>\n<section class=\"ap-band ap-band--grey\" aria-labelledby=\"cases-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"ap-head-c\">\n      <p class=\"ap-eyebrow\">Historie klient\u00f3w<\/p>\n      <h2 class=\"ap-intro__h\" id=\"cases-h\">Sprawdzone <span class=\"ap-grad-text\">w terenie<\/span><\/h2>\n      <p class=\"ap-intro__lede\">Jak liderzy FMCG u\u017cywaj\u0105 Sales &amp; Retail Execution na swoich rynkach.<\/p>\n    <\/div>\n    <div class=\"ap-cases\">\n      <article class=\"ap-case\">\n        <div class=\"ap-case__grid\">\n          <div class=\"ap-case__body\">\n            <span class=\"ap-case__badge\">Historia sukcesu klienta<\/span>\n            <h3 class=\"ap-case__h\">Jak wiod\u0105ca europejska grupa spo\u017cywcza ujednolici\u0142a egzekucj\u0119 Perfect Store na 6 rynkach<\/h3>\n            <div class=\"ap-case__meta\">\n              <span><b>Bran\u017ca:<\/b> \u017cywno\u015b\u0107 i napoje<\/span>\n              <span><b>Region:<\/b> Europa Zachodnia (6 rynk\u00f3w)<\/span>\n              <span><b>Zastosowanie:<\/b> Perfect Store, zarz\u0105dzanie promocjami i egzekucja terenowa wielu marek<\/span>\n            <\/div>\n            <div class=\"ap-case__quote\">\n              <p>&ldquo;Potrzebowali\u015bmy jednej platformy, wsp\u00f3lnej dla dw\u00f3ch odr\u0119bnych organizacji sprzeda\u017cy &mdash; te same sklepy, te same audyty, ale ca\u0142kowicie niezale\u017cne raportowanie. System da\u0142 nam benchmarking Perfect Store mi\u0119dzy rynkami na poziomie centrali, a lokalne procesy promocyjne zosta\u0142y bez zmian.&rdquo;<\/p>\n              <cite>&mdash; Commercial Excellence Director, europejski producent spo\u017cywczy<\/cite>\n            <\/div>\n            <div class=\"ap-case__stats\">\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">6<\/p><p class=\"ap-case__sl\">Rynki<\/p><p class=\"ap-case__sn\">na jednej platformie SRE<\/p><\/div>\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">2<\/p><p class=\"ap-case__sl\">Marki<\/p><p class=\"ap-case__sn\">na jednym zespole terenowym<\/p><\/div>\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">100%<\/p><p class=\"ap-case__sl\">Perfect Store<\/p><p class=\"ap-case__sn\">widoczno\u015bci na wszystkich rynkach<\/p><\/div>\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">&uarr;<\/p><p class=\"ap-case__sl\">Wzrost sprzeda\u017cy<\/p><p class=\"ap-case__sn\">dzi\u0119ki wykrywaniu brak\u00f3w na p\u00f3\u0142ce i Perfect Store<\/p><\/div>\n            <\/div>\n          <\/div>\n          <div class=\"ap-case__media\">\n            <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/Perfect-Shelf.png\" alt=\"Perfect Store shelf execution &mdash; a planogram-compliant product display in a modern supermarket\" loading=\"lazy\">\n          <\/div>\n        <\/div>\n      <\/article>\n      <article class=\"ap-case\">\n        <div class=\"ap-case__grid\">\n          <div class=\"ap-case__body\">\n            <span class=\"ap-case__badge\">Historia sukcesu klienta<\/span>\n            <h3 class=\"ap-case__h\">Globalny producent spo\u017cywczy wdro\u017cy\u0142 SRE w ponad 20 krajach w 3 fazach<\/h3>\n            <div class=\"ap-case__meta\">\n              <span><b>Bran\u017ca:<\/b> \u017cywno\u015b\u0107 i napoje<\/span>\n              <span><b>Region:<\/b> \u015bwiat (ponad 20 kraj\u00f3w)<\/span>\n              <span><b>Zastosowanie:<\/b> globalna migracja SFA i rozbudowa platformy<\/span>\n            <\/div>\n            <div class=\"ap-case__quote\">\n              <p>&ldquo;Wymienili\u015bmy dotychczasowy system SFA na ponad 20 rynkach w trzech uporz\u0105dkowanych fazach. Nowa platforma poszerzy\u0142a mo\u017cliwo\u015bci naszych zespo\u0142\u00f3w terenowych, a przy tym zachowali\u015bmy ci\u0105g\u0142o\u015b\u0107 proces\u00f3w &mdash; przedstawiciele niemal nie zauwa\u017cyli zmiany. Teraz rozbudowujemy j\u0105 o rozpoznawanie p\u00f3\u0142ki oparte na AI, na tym samym fundamencie.&rdquo;<\/p>\n              <cite>&mdash; VP Sales Operations, globalny producent spo\u017cywczy<\/cite>\n            <\/div>\n            <div class=\"ap-case__stats\">\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">20+<\/p><p class=\"ap-case__sl\">Kraje<\/p><p class=\"ap-case__sn\">zmigrowanych na jedn\u0105 platform\u0119 SRE<\/p><\/div>\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">3<\/p><p class=\"ap-case__sl\">Fazy<\/p><p class=\"ap-case__sn\">uporz\u0105dkowanego wdro\u017cenia (2018\u20132022)<\/p><\/div>\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">0<\/p><p class=\"ap-case__sl\">Zak\u0142\u00f3cenia<\/p><p class=\"ap-case__sn\">p\u0142ynne przej\u015bcie dla przedstawicieli<\/p><\/div>\n              <div class=\"ap-case__stat\"><p class=\"ap-case__v\">+IR<\/p><p class=\"ap-case__sl\">Rozw\u00f3j platformy<\/p><p class=\"ap-case__sn\">teraz rozbudowa o Image Recognition<\/p><\/div>\n            <\/div>\n          <\/div>\n          <div class=\"ap-case__media\">\n            <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/Baking-Scan.png\" alt=\"AI-powered shelf recognition scanning baking products in a retail store\" loading=\"lazy\">\n          <\/div>\n        <\/div>\n      <\/article>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== SECTION 8A: WE ALREADY DO THIS (dark, scale proof) ===== -->\n<section style=\"padding:var(--space-4xl) 0;background:#161616;position:relative;overflow:hidden\">\n  <div class=\"container\">\n    <div data-anim=\"fade\" style=\"max-width:48rem;margin-bottom:var(--space-2xl)\">\n      <span style=\"display:inline-block;background:rgba(255,255,255,0.08);color:#c9c9d0;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;font-size:11px;padding:5px 12px;border-radius:20px;margin-bottom:var(--space-md)\">Ju\u017c to robimy<\/span>\n      <h2 style=\"font-size:clamp(28px,3.4vw,42px);font-weight:600;line-height:1.15;color:#fff;margin:0\">W codziennym u\u017cyciu, <span class=\"text-gradient\">na du\u017c\u0105 skal\u0119<\/span><\/h2>\n    <\/div>\n    <div class=\"ap-proof2\" style=\"display:grid;grid-template-columns:1.05fr 0.95fr;gap:var(--space-3xl);align-items:center\">\n      <div data-anim=\"slide-left\">\n        <p style=\"font-size:clamp(16px,1.6vw,18px);line-height:1.6;color:rgba(255,255,255,0.78);margin:0 0 var(--space-xl)\">Sales &amp; Retail Execution jest w codziennym u\u017cyciu przez zespo\u0142y terenowe najwi\u0119kszych producent\u00f3w FMCG na \u015bwiecie &mdash; w \u017cywno\u015bci, napojach, alkoholu, farmacji, kosmetykach, tytoniu, chemii gospodarczej i karmie dla zwierz\u0105t. Dzi\u015b dzia\u0142a w 74 krajach, od pojedynczego zespo\u0142u krajowego po grup\u0119 korzystaj\u0105c\u0105 z jednej platformy na ka\u017cdym rynku swojej obecno\u015bci.<\/p>\n        <div style=\"display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)\">\n          <div><div class=\"text-gradient\" style=\"font-size:clamp(26px,3vw,36px);font-weight:700;line-height:1;margin-bottom:6px\">125,000+<\/div><div style=\"font-size:13px;color:rgba(255,255,255,0.6);line-height:1.4\">U\u017cytkownik\u00f3w platformy<\/div><\/div>\n          <div><div class=\"text-gradient\" style=\"font-size:clamp(26px,3vw,36px);font-weight:700;line-height:1;margin-bottom:6px\">74<\/div><div style=\"font-size:13px;color:rgba(255,255,255,0.6);line-height:1.4\">Kraje<\/div><\/div>\n          <div><div class=\"text-gradient\" style=\"font-size:clamp(26px,3vw,36px);font-weight:700;line-height:1;margin-bottom:6px\">8<\/div><div style=\"font-size:13px;color:rgba(255,255,255,0.6);line-height:1.4\">kategorii FMCG<\/div><\/div>\n        <\/div>\n      <\/div>\n      <div data-anim=\"slide-right\" style=\"background:#fff;border-radius:var(--radius-lg);padding:var(--space-2xl)\">\n        <p style=\"font-weight:600;text-transform:uppercase;letter-spacing:0.08em;font-size:11px;color:#56565c;margin:0 0 var(--space-lg);text-align:center\">Zaufa\u0142y nam wiod\u0105ce marki FMCG na \u015bwiecie<\/p>\n        <div style=\"display:flex;justify-content:center;align-items:center;gap:var(--space-xl);flex-wrap:wrap\">\n          <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/kraft-heinz.svg\" alt=\"Kraft Heinz\" loading=\"lazy\" style=\"height:30px;width:auto;object-fit:contain\">\n          <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/nestle.svg\" alt=\"Nestl&eacute;\" loading=\"lazy\" style=\"height:30px;width:auto;object-fit:contain\">\n          <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/coca-cola-hbc.svg\" alt=\"Coca-Cola HBC\" loading=\"lazy\" style=\"height:34px;width:auto;object-fit:contain\">\n          <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/ferrero.svg\" alt=\"Ferrero\" loading=\"lazy\" style=\"height:26px;width:auto;object-fit:contain\">\n          <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-Henkel.png\" alt=\"Henkel\" loading=\"lazy\" style=\"height:40px;width:auto;object-fit:contain\">\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n  <style>@media(max-width:900px){.ap-proof2{grid-template-columns:1fr !important;gap:var(--space-2xl) !important}}<\/style>\n<\/section>\n\n<!-- ===== SECTION 8B: INDUSTRY RECOGNITION (grey, logo cards) ===== -->\n<section style=\"padding:var(--space-4xl) 0;background:var(--color-gray)\">\n  <div class=\"container\">\n    <div data-anim=\"fade\" style=\"max-width:52rem;margin-bottom:var(--space-3xl)\">\n      <span style=\"display:inline-block;background:rgba(17,17,17,0.06);color:#56565c;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;font-size:11px;padding:5px 12px;border-radius:20px;margin-bottom:var(--space-md)\">Uznanie w bran\u017cy<\/span>\n      <h2 class=\"text-h5 text-black\" style=\"margin-bottom:var(--space-md)\">Analitycy rynku i normy bran\u017cowe <span class=\"text-gradient\">wyr\u00f3\u017cniaj\u0105 Asseco Platform<\/span><\/h2>\n      <p class=\"text-h10 text-dark-gray\" style=\"margin:0\">Niezale\u017cne rekomendacje, kt\u00f3re wzmacniaj\u0105 Twoje wewn\u0119trzne uzasadnienie zakupu.<\/p>\n    <\/div>\n    <div class=\"ap-rec\" data-stagger style=\"display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)\">\n      <div class=\"ap-rec-card\">\n        <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>\n        <h3>Gartner Representative Vendor<\/h3>\n        <div class=\"ap-rec-card__sub\">Market Guide for Retail Execution \u2013 2025<\/div>\n        <p>Asseco Platform figuruje jako Representative Vendor w raporcie Gartner Market Guide for Retail Execution Management in FMCG.<\/p>\n      <\/div>\n      <div class=\"ap-rec-card\">\n        <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>\n        <h3>POI Best-in-Class<\/h3>\n        <div class=\"ap-rec-card__sub\">9 wyr\u00f3\u017cnie\u0144 w ca\u0142ym portfolio \u2013 2025<\/div>\n        <p>Asseco Platform earned <a href=\"https:\/\/assecoplatform.com\/pl\/2025\/10\/01\/platforma-asseco-wyrozniona-9-kategoriami-best-in-class-w-poi-2025-vendor-panorama\/\">9 POI Best-in-Class awards<\/a> &mdash; pi\u0119\u0107 z nich za funkcje Sales &amp; Retail Execution, w tym Retail Activity Optimization i Coaching.<\/p>\n      <\/div>\n      <div class=\"ap-rec-card\">\n        <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>\n        <h3>ISO\/IEC 27001:2022<\/h3>\n        <div class=\"ap-rec-card__sub\">Certyfikat<\/div>\n        <p>Uznany na \u015bwiecie standard zarz\u0105dzania bezpiecze\u0144stwem informacji. Kluczowy dla decydent\u00f3w IT w du\u017cych organizacjach.<\/p>\n      <\/div>\n    <\/div>\n    <div data-anim=\"fade\" style=\"margin-top:var(--space-2xl)\">\n      <a href=\"https:\/\/assecoplatform.com\/pl\/studia-przypadkow\/\" class=\"ap-rec-cta\">&rarr; Zobacz wszystkie wyr\u00f3\u017cnienia i historie klient\u00f3w<\/a>\n    <\/div>\n  <\/div>\n  <style>\n  .ap-rec-card{background:#fff;border:1px solid #ececed;border-radius:var(--radius-lg);padding:var(--space-2xl);position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}\n  .ap-rec-card::before{content:\"\";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ef5909,#d70e44,#a046e1,#1676c3);opacity:0;transition:opacity .25s ease}\n  .ap-rec-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.08)}\n  .ap-rec-card:hover::before{opacity:1}\n  .ap-rec-card__logo{height:44px;margin-bottom:var(--space-md);display:flex;align-items:center}\n  .ap-rec-card__logo img{height:44px;width:auto;max-width:160px;object-fit:contain}\n  .ap-rec-card h3{font-size:18px;font-weight:600;margin:0 0 6px;color:var(--color-black)}\n  .ap-rec-card__sub{font-size:13px;color:#3F5BEB;margin-bottom:var(--space-sm)}\n  .ap-rec-card p{font-size:15px;line-height:1.55;color:var(--color-dark-gray);margin:0}\n  .ap-rec-cta{display:inline-flex;align-items:center;gap:8px;background:#161616;color:#fff;padding:14px 24px;border-radius:40px;font-weight:600;text-decoration:none;font-size:15px}\n  .ap-rec-cta:hover{opacity:.9}\n  @media(max-width:900px){.ap-rec{grid-template-columns:1fr !important}}\n  <\/style>\n<\/section>\n\n<!-- ===== [INSERT LATER] COMPETITIVE LANDSCAPE \u2014 port from live #6729, rewrite anti-AI + verify claims ===== -->\n<!-- ===== COMPETITIVE LANDSCAPE (rebuilt in .ap-scope; claims re-verified 2026-07-15) ===== -->\n<style>\n.ap-cmp__legend{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;margin:30px auto 0;font-size:12.5px;color:var(--ap-muted)}\n.ap-cmp__legend span{display:inline-flex;align-items:center;gap:8px}\n.ap-scope .dot{width:12px;height:12px;border-radius:50%;flex:0 0 auto;position:relative}\n.ap-scope .dot--yes{background:#1F9D63}\n.ap-scope .dot--part{background:#E0E0E6}\n.ap-scope .dot--part::after{content:\"\";position:absolute;inset:0;border-radius:50%;background:#E8A33D;clip-path:inset(0 50% 0 0)}\n.ap-scope .dot--no{background:transparent;border:1.5px solid #C7C7CE}\n.ap-band[aria-labelledby=\"cmp-h\"] .ap-band__inner{max-width:1520px}\n.ap-cmp-wrap{max-width:100%;margin:36px auto 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--ap-line);border-radius:20px;background:var(--ap-white)}\n.ap-cmp{border-collapse:separate;border-spacing:0;width:100%;min-width:1080px;font-size:12.5px}\n.ap-cmp th,.ap-cmp td{padding:12px 16px;height:auto;text-align:left;vertical-align:top;line-height:1.46;border-bottom:1px solid var(--ap-line)}\n.ap-cmp thead th{position:sticky;top:0;z-index:3;background:var(--ap-white);font-size:12px;font-weight:700;color:var(--ap-muted);white-space:nowrap;border-bottom:1px solid var(--ap-line);padding-top:18px;padding-bottom:16px}\n.ap-cmp th:first-child,.ap-cmp td:first-child{position:sticky;left:0;z-index:2;background:var(--ap-white);font-weight:600;color:var(--ap-text);min-width:180px;font-size:13px}\n.ap-cmp thead th:first-child{z-index:4}\n.ap-cmp td{color:var(--ap-muted)}\n.ap-cmp .cell{display:flex;gap:9px;align-items:flex-start}\n.ap-cmp .cell .dot{margin-top:3px}\n.ap-cmp thead th.hero{background:var(--ap-text);color:var(--ap-white);z-index:3;position:relative;border-bottom:none}\n.ap-cmp thead th.hero::before{content:\"\";position:absolute;left:0;right:0;top:0;height:4px;background:var(--ap-grad)}\n.ap-cmp th.hero .badge{display:block;font-size:9.5px;letter-spacing:1px;font-weight:700;text-transform:uppercase;opacity:.7;margin-top:3px}\n.ap-cmp td.hero{background:var(--ap-tint);color:var(--ap-text);font-weight:600;border-left:1.5px solid rgba(213,41,224,.22);border-right:1.5px solid rgba(213,41,224,.22)}\n.ap-cmp tbody tr:last-child td.hero{border-bottom:1.5px solid rgba(213,41,224,.22)}\n.ap-cmp .grp th,.ap-cmp .grp td{background:#FAFAFB;padding:11px 16px;border-bottom:1px solid var(--ap-line)}\n.ap-cmp .grp th{font-size:10.5px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--ap-muted2)}\n.ap-cmp .grp td.hero{border-left-color:rgba(213,41,224,.22);border-right-color:rgba(213,41,224,.22)}\n.ap-cmp tbody tr.row:hover td,.ap-cmp tbody tr.row:hover td:first-child{background:#FCFCFD}\n.ap-cmp tbody tr.row:hover td.hero{background:linear-gradient(135deg,rgba(241,107,94,.13),rgba(213,41,224,.13),rgba(63,91,235,.14))}\n.ap-cmp__foot{max-width:100%;margin:22px auto 0;padding:0 6px}\n.ap-cmp__foot p{font-size:12px;line-height:1.55;color:var(--ap-muted2);margin:0 0 8px}\n.ap-cmp__scroll{max-width:1180px;margin:14px auto 0;font-size:11.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--ap-muted2);text-align:center;display:none}\n@media(max-width:900px){.ap-cmp__scroll{display:block}}\n<\/style>\n<section class=\"ap-band ap-band--grey\" aria-labelledby=\"cmp-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"ap-head-c\">\n      <p class=\"ap-eyebrow\">Krajobraz konkurencyjny<\/p>\n      <h2 class=\"ap-intro__h\" id=\"cmp-h\">Jak Sales &amp; Retail Execution wypada <span class=\"ap-grad-text\">na tle innych<\/span><\/h2>\n      <p class=\"ap-intro__lede\">Przejrzyste spojrzenie na rynek retail execution i SFA dla FMCG &mdash; od platform enterprise po specjalist\u00f3w segmentu mid-market.<\/p>\n    <\/div>\n    <div class=\"ap-cmp__legend\">\n      <span><i class=\"dot dot--yes\"><\/i> Natywne \/ wzorcowe<\/span>\n      <span><i class=\"dot dot--part\"><\/i> Cz\u0119\u015bciowe \/ przez partnera<\/span>\n      <span><i class=\"dot dot--no\"><\/i> Brak \/ nieujawnione<\/span>\n    <\/div>\n    <p class=\"ap-cmp__scroll\">Przewi\u0144 tabel\u0119 w bok, aby zobaczy\u0107 wszystkich dostawc\u00f3w \u2192<\/p>\n    <div class=\"ap-cmp-wrap\" role=\"region\" aria-label=\"Competitive comparison table\" tabindex=\"0\">\n      <table class=\"ap-cmp\">\n        <thead>\n          <tr>\n            <th scope=\"col\">Zdolno\u015b\u0107<\/th>\n            <th scope=\"col\" class=\"hero\">Asseco Platform<span class=\"badge\">stworzona dla FMCG<\/span><\/th>\n            <th scope=\"col\">Salesforce CG<\/th>\n            <th scope=\"col\">Aforza<\/th>\n            <th scope=\"col\">StayinFront<\/th>\n            <th scope=\"col\">SAP Sales Cloud<\/th>\n            <th scope=\"col\">Repsly<\/th>\n            <th scope=\"col\">Pitcher<\/th>\n          <\/tr>\n        <\/thead>\n        <tbody>\n          <tr class=\"grp\"><th colspan=\"8\">Dopasowanie do rynku i wiarygodno\u015b\u0107<\/th><\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Segment rynku<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Mid-market &rarr; Enterprise<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Enterprise<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Mid-market &rarr; Enterprise<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Mid-market &rarr; Enterprise<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Enterprise<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>SMB \/ Mid-market<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Enterprise (sales)<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Platforma natywnie FMCG<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Tak \u2014 stworzona dla FMCG<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Model danych CG<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>CPG-native (Salesforce)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>CPG + Life Sciences<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Enterprise + CPG<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>CPG (SMB)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Multi-industry + CPG<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Do\u015bwiadczenie w FMCG<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>30+ lat FMCG, 74 kraje<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Od 2019 (Agentforce CG)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Za\u0142o\u017cona 2019, 40+ kraj\u00f3w<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Od 2000, 50+ kraj\u00f3w<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Dekady, 180+ kraj\u00f3w<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Od 2008, 80+ kraj\u00f3w<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Od 2011, 140+ kraj\u00f3w<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">POI Best-in-Class *<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>9 BIC &mdash; 7 RetX (2025)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Oceniana, bez podanej liczby<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>13 BIC &mdash; 5 RetX (2025)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>6 BIC (2024)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>10 BIC, wi\u0119kszo\u015b\u0107 RetX<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Nieoceniana<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>BIC 2022 (w tym Coaching)<\/span><\/td>\n          <\/tr>\n          <tr class=\"grp\"><th colspan=\"8\">AI, obraz i optymalizacja<\/th><\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Image Recognition \u2014 w\u0142asno\u015b\u0107<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Natywne \u2014 w\u0142asny silnik (offline)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Natywne \u2014 Einstein Vision<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Zewn\u0119trzne \u2014 marketplace<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Natywne \u2014 na urz\u0105dzeniu<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Natywne + partner (Wisy)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Zewn\u0119trzne (ParallelDots)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Przez partnera (EasyPicky, 2026)<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Image Recognition \u2014 dok\u0142adno\u015b\u0107<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>do 98% (zwalidowane na du\u017c\u0105 skal\u0119)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Nieujawnione<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Zale\u017cy od partnera<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Nieujawnione<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Nieujawnione<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Podawane przez partnera<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>&mdash;<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Optymalizacja tras<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Autonomiczna \u2014 nocny plan 30-dniowy<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Wspomagana AI (Maps + Einstein)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Planowanie wspomagane AI<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Wspomagana AI (Dynamic Routing)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Planowanie wspomagane AI<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Podstawowa (natywna)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Podstawowa<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Optymalizacja aktywno\u015bci<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>RAO &mdash; POI BIC<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>AI NBA (Einstein)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Ava AI (agentowa)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>RAO &mdash; POI BIC (2024)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>RAO &mdash; POI BIC<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Priorytetyzacja harmonogramu<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Next Best Action (PIA)<\/span><\/td>\n          <\/tr>\n          <tr class=\"grp\"><th colspan=\"8\">Egzekucja w sklepie i dane<\/th><\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Perfect Store<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>KPI w czasie rzeczywistym (r\u0119cznie + IR)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Audyty, ankiety, offline<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Prowadzone przez Ava, offline<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Scoring KPI per sklep<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Dedykowany modu\u0142<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Checklisty, zgodno\u015b\u0107<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Audyty, ankiety w alejce<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Coaching<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Coaching (POI BIC) + incentives<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Grywalizacja + prze\u0142o\u017cony<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Ava jako coach<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Coaching (POI BIC 2021)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Wskaz\u00f3wki Joule AI<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Dashboardy wynik\u00f3w<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Coaching + roleplay (BIC 2022)<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Offline + AI na urz\u0105dzeniu<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Pe\u0142ny offline \u2014 SFA, IR, AR<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Aplikacja SFA offline<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Offline SFA<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Offline SFA + IR na urz\u0105dzeniu<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Aplikacja SFA offline (GA 2026)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--part\"><\/i>Offline SFA (synchronizacja)<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Offline SFA<\/span><\/td>\n          <\/tr>\n          <tr class=\"row\">\n            <th scope=\"row\">Dane handlowe i integracja<\/th>\n            <td class=\"hero\"><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Trade Data Hub + Trade Terms<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>Natywny TPM + MuleSoft<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>TPM + DMS<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Dane POS (RDI) \u2014 brak TPM<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--yes\"><\/i>TPM + RGM + DSD + S\/4HANA<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Brak natywnego TPM<\/span><\/td>\n            <td><span class=\"cell\"><i class=\"dot dot--no\"><\/i>Brak danych handlowych<\/span><\/td>\n          <\/tr>\n        <\/tbody>\n      <\/table>\n    <\/div>\n    <div class=\"ap-cmp__foot\">\n      <p>Na podstawie publicznie dost\u0119pnych informacji o dostawcach na lipiec 2026 &mdash; stron dostawc\u00f3w, komunikat\u00f3w prasowych i og\u0142osze\u0144 analityk\u00f3w. Dane Asseco Platform odzwierciedlaj\u0105 wdro\u017cenia produkcyjne na du\u017c\u0105 skal\u0119.<\/p>\n      <p>* POI = Promotion Optimization Institute. Od 2024 POI publikuje jeden Enterprise Planning &amp; Retail Execution (EPx + RetX) Vendor Panorama; liczby powy\u017cej wyr\u00f3\u017cniaj\u0105 kategorie Retail Execution (RetX) tam, gdzie dostawcy publicznie je og\u0142osili. Publicznie og\u0142oszone sumy 2025: Aforza 13 (5 RetX), SAP 10 (wi\u0119kszo\u015b\u0107 RetX), Asseco 9 (7 RetX). StayinFront og\u0142osi\u0142 6 wyr\u00f3\u017cnie\u0144 Best-in-Class w wynikach 2024; Pitcher by\u0142 Best-in-Class w 2022, w tym w kategorii Coaching. Salesforce jest ocenianym dostawc\u0105, ale nie ujawni\u0142 publicznie liczby wyr\u00f3\u017cnie\u0144 Best-in-Class; Repsly nie jest oceniany w panoramie. Kategorie Best-in-Class RetX Asseco: Retail Activity Optimization, Omnichannel Engagement, Mobile UI\/UX, Coaching &amp; Training, Advanced Imaging Technology (IR\/AR), Guided Selling oraz Selling Stories (jedyny wyr\u00f3\u017cniony).<\/p>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== SECTION 9: PART OF ONE PLATFORM (AP ecosystem diagram, adapted: SRE = you-are-here) ===== -->\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\" aria-labelledby=\"eco-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"ap-head-c\">\n      <p class=\"ap-eyebrow\">Jedna platforma<\/p>\n      <h2 class=\"ap-intro__h\" id=\"eco-h\">Jedna platforma. <span class=\"ap-grad-text\">Ka\u017cdy moment egzekucji w FMCG.<\/span><\/h2>\n      <p class=\"ap-intro__lede\">Sales &amp; Retail Execution obs\u0142uguje teren &mdash; jako cz\u0119\u015b\u0107 jednego pakietu handlowego, w kt\u00f3rym egzekucja, dane, planowanie i rozliczenia korzystaj\u0105 z tych samych liczb.<\/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\">Zbieraj<\/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\">Zobacz, gdzie naprawd\u0119 sprzedaj\u0105 si\u0119 Twoje produkty.<\/p>\n            <ul class=\"apx-mod__list\"><li>Zobacz, kt\u00f3re sklepy faktycznie prowadz\u0105 Twoje produkty &mdash; i kt\u00f3re zamawiaj\u0105 je ponownie<\/li><li>A\u017c po punkty, do kt\u00f3rych docierasz tylko po\u015brednio &mdash; przez dystrybutor\u00f3w i hurtownie<\/li><li>We wszystkich kana\u0142ach dotarcia: dystrybutorzy, sieci, gastronomia i online<\/li><\/ul>\n            <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/pl\/trade-data-hub\/\">Poznaj 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\">Planuj<\/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\">Zdecyduj, gdzie kierowa\u0107 wysi\u0142ek sprzeda\u017cowy i gdzie rosn\u0105\u0107.<\/p>\n            <ul class=\"apx-mod__list\"><li>Zobacz, gdzie mo\u017cesz urosn\u0105\u0107 najbardziej &mdash; w sklepach, barach i restauracjach &mdash; i skieruj tam przedstawicieli<\/li><li>Znajd\u017a sklepy i obszary, do kt\u00f3rych jeszcze nie docierasz<\/li><li>Zaplanuj promocje tam, gdzie si\u0119 zwr\u00f3c\u0105 &mdash; zanim je uruchomisz<\/li><\/ul>\n            <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/route-to-market-optimization\/\">Poznaj 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\">Realizuj<\/span>\n          <div class=\"apx-panel__cols\">\n            <div class=\"apx-mod apx-panel--here\" style=\"border-radius:16px;padding:18px 16px;height:100%;\">\n              <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>\n              <span class=\"apx-here\">&#9679; Jeste\u015b tutaj<\/span>\n              <p class=\"apx-here__note\">Warstwa egzekucji w terenie &mdash; <b>pe\u0142ny przebieg opisany jest wy\u017cej na tej stronie<\/b>: planowanie wizyt, RAO, Perfect Store, przyjmowanie zam\u00f3wie\u0144, promocje, coaching.<\/p>\n            <\/div>\n            <div class=\"apx-mod\"><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>\n              <p class=\"apx-mod__intro\">Automatyczny audyt p\u00f3\u0142ki ze zdj\u0119cia.<\/p>\n              <ul class=\"apx-mod__list\"><li>Zobacz, co jest na p\u00f3\u0142ce &mdash; facingi, udzia\u0142 w p\u00f3\u0142ce, braki towaru<\/li><li>Sprawd\u017a od razu zgodno\u015b\u0107 z planogramem i cenami<\/li><li>Zweryfikuj, czy promocje i ekspozycje stan\u0119\u0142y zgodnie z ustaleniami<\/li><li>Zobacz, co poprawi\u0107, p\u00f3ki przedstawiciel jest jeszcze w sklepie<\/li><\/ul>\n              <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/pl\/cyfrowe-rozpoznawanie-polek\/\">Poznaj Retail Image Recognition<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>\n        <\/article>\n        <article class=\"apx-panel apx-panel--settle\"><span class=\"apx-pill\">Rozliczaj<\/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\">Ustal warunki handlowe &mdash; i rozlicz je na realnych liczbach.<\/p>\n            <ul class=\"apx-mod__list\"><li>Zbierz wszystkie warunki handlowe w jednym miejscu &mdash; cele, rabaty retro, warunki promocyjne<\/li><li>\u015aled\u017a, czy partnerzy realizuj\u0105 dostawy na czas i w ca\u0142o\u015bci &mdash; <strong>OTIF<\/strong><\/li><li>Rozliczaj promocje i rabaty retro automatycznie na podstawie realnych danych sprzeda\u017cy<\/li><\/ul>\n            <a class=\"apx-mod__more\" href=\"https:\/\/assecoplatform.com\/trade-terms-settlement\/\">Poznaj Trade Terms &#038; 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\">Genius&nbsp;AI<\/span><\/div>\n          <div class=\"apx-wide__body\"><div class=\"apx-wide__eyebrow\">AI w ka\u017cdym kroku<\/div><div class=\"apx-wide__text\">Jedna AI dzia\u0142aj\u0105ca w ca\u0142ej platformie &mdash; podpowiada nast\u0119pny najlepszy ruch, odpowiada na pytania zwyk\u0142ym j\u0119zykiem i odczytuje p\u00f3\u0142k\u0119 ze zdj\u0119cia.<\/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\">One&nbsp;View<\/span><\/div>\n          <div class=\"apx-wide__body\"><div class=\"apx-wide__eyebrow\">Jedno \u017ar\u00f3d\u0142o prawdy<\/div><div class=\"apx-wide__text\">Egzekucja w terenie, dane, planowanie i rozliczenia zasilaj\u0105 jeden wsp\u00f3lny widok &mdash; wi\u0119c sprzeda\u017c, trade marketing i finanse pracuj\u0105 na tych samych liczbach, zamiast spiera\u0107 si\u0119, czyj raport jest w\u0142a\u015bciwy.<\/div><\/div>\n        <\/article>\n      <\/div>\n    <\/div><\/div><\/div>\n  <\/div>\n<\/section>\n\n\n<!-- ===== FAQ (rebuilt: TDH ap-faq2 layout \u2014 grouped 2-col open Q&A; DRO deep-dive removed, Route optimization terminology) ===== -->\n<style>\n.ap-band[aria-labelledby=\"faq-h\"] .ap-band__inner{max-width:1270px}\n.ap-faq2{max-width:none;margin:40px auto 0}\n.ap-faq2__head{max-width:none;margin:0 auto;text-align:left}\n.ap-faq2__head .ap-eyebrow{margin-bottom:14px;background:rgba(17,17,17,.06);color:#56565C;padding:5px 12px;border-radius:20px}\n.ap-faq2__head .ap-intro__h{margin:0 0 16px}\n.ap-faq2__lede{font-size:18px;line-height:1.6;color:var(--ap-muted);margin:0;max-width:780px}\n.ap-faq2__lede a{color:var(--ap-magenta);font-weight:500;text-decoration:none}\n.ap-faq2__lede a:hover{text-decoration:underline}\n.ap-faq2__group{margin-bottom:52px}\n.ap-faq2__group:last-child{margin-bottom:0}\n.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.ap-faq2__qs{display:grid;grid-template-columns:1fr 1fr;gap:22px 64px}\n.ap-faq2__qa{padding-bottom:22px;border-bottom:1px solid rgba(0,0,0,.08)}\n.ap-faq2__qa .q{font-weight:600;color:var(--ap-text);font-size:16px;line-height:1.35;margin:0 0 8px}\n.ap-faq2__qa .a{font-size:15px;line-height:1.62;color:var(--ap-muted);margin:0}\n.ap-faq2__qa .a a{color:var(--ap-magenta);font-weight:500;text-decoration:none}\n.ap-faq2__qa .a a:hover{text-decoration:underline}\n@media(max-width:820px){.ap-faq2__qs{grid-template-columns:1fr;gap:22px}}\n<\/style>\n<section class=\"ap-band ap-band--grey\" 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 class=\"ap-intro__h\" id=\"faq-h\">Najcz\u0119stsze pytania <span class=\"ap-grad-text\">o Sales &amp; Retail Execution<\/span><\/h2>\n      <p class=\"ap-faq2__lede\">Zebrane z rozm\u00f3w z dyrektorami sprzeda\u017cy, mened\u017cerami trade marketingu i zespo\u0142ami IT u producent\u00f3w FMCG. Je\u015bli nie ma tu Twojego pytania &mdash; <a href=\"https:\/\/assecoplatform.com\/pl\/skontaktuj-sie-z-nami\/\">skontaktuj si\u0119 z nami<\/a>.<\/p>\n    <\/div>\n    <div class=\"ap-faq2\">\n      <div class=\"ap-faq2__group\">\n        <h4 class=\"ap-faq2__h\">Czym jest i czym si\u0119 r\u00f3\u017cni<\/h4>\n        <div class=\"ap-faq2__qs\">\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Czym jest Sales &#038; Retail Execution?<\/p><p class=\"a\">Sales &amp; Retail Execution to platforma retail execution dla zespo\u0142\u00f3w terenowych FMCG, u\u017cywana w aplikacji Mobile Touch. Prowadzi ca\u0142y cykl wizyty &mdash; zaplanuj wizyt\u0119, sprzedaj w sklepie, zrealizuj przy p\u00f3\u0142ce i przejrzyj wyniki. Obejmuje planowanie wizyt, zam\u00f3wienia, ankiety, merchandising, promocje i cele, z funkcjami takimi jak <a href=\"https:\/\/assecoplatform.com\/pl\/perfect-store\/\">Perfect Store<\/a>, Retail Activity Optimization, <a href=\"https:\/\/assecoplatform.com\/pl\/dynamiczna-optymalizacja-tras\/\">Optymalizacja tras<\/a> i Coaching. Korzystaj\u0105 z niej zespo\u0142y terenowe w 74 krajach.<\/p><\/div>\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Czym jest Mobile Touch?<\/p><p class=\"a\">Mobile Touch to aplikacja Asseco Platform do egzekucji terenowej &mdash; codzienne miejsce pracy przedstawicieli i merchandiser\u00f3w FMCG. Na jednym urz\u0105dzeniu (iOS, Android, Windows) \u0142\u0105czy sales force automation, retail execution, rozpoznawanie obrazu i optymalizacj\u0119 tras; to aplikacja stoj\u0105ca za Sales &amp; Retail Execution, u\u017cywana przez zespo\u0142y terenowe w 74 krajach.<\/p><\/div>\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Czym Mobile Touch r\u00f3\u017cni si\u0119 od zwyk\u0142ej aplikacji SFA?<\/p><p class=\"a\">Zwyk\u0142e narz\u0119dzie SFA przyjmuje zam\u00f3wienia i rejestruje wizyty. Mobile Touch dok\u0142ada rozpoznawanie obrazu z AI (zgodno\u015b\u0107 z planogramem, udzia\u0142 w p\u00f3\u0142ce), Optymalizacj\u0119 tras, scoring Perfect Store, Retail Activity Optimization i pe\u0142n\u0105 prac\u0119 offline &mdash; wi\u0119c ka\u017cda wizyta jest mierzona, a nie tylko rejestrowana. Przedstawiciele pracuj\u0105 w jednej aplikacji, a mened\u017cerowie maj\u0105 jedno \u017ar\u00f3d\u0142o prawdy.<\/p><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"ap-faq2__group\">\n        <h4 class=\"ap-faq2__h\">Zakres i wdro\u017cenie<\/h4>\n        <div class=\"ap-faq2__qs\">\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Co jest w standardzie, a co mo\u017cesz do\u0142o\u017cy\u0107?<\/p><p class=\"a\">Ka\u017cde wdro\u017cenie zaczyna si\u0119 od rdzenia platformy &mdash; planowanie wizyt, egzekucja w sklepie, zam\u00f3wienia i promocje oraz raportowanie. Zaawansowane funkcje dok\u0142adasz, gdy jeste\u015b got\u00f3w: Perfect Store, Retail Activity Optimization, Optymalizacja tras, Coaching i incentives oraz Retail Image Recognition. Zaczynasz od podstaw i dok\u0142adasz reszt\u0119.<\/p><\/div>\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Czy dzia\u0142a offline?<\/p><p class=\"a\">Tak. Aplikacja Mobile Touch (iOS, Android i Windows) jest stworzona do pe\u0142nej pracy offline &mdash; to kluczowe w sklepach ze s\u0142abym zasi\u0119giem lub bez niego. Zam\u00f3wienia, ankiety, audyty, rozpoznawanie obrazu i dane tras dzia\u0142aj\u0105 offline i synchronizuj\u0105 si\u0119 automatycznie, gdy wr\u00f3ci po\u0142\u0105czenie.<\/p><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"ap-faq2__group\">\n        <h4 class=\"ap-faq2__h\">Integracja i dowody<\/h4>\n        <div class=\"ap-faq2__qs\">\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Jak integruje si\u0119 z naszym ERP i istniej\u0105cymi systemami?<\/p><p class=\"a\">Sales &amp; Retail Execution integruje si\u0119 z Twoim ERP i CRM przez standardowe API, wi\u0119c korzysta z Twoich danych podstawowych i zwraca wyniki &mdash; zam\u00f3wienia przechodz\u0105 bezpo\u015brednio. <a href=\"https:\/\/assecoplatform.com\/pl\/trade-data-hub\/\">Trade Data Hub<\/a> obs\u0142uguje wymian\u0119 danych z dystrybutorami i sieciami handlowymi.<\/p><\/div>\n        <div class=\"ap-faq2__qa\"><p class=\"q\">Kt\u00f3re marki FMCG u\u017cywaj\u0105 dzi\u015b Sales &#038; Retail Execution?<\/p><p class=\"a\">Na platformie dzia\u0142aj\u0105 zespo\u0142y terenowe wielu najwi\u0119kszych firm FMCG na \u015bwiecie &mdash; w tym Kraft Heinz, Nestl\u00e9, Coca-Cola HBC, Henkel, SC Johnson, Imperial Tobacco, Pernod Ricard i Ferrero &mdash; z 125 000+ u\u017cytkownik\u00f3w w 74 krajach.<\/p><\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n  <script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Czym jest Sales & Retail Execution?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Sales & Retail Execution to platforma retail execution dla zespo\u0142\u00f3w terenowych FMCG, u\u017cywana w aplikacji Mobile Touch. Prowadzi ca\u0142y cykl wizyty \u2014 zaplanuj wizyt\u0119, sprzedaj w sklepie, zrealizuj przy p\u00f3\u0142ce i przejrzyj wyniki \u2014 obejmuj\u0105c planowanie wizyt, zam\u00f3wienia, ankiety, merchandising, promocje i cele, z funkcjami takimi jak Perfect Store, Retail Activity Optimization, Optymalizacja tras i Coaching. Korzystaj\u0105 z niej zespo\u0142y terenowe w 74 krajach.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Czym jest Mobile Touch?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Mobile Touch to aplikacja Asseco Platform do egzekucji terenowej \u2014 codzienne miejsce pracy przedstawicieli i merchandiser\u00f3w FMCG. Na jednym urz\u0105dzeniu (iOS, Android, Windows) \u0142\u0105czy sales force automation, retail execution, rozpoznawanie obrazu i optymalizacj\u0119 tras; to aplikacja stoj\u0105ca za Sales & Retail Execution, u\u017cywana przez zespo\u0142y terenowe w 74 krajach.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Czym Mobile Touch r\u00f3\u017cni si\u0119 od zwyk\u0142ej aplikacji SFA?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Zwyk\u0142e narz\u0119dzie SFA przyjmuje zam\u00f3wienia i rejestruje wizyty. Mobile Touch dok\u0142ada rozpoznawanie obrazu z AI (zgodno\u015b\u0107 z planogramem, udzia\u0142 w p\u00f3\u0142ce), Optymalizacj\u0119 tras, scoring Perfect Store, Retail Activity Optimization i pe\u0142n\u0105 prac\u0119 offline \u2014 wi\u0119c ka\u017cda wizyta jest mierzona, a nie tylko rejestrowana. Przedstawiciele pracuj\u0105 w jednej aplikacji, a mened\u017cerowie maj\u0105 jedno \u017ar\u00f3d\u0142o prawdy.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Co jest w standardzie, a co mo\u017cesz do\u0142o\u017cy\u0107?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Ka\u017cde wdro\u017cenie zaczyna si\u0119 od rdzenia platformy \u2014 planowanie wizyt, egzekucja w sklepie, zam\u00f3wienia i promocje oraz raportowanie. Zaawansowane funkcje dok\u0142adasz, gdy jeste\u015b got\u00f3w: Perfect Store, Retail Activity Optimization, Optymalizacja tras, Coaching i incentives oraz Retail Image Recognition. Zaczynasz od podstaw i dok\u0142adasz reszt\u0119.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Czy dzia\u0142a offline?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Tak. Aplikacja Mobile Touch (iOS, Android i Windows) jest stworzona do pe\u0142nej pracy offline \u2014 to kluczowe w sklepach ze s\u0142abym zasi\u0119giem lub bez niego. Zam\u00f3wienia, ankiety, audyty, rozpoznawanie obrazu i dane tras dzia\u0142aj\u0105 offline i synchronizuj\u0105 si\u0119 automatycznie, gdy wr\u00f3ci po\u0142\u0105czenie.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Jak integruje si\u0119 z naszym ERP i istniej\u0105cymi systemami?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Sales & Retail Execution integruje si\u0119 z Twoim ERP i CRM przez standardowe API, wi\u0119c korzysta z Twoich danych podstawowych i zwraca wyniki \u2014 zam\u00f3wienia przechodz\u0105 bezpo\u015brednio. Trade Data Hub obs\u0142uguje wymian\u0119 danych z dystrybutorami i sieciami handlowymi.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Kt\u00f3re marki FMCG u\u017cywaj\u0105 dzi\u015b Sales & Retail Execution?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Na platformie dzia\u0142aj\u0105 zespo\u0142y terenowe wielu najwi\u0119kszych firm FMCG na \u015bwiecie \u2014 w tym Kraft Heinz, Nestl\u00e9, Coca-Cola HBC, Henkel, SC Johnson, Imperial Tobacco, Pernod Ricard i Ferrero \u2014 z 125 000+ u\u017cytkownik\u00f3w w 74 krajach.\"\n      }\n    }\n  ]\n}\n<\/script>\n<\/section>\n\n<!-- ===== SECTION 11: CTA ===== -->\n<section class=\"ap-cta\" aria-labelledby=\"cta-h\">\n  <span class=\"ap-cta__glow\" aria-hidden=\"true\"><\/span>\n  <div class=\"ap-cta__inner\">\n    <h2 class=\"ap-cta__h\" id=\"cta-h\">Zobacz to w swoich sklepach<\/h2>\n    <p class=\"ap-cta__p\">Powiedz nam, jak dzi\u015b pracuj\u0105 Twoje zespo\u0142y terenowe &mdash; Twoje rynki, kana\u0142y i zesp\u00f3\u0142 &mdash; a poka\u017cemy Ci, jak wygl\u0105da cykl wizyty w Sales &amp; Retail Execution.<\/p>\n    <a class=\"ap-cta__btn\" href=\"https:\/\/assecoplatform.com\/pl\/skontaktuj-sie-z-nami\/\">Book a live demo<svg aria-hidden=\"true\" 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>\n  <\/div>\n<\/section>\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"SoftwareApplication\",\n  \"name\": \"Sales & Retail Execution\",\n  \"applicationCategory\": \"BusinessApplication\",\n  \"operatingSystem\": \"iOS, Android, Windows\",\n  \"description\": \"Platforma retail execution dla zespo\u0142\u00f3w terenowych FMCG w aplikacji Mobile Touch \u2014 planowanie wizyt, egzekucja w sklepie, Perfect Store, rozpoznawanie obrazu i optymalizacja tras. U\u017cywana przez zespo\u0142y terenowe w 74 krajach.\",\n  \"url\": \"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/\",\n  \"publisher\": {\n    \"@type\": \"Organization\",\n    \"name\": \"Asseco Business Solutions\",\n    \"url\": \"https:\/\/assecoplatform.com\/\"\n  }\n}\n<\/script>\n\n<\/div>\n<!-- ===== \/SECTIONS 7-11 ===== -->\n<script>\n(function(){var v=document.querySelectorAll('.ap-hero-vid');if(v.length>1){var i=0;try{v[0].play()}catch(e){}setInterval(function(){var c=v[i];i=(i+1)%v.length;var n=v[i];try{n.currentTime=0;n.play()}catch(e){}n.classList.add('is-active');c.classList.remove('is-active')},8000)}})();\nvar aA,aS;function aInit(){if(aA)aA.disconnect();if(aS)aS.disconnect();aA=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('is-visible');aA.unobserve(e.target)}})},{threshold:0.15,rootMargin:'0px 0px -40px 0px'});document.querySelectorAll('[data-anim]').forEach(function(el){if(!el.classList.contains('is-visible'))aA.observe(el)});aS=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('is-visible');aS.unobserve(e.target)}})},{threshold:0.1,rootMargin:'0px 0px -20px 0px'});document.querySelectorAll('[data-stagger]').forEach(function(el){if(!el.classList.contains('is-visible'))aS.observe(el)})}aInit();\n(function(){var nav=document.getElementById('sre-subnav');if(!nav)return;var hero=document.querySelector('.ap-hero');var desc=document.getElementById('sre-desc');var links=[].slice.call(nav.querySelectorAll('[data-spy]'));var anchors=links.map(function(l){return{el:document.getElementById(l.getAttribute('data-spy')),link:l,d:'<b>'+(l.getAttribute('data-phase')||'')+'<\/b> '+String.fromCharCode(8212)+' '+(l.getAttribute('data-desc')||'')};}).filter(function(a){return a.el;});var LINE=170;var forced=null;function apply(cur){links.forEach(function(l){l.classList.toggle('is-active',cur?l===cur.link:false);});if(cur){if(desc){if(desc.innerHTML!==cur.d){desc.innerHTML=cur.d;}}}}function bySpy(id){for(var i=0;i<anchors.length;i++){if(anchors[i].link.getAttribute('data-spy')===id){return anchors[i];}}return null;}function onScroll(){var y=window.pageYOffset||document.documentElement.scrollTop;var hh=hero?hero.offsetHeight:600;nav.classList.toggle('is-pinned',y>hh-70);if(forced){var r=forced.el.getBoundingClientRect().top;var arrived=false;if(r>-30){if(r<180){arrived=true;}}if(arrived){forced=null;}else{apply(forced);return;}}var cur=anchors.length?anchors[0]:null;anchors.forEach(function(a){if(a.el.getBoundingClientRect().top<=LINE){cur=a;}});apply(cur);}links.forEach(function(l){l.addEventListener('click',function(){forced=bySpy(l.getAttribute('data-spy'));apply(forced);});});var t=false;window.addEventListener('scroll',function(){if(!t){t=true;requestAnimationFrame(function(){onScroll();t=false;});}},{passive:true});window.addEventListener('resize',onScroll,{passive:true});onScroll();})();\n<\/script>\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Platforma retail execution dla FMCG Sales &amp; Retail Execution: prze\u0142\u00f3\u017c strategi\u0119 na to, co naprawd\u0119 dzieje si\u0119 na p\u00f3\u0142ce. Twoja strategia handlowa jest warta tyle, ile jej wykonanie przy p\u00f3\u0142ce. Sales &amp; Retail Execution to platforma retail execution, kt\u00f3ra prowadzi ca\u0142y cykl wizyty &mdash; planowanie, realizacj\u0119, przegl\u0105d &mdash; dzi\u0119ki czemu ka\u017cda wizyta w terenie przek\u0142ada [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"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-6746","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.0 (Yoast SEO v28.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>System SFA dla FMCG: Sales &amp; Retail Execution | Asseco Platform<\/title>\n<meta name=\"description\" content=\"System SFA dla zespo\u0142\u00f3w terenowych FMCG (Mobile Touch): planowanie wizyt, Perfect Store, rozpoznawanie obrazu, trasy AI. 125 000+ u\u017cytkownik\u00f3w, 74 kraje.\" \/>\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\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sales &amp; Retail Execution\" \/>\n<meta property=\"og:description\" content=\"System SFA dla zespo\u0142\u00f3w terenowych FMCG (Mobile Touch): planowanie wizyt, Perfect Store, rozpoznawanie obrazu, trasy AI. 125 000+ u\u017cytkownik\u00f3w, 74 kraje.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/\" \/>\n<meta property=\"og:site_name\" content=\"Asseco Platform\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-17T13:32:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-WhatIs.webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data1\" content=\"34 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/\",\"name\":\"System SFA dla FMCG: Sales & Retail Execution | Asseco Platform\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/SRE-WhatIs.webp\",\"datePublished\":\"2026-04-08T11:22:01+00:00\",\"dateModified\":\"2026-08-17T13:32:21+00:00\",\"description\":\"System SFA dla zespo\u0142\u00f3w terenowych FMCG (Mobile Touch): planowanie wizyt, Perfect Store, rozpoznawanie obrazu, trasy AI. 125 000+ u\u017cytkownik\u00f3w, 74 kraje.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/SRE-WhatIs.webp\",\"contentUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/SRE-WhatIs.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/sprzedaz-i-realizacja-w-handlu-detalicznym\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/strona-glowna\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sales &amp; Retail Execution\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/#website\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/\",\"name\":\"Asseco Platform\",\"description\":\"Solutions for FMCG\",\"publisher\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/assecoplatform.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/#organization\",\"name\":\"Asseco Platform\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/#\\\/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\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"System SFA dla FMCG: Sales & Retail Execution | Asseco Platform","description":"System SFA dla zespo\u0142\u00f3w terenowych FMCG (Mobile Touch): planowanie wizyt, Perfect Store, rozpoznawanie obrazu, trasy AI. 125 000+ u\u017cytkownik\u00f3w, 74 kraje.","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\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/","og_locale":"pl_PL","og_type":"article","og_title":"Sales &amp; Retail Execution","og_description":"System SFA dla zespo\u0142\u00f3w terenowych FMCG (Mobile Touch): planowanie wizyt, Perfect Store, rozpoznawanie obrazu, trasy AI. 125 000+ u\u017cytkownik\u00f3w, 74 kraje.","og_url":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/","og_site_name":"Asseco Platform","article_modified_time":"2026-08-17T13:32:21+00:00","og_image":[{"url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-WhatIs.webp","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Szacowany czas czytania":"34 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/","url":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/","name":"System SFA dla FMCG: Sales & Retail Execution | Asseco Platform","isPartOf":{"@id":"https:\/\/assecoplatform.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/#primaryimage"},"image":{"@id":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/#primaryimage"},"thumbnailUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-WhatIs.webp","datePublished":"2026-04-08T11:22:01+00:00","dateModified":"2026-08-17T13:32:21+00:00","description":"System SFA dla zespo\u0142\u00f3w terenowych FMCG (Mobile Touch): planowanie wizyt, Perfect Store, rozpoznawanie obrazu, trasy AI. 125 000+ u\u017cytkownik\u00f3w, 74 kraje.","breadcrumb":{"@id":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/#primaryimage","url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-WhatIs.webp","contentUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/07\/SRE-WhatIs.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/assecoplatform.com\/pl\/strona-glowna\/"},{"@type":"ListItem","position":2,"name":"Sales &amp; Retail Execution"}]},{"@type":"WebSite","@id":"https:\/\/assecoplatform.com\/#website","url":"https:\/\/assecoplatform.com\/","name":"Asseco Platform","description":"Solutions for FMCG","publisher":{"@id":"https:\/\/assecoplatform.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/assecoplatform.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/assecoplatform.com\/#organization","name":"Asseco Platform","url":"https:\/\/assecoplatform.com\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/assecoplatform.com\/#\/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\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages\/6746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/comments?post=6746"}],"version-history":[{"count":5,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages\/6746\/revisions"}],"predecessor-version":[{"id":9473,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages\/6746\/revisions\/9473"}],"wp:attachment":[{"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/media?parent=6746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}