{"id":7883,"date":"2026-05-06T13:20:48","date_gmt":"2026-05-06T13:20:48","guid":{"rendered":"https:\/\/assecoplatform.com\/perfect-store-pl\/"},"modified":"2026-10-20T10:51:45","modified_gmt":"2026-10-20T10:51:45","slug":"perfect-store","status":"publish","type":"page","link":"https:\/\/assecoplatform.com\/pl\/perfect-store\/","title":{"rendered":"Perfect Store"},"content":{"rendered":"\n<style>\n\n\/* ==== BAZA Design System (kopia z LP SRE #6729) ==== *\/\n\n\/* ============================================\n   ASSECO BS Design System \u2014 Global Styles\n   Based on Figma: AP_PodstronaERP + AP_Homepage + AP_Homepage_animacje\n   ============================================ *\/\n\n\/* --- Font Face --- *\/\n@font-face {\n  font-family: 'PP Mori';\n  src: url('https:\/\/assecoplatform.com\/wp-content\/themes\/asseco-lp-fse\/dist\/fonts\/subset-PPMori-Regular.woff2') format('woff2');\n  font-weight: 200;\n  font-style: normal;\n  font-display: swap;\n}\n\n@font-face {\n  font-family: 'PP Mori';\n  src: url('https:\/\/assecoplatform.com\/wp-content\/themes\/asseco-lp-fse\/dist\/fonts\/subset-PPMori-Regular.woff2') format('woff2');\n  font-weight: 400;\n  font-style: normal;\n  font-display: swap;\n}\n\n@font-face {\n  font-family: 'PP Mori';\n  src: url('https:\/\/assecoplatform.com\/wp-content\/themes\/asseco-lp-fse\/dist\/fonts\/subset-PPMori-SemiBold.woff2') format('woff2');\n  font-weight: 600;\n  font-style: normal;\n  font-display: swap;\n}\n\n\/* --- CSS Custom Properties (Design Tokens) --- *\/\n:root {\n  \/* Colors *\/\n  --color-base:        #F2F2F2;\n  --color-gray:        #F2F2F2;\n  --color-white:       #FDFDFD;\n  --color-black:       #232323;\n  --color-dark-black:  #090909;\n  --color-dark-gray:   #676767;\n  --color-medium-gray: #AEAEAE;\n  --color-light-gray:  #DFDFDF;\n\n  \/* Brand \/ ERP Colors *\/\n  --color-erp-yellow:     #FFA533;\n  --color-erp-red:        #FF4A6A;\n  --color-erp-green:      #00C2B6;\n  --color-erp-blue:       #3FA2EB;\n  --color-erp-light-orange: #FFC274;\n\n  \/* Accent \/ Gradient *\/\n  --color-accent-orange: #EF5909;\n  --color-accent-red:    #D70E44;\n  --color-accent-purple: #A046E1;\n  --gradient-brand: linear-gradient(90deg, #ef5909 0%, #d70e44 33.333%, #a046e1 66.666%, #1676c3);\n\n  \/* Surfaces *\/\n  --surface-card-dark:  #141414;\n  --surface-card-dark2: #282828;\n  --surface-icon-dark:  #484848;\n\n  \/* Typography Scale *\/\n  --font-family: 'PP Mori', arial, sans-serif;\n\n  \/* Spacing *\/\n  --space-xs:  4px;\n  --space-sm:  8px;\n  --space-md:  16px;\n  --space-lg:  24px;\n  --space-xl:  32px;\n  --space-2xl: 48px;\n  --space-3xl: 64px;\n  --space-4xl: 96px;\n\n  \/* Border Radius *\/\n  --radius-sm:   8px;\n  --radius-md:  16px;\n  --radius-lg:  24px;\n  --radius-xl:  52px;\n  --radius-full: 9999px;\n\n  \/* Status colors *\/\n  --color-status-success: #10B981;\n  --color-status-warning: #F59E0B;\n\n  \/* Max width *\/\n  --max-width: 1270px;\n  --page-padding: clamp(16px, 4vw, 48px);\n}\n\n\/* --- Typography --- *\/\n.text-h2 {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  letter-spacing: normal;\n}\n\n.text-h4 {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.125;\n  letter-spacing: normal;\n}\n\n.text-h5 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: normal;\n}\n\n.text-h7 {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  letter-spacing: 0;\n}\n\n.text-h8 {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.34;\n  letter-spacing: 0;\n}\n\n.text-h9 {\n  font-size: 18px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: normal;\n}\n\n.text-h10 {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  letter-spacing: normal;\n}\n\n.text-h11 {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n}\n\n.text-small {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n}\n\n.text-tiny {\n  font-size: 10px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.2px;\n}\n\n\/* Text colors *\/\n.text-black      { color: var(--color-black); }\n.text-white      { color: var(--color-white); }\n.text-dark-gray  { color: var(--color-dark-gray); }\n.text-medium-gray { color: var(--color-medium-gray); }\n.text-light-gray { color: var(--color-light-gray); }\n\n\/* Gradient text *\/\n.text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n\/* --- Layout --- *\/\n.container {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.section {\n  padding: var(--space-4xl) 0;\n}\n\n\/* --- Buttons --- *\/\n.btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-sm);\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  white-space: nowrap;\n  border-radius: 9999px;\n  padding: 11px 16px 9px;\n  height: 42px;\n  transition: opacity 0.2s ease, transform 0.15s ease;\n}\n\n.btn:hover {\n  opacity: 0.85;\n}\n\n\/* Button with arrow icon (::before) \u2014 matches live assecobs.pl *\/\n.btn-has-arrow {\n  flex-direction: row-reverse;\n  gap: 8px;\n}\n\n.btn-has-arrow::before {\n  content: \"\";\n  display: block;\n  width: 16px;\n  height: 16px;\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M2 6.25a.75.75 0 0 0 0 1.5v-1.5Zm12.53 1.28a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 1 0-1.06 1.06L12.939 7l-4.242 4.243a.75.75 0 0 0 1.06 1.06L14.53 7.53ZM2 7.75h12v-1.5H2v1.5Z' fill='%23232323'\/%3E%3C\/svg%3E\");\n  background-size: contain;\n  background-repeat: no-repeat;\n  flex-shrink: 0;\n  transition: transform 0.2s ease;\n}\n\n.btn-has-arrow:hover::before {\n  transform: translateX(4px);\n}\n\n.btn-primary-white.btn-has-arrow:hover {\n  opacity: 1;\n  background-color: #3FA2EB;\n  color: var(--color-white);\n}\n\n.btn-primary-white.btn-has-arrow:hover::before {\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M2 6.25a.75.75 0 0 0 0 1.5v-1.5Zm12.53 1.28a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 1 0-1.06 1.06L12.939 7l-4.242 4.243a.75.75 0 0 0 1.06 1.06L14.53 7.53ZM2 7.75h12v-1.5H2v1.5Z' fill='%23FDFDFD'\/%3E%3C\/svg%3E\");\n}\n\n.btn-primary.btn-has-arrow::before {\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M2 6.25a.75.75 0 0 0 0 1.5v-1.5Zm12.53 1.28a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 1 0-1.06 1.06L12.939 7l-4.242 4.243a.75.75 0 0 0 1.06 1.06L14.53 7.53ZM2 7.75h12v-1.5H2v1.5Z' fill='%23FDFDFD'\/%3E%3C\/svg%3E\");\n}\n\n.btn-primary.btn-has-arrow:hover {\n  opacity: 1;\n  background-color: #3FA2EB;\n}\n\n.btn:active {\n  transform: scale(0.97);\n}\n\n\/* Primary \u2014 dark fill *\/\n.btn-primary {\n  background-color: var(--color-black);\n  color: var(--color-white);\n}\n\n\/* Primary \u2014 white fill *\/\n.btn-primary-white {\n  background-color: var(--color-white);\n  color: var(--color-black);\n}\n\n\/* Outline *\/\n.btn-outline {\n  background-color: var(--color-white);\n  color: var(--color-black);\n  border: 1px solid var(--color-black);\n}\n\n\/* Hero badge (kicker label above heading) *\/\n.hero-badge {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--space-sm);\n  padding: var(--space-sm) var(--space-md);\n  border-radius: var(--radius-full);\n  border: 1px solid rgba(255, 255, 255, 0.15);\n  background: rgba(255, 255, 255, 0.06);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-lg);\n}\n\n\/* Primary with blue hover *\/\n.btn-primary--blue-hover:hover {\n  background-color: var(--color-erp-blue);\n  color: var(--color-white);\n  opacity: 1;\n}\n\n\/* Small button (header CTA) *\/\n.btn--sm {\n  padding: var(--space-sm) 20px;\n  height: auto;\n}\n\n\/* Outline on dark background *\/\n.btn-outline-white {\n  background-color: transparent;\n  color: var(--color-white);\n  border: 1px solid var(--color-white);\n}\n\n.btn-outline-white:hover {\n  background-color: var(--color-black);\n  color: var(--color-white);\n  border-color: var(--color-black);\n}\n\n\/* Outline on tinted bg *\/\n.btn-outline-tinted {\n  background-color: #e6f0ef;\n  color: var(--color-black);\n  border: 1px solid var(--color-black);\n}\n\n\/* Large pill (footer CTA) *\/\n.btn-lg {\n  height: 60px;\n  padding: 12px 24px;\n  border-radius: var(--radius-xl);\n}\n\n\/* Arrow icon inside buttons *\/\n.btn-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n}\n\n.btn-icon svg {\n  width: 100%;\n  height: 100%;\n}\n\n\/* Round arrow button (used in bran\u017ce section) *\/\n.btn-round {\n  width: 60px;\n  height: 60px;\n  border-radius: 50%;\n  padding: 0;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n}\n\n\/* --- Tags --- *\/\n.tag {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 9px 8px 7px;\n  border-radius: 8px;\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1;\n  letter-spacing: -0.02rem;\n  color: var(--color-white);\n  white-space: nowrap;\n  margin: 0;\n}\n\n.tag-blue    { background-color: rgb(22, 118, 195); }\n.tag-orange  { background-color: rgb(255, 165, 51); }\n.tag-wms     { background-color: rgb(255, 194, 116); }\n.tag-red     { background-color: rgb(255, 74, 106); }\n.tag-gray    { background-color: rgb(174, 174, 174); }\n.tag-green   { background-color: rgb(0, 194, 182); }\n.tag-salmon  { background-color: rgb(241, 107, 94); }\n.tag-yellow  { background-color: var(--color-erp-yellow); }\n\n\/* --- Cards --- *\/\n.card {\n  background-color: var(--color-white);\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n}\n\n.card-dark {\n  background-color: var(--surface-card-dark);\n  color: var(--color-white);\n  border-radius: var(--radius-lg);\n}\n\n.card-dark2 {\n  background-color: var(--surface-card-dark2);\n  color: var(--color-white);\n  border-radius: var(--radius-md);\n}\n\n\/* ERP Products Grid *\/\n.erp-products {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 38px 25px;\n  justify-content: center;\n  max-width: 1326px;\n  margin: 0 auto;\n}\n\n\/* ERP Solution Card *\/\n.card-erp {\n  position: relative;\n  background-color: var(--color-white);\n  border-radius: 25px;\n  overflow: visible;\n  cursor: pointer;\n  padding-bottom: 38px;\n}\n\n.card-erp__image {\n  position: relative;\n  overflow: hidden;\n  border-radius: 25px;\n  height: 195px;\n  margin-bottom: 25px;\n  transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.card-erp__logo {\n  position: relative;\n  padding: 0 25px;\n  display: grid;\n  grid-template-rows: 0fr;\n  overflow: visible;\n  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__logo-img,\nimg.card-erp__logo-img {\n  display: block;\n  width: auto;\n  height: 0;\n  opacity: 0;\n  min-height: 0;\n  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__logo-img img {\n  height: 50px;\n  width: auto;\n}\n\n.card-erp__open {\n  position: absolute;\n  right: 25px;\n  top: 0;\n  bottom: -52px;\n  width: 52px;\n  height: 52px;\n  border-radius: 19px;\n  background: rgba(242, 242, 242, 0.75);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border: none;\n  cursor: pointer;\n  transition: all 0.3s;\n  z-index: 2;\n}\n\n.card-erp__open:hover {\n  background: var(--color-black);\n}\n\n.card-erp__open:hover svg path {\n  stroke: white;\n}\n\n.card-erp__body {\n  padding: 0 33px;\n  margin-top: 35px;\n  transition: margin-top 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-erp__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 33px;\n  color: var(--color-black);\n  margin-bottom: 13px;\n}\n\n.card-erp__desc {\n  font-size: 20px;\n  font-weight: 400;\n  line-height: 25px;\n  color: var(--color-dark-gray);\n}\n\n\/* Card hover \u2014 show logo, shrink image *\/\n.card-erp:hover .card-erp__image {\n  height: 144px;\n}\n\n.card-erp:hover .card-erp__logo {\n  grid-template-rows: 1fr;\n}\n\n.card-erp:hover .card-erp__logo-img,\n.card-erp:hover img.card-erp__logo-img {\n  height: 50px;\n  opacity: 1;\n}\n\n.card-erp:hover .card-erp__body {\n  margin-top: 27px;\n}\n\n\/* --- ERP Slide Overlay (fixed, like live site) --- *\/\n.erp-slider {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: 200;\n  display: none;\n  overflow: visible;\n}\n\n.erp-slider.is-active {\n  display: flex;\n  justify-content: flex-end;\n}\n\n.erp-slider__bg {\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  background: rgba(35, 35, 35, 0.5);\n  z-index: 0;\n}\n\n.erp-slider__panel {\n  position: relative;\n  z-index: 1;\n  width: 83.3%;\n  max-width: 1200px;\n  height: 100vh;\n  background: var(--color-base);\n  border-radius: 25px 0 0 25px;\n  overflow: hidden;\n  transform: translateX(100%);\n  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slider.is-active .erp-slider__panel {\n  transform: translateX(0);\n}\n\n\/* Nav arrows (bottom-right of panel) *\/\n.erp-slider__nav {\n  position: absolute;\n  bottom: 50px;\n  right: 54px;\n  display: flex;\n  gap: 8px;\n  z-index: 10;\n}\n\n.erp-slider__arrow {\n  width: 31px;\n  height: 31px;\n  border-radius: 9999px;\n  background: var(--color-white);\n  border: none;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  color: var(--color-black);\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slider__arrow svg {\n  width: 12px;\n  height: 12px;\n}\n\n.erp-slider__arrow:hover {\n  background: var(--color-black);\n}\n\n.erp-slider__arrow:hover svg path {\n  stroke: #fff;\n}\n\n.erp-slider__arrow svg path {\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slider__arrow:disabled {\n  opacity: 0.3;\n  cursor: default;\n}\n\n.erp-slider__arrow:disabled:hover {\n  background: var(--color-white);\n}\n\n.erp-slider__arrow:disabled:hover svg path {\n  stroke: #232323;\n}\n\n\/* Individual slide panel *\/\n.erp-slide {\n  display: none;\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  grid-template-columns: 1.18fr 1fr;\n  grid-template-rows: 1fr auto;\n  gap: 19px 69px;\n  padding: 134px 50px 50px;\n  overflow-y: auto;\n  z-index: 1;\n}\n\n.erp-slide.is-active {\n  display: grid;\n}\n\n.erp-slide__close {\n  position: absolute;\n  left: 50px;\n  top: 33px;\n  width: 52px;\n  height: 52px;\n  border-radius: 19px;\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border: none;\n  cursor: pointer;\n  z-index: 10;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slide__close svg {\n  width: 20px;\n  height: 20px;\n}\n\n.erp-slide__close:hover {\n  background: var(--color-black);\n}\n\n.erp-slide__close:hover svg path {\n  stroke: white;\n}\n\n.erp-slide__close svg path {\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.erp-slide__content {\n  padding: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  grid-row: 1;\n  grid-column: 1;\n}\n\n.erp-slide__logo {\n  width: auto;\n  height: 50px;\n  margin-bottom: 40px;\n}\n\n.erp-slide__logo img {\n  height: 100%;\n  width: auto;\n}\n\n\/* Logo badge \u2014 icon + label (DRS variant) *\/\n.erp-slide__logo-badge {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--space-md);\n  margin-bottom: var(--space-xl);\n}\n\n.erp-slide__logo-badge-icon {\n  width: 48px;\n  height: 48px;\n  border-radius: var(--radius-sm);\n  background-color: var(--color-gray);\n  background-repeat: no-repeat;\n  background-position: center;\n  background-size: 24px 24px;\n  flex-shrink: 0;\n}\n\n.erp-slide__logo-badge-label {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.erp-slide__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 56px;\n  color: var(--color-black);\n  margin-bottom: 12px;\n}\n\n.erp-slide__subheading {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 23px;\n  color: var(--color-dark-gray);\n  margin-bottom: 29px;\n}\n\n.erp-slide__checklist {\n  list-style: none;\n  padding: 0 0 0 38px;\n  display: block;\n  margin: 25px 0;\n}\n\n.erp-slide__checklist li {\n  position: relative;\n  padding: 0;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 23px;\n  color: var(--color-dark-gray);\n  margin-bottom: 13px;\n}\n\n.erp-slide__checklist li:last-child {\n  margin-bottom: 0;\n}\n\n.erp-slide__checklist li::before {\n  content: '';\n  position: absolute;\n  left: -38px;\n  top: 0;\n  width: 22px;\n  height: 22px;\n  border: none;\n  border-radius: 0;\n  background: url(\"list-check.svg\") no-repeat 0 0 \/ 22px 22px;\n}\n\n.erp-slide__image {\n  grid-row: 1 \/ 3;\n  grid-column: 2;\n  border-radius: 0;\n  overflow: visible;\n  position: relative;\n}\n\n.erp-slide__image img {\n  width: 100%;\n  height: auto;\n  object-fit: contain;\n}\n\n\/* \"Wi\u0119cej\" button *\/\n.erp-slide__more {\n  grid-row: 2;\n  grid-column: 1;\n  align-self: end;\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  background: var(--color-black);\n  color: var(--color-white);\n  border: none;\n  border-radius: 9999px;\n  padding: 11px 17px 9px;\n  font-size: 16px;\n  font-weight: 400;\n  cursor: pointer;\n  width: fit-content;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  text-decoration: none;\n}\n\n.erp-slide__more:hover {\n  background: var(--color-dark-gray);\n}\n\n.erp-slide__more svg {\n  width: 16px;\n  height: 16px;\n}\n\n.erp-slide__more svg path {\n  stroke: currentColor;\n}\n\n\/* Product category card *\/\n.card-product {\n  background-color: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 32px;\n  width: 298px;\n}\n\n.card-product--tinted {\n  background-color: rgba(0, 194, 182, 0.05);\n}\n\n.card-product__logo {\n  height: 50px;\n  margin-bottom: 48px;\n}\n\n.card-product__logo img {\n  height: 100%;\n  width: auto;\n}\n\n.card-product__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n  margin-bottom: 12px;\n}\n\n.card-product__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-black);\n  height: 71px;\n  margin-bottom: 48px;\n}\n\n.card-product--tinted .card-product__desc {\n  color: var(--color-dark-gray);\n}\n\n\/* Product card CTA \u2014 outline pill, matches .is-style-arrow-right-white-outline on live site *\/\n.card-product .btn-case-cta {\n  background: transparent;\n  border: 1px solid #232323;\n  color: #232323;\n  transition: background-color 0.3s, color 0.3s;\n}\n\n.card-product .btn-case-cta:hover {\n  background: #232323;\n  color: #FDFDFD;\n}\n\n.card-product .btn-case-cta:hover .btn-case-cta__arrow {\n  filter: invert(100%);\n  transform: translateX(0.25rem);\n  transition: filter 0.3s, transform 0.3s;\n}\n\n\/* Case study card *\/\n\/* Case Studies \u2014 matches .slider-case-studies on assecobs.pl\/erp *\/\n.card-case {\n  background-color: #141414;\n  border-radius: 1.5rem;\n  padding: clamp(1.5rem, 4vw, 3rem) clamp(1.25rem, 4vw, 4.125rem) clamp(1.5rem, 4vw, 3rem) clamp(1.25rem, 3vw, 2rem);\n  display: grid;\n  grid-template-columns: 1fr auto;\n  align-items: center;\n  gap: clamp(1rem, 4vw, 5.1875rem);\n  width: min(54.6875rem, 90vw);\n  flex-shrink: 0;\n}\n\n.card-case__content {\n  min-width: 0;\n}\n\n.card-case__title {\n  font-size: 3rem;\n  font-weight: 600;\n  line-height: 1.13;\n  color: var(--color-white);\n  margin-bottom: 2rem;\n}\n\n.card-case__desc {\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.375rem;\n  color: #F2F2F2;\n  margin-bottom: 0.5rem;\n}\n\n.card-case__author {\n  font-size: 1rem;\n  color: #AEAEAE;\n  margin-bottom: 2rem;\n}\n\n.card-case__logo {\n  background: #FDFDFD;\n  border-radius: 1.5rem;\n  padding: 1.5rem;\n  height: clamp(8rem, 20vw, 19.875rem);\n  display: grid;\n  place-items: center;\n  flex-shrink: 0;\n  max-width: min(200px, 30vw);\n}\n\n.card-case__logo img {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n  object-position: center;\n}\n\n\/* Case study CTA button \u2014 white pill, matches .is-style-arrow-right-white on live *\/\n.btn-case-cta {\n  display: inline-flex;\n  width: fit-content;\n  align-items: center;\n  gap: 0.5rem;\n  padding: 0.72rem 1rem 0.59rem;\n  border: none;\n  border-radius: 9999px;\n  background: #FDFDFD;\n  color: #090909;\n  font-size: 1rem;\n  font-weight: 400;\n  letter-spacing: -0.02rem;\n  text-decoration: none;\n  transition: background 0.3s;\n}\n\n.btn-case-cta:hover {\n  background: #e6e6e6;\n}\n\n\/* Case study nav arrows \u2014 gray bg, matches live site *\/\n.case-slider__arrow {\n  width: 1.875rem;\n  height: 1.875rem;\n  border-radius: 9999px;\n  background: rgb(103, 103, 103);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  padding: 0;\n}\n\n.case-slider__arrow svg {\n  width: 0.875rem;\n  height: 0.875rem;\n}\n\n.case-slider__arrow:hover {\n  background: rgb(253, 253, 253);\n}\n\n.case-slider__arrow:hover svg path {\n  stroke: rgb(35, 35, 35);\n}\n\n.case-slider__arrow:disabled {\n  pointer-events: none;\n  display: none;\n}\n\n\/* Case Studies section mobile fix *\/\n.section-case-studies {\n  background-size: auto min(100%, 400px) !important;\n}\n\n\/* Case Studies marquee animation *\/\n.case-studies-marquee {\n  overflow: hidden;\n  margin-left: -1.5rem;\n  margin-right: -1.5rem;\n  padding-left: 1.5rem;\n}\n\n.case-studies-marquee .slider-track {\n  overflow: visible;\n  scroll-snap-type: none;\n  width: max-content;\n  animation: caseStudiesScroll 160s linear infinite;\n  padding-top: 4px;\n  padding-bottom: 4px;\n}\n\n.case-studies-marquee .slider-track:hover {\n  animation-play-state: paused;\n}\n\n@keyframes caseStudiesScroll {\n  from { transform: translateX(0); }\n  to { transform: translateX(-50%); }\n}\n\n\/* Case card gradient border on hover *\/\n.card-case {\n  position: relative;\n}\n\n.card-case::before {\n  content: '';\n  position: absolute;\n  inset: -2px;\n  border-radius: calc(1.5rem + 2px);\n  padding: 2px;\n  background: linear-gradient(107deg, #ef5909 17%, #d70e44 34%, #a046e1 55%, #1676c3 73%);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n  pointer-events: none;\n}\n\n.card-case:hover::before {\n  opacity: 1;\n}\n\n.btn-case-cta__arrow {\n  display: block;\n  width: 1rem;\n  height: 1rem;\n  flex-shrink: 0;\n  background: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjMjMyMzIzIi8+PC9zdmc+\") center \/ 1rem no-repeat;\n}\n\n\/* ======= Video Testimonials \u2014 1:1 copy from assecobs.pl\/erp\/ .slider-video-v2 ======= *\/\n\n\/* Card \u2014 matches .box-video *\/\n.card-testimonial {\n  width: 21.25rem; \/* 340px at 16px base, matches splide slide width *\/\n  height: auto;\n  aspect-ratio: 9 \/ 16;\n  border-radius: 1.5rem;\n  overflow: hidden;\n  position: relative;\n  flex-shrink: 0;\n  background: #333;\n}\n\n.card-testimonial__image {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  display: block;\n}\n\n\/* Dark gradient overlay \u2014 matches .wp-block-video::after *\/\n.card-testimonial::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  width: 100%;\n  height: 100%;\n  background: linear-gradient(to bottom, transparent, rgba(35,35,35,0.8));\n  pointer-events: none;\n  z-index: 1;\n  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* On hover: gradient shifts to bottom-focused (keeps person info readable on static thumbnails) *\/\n.card-testimonial:hover::after {\n  background: linear-gradient(to bottom, transparent 40%, rgba(35,35,35,0.6) 100%);\n}\n\n\/* Play\/pause pill \u2014 matches .box-video__play .wp-element-button::before\/::after *\/\n.card-testimonial__play {\n  position: absolute;\n  inset: 0;\n  z-index: 40;\n  cursor: pointer;\n  display: flex;\n  align-items: flex-start;\n  justify-content: flex-end;\n  padding: 1rem;\n  background: transparent;\n}\n\n\/* Play icon pill (::before) \u2014 visible by default *\/\n.card-testimonial__play::before {\n  content: '';\n  position: absolute;\n  right: 1rem;\n  top: 1rem;\n  width: 3.125rem;\n  height: 3.125rem;\n  background-color: rgba(216, 216, 216, 0.4);\n  border-radius: 1.125rem;\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2EpIj48cGF0aCBkPSJNMTIuNTAxIDcuMTFhMS4wNDQgMS4wNDQgMCAwIDEgMCAxLjc4TDQuNjggMTMuODNjLS43MzEuNDU2LTEuNjgtLjA1My0xLjY4LS44OVYzLjA2YzAtLjgzNy45Ni0xLjM0NiAxLjY4LS44OUwxMi41IDcuMTFaIiBmaWxsPSIjRkRGREZEIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iYSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGgxNnYxNkgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPg==\");\n  background-position: center;\n  background-repeat: no-repeat;\n  background-size: 1rem;\n  opacity: 1;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Pause icon pill (::after) \u2014 hidden by default, shown on hover *\/\n.card-testimonial__play::after {\n  content: '';\n  position: absolute;\n  right: 1rem;\n  top: 1rem;\n  width: 3.125rem;\n  height: 3.125rem;\n  background-color: rgba(216, 216, 216, 0.4);\n  border-radius: 1.125rem;\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHJlY3Qgd2lkdGg9IjQiIGhlaWdodD0iMTUiIHJ4PSIxIiBmaWxsPSIjRkRGREZEIi8+PHJlY3QgeD0iOSIgd2lkdGg9IjQiIGhlaWdodD0iMTUiIHJ4PSIxIiBmaWxsPSIjRkRGREZEIi8+PC9zdmc+\");\n  background-position: center;\n  background-repeat: no-repeat;\n  background-size: 0.8125rem 0.9375rem;\n  opacity: 0;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: play fades, pause appears with dark bg *\/\n.card-testimonial:hover .card-testimonial__play::before {\n  opacity: 0;\n}\n\n.card-testimonial:hover .card-testimonial__play::after {\n  opacity: 1;\n  background-color: rgb(35, 35, 35);\n}\n\n\/* Bottom content area \u2014 matches .box-video__content with grid-template-rows animation *\/\n.card-testimonial__content {\n  position: absolute;\n  inset: auto 0 0;\n  z-index: 50;\n  display: grid;\n  align-items: flex-start;\n  grid-template-rows: 0px 0fr;\n  padding: 0 1rem;\n  transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: expand content to show CTA + tags *\/\n.card-testimonial:hover .card-testimonial__content {\n  grid-template-rows: 4.1875rem 1fr;\n}\n\n\/* Person info \u2014 positioned above the content grid via absolute *\/\n.card-testimonial__person-info {\n  position: absolute;\n  bottom: calc(100% + 1rem);\n  left: 1rem;\n  display: flex;\n  align-items: center;\n  gap: 0.75rem;\n}\n\n.card-testimonial__avatar {\n  width: 3.125rem;\n  height: 3.125rem;\n  border-radius: 50%;\n  aspect-ratio: 1 \/ 1;\n  object-fit: cover;\n  flex-shrink: 0;\n}\n\n.card-testimonial__name {\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.375rem;\n  color: var(--color-white);\n  letter-spacing: -0.02rem;\n}\n\n\/* CTA button \u2014 inside expandable grid row *\/\n.card-testimonial__cta {\n  overflow: hidden;\n  position: relative;\n  z-index: 10;\n}\n\n\/* Matches .is-style-arrow-right-white .wp-element-button on live site *\/\n.card-testimonial__cta a {\n  display: inline-flex;\n  width: fit-content;\n  align-items: center;\n  gap: 0.5rem;\n  padding: 0.72rem 1rem 0.59rem;\n  border: none;\n  border-radius: 9999px;\n  background: var(--color-white);\n  color: #232323;\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.02rem;\n  text-decoration: none;\n  transition: background 0.3s, color 0.3s;\n  white-space: nowrap;\n}\n\n\/* Arrow icon via ::before \u2014 matches live site SVG *\/\n.card-testimonial__cta a::before {\n  content: '';\n  display: block;\n  width: 1rem;\n  height: 1rem;\n  flex-shrink: 0;\n  background: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjMjMyMzIzIi8+PC9zdmc+\") center \/ 1rem no-repeat;\n}\n\n.card-testimonial__cta a:hover {\n  background: var(--color-erp-blue);\n  color: var(--color-white);\n}\n\n.card-testimonial__cta a:hover::before {\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjRkRGREZEIi8+PC9zdmc+\");\n}\n\n\/* Remove old SVG arrows from HTML \u2014 they're now in ::before *\/\n.card-testimonial__cta a svg {\n  display: none;\n}\n\n\/* Tags \u2014 inside expandable grid row, with margin-bottom transition *\/\n.card-testimonial__tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 0.25rem;\n  width: 100%;\n  overflow: hidden;\n  margin-bottom: 0;\n  transition: margin-bottom 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: add bottom margin to tags *\/\n.card-testimonial:hover .card-testimonial__tags {\n  margin-bottom: 1rem;\n}\n\n\/* ======= Slider Video Section Layout \u2014 matches assecobs.pl\/erp\/ ======= *\/\n.slider-video-section .slider-video-layout {\n  display: grid;\n  grid-template-columns: 1.13fr 1fr 1fr;\n  align-items: flex-start;\n  position: relative;\n}\n\n.slider-video-section .slider-video__text {\n  padding: 0 0 0 1.5rem;\n  grid-column: 1;\n  grid-row: 1;\n  position: relative;\n  width: 100%;\n  z-index: 10;\n}\n\n.slider-video-section .slider-video__text p {\n  letter-spacing: -0.02rem;\n  margin-bottom: 1.75rem;\n  max-width: 25rem;\n}\n\n.slider-video-section .slider-video__track-wrapper {\n  grid-column: 2 \/ 4;\n  grid-row: 1;\n  overflow: visible;\n}\n\n.slider-video-section .slider-video__track-wrapper .slider-track {\n  gap: 1.5rem;\n  padding-right: 48px;\n}\n\n\/* Nav arrows \u2014 matches .splide__arrows on live site *\/\n.slider-video__nav {\n  display: flex;\n  gap: 1rem;\n}\n\n.slider-video__arrow {\n  width: 1.875rem;\n  height: 1.875rem;\n  border-radius: 9999px;\n  background: rgb(255, 255, 255);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  padding: 0;\n}\n\n.slider-video__arrow svg {\n  width: 0.875rem;\n  height: 0.875rem;\n  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.slider-video__arrow svg path {\n  stroke: #232323;\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Hover: dark bg, white stroke *\/\n.slider-video__arrow:hover {\n  background: rgb(35, 35, 35);\n}\n\n.slider-video__arrow:hover svg path {\n  stroke: rgb(253, 253, 253);\n}\n\n\/* Disabled: gray bg, hidden on desktop *\/\n.slider-video__arrow:disabled {\n  background: rgb(103, 103, 103);\n  pointer-events: none;\n  display: none;\n}\n\n\/* Industry tile *\/\n.tile-industry {\n  background-color: #232323;\n  border-radius: 17px;\n  width: 175px;\n  height: 159px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  padding: 21px 8px;\n  cursor: pointer;\n  transition: background-color 0.3s;\n}\n\n.tile-industry:hover {\n  background-color: #2d2d2d;\n}\n\n.tile-industry__inner {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 16px;\n}\n\n.tile-industry__icon {\n  width: 63px;\n  height: 63px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.tile-industry__icon img,\n.tile-industry__icon svg {\n  width: 63px;\n  height: 63px;\n  padding: 15px;\n  background-color: rgb(72, 72, 72);\n  border-radius: 9999px;\n  box-sizing: border-box;\n}\n\n.tile-industry__label {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-white);\n  text-align: center;\n}\n\n\/* --- Advantage Bar --- *\/\n.advantage-bar {\n  background-color: var(--color-white);\n  padding: 61px 0;\n}\n\n.advantage-bar__list {\n  display: flex;\n  align-items: flex-start;\n  justify-content: center;\n  gap: 51px;\n  list-style: none;\n}\n\n.advantage-bar__item {\n  display: flex;\n  align-items: flex-start;\n  gap: 16px;\n  max-width: 370px;\n}\n\n.advantage-bar__icon {\n  width: 22px;\n  height: 22px;\n  flex-shrink: 0;\n}\n\n.advantage-bar__text {\n  font-size: 20px;\n  font-weight: 400;\n  line-height: 1.34;\n  color: var(--color-black);\n}\n\n\/* --- Hero Section --- *\/\n.hero {\n  background-color: var(--color-gray);\n  position: relative;\n  height: 678px;\n  overflow: hidden;\n}\n\n\/* Blob background \u2014 1:1 from assecobs.pl\/erp *\/\n.hero__desktop-bg {\n  position: absolute;\n  top: 0;\n  right: 0;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: flex-start;\n  justify-content: flex-end;\n  pointer-events: none;\n}\n\n.hero__content {\n  position: relative;\n  z-index: 20;\n  margin-top: 217px;\n  margin-left: 50px;\n  width: 529px;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 32px;\n}\n\n.hero__logo {\n  height: 70px;\n  width: auto;\n}\n\n.hero__title {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.13;\n  color: var(--color-black);\n}\n\n.hero__subtitle {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* Hero slider *\/\n.hero__slider {\n  position: absolute;\n  top: 218px;\n  left: 706px;\n  width: 830px;\n  height: 460px;\n  z-index: 10;\n  overflow: hidden;\n}\n\n.hero__slider-track {\n  display: flex;\n  width: 100%;\n  height: 100%;\n  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n.hero__slide {\n  min-width: 100%;\n  height: 100%;\n}\n\n.hero__slide img {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n}\n\n.hero__arrows {\n  position: absolute;\n  top: 80px;\n  right: 65px;\n  z-index: 30;\n  display: flex;\n  gap: 8px;\n}\n\n.hero__arrow-btn {\n  width: 31px;\n  height: 31px;\n  border-radius: 9999px;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  box-shadow: none;\n  transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.hero__arrow-btn:hover {\n  background-color: var(--color-black);\n}\n\n.hero__arrow-btn:hover svg path {\n  stroke: #fff;\n}\n\n.hero__arrow-btn svg path {\n  transition: stroke 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Mobile blob \u2014 hidden on desktop, shown on mobile *\/\n.hero__mobile-bg {\n  display: none;\n  position: absolute;\n  top: -40px;\n  right: -60px;\n  width: 420px;\n  height: 100%;\n  pointer-events: none;\n  overflow: visible;\n}\n\n.hero__decorative-shape {\n  position: absolute;\n  top: -20%;\n  right: -15%;\n  width: 838px;\n  height: 838px;\n  opacity: 0.15;\n}\n\n\/* --- Slider Controls --- *\/\n.slider-controls {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n}\n\n.slider-arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  background: transparent;\n  border: 1px solid var(--color-medium-gray);\n  transition: background-color 0.2s;\n}\n\n.slider-arrow:hover {\n  background: rgba(0,0,0,0.05);\n}\n\n.slider-arrow--dark {\n  border-color: var(--color-dark-gray);\n}\n\n.slider-arrow--dark:hover {\n  background: rgba(255,255,255,0.1);\n}\n\n.slider-arrow svg {\n  width: 14px;\n  height: 14px;\n}\n\n.slider-arrow--prev svg {\n  transform: rotate(180deg);\n}\n\n\/* --- Horizontal Scroll Slider --- *\/\n.slider-track {\n  display: flex;\n  gap: var(--space-lg);\n  overflow-x: auto;\n  scroll-snap-type: x mandatory;\n  -webkit-overflow-scrolling: touch;\n  scrollbar-width: none;\n  padding-bottom: 8px;\n}\n\n.slider-track::-webkit-scrollbar {\n  display: none;\n}\n\n.slider-track > * {\n  scroll-snap-align: start;\n  flex-shrink: 0;\n}\n\n\/* --- Section Headers --- *\/\n.section-header {\n  display: flex;\n  align-items: flex-start;\n  justify-content: space-between;\n  margin-bottom: var(--space-3xl);\n}\n\n.section-header__title {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.13;\n}\n\n.section-header--center {\n  justify-content: center;\n  text-align: center;\n}\n\n.section-header--center .section-header__title {\n  width: 100%;\n}\n\n\/* --- Footer --- *\/\n.footer {\n  background-color: var(--color-dark-black);\n  border-radius: var(--radius-lg) var(--radius-lg) 0 0;\n  padding: clamp(16px, 4vw, 48px);\n  color: var(--color-white);\n  overflow: hidden;\n}\n\n.footer__top {\n  display: flex;\n  align-items: center;\n  gap: 193px;\n  margin-bottom: 26px;\n}\n\n.footer__logo {\n  height: 31px;\n  width: auto;\n}\n\n.footer__cta {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  gap: 32px;\n}\n\n.footer__cta-text {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-gray);\n  max-width: 360px;\n}\n\n.footer__cta-buttons {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n}\n\n.footer__columns {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 50px;\n  margin-bottom: 26px;\n}\n\n.footer__column-title {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.4;\n  color: var(--color-gray);\n  margin-bottom: 11px;\n}\n\n.footer__link {\n  display: block;\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n  margin-bottom: 4px;\n  transition: color 0.2s;\n}\n\n.footer__link:hover {\n  color: var(--color-white);\n}\n\n.footer__divider {\n  width: 100%;\n  height: 1px;\n  background: rgba(255,255,255,0.1);\n  margin-bottom: 24px;\n}\n\n.footer__bottom {\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-start;\n}\n\n.footer__social {\n  display: flex;\n  gap: 16px;\n  margin-bottom: 12px;\n}\n\n.footer__social-link {\n  font-size: 16px;\n  color: var(--color-dark-gray);\n  transition: color 0.2s;\n}\n\n.footer__social-link:hover {\n  color: var(--color-white);\n}\n\n.footer__copyright {\n  font-size: 12px;\n  color: var(--color-dark-gray);\n  letter-spacing: -0.24px;\n}\n\n.footer__legal {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n}\n\n.footer__legal-link {\n  font-size: 10px;\n  color: var(--color-medium-gray);\n  letter-spacing: -0.2px;\n  transition: color 0.2s;\n}\n\n.footer__legal-link:hover {\n  color: var(--color-white);\n}\n\n\/* Help tag pills in footer *\/\n.footer__help-tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 9px;\n}\n\n.footer__help-tag {\n  display: inline-flex;\n  align-items: center;\n  gap: 7px;\n  background: var(--color-black);\n  border-radius: 20px;\n  padding: 10px 12px 8px;\n  height: 35px;\n  font-size: 12px;\n  color: var(--color-medium-gray);\n}\n\n.footer__help-tag-icon {\n  width: 10px;\n  height: 10px;\n}\n\n\/* --- CTA Banner (Bran\u017ce \"Nie widzisz...\") --- *\/\n.cta-banner {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 36px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 53px;\n}\n\n.cta-banner__text {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n}\n\n\/* --- Utility Classes --- *\/\n.flex { display: flex; }\n.flex-col { flex-direction: column; }\n.flex-wrap { flex-wrap: wrap; }\n.items-center { align-items: center; }\n.items-start { align-items: flex-start; }\n.justify-center { justify-content: center; }\n.justify-between { justify-content: space-between; }\n.gap-xs  { gap: var(--space-xs); }\n.gap-sm  { gap: var(--space-sm); }\n.gap-md  { gap: var(--space-md); }\n.gap-lg  { gap: var(--space-lg); }\n.gap-xl  { gap: var(--space-xl); }\n.gap-2xl { gap: var(--space-2xl); }\n.gap-3xl { gap: var(--space-3xl); }\n.text-center { text-align: center; }\n.w-full { width: 100%; }\n.relative { position: relative; }\n.overflow-hidden { overflow: hidden; }\n\n\/* ============================================\n   HOMEPAGE Components (AP_Homepage_1366px)\n   ============================================ *\/\n\n\/* --- Additional Typography (Homepage) --- *\/\n.text-h1 {\n  font-size: 68px;\n  font-weight: 600;\n  line-height: 1.06;\n  letter-spacing: -1.36px;\n}\n\n.text-h3 {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1.06;\n  letter-spacing: normal;\n}\n\n.text-h6 {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  letter-spacing: normal;\n}\n\n.text-h5-gradient {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.31;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.text-h7-regular {\n  font-size: 24px;\n  font-weight: 400;\n  line-height: 1.37;\n}\n\n\/* --- Hero Video Section --- *\/\n.hero-video {\n  position: relative;\n  width: 100%;\n  display: grid;\n  grid-template-columns: 1fr;\n  grid-template-rows: 1fr;\n  align-items: flex-end;\n  overflow: hidden;\n}\n\n.hero-video__video-wrapper {\n  grid-area: 1 \/ 1 \/ -1 \/ -1;\n  position: relative;\n  width: 100%;\n  height: 100%;\n}\n\n.hero-video__video {\n  width: 100%;\n  height: 100%;\n  min-height: 620px;\n  object-fit: cover;\n  display: block;\n}\n\n.hero-video__overlay {\n  position: absolute;\n  inset: 0;\n  background: rgba(0, 0, 0, 0.5);\n  z-index: 1;\n  pointer-events: none;\n}\n\n.hero-video__content {\n  grid-area: 1 \/ 1 \/ -1 \/ -1;\n  position: relative;\n  z-index: 10;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 130px 24px;\n  width: 100%;\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-end;\n  align-items: flex-start;\n}\n\n.hero-video__heading {\n  font-size: clamp(38px, 6vw, 68px);\n  font-weight: 600;\n  line-height: 1.15;\n  letter-spacing: -1.36px;\n  color: var(--color-white);\n  max-width: 835px;\n  margin-bottom: 32px;\n  cursor: default;\n}\n\n.hero-video__heading .text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.hero-video__watch-btn {\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  background: transparent;\n  border: none;\n  color: var(--color-white);\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  cursor: pointer;\n  padding: 0;\n  position: absolute;\n  bottom: 32px;\n  right: 48px;\n  z-index: 10;\n}\n\n.hero-video__watch-btn::after {\n  content: '';\n  position: absolute;\n  bottom: -4px;\n  left: 0;\n  width: 100%;\n  height: 1px;\n  background: var(--color-white);\n  opacity: 0;\n  transition: opacity 0.3s;\n}\n\n.hero-video__watch-btn:hover::after {\n  opacity: 1;\n}\n\n.hero-video__watch-btn svg {\n  transition: transform 0.3s;\n}\n\n.hero-video__watch-btn:hover svg {\n  transform: translateX(4px);\n}\n\n\/* Fullscreen video popup *\/\n.hero-video__fullscreen {\n  position: fixed;\n  inset: 0;\n  z-index: 40;\n  background: rgba(0, 0, 0, 0.95);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  opacity: 0;\n  visibility: hidden;\n  pointer-events: none;\n  transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.hero-video__fullscreen.is-open {\n  opacity: 1;\n  visibility: visible;\n  pointer-events: auto;\n}\n\n.hero-video__fullscreen-video {\n  max-width: 90vw;\n  max-height: 85vh;\n  border-radius: 12px;\n}\n\n.hero-video__fullscreen-close {\n  position: absolute;\n  top: 24px;\n  right: 24px;\n  background: rgba(255,255,255,0.1);\n  border: none;\n  border-radius: 50%;\n  width: 48px;\n  height: 48px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n}\n\n.hero-video__fullscreen-close:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n.hero-video__actions {\n  display: flex;\n  align-items: center;\n  gap: 24px;\n}\n\n\/* --- Button: Secondary (play + text) --- *\/\n.btn-secondary {\n  display: inline-flex;\n  align-items: center;\n  gap: 12px;\n  font-size: 16px;\n  font-weight: 600;\n  color: var(--color-white);\n  background: none;\n  border: none;\n  cursor: pointer;\n  padding: 0;\n  transition: opacity 0.2s;\n}\n\n.btn-secondary:hover {\n  opacity: 0.8;\n}\n\n.btn-secondary__play {\n  width: 48px;\n  height: 48px;\n  border-radius: 50%;\n  border: 2px solid var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n\/* --- Logo Bar --- *\/\n.logo-bar {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.logo-bar__heading {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.52px;\n  color: var(--color-black);\n  margin-bottom: 40px;\n}\n\n.logo-bar__grid {\n  display: grid;\n  grid-template-columns: repeat(6, 1fr);\n  gap: 0;\n}\n\n.logo-bar__item {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 16px 24px;\n}\n\n.logo-bar__item img {\n  max-width: 100%;\n  height: auto;\n  max-height: 80px;\n}\n\n\/* Mobile slider \u2014 hidden on desktop *\/\n.logo-bar__heading {\n  text-align: center;\n}\n\n.logo-bar__slider {\n  display: none;\n  align-items: center;\n  gap: 8px;\n  margin-top: 16px;\n}\n\n.logo-bar__slider-track {\n  flex: 1;\n  display: flex;\n  overflow: hidden;\n  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.logo-bar__slider-item {\n  flex: 0 0 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 24px;\n  min-height: 120px;\n}\n\n.logo-bar__slider-item img {\n  max-width: 200px;\n  max-height: 80px;\n  height: auto;\n}\n\n.logo-bar__arrow {\n  width: 44px;\n  height: 44px;\n  border-radius: 50%;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  flex-shrink: 0;\n  color: var(--color-black);\n  box-shadow: 0 2px 8px rgba(0,0,0,0.08);\n  transition: background 0.2s;\n}\n\n.logo-bar__arrow:hover {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n.logo-bar__dots {\n  display: none;\n  justify-content: center;\n  gap: 8px;\n  margin-top: 24px;\n}\n\n.logo-bar__dot {\n  width: 8px;\n  height: 8px;\n  border-radius: 50%;\n  background: var(--color-light-gray);\n  border: none;\n  padding: 0;\n  cursor: pointer;\n  transition: all 0.2s;\n}\n\n.logo-bar__dot.is-active {\n  width: 24px;\n  border-radius: 4px;\n  background: var(--color-erp-blue);\n}\n\n\/* Mobile breakpoint \u2014 show slider, hide grid *\/\n@media (max-width: 768px) {\n  .logo-bar__grid {\n    display: none;\n  }\n  .logo-bar__slider {\n    display: flex;\n  }\n  .logo-bar__dots {\n    display: flex;\n    flex-wrap: wrap;\n  }\n}\n\n\/* --- Card: News (dark article card) --- *\/\n.card-news {\n  background: #141414;\n  border-radius: 24px;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  width: 366px;\n  flex-shrink: 0;\n  padding: 36px;\n  text-decoration: none;\n  color: inherit;\n  transition: transform 0.25s;\n}\n\n.card-news:hover {\n  transform: translateY(-4px);\n}\n\n.card-news__image-wrap {\n  margin-bottom: 28px;\n}\n\n.card-news__image {\n  width: 100%;\n  height: 194px;\n  object-fit: cover;\n  display: block;\n  border-radius: 24px;\n}\n\n.card-news__title {\n  font-size: 18px;\n  font-weight: 600;\n  line-height: 1.31;\n  color: #676767;\n  margin-bottom: 28px;\n}\n\n.card-news__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.375;\n  color: #AEAEAE;\n  flex: 1;\n}\n\n.card-news__meta {\n  display: flex;\n  gap: 8px;\n  margin-top: 20px;\n}\n\n\/* --- Tag: Dark (date \/ reading time) --- *\/\n.tag-dark {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  padding: 6px 12px;\n  border-radius: var(--radius-full);\n  background: var(--surface-card-dark2);\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-medium-gray);\n  white-space: nowrap;\n}\n\n\/* --- Label: Pill (bordered, no fill) --- *\/\n.label-pill {\n  display: inline-flex;\n  align-items: center;\n  padding: 8px 16px;\n  border-radius: var(--radius-full);\n  border: 1px solid var(--color-dark-gray);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-white);\n  background: transparent;\n  cursor: pointer;\n  transition: all 0.2s;\n}\n\n.label-pill:hover {\n  border-color: var(--color-white);\n}\n\n.label-pill--active {\n  background: var(--color-white);\n  color: var(--color-black);\n  border-color: var(--color-white);\n}\n\n\/* --- Card: Quote (white card with avatar) --- *\/\n.card-quote {\n  background: var(--color-white);\n  border-radius: var(--radius-md);\n  padding: 40px 32px;\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n  max-width: 560px;\n  min-width: 400px;\n  flex-shrink: 0;\n}\n\n.card-quote__text {\n  font-size: 18px;\n  font-weight: 400;\n  line-height: 1.56;\n  color: var(--color-black);\n}\n\n.card-quote__footer {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 16px;\n}\n\n.card-quote__author {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n.card-quote__avatar {\n  width: 48px;\n  height: 48px;\n  border-radius: 50%;\n  background: var(--color-light-gray);\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.card-quote__avatar img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.card-quote__name {\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-black);\n  line-height: 1.4;\n}\n\n.card-quote__role {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-dark-gray);\n}\n\n.card-quote__company-logo {\n  height: 24px;\n  opacity: 0.6;\n}\n\n\/* --- Section: Benefits (dark video slider) --- *\/\n.section-benefits {\n  background: var(--color-dark-black);\n  position: relative;\n  overflow: hidden;\n  padding: 96px 0;\n}\n\n.section-benefits__bg-video {\n  position: absolute;\n  inset: 0;\n  opacity: 0.2;\n}\n\n.section-benefits__bg-video video {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.section-benefits__header {\n  position: relative;\n  z-index: 2;\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 56px;\n}\n\n.section-benefits__content {\n  position: relative;\n  z-index: 2;\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto;\n  display: flex;\n  gap: 48px;\n  align-items: flex-start;\n}\n\n.section-benefits__info {\n  flex: 1;\n  max-width: 480px;\n}\n\n.section-benefits__client {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  margin-bottom: 24px;\n}\n\n.section-benefits__client-logo {\n  width: 56px;\n  height: 56px;\n  border-radius: var(--radius-sm);\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n}\n\n.section-benefits__client-name {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--color-white);\n}\n\n.section-benefits__client-industry {\n  font-size: 14px;\n  color: var(--color-medium-gray);\n}\n\n.section-benefits__quote {\n  font-size: 24px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-white);\n  margin-bottom: 32px;\n  font-style: italic;\n}\n\n.section-benefits__stats {\n  display: flex;\n  gap: 48px;\n}\n\n.section-benefits__stat-value {\n  font-size: 68px;\n  font-weight: 400;\n  color: var(--color-white);\n  line-height: 1;\n}\n\n.section-benefits__stat-value .text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n}\n\n.section-benefits__stat-label {\n  font-size: 14px;\n  color: var(--color-medium-gray);\n  margin-top: 8px;\n}\n\n.section-benefits__visual {\n  flex: 1;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  min-height: 400px;\n  background: var(--surface-card-dark);\n}\n\n\/* --- Section: Map (globe with country pills) --- *\/\n.section-map {\n  background: var(--color-gray);\n  padding: 80px 0 100px;\n  position: relative;\n  overflow: hidden;\n  text-align: center;\n}\n\n.section-map__heading {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: 0;\n  position: relative;\n  z-index: 2;\n}\n\n.section-map {\n  min-height: 900px;\n}\n\n.section-map__globe {\n  position: relative;\n  width: 660px;\n  height: 660px;\n  margin: 0 auto;\n  z-index: 0;\n  isolation: isolate;\n}\n\n.section-map__globe video {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n  mix-blend-mode: multiply;\n}\n\n.section-map__countries {\n  position: absolute;\n  width: 100%;\n  top: 450px;\n  z-index: 10;\n  overflow: clip;\n}\n\n.section-map__row {\n  display: flex;\n  margin-bottom: 14px;\n}\n\n.section-map__row ul {\n  display: flex;\n  flex-shrink: 0;\n  list-style: none;\n  padding: 0 0 0 28px;\n  margin: 0;\n  animation: map-scroll-left 30s linear infinite;\n}\n\n.section-map__row--2 ul {\n  animation-name: map-scroll-right;\n}\n\n.section-map__row--3 ul {\n  animation-delay: -7s;\n}\n\n.section-map__row li {\n  font-size: 32px;\n  font-weight: 400;\n  line-height: 1.44;\n  color: var(--color-black);\n  background: var(--color-white);\n  border-radius: 9999px;\n  padding: 9px 30px 3px;\n  white-space: nowrap;\n  flex-shrink: 0;\n}\n\n@keyframes map-scroll-left {\n  0% { translate: 0; }\n  100% { translate: -100%; }\n}\n\n@keyframes map-scroll-right {\n  0% { translate: -100%; }\n  100% { translate: 0; }\n}\n\n@media (max-width: 768px) {\n  .section-map__heading {\n    font-size: 32px;\n  }\n\n  .section-map__globe {\n    width: 300px;\n    height: 300px;\n    margin-bottom: -100px;\n  }\n\n  .section-map__row li {\n    font-size: 20px;\n    padding: 8px 20px 4px;\n  }\n}\n\n\/* --- Section: CTA (large centered text) --- *\/\n.section-cta {\n  background: var(--color-gray);\n  padding: 100px var(--page-padding);\n  text-align: center;\n}\n\n.section-cta__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n  margin-bottom: 40px;\n  max-width: 780px;\n  margin-left: auto;\n  margin-right: auto;\n}\n\n.section-cta__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-white);\n  background: var(--color-black);\n  border: none;\n  border-radius: 9999px;\n  padding: 20px 24px 18px;\n  text-decoration: none;\n  cursor: pointer;\n  transition: opacity 0.2s;\n}\n\n.section-cta__btn:hover {\n  background: var(--color-erp-blue);\n}\n\n.section-cta__btn .arrow-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  stroke: var(--color-white);\n}\n\n\/* --- Section: Recommendations slider --- *\/\n.section-recommendations {\n  background: var(--color-gray);\n  padding: 96px 0;\n}\n\n.section-recommendations__header {\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 48px;\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-end;\n}\n\n.section-recommendations__track {\n  display: flex;\n  gap: 24px;\n  overflow-x: auto;\n  padding: 0 var(--page-padding) 16px;\n  scroll-snap-type: x mandatory;\n  -ms-overflow-style: none;\n  scrollbar-width: none;\n}\n\n.section-recommendations__track::-webkit-scrollbar {\n  display: none;\n}\n\n\/* --- Section: Popular Topics \/ News --- *\/\n.section-news {\n  background: var(--color-dark-black);\n  padding: 96px 0;\n}\n\n.section-news__header {\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 16px;\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-end;\n}\n\n.section-news__pills {\n  display: flex;\n  gap: 8px;\n  padding: 0 var(--page-padding);\n  max-width: var(--max-width);\n  margin: 0 auto 40px;\n  flex-wrap: wrap;\n}\n\n.section-news__track {\n  display: flex;\n  gap: 24px;\n  overflow-x: auto;\n  padding: 0 var(--page-padding) 16px;\n  scroll-snap-type: x mandatory;\n  -ms-overflow-style: none;\n  scrollbar-width: none;\n}\n\n.section-news__track::-webkit-scrollbar {\n  display: none;\n}\n\n\/* --- Product Cards: Homepage variant (dark bg) --- *\/\n.card-product--dark {\n  background: var(--surface-card-dark);\n  border: 1px solid rgba(255,255,255,0.08);\n}\n\n.card-product--dark .card-product__title {\n  color: var(--color-white);\n}\n\n.card-product--dark .card-product__desc {\n  color: var(--color-medium-gray);\n}\n\n\/* ============================================\n   HR SUBPAGE Components (AP_Homepage_animacje)\n   ============================================ *\/\n\n\/* --- Hero: Subpage variant --- *\/\n.hero-subpage {\n  position: relative;\n  width: 100%;\n  max-width: 100vw;\n  display: grid;\n  align-items: flex-end;\n  overflow: hidden;\n}\n\n.hero-subpage__video-wrapper {\n  position: relative;\n  grid-area: 1 \/ 1;\n  overflow: hidden;\n  min-height: 100%;\n}\n\n.hero-subpage__video-wrapper::after {\n  content: \"\";\n  position: absolute;\n  top: 0;\n  right: 0;\n  width: 100%;\n  height: 100%;\n  background-color: var(--color-dark-black);\n  opacity: 0.65;\n  pointer-events: none;\n}\n\n.hero-subpage__video-wrapper video {\n  width: 100%;\n  height: 100%;\n  min-height: 100%;\n  object-fit: cover;\n  display: block;\n  position: absolute;\n  inset: 0;\n}\n\n.hero-subpage__content {\n  grid-area: 1 \/ 1;\n  position: relative;\n  z-index: 10;\n  max-width: var(--max-width);\n  width: 100%;\n  margin: 0 auto;\n  padding: clamp(120px, 25vw, 256px) var(--page-padding) 48px;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  box-sizing: border-box;\n}\n\n.hero-subpage__logo-figure {\n  margin: 0 0 44px;\n}\n\n.hero-subpage__logo {\n  width: 89px;\n  height: 50px;\n  display: block;\n}\n\n.hero-subpage__heading {\n  font-size: clamp(38px, 5vw, 48px);\n  font-weight: 600;\n  line-height: 1.15;\n  color: var(--color-white);\n  max-width: 835px;\n  margin-bottom: clamp(24px, 4vw, 40px);\n}\n\n.hero-subpage__cta {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n}\n\n\/* --- Section: Two-Column Description --- *\/\n.section-description {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 28px;\n  padding: 96px 24px 78px;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  align-items: flex-start;\n  overflow: hidden;\n}\n\n.section-description__heading {\n  flex: 0 0 50%;\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n}\n\n.section-description__body {\n  flex: 1 1 280px;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Content Split (sticky text + stacking cards) --- *\/\n.section-content-split {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: var(--space-3xl);\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: var(--space-4xl) var(--page-padding) var(--space-2xl);\n  min-height: 200vh;\n  position: relative;\n}\n\n@media (max-width: 768px) {\n  .section-content-split {\n    grid-template-columns: 1fr;\n    min-height: 280vh;\n  }\n  .section-content-split__text {\n    position: static;\n    padding-right: 0;\n    margin-bottom: var(--space-xl);\n  }\n  .section-content-split__media:nth-child(1) {\n    top: 80px;\n  }\n  .section-content-split__media:nth-child(2) {\n    top: 110px;\n  }\n  .section-content-split__media:nth-child(3) {\n    top: 140px;\n  }\n}\n\n.section-content-split__text {\n  position: sticky;\n  top: 120px;\n  align-self: start;\n  height: fit-content;\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-lg);\n  padding-right: var(--space-2xl);\n}\n\n.section-content-split__heading {\n  font-size: clamp(24px, 5vw, 48px);\n  font-weight: 600;\n  line-height: 1.125;\n  color: var(--color-black);\n}\n\n.section-content-split__subtitle {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-black);\n}\n\n.section-content-split__body {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* Right column: stacking sticky cards *\/\n.section-content-split__cards {\n  position: relative;\n  padding-top: 0;\n}\n\n.section-content-split__media {\n  position: sticky;\n  display: flex;\n  flex-direction: column;\n  gap: 0;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  background: var(--color-white);\n  box-shadow: 0 25px 80px rgba(0, 0, 0, 0.12);\n  margin-bottom: var(--space-2xl);\n  border: 1px solid var(--color-light-gray);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.section-content-split__media:hover {\n  transform: translateY(-3px);\n  box-shadow: 0 32px 96px rgba(0, 0, 0, 0.16);\n}\n\n.section-content-split__media:nth-child(1) {\n  top: 100px;\n  z-index: 1;\n}\n\n.section-content-split__media:nth-child(2) {\n  top: 140px;\n  z-index: 2;\n}\n\n.section-content-split__media:nth-child(3) {\n  top: 180px;\n  z-index: 3;\n}\n\n.section-content-split__image {\n  width: 100%;\n  aspect-ratio: 16 \/ 10;\n  object-fit: cover;\n  display: block;\n}\n\n.section-content-split__card {\n  padding: var(--space-xl);\n}\n\n.section-content-split__card-title {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-content-split__card-desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Service Cards Grid (3-col, expandable) --- *\/\n.section-services {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.section-services__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-services__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-services__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-services__grid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: var(--space-lg);\n  align-items: stretch;\n}\n\n\/* Service card *\/\n.card-service {\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  transition: transform 0.4s ease, box-shadow 0.4s ease;\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);\n}\n\n.card-service:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.1);\n}\n\n.card-service__image {\n  width: 100%;\n  height: 200px;\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.card-service__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  transition: transform 0.6s ease;\n}\n\n.card-service:hover .card-service__image img {\n  transform: scale(1.05);\n}\n\n.card-service__header {\n  padding: var(--space-lg) var(--space-lg) var(--space-md);\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n}\n\n.card-service__title {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-md);\n}\n\n.card-service__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-bottom: var(--space-md);\n  flex: 1;\n}\n\n.card-service__metric {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--space-sm);\n  padding: 6px 14px;\n  font-size: 12px;\n  font-weight: 600;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  border-radius: var(--radius-full);\n  background: rgba(0, 0, 0, 0.05);\n  color: var(--color-dark-gray);\n  border: 1px solid var(--color-light-gray);\n  align-self: flex-start;\n  margin-top: auto;\n}\n\n.card-service__metric svg {\n  width: 14px;\n  height: 14px;\n  stroke: currentColor;\n  fill: none;\n  stroke-width: 2;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n\/* Toggle button (+) *\/\n.card-service__toggle {\n  width: 36px;\n  height: 36px;\n  border-radius: var(--radius-full);\n  border: 1.5px solid var(--color-light-gray);\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: all 0.3s ease;\n  flex-shrink: 0;\n}\n\n.card-service__toggle svg {\n  width: 16px;\n  height: 16px;\n  stroke: var(--color-black);\n  stroke-width: 1.5;\n  fill: none;\n  stroke-linecap: round;\n  transition: stroke 0.3s ease;\n}\n\n.card-service__toggle:hover {\n  border-color: var(--color-erp-blue);\n}\n\n.card-service__toggle:hover svg {\n  stroke: var(--color-erp-blue);\n}\n\n.card-service.is-open .card-service__toggle {\n  background: var(--color-erp-blue);\n  border-color: var(--color-erp-blue);\n  transform: rotate(45deg);\n}\n\n.card-service.is-open .card-service__toggle svg {\n  stroke: var(--color-white);\n}\n\n\/* Expandable body *\/\n.card-service__body {\n  max-height: 0;\n  overflow: hidden;\n  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-service.is-open .card-service__body {\n  max-height: 1200px;\n}\n\n.card-service__content {\n  padding: 0 var(--space-lg) var(--space-lg);\n  border-top: 1px solid var(--color-light-gray);\n  padding-top: var(--space-lg);\n}\n\n.card-service__lead {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-black);\n  margin-bottom: var(--space-md);\n}\n\n.card-service__content h4 {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.card-service__items {\n  list-style: none;\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-sm);\n  margin-bottom: var(--space-lg);\n}\n\n.card-service__items li {\n  display: flex;\n  align-items: flex-start;\n  gap: 10px;\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-black);\n}\n\n.card-service__items li::before {\n  content: '';\n  width: 6px;\n  height: 6px;\n  border-radius: var(--radius-full);\n  background: var(--color-erp-blue);\n  flex-shrink: 0;\n  margin-top: 7px;\n}\n\n.card-service__case {\n  background: rgba(22, 118, 195, 0.04);\n  border-left: 3px solid var(--color-erp-blue);\n  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;\n  padding: var(--space-md) var(--space-lg);\n  margin-bottom: var(--space-lg);\n}\n\n.card-service__case-label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n  line-height: 1.44;\n  color: var(--color-erp-blue);\n  margin-bottom: var(--space-sm);\n}\n\n.card-service__case p {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n  font-style: italic;\n}\n\n.card-service__when {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.card-service__when strong {\n  color: var(--color-black);\n}\n\n\/* --- Section: Results Cards (dark, gradient metrics) --- *\/\n.section-results {\n  background: var(--color-dark-black);\n  padding: var(--space-4xl) 0;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-results::before {\n  content: '';\n  position: absolute;\n  top: -30%;\n  left: -10%;\n  width: 600px;\n  height: 600px;\n  border-radius: 50%;\n  background: radial-gradient(circle, rgba(239, 89, 9, 0.08) 0%, rgba(215, 14, 68, 0.04) 40%, transparent 70%);\n  filter: blur(80px);\n  pointer-events: none;\n}\n\n.section-results::after {\n  content: '';\n  position: absolute;\n  bottom: -20%;\n  right: -5%;\n  width: 500px;\n  height: 500px;\n  border-radius: 50%;\n  background: radial-gradient(circle, rgba(22, 118, 195, 0.08) 0%, rgba(160, 70, 225, 0.04) 40%, transparent 70%);\n  filter: blur(80px);\n  pointer-events: none;\n}\n\n.section-results .container {\n  position: relative;\n  z-index: 1;\n}\n\n.section-results__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-results__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-results__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-results__grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));\n  gap: var(--space-xl);\n}\n\n\/* Result card *\/\n.card-result {\n  background: rgba(255, 255, 255, 0.03);\n  border: 1px solid rgba(255, 255, 255, 0.07);\n  border-radius: var(--radius-lg);\n  padding: var(--space-xl) var(--space-xl) var(--space-2xl);\n  transition: all 0.4s ease;\n  position: relative;\n  overflow: hidden;\n}\n\n.card-result::before {\n  content: '';\n  position: absolute;\n  inset: 0;\n  border-radius: inherit;\n  background: radial-gradient(ellipse at 30% 0%, rgba(239, 89, 9, 0.06) 0%, transparent 60%);\n  pointer-events: none;\n  opacity: 0;\n  transition: opacity 0.4s ease;\n}\n\n.card-result:hover::before {\n  opacity: 1;\n}\n\n.card-result:hover {\n  border-color: rgba(255, 255, 255, 0.15);\n  transform: translateY(-6px);\n  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.5);\n}\n\n.card-result__badge {\n  display: inline-block;\n  padding: 6px 14px;\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.08em;\n  line-height: 1.44;\n  border-radius: var(--radius-full);\n  border: 1px solid rgba(255, 255, 255, 0.12);\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-xl);\n}\n\n.card-result__metric {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1.06;\n  letter-spacing: -0.03em;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n  margin-bottom: var(--space-xs);\n}\n\n.card-result__metric-label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.1em;\n  line-height: 1.44;\n  color: var(--color-dark-gray);\n  margin-bottom: var(--space-lg);\n}\n\n.card-result__title {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.card-result__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Persona Cards (DRS \u2014 tabs + problem\/solution panels) --- *\/\n.section-persona-cards {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.section-persona-cards__header {\n  margin-bottom: var(--space-2xl);\n}\n\n.section-persona-cards__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-persona-cards__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-persona-cards__tabs {\n  display: flex;\n  gap: var(--space-md);\n  margin-bottom: var(--space-2xl);\n  flex-wrap: wrap;\n}\n\n.section-persona-cards__tab {\n  padding: 12px 24px;\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-full);\n  cursor: pointer;\n  transition: all 0.3s ease;\n}\n\n.section-persona-cards__tab:hover {\n  border-color: var(--color-black);\n  color: var(--color-black);\n}\n\n.section-persona-cards__tab.is-active {\n  background: var(--color-black);\n  border-color: var(--color-black);\n  color: var(--color-white);\n}\n\n\/* Persona panel \u2014 two columns *\/\n.persona-card-panel {\n  display: none;\n}\n\n.persona-card-panel.is-active {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: var(--space-lg);\n}\n\n\/* Left: problem \/ quote with bg image *\/\n.persona-card__problem {\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  padding: 40px;\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-start;\n  background-size: cover;\n  background-position: center;\n  position: relative;\n}\n\n.persona-card__problem::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(to top, rgba(10, 10, 10, 0.85) 0%, rgba(10, 10, 10, 0.6) 50%, rgba(10, 10, 10, 0.4) 100%);\n  border-radius: inherit;\n}\n\n.persona-card__problem > * {\n  position: relative;\n  z-index: 1;\n}\n\n.persona-card__label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.1em;\n  line-height: 1.44;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-md);\n}\n\n.persona-card__quote {\n  font-size: 16px;\n  font-weight: 400;\n  font-style: italic;\n  line-height: 1.7;\n  color: var(--color-light-gray);\n  border-left: 3px solid rgba(255, 255, 255, 0.2);\n  padding-left: var(--space-md);\n}\n\n\/* Right: solution + result *\/\n.persona-card__solution {\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-lg);\n  padding: 40px;\n  display: flex;\n  flex-direction: column;\n}\n\n.persona-card__helps {\n  list-style: none;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n  margin-bottom: var(--space-xl);\n}\n\n.persona-card__helps li {\n  display: flex;\n  align-items: flex-start;\n  gap: 14px;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-black);\n}\n\n.persona-card__helps li::before {\n  content: '';\n  width: 22px;\n  height: 22px;\n  flex-shrink: 0;\n  margin-top: 1px;\n  border-radius: var(--radius-full);\n  background: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'\/%3E%3C\/svg%3E\") center\/13px no-repeat, linear-gradient(135deg, #ef5909, #d70e44, #a046e1);\n}\n\n.persona-card__result {\n  position: relative;\n  padding: 20px var(--space-lg);\n  margin-top: auto;\n  border-radius: var(--radius-sm);\n  background: var(--color-gray);\n}\n\n.persona-card__result::before {\n  content: '';\n  position: absolute;\n  inset: -1.5px;\n  border-radius: calc(var(--radius-sm) + 1.5px);\n  background: var(--gradient-brand);\n  z-index: -1;\n}\n\n.persona-card__result-label {\n  font-size: 12px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.08em;\n  line-height: 1.44;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.persona-card__result p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.6;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Why Cards (dark, 4-col grid with video bg) --- *\/\n.section-why-cards {\n  position: relative;\n  overflow: hidden;\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n}\n\n.section-why-cards__video-bg {\n  position: absolute;\n  inset: 0;\n  z-index: 0;\n}\n\n.section-why-cards__video-bg video {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.section-why-cards__video-bg::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background: rgba(4, 6, 18, 0.72);\n}\n\n.section-why-cards .container {\n  position: relative;\n  z-index: 1;\n}\n\n.section-why-cards__header {\n  margin-bottom: var(--space-2xl);\n}\n\n.section-why-cards__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-why-cards__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-why-cards__grid {\n  display: grid;\n  grid-template-columns: repeat(4, 1fr);\n  gap: var(--space-md);\n}\n\n\/* Why card *\/\n.card-why {\n  position: relative;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  background: rgba(255, 255, 255, 0.04);\n  backdrop-filter: blur(16px);\n  -webkit-backdrop-filter: blur(16px);\n  border: 1px solid rgba(255, 255, 255, 0.06);\n  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.3s ease;\n}\n\n.card-why:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.6);\n  border-color: transparent;\n}\n\n.card-why::before {\n  content: '';\n  position: absolute;\n  inset: -1px;\n  border-radius: inherit;\n  padding: 2px;\n  background: var(--gradient-brand);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  pointer-events: none;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.card-why:hover::before {\n  opacity: 1;\n}\n\n.card-why__inner {\n  padding: var(--space-xl);\n  height: 100%;\n  display: flex;\n  flex-direction: column;\n}\n\n.card-why__icon {\n  width: 48px;\n  height: 48px;\n  border-radius: var(--radius-sm);\n  background: var(--surface-card-dark2);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: var(--space-lg);\n}\n\n.card-why__icon svg {\n  width: 22px;\n  height: 22px;\n  stroke: var(--color-medium-gray);\n  fill: none;\n  stroke-width: 1.5;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-why__title {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.card-why__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.65;\n  color: var(--color-medium-gray);\n}\n\n\/* --- Section: Partner Cards (4-col grid, gradient border hover) --- *\/\n.section-partners {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.section-partners__header {\n  margin-bottom: var(--space-xl);\n}\n\n.section-partners__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-partners__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-partners__intro {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.7;\n  color: var(--color-dark-gray);\n  max-width: 680px;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-partners__grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));\n  gap: var(--space-md);\n}\n\n.card-partner {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              linear-gradient(var(--color-light-gray), var(--color-light-gray)) border-box;\n  border: 2px solid transparent;\n  min-width: 0;\n  overflow: hidden;\n  border-radius: var(--radius-lg);\n  padding: var(--space-lg);\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: var(--space-sm);\n  transition: all 0.3s ease;\n  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\n}\n\n.card-partner:hover {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              var(--gradient-brand) border-box;\n  transform: translateY(-3px);\n  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.1);\n}\n\n.card-partner__logo {\n  height: 36px;\n  width: auto;\n  display: block;\n  margin-bottom: var(--space-sm);\n}\n\n.card-partner__name {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-black);\n}\n\n.card-partner__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Section: Process Timeline (dark, centered zigzag) --- *\/\n.section-process {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n  overflow: hidden;\n}\n\n.section-process__header {\n  text-align: center;\n  margin-bottom: var(--space-xl);\n}\n\n.section-process__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-process__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-process__cta {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n\/* Timeline *\/\n.process-timeline {\n  position: relative;\n  max-width: 900px;\n  margin: 0 auto;\n  padding: var(--space-xl) 0;\n}\n\n.process-timeline::before {\n  content: '';\n  position: absolute;\n  left: 50%;\n  top: 0;\n  bottom: var(--space-xl);\n  width: 2px;\n  transform: translateX(-50%) scaleY(0);\n  transform-origin: top center;\n  background: rgba(255, 255, 255, 0.35);\n  transition: transform 1.6s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.process-timeline.is-line-visible::before {\n  transform: translateX(-50%) scaleY(1);\n}\n\n\/* Timeline item *\/\n.process-timeline__item {\n  position: relative;\n  display: flex;\n  margin-bottom: 80px;\n  opacity: 0;\n  transform: translateX(-60px);\n  transition: opacity 0.75s cubic-bezier(0.4, 0, 0.2, 1), transform 0.75s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.process-timeline__item:nth-child(even) {\n  transform: translateX(60px);\n}\n\n.process-timeline__item.is-visible {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n.process-timeline__item:last-child {\n  margin-bottom: 0;\n}\n\n.process-timeline__item:nth-child(odd) {\n  justify-content: flex-start;\n  padding-right: max(0px, calc(50% + 48px));\n}\n\n.process-timeline__item:nth-child(even) {\n  justify-content: flex-end;\n  padding-left: max(0px, calc(50% + 48px));\n}\n\n@media (max-width: 768px) {\n  .process-timeline__item:nth-child(odd),\n  .process-timeline__item:nth-child(even) {\n    padding-left: 48px;\n    padding-right: 0;\n    justify-content: flex-start;\n  }\n  .process-timeline__item:nth-child(odd) .process-timeline__content,\n  .process-timeline__item:nth-child(even) .process-timeline__content {\n    text-align: left;\n  }\n  .process-timeline::before {\n    left: 16px !important;\n    transform: scaleY(0) !important;\n    transform-origin: top !important;\n  }\n  .process-timeline.is-line-visible::before {\n    transform: scaleY(1) !important;\n  }\n}\n\n.process-timeline__item:nth-child(odd) .process-timeline__content {\n  text-align: right;\n}\n\n.process-timeline__item:nth-child(even) .process-timeline__content {\n  text-align: left;\n}\n\n\/* Dot *\/\n.process-timeline__dot {\n  position: absolute;\n  left: 50%;\n  top: 8px;\n  width: 16px;\n  height: 16px;\n  border-radius: var(--radius-full);\n  background: var(--gradient-brand);\n  transform: translateX(-50%) scale(0);\n  box-shadow: 0 0 16px rgba(160, 70, 225, 0.5), 0 0 40px rgba(239, 89, 9, 0.3);\n  z-index: 2;\n  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.35s;\n}\n\n.process-timeline__item.is-visible .process-timeline__dot {\n  transform: translateX(-50%) scale(1);\n}\n\n.process-timeline__item:hover .process-timeline__dot {\n  box-shadow: 0 0 24px rgba(160, 70, 225, 0.7), 0 0 56px rgba(239, 89, 9, 0.4);\n}\n\n\/* Content *\/\n.process-timeline__label {\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  margin-bottom: var(--space-sm);\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.process-timeline__content h3 {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.process-timeline__content p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.7;\n  color: var(--color-light-gray);\n  max-width: 420px;\n}\n\n.process-timeline__item:nth-child(odd) .process-timeline__content p {\n  margin-left: auto;\n}\n\n\/* --- Section: Testimonial Marquee (auto-scrolling quote cards) --- *\/\n.section-testimonial-marquee {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n  overflow: hidden;\n}\n\n.section-testimonial-marquee__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-testimonial-marquee__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-testimonial-marquee__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.testimonial-marquee__wrapper {\n  position: relative;\n}\n\n.testimonial-marquee__wrapper::before,\n.testimonial-marquee__wrapper::after {\n  content: '';\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  width: 220px;\n  z-index: 2;\n  pointer-events: none;\n}\n\n.testimonial-marquee__wrapper::before {\n  left: 0;\n  background: linear-gradient(to right, var(--color-gray) 20%, transparent);\n}\n\n.testimonial-marquee__wrapper::after {\n  right: 0;\n  background: linear-gradient(to left, var(--color-gray) 20%, transparent);\n}\n\n.testimonial-marquee__track {\n  display: flex;\n  gap: var(--space-md);\n  width: max-content;\n  animation: testimonialMarqueeScroll 50s linear infinite;\n}\n\n.testimonial-marquee__track:hover {\n  animation-play-state: paused;\n}\n\n@keyframes testimonialMarqueeScroll {\n  from { transform: translateX(0); }\n  to { transform: translateX(-50%); }\n}\n\n\/* Marquee card *\/\n.card-testimonial-marquee {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              linear-gradient(var(--color-light-gray), var(--color-light-gray)) border-box;\n  border: 2px solid transparent;\n  border-radius: var(--radius-lg);\n  padding: var(--space-xl);\n  width: 340px;\n  flex-shrink: 0;\n  transition: all 0.3s ease;\n}\n\n.card-testimonial-marquee:hover {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              var(--gradient-brand) border-box;\n  transform: translateY(-3px);\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n\n.card-testimonial-marquee__avatar {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  margin-bottom: var(--space-md);\n}\n\n.card-testimonial-marquee__avatar img {\n  width: 44px;\n  height: 44px;\n  border-radius: var(--radius-full);\n  object-fit: cover;\n  flex-shrink: 0;\n  background: var(--color-gray);\n}\n\n.card-testimonial-marquee__name {\n  font-size: 14px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n}\n\n.card-testimonial-marquee__role {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.card-testimonial-marquee__quote {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.7;\n  color: var(--color-dark-gray);\n  font-style: italic;\n}\n\n\/* --- Section: Cert Cards (dark, 4-col, icon + download) --- *\/\n.section-certs {\n  background: var(--color-dark-black);\n  padding: var(--space-4xl) 0;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-certs::before {\n  content: '';\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  width: 800px;\n  height: 400px;\n  transform: translate(-50%, -50%);\n  background: radial-gradient(ellipse, rgba(22, 118, 195, 0.06) 0%, transparent 70%);\n  pointer-events: none;\n}\n\n.section-certs .container {\n  position: relative;\n  z-index: 1;\n}\n\n.section-certs__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-certs__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-certs__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-certs__grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));\n  gap: var(--space-lg);\n}\n\n.card-cert {\n  background: rgba(255, 255, 255, 0.03);\n  border: 1px solid rgba(255, 255, 255, 0.08);\n  border-radius: var(--radius-lg);\n  padding: 40px var(--space-xl);\n  text-align: center;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  transition: all 0.4s ease;\n  position: relative;\n  overflow: hidden;\n}\n\n.card-cert::before {\n  content: '';\n  position: absolute;\n  inset: -1px;\n  border-radius: inherit;\n  padding: 2px;\n  background: var(--gradient-brand);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  pointer-events: none;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.card-cert:hover::before {\n  opacity: 1;\n}\n\n.card-cert:hover {\n  border-color: transparent;\n  transform: translateY(-4px);\n  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);\n}\n\n.card-cert__icon {\n  width: 64px;\n  height: 64px;\n  margin-bottom: var(--space-lg);\n  border-radius: var(--radius-full);\n  background: linear-gradient(135deg, rgba(22, 118, 195, 0.15), rgba(160, 70, 225, 0.1));\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.card-cert__icon svg,\n.card-cert__icon img {\n  width: 32px;\n  height: 32px;\n  stroke: rgba(255, 255, 255, 0.7);\n  stroke-width: 1.5;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-cert__name {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.card-cert__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.6;\n  color: var(--color-medium-gray);\n  flex: 1;\n}\n\n.card-cert__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  margin-top: var(--space-lg);\n  padding: var(--space-sm) var(--space-md);\n  font-family: var(--font-family);\n  font-size: 14px;\n  font-weight: 600;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n  border: 1px solid rgba(255, 255, 255, 0.18);\n  border-radius: var(--radius-full);\n  text-decoration: none;\n  background: transparent;\n  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;\n}\n\n.card-cert__btn:hover {\n  color: var(--color-white);\n  border-color: rgba(255, 255, 255, 0.45);\n  background: rgba(255, 255, 255, 0.06);\n}\n\n.card-cert__btn svg {\n  width: 13px;\n  height: 13px;\n  stroke: currentColor;\n  stroke-width: 2;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n  flex-shrink: 0;\n}\n\n\/* --- Section: CTA Banner (dark card with animated orbs) --- *\/\n.section-cta-banner {\n  background: var(--color-gray);\n  padding: var(--space-4xl) 0;\n}\n\n.cta-banner-card {\n  position: relative;\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-3xl);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-2xl);\n  overflow: hidden;\n}\n\n.cta-banner-card::after {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(to right, var(--color-dark-black) 30%, rgba(9, 9, 9, 0.65) 55%, rgba(9, 9, 9, 0.15) 100%);\n  pointer-events: none;\n  z-index: 2;\n}\n\n\/* Animated color orbs *\/\n.cta-banner-card__orbs {\n  position: absolute;\n  top: 0;\n  right: 0;\n  width: 60%;\n  height: 100%;\n  pointer-events: none;\n  z-index: 1;\n  overflow: hidden;\n}\n\n.cta-banner-card__orb {\n  position: absolute;\n  border-radius: 50%;\n  filter: blur(60px);\n}\n\n@keyframes ctaBannerFloat1 {\n  0%, 100% { transform: translate(0, 0) scale(1); }\n  40% { transform: translate(-25px, 30px) scale(1.12); }\n  70% { transform: translate(15px, -15px) scale(0.92); }\n}\n\n@keyframes ctaBannerFloat2 {\n  0%, 100% { transform: translate(0, 0) scale(1); }\n  35% { transform: translate(20px, -28px) scale(0.9); }\n  65% { transform: translate(-18px, 20px) scale(1.1); }\n}\n\n@keyframes ctaBannerFloat3 {\n  0%, 100% { transform: translate(0, 0) scale(1); }\n  50% { transform: translate(-20px, -25px) scale(1.08); }\n}\n\n\/* Content *\/\n.cta-banner-card__content {\n  position: relative;\n  z-index: 10;\n  max-width: 600px;\n}\n\n.cta-banner-card__content h2 {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-white);\n  margin-bottom: var(--space-md);\n}\n\n.cta-banner-card__content p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.6;\n  color: var(--color-medium-gray);\n}\n\n\/* Actions *\/\n.cta-banner-card__actions {\n  position: relative;\n  z-index: 10;\n  display: flex;\n  flex-wrap: wrap;\n  gap: var(--space-md);\n  flex-shrink: 0;\n}\n\n\/* --- Section: FAQ Accordion --- *\/\n.section-faq {\n  background: var(--color-white);\n  padding: var(--space-4xl) 0;\n}\n\n.section-faq__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-faq__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-black);\n  margin-bottom: var(--space-sm);\n}\n\n.section-faq__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n.section-faq__list {\n  max-width: 900px;\n  margin: 0 auto;\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-md);\n}\n\n.faq-item {\n  background: linear-gradient(var(--color-white), var(--color-white)) padding-box,\n              linear-gradient(var(--color-light-gray), var(--color-light-gray)) border-box;\n  border: 1.5px solid transparent;\n  border-radius: var(--radius-md);\n  overflow: hidden;\n  transition: transform 0.25s ease, box-shadow 0.25s ease;\n}\n\n.faq-item:hover {\n  transform: translateY(-2px);\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n\n.faq-item__question {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-lg);\n  padding: var(--space-lg) var(--space-xl);\n  cursor: pointer;\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 600;\n  line-height: 1.5;\n  color: var(--color-black);\n  background: none;\n  border: none;\n  width: 100%;\n  text-align: left;\n  transition: background 0.2s ease;\n}\n\n.faq-item__question:hover {\n  background: var(--color-gray);\n}\n\n.faq-item__arrow {\n  width: 20px;\n  height: 20px;\n  flex-shrink: 0;\n  stroke: var(--color-dark-gray);\n  stroke-width: 2;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n  transition: transform 0.3s ease;\n}\n\n.faq-item.is-open .faq-item__arrow {\n  transform: rotate(180deg);\n}\n\n.faq-item__answer {\n  max-height: 0;\n  overflow: hidden;\n  transition: max-height 0.4s ease;\n}\n\n.faq-item.is-open .faq-item__answer {\n  max-height: 600px;\n}\n\n.faq-item__answer-inner {\n  padding: 0 var(--space-xl) var(--space-lg);\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.75;\n  color: var(--color-dark-gray);\n}\n\n.faq-item__answer-inner ul {\n  list-style: none;\n  margin-top: var(--space-sm);\n  display: flex;\n  flex-direction: column;\n  gap: 6px;\n}\n\n.faq-item__answer-inner ul li {\n  display: flex;\n  gap: 10px;\n}\n\n.faq-item__answer-inner ul li::before {\n  content: '2013';\n  color: var(--color-medium-gray);\n  flex-shrink: 0;\n}\n\n\/* --- Header: DRS (fixed, transparent \u2192 blur on scroll) --- *\/\n.header-drs {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  z-index: 1000;\n  height: 64px;\n  background: transparent;\n  backdrop-filter: blur(0px);\n  -webkit-backdrop-filter: blur(0px);\n  transition: background 1s ease, backdrop-filter 1s ease, -webkit-backdrop-filter 1s ease;\n}\n\n.header-drs.is-scrolled {\n  background: rgba(0, 0, 0, 0.6);\n  backdrop-filter: blur(20px);\n  -webkit-backdrop-filter: blur(20px);\n}\n\n.header-drs__inner {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-md);\n  overflow: hidden;\n}\n\n.header-drs__logo {\n  flex-shrink: 0;\n}\n\n.header-drs__logo svg {\n  height: 26px;\n  width: auto;\n  display: block;\n}\n\n.header-drs__logo svg path {\n  fill: var(--color-white);\n}\n\n.header-drs__nav {\n  display: flex;\n  align-items: center;\n  gap: 0;\n  white-space: nowrap;\n}\n\n.header-drs__nav a {\n  padding: var(--space-sm) 12px;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-white);\n  border-radius: var(--radius-sm);\n  transition: all 0.2s ease;\n  opacity: 0.85;\n  text-decoration: none;\n}\n\n.header-drs__nav a:hover {\n  opacity: 1;\n  background: rgba(255, 255, 255, 0.1);\n}\n\n.header-drs__actions {\n  display: flex;\n  align-items: center;\n  gap: var(--space-sm);\n}\n\n.header-drs__lang {\n  display: flex;\n  align-items: center;\n  gap: 4px;\n}\n\n.header-drs__lang-btn {\n  padding: 6px 10px;\n  font-family: var(--font-family);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-medium-gray);\n  border-radius: var(--radius-sm);\n  text-decoration: none;\n  transition: all 0.2s ease;\n}\n\n.header-drs__lang-btn:hover {\n  color: var(--color-white);\n  background: rgba(255, 255, 255, 0.1);\n}\n\n.header-drs__lang-btn.is-active {\n  color: var(--color-white);\n  background: rgba(255, 255, 255, 0.15);\n}\n\n\/* Nav CTA \u2014 hidden on desktop, shown in mobile overlay *\/\n.header-drs__nav-cta,\n.header-drs__nav-header,\n.header-drs__nav-lang {\n  display: none;\n}\n\n\/* Nav list wrapper \u2014 na desktopie staje si\u0119 \"prze\u017aroczysty\" (linki s\u0105 bezpo\u015brednimi flex-itemami .header-drs__nav) *\/\n.header-drs__nav-list {\n  display: contents;\n}\n\n\/* Hamburger \u2014 hidden on desktop *\/\n.header-drs__hamburger {\n  display: none;\n  background: none;\n  border: none;\n  padding: 8px;\n  cursor: pointer;\n}\n\n\/* Close button inside mobile nav *\/\n.header-drs__nav-close {\n  display: none;\n  background: none;\n  border: none;\n  padding: 8px;\n  cursor: pointer;\n  align-self: flex-end;\n  margin-bottom: 16px;\n}\n\n\/* --- Footer DRS --- *\/\n.footer-drs {\n  background: var(--color-dark-black);\n  color: var(--color-white);\n  padding: var(--space-3xl) 0 var(--space-xl);\n}\n\n.footer-drs__grid {\n  display: grid;\n  grid-template-columns: 2fr repeat(3, 1fr);\n  gap: var(--space-2xl);\n  margin-bottom: var(--space-2xl);\n}\n\n.footer-drs__brand p {\n  color: var(--color-dark-gray);\n  margin-top: var(--space-md);\n  font-size: 16px;\n  line-height: 1.6;\n}\n\n.footer-drs__address {\n  font-style: normal;\n  color: var(--color-medium-gray);\n  font-size: 14px;\n  line-height: 1.7;\n  margin-top: var(--space-md);\n}\n\n.footer-drs__legal-info {\n  color: var(--color-dark-gray);\n  font-size: 14px;\n  line-height: 1.7;\n  margin-top: var(--space-sm);\n}\n\n.footer-drs__social {\n  display: flex;\n  gap: 12px;\n  margin-top: var(--space-lg);\n}\n\n.footer-drs__social a {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  border-radius: var(--radius-full);\n  border: 1px solid rgba(255, 255, 255, 0.12);\n  color: var(--color-medium-gray);\n  transition: border-color 0.2s, color 0.2s, background 0.2s;\n}\n\n.footer-drs__social a:hover {\n  border-color: rgba(255, 255, 255, 0.35);\n  color: var(--color-white);\n  background: rgba(255, 255, 255, 0.06);\n}\n\n.footer-drs__links h4 {\n  margin-bottom: var(--space-lg);\n  font-size: 14px;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n  color: var(--color-white);\n}\n\n.footer-drs__links a {\n  display: block;\n  color: var(--color-dark-gray);\n  font-size: 16px;\n  padding: var(--space-sm) 0;\n  transition: color 0.2s ease;\n  text-decoration: none;\n}\n\n.footer-drs__links a:hover {\n  color: var(--color-white);\n}\n\n.footer-drs__bottom {\n  padding-top: var(--space-xl);\n  border-top: 1px solid rgba(255, 255, 255, 0.1);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  color: var(--color-dark-gray);\n  font-size: 14px;\n  flex-wrap: wrap;\n  gap: 12px;\n}\n\n.footer-drs__bottom a {\n  color: var(--color-dark-gray);\n  margin-left: var(--space-lg);\n  text-decoration: none;\n  transition: color 0.2s;\n}\n\n.footer-drs__bottom a:hover {\n  color: var(--color-white);\n}\n\n\/* --- Section: FAQ Dark (gradient border on hover\/open) --- *\/\n.section-faq-dark {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n}\n\n.section-faq-dark__label {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-sm);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-md);\n}\n\n.section-faq-dark__header {\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-faq-dark__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n}\n\n.section-faq-dark__list {\n  max-width: 820px;\n  margin: 0 auto;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n}\n\n.faq-item-dark {\n  background: var(--surface-card-dark);\n  border: 2px solid rgba(255, 255, 255, 0.06);\n  border-radius: var(--radius-md);\n  overflow: hidden;\n  transition: all 0.3s ease;\n  background-origin: border-box;\n  background-clip: padding-box, border-box;\n}\n\n.faq-item-dark:hover {\n  border-color: transparent;\n  background-image: linear-gradient(#1a1a1a, #1a1a1a), var(--gradient-brand);\n}\n\n.faq-item-dark.is-open {\n  border-color: transparent;\n  background-image: linear-gradient(#1a1a1a, #1a1a1a), var(--gradient-brand);\n  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);\n}\n\n.faq-item-dark__question {\n  width: 100%;\n  padding: 20px var(--space-lg);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  cursor: pointer;\n  background: none;\n  border: none;\n  font-family: var(--font-family);\n  font-size: 16px;\n  font-weight: 600;\n  color: var(--color-light-gray);\n  text-align: left;\n  transition: color 0.3s ease;\n  gap: var(--space-md);\n}\n\n.faq-item-dark__question:hover {\n  color: var(--color-white);\n}\n\n.faq-item-dark__chevron {\n  width: 24px;\n  height: 24px;\n  transition: transform 0.3s ease;\n  flex-shrink: 0;\n  color: var(--color-white);\n  opacity: 0.85;\n}\n\n.faq-item-dark.is-open .faq-item-dark__chevron {\n  transform: rotate(45deg);\n  opacity: 1;\n}\n\n.faq-item-dark__answer {\n  max-height: 0;\n  overflow: hidden;\n  transition: max-height 0.4s ease;\n}\n\n.faq-item-dark.is-open .faq-item-dark__answer {\n  max-height: 400px;\n}\n\n.faq-item-dark__answer-inner {\n  padding: 0 var(--space-lg) 20px;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-medium-gray);\n  line-height: 1.8;\n}\n\n\/* --- Section: Comparison Cards (dark, 3-col, feature checklist) --- *\/\n\/* --- Award Banner (Gartner-style highlight) --- *\/\n.award-banner {\n  max-width: var(--max-width);\n  margin: 0 auto;\n}\n\n.award-banner__inner {\n  display: flex;\n  gap: 48px;\n  align-items: center;\n}\n\n.award-banner__card {\n  flex: 0 0 50%;\n  background: var(--color-black);\n  border-radius: 30px;\n  padding: 48px 36px;\n  display: flex;\n  flex-direction: column;\n}\n\n.award-banner__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: 48px;\n}\n\n.award-banner__image {\n  flex: 1;\n}\n\n.award-banner__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  border-radius: 30px;\n}\n\n.award-banner__disclaimer {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.8;\n  color: var(--color-dark-gray);\n  margin-top: 40px;\n}\n\n\/* --- Case Studies: Filter Bar --- *\/\n.cs-filter {\n  max-width: var(--max-width);\n  margin: 0 auto;\n}\n\n.cs-filter__bar {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 16px 24px;\n}\n\n.cs-filter__dropdown {\n  position: relative;\n}\n\n.cs-filter__dropdown-toggle {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  padding: 12px 20px;\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-sm);\n  background: transparent;\n  cursor: pointer;\n  min-width: 180px;\n  justify-content: space-between;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  transition: border-color 0.2s;\n}\n\n.cs-filter__dropdown-toggle:hover {\n  border-color: var(--color-dark-gray);\n}\n\n.cs-filter__dropdown-toggle svg {\n  color: var(--color-dark-gray);\n  transition: transform 0.2s;\n}\n\n.cs-filter__dropdown.is-open .cs-filter__dropdown-toggle {\n  border-color: var(--color-black);\n}\n\n.cs-filter__dropdown.is-open .cs-filter__dropdown-toggle svg {\n  transform: rotate(180deg);\n}\n\n.cs-filter__dropdown-menu {\n  position: absolute;\n  top: calc(100% + 4px);\n  left: 0;\n  min-width: 100%;\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-sm);\n  padding: 8px 0;\n  z-index: 100;\n  display: none;\n  box-shadow: 0 8px 24px rgba(0,0,0,0.08);\n}\n\n.cs-filter__dropdown.is-open .cs-filter__dropdown-menu {\n  display: block;\n}\n\n.cs-filter__checkbox {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  padding: 10px 20px;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  cursor: pointer;\n  transition: background 0.15s;\n}\n\n.cs-filter__checkbox:hover {\n  background: var(--color-gray);\n}\n\n.cs-filter__checkbox input {\n  display: none;\n}\n\n.cs-filter__checkmark {\n  width: 18px;\n  height: 18px;\n  border: 1.5px solid var(--color-medium-gray);\n  border-radius: 4px;\n  flex-shrink: 0;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  transition: border-color 0.15s, background 0.15s;\n}\n\n.cs-filter__checkbox input:checked + .cs-filter__checkmark {\n  background: var(--color-black);\n  border-color: var(--color-black);\n}\n\n.cs-filter__checkbox input:checked + .cs-filter__checkmark::after {\n  content: '';\n  width: 10px;\n  height: 6px;\n  border-left: 2px solid var(--color-white);\n  border-bottom: 2px solid var(--color-white);\n  transform: rotate(-45deg);\n  margin-bottom: 2px;\n}\n\n.cs-filter__clear {\n  padding: 12px 20px;\n  border: 1px solid var(--color-light-gray);\n  border-radius: 9999px;\n  background: transparent;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  cursor: pointer;\n  transition: border-color 0.2s;\n  margin-left: auto;\n}\n\n.cs-filter__clear:hover {\n  border-color: var(--color-dark-gray);\n}\n\n\/* --- Case Studies: Cards --- *\/\n.cs-cards {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.cs-card {\n  display: grid;\n  grid-template-columns: 1fr 2fr;\n  gap: 48px;\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 32px;\n  align-items: center;\n}\n\n.cs-card__image {\n  position: relative;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n}\n\n.cs-card__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  border-radius: var(--radius-lg);\n  display: block;\n}\n\n.cs-card__industry-tag {\n  position: absolute;\n  top: 16px;\n  left: 16px;\n  background: var(--color-white);\n  color: var(--color-black);\n  font-size: 12px;\n  font-weight: 500;\n  padding: 6px 16px;\n  border-radius: 9999px;\n}\n\n.cs-card__category-tags {\n  position: absolute;\n  bottom: 16px;\n  left: 16px;\n  display: flex;\n  gap: 8px;\n  flex-wrap: wrap;\n}\n\n.cs-card__category-tag {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-white);\n  padding: 7px 12px 5px;\n  border-radius: var(--radius-sm);\n  line-height: 1;\n}\n\n.cs-card__category-tag--blue {\n  background: var(--color-erp-blue);\n}\n\n.cs-card__category-tag--yellow {\n  background: var(--color-erp-yellow);\n}\n\n.cs-card__category-tag--green {\n  background: var(--color-erp-green);\n}\n\n.cs-card__category-tag--red {\n  background: var(--color-erp-red);\n}\n\n.cs-card__content {\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.cs-card__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  background: linear-gradient(107deg, #ef5909 17%, #d70e44 34%, #a046e1 55%, #1676c3 73%);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.cs-card__excerpt {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Case Studies: Pagination --- *\/\n.cs-pagination {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 12px;\n  margin-top: 48px;\n}\n\n.cs-pagination__item {\n  width: 40px;\n  height: 40px;\n  border-radius: 9999px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--color-dark-gray);\n  background: var(--color-white);\n  text-decoration: none;\n  transition: background 0.2s, color 0.2s;\n}\n\n.cs-pagination__item:hover {\n  background: var(--color-light-gray);\n  color: var(--color-black);\n}\n\n.cs-pagination__item.is-active {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n.cs-pagination__next {\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--color-black);\n  text-decoration: none;\n  margin-left: 8px;\n}\n\n.cs-pagination__next:hover {\n  color: var(--color-erp-blue);\n}\n\n.section-comparison {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: var(--space-4xl) 0;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-comparison .container { position: relative; z-index: 1; }\n\n.section-comparison__header { margin-bottom: var(--space-2xl); }\n\n.section-comparison__label {\n  display: flex;\n  align-items: center;\n  gap: var(--space-sm);\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--color-medium-gray);\n  margin-bottom: var(--space-md);\n}\n\n.section-comparison__label::before {\n  content: '';\n  width: 20px;\n  height: 3px;\n  border-radius: 2px;\n  background: var(--gradient-brand);\n}\n\n.section-comparison__header h2 {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  color: var(--color-white);\n  margin-bottom: var(--space-sm);\n}\n\n.section-comparison__header p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-medium-gray);\n}\n\n.section-comparison__grid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: var(--space-lg);\n}\n\n\/* Comparison card *\/\n.card-comparison {\n  background: var(--surface-card-dark);\n  border: 2px solid rgba(255, 255, 255, 0.06);\n  border-radius: var(--radius-lg);\n  display: flex;\n  flex-direction: column;\n  transition: all 0.3s ease;\n  background-origin: border-box;\n  background-clip: padding-box, border-box;\n}\n\n.card-comparison:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);\n}\n\n.card-comparison--recommended {\n  border-color: transparent;\n  background-image: linear-gradient(#0f0f0f, #0f0f0f), var(--gradient-brand);\n  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4);\n}\n\n\/* Header *\/\n.card-comparison__header {\n  padding: var(--space-xl) var(--space-lg) var(--space-lg);\n  border-bottom: 1px solid rgba(255, 255, 255, 0.06);\n}\n\n.card-comparison__badge {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  background: var(--gradient-brand);\n  color: var(--color-white);\n  font-size: 12px;\n  font-weight: 600;\n  padding: 4px 12px;\n  border-radius: var(--radius-full);\n  text-transform: uppercase;\n  letter-spacing: 0.06em;\n  margin-bottom: 12px;\n}\n\n.card-comparison__icon {\n  width: 48px;\n  height: 48px;\n  background: rgba(255, 255, 255, 0.06);\n  border-radius: var(--radius-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: var(--space-md);\n  border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.card-comparison__icon svg {\n  width: 24px;\n  height: 24px;\n  stroke: var(--color-medium-gray);\n  stroke-width: 1.5;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-comparison--recommended .card-comparison__icon {\n  background: rgba(255, 255, 255, 0.1);\n}\n\n.card-comparison--recommended .card-comparison__icon svg {\n  stroke: var(--color-light-gray);\n}\n\n.card-comparison__title {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--color-white);\n  margin-bottom: 6px;\n}\n\n.card-comparison--recommended .card-comparison__title {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.card-comparison__desc {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n}\n\n\/* Score *\/\n.card-comparison__score {\n  padding: 20px var(--space-lg);\n  border-bottom: 1px solid rgba(255, 255, 255, 0.06);\n  display: flex;\n  align-items: baseline;\n  gap: var(--space-sm);\n}\n\n.card-comparison__score-num {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1;\n  color: var(--color-dark-gray);\n}\n\n.card-comparison:nth-child(2) .card-comparison__score-num {\n  color: var(--color-status-warning);\n}\n\n.card-comparison--recommended .card-comparison__score-num {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.card-comparison__score-label {\n  font-size: 14px;\n  font-weight: 400;\n  color: var(--color-dark-gray);\n}\n\n\/* Feature list *\/\n.card-comparison__list {\n  padding: 20px var(--space-lg) var(--space-lg);\n  list-style: none;\n  display: flex;\n  flex-direction: column;\n  gap: 10px;\n  flex: 1;\n}\n\n.card-comparison__item {\n  display: flex;\n  align-items: flex-start;\n  gap: 10px;\n  font-size: 14px;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n}\n\n.card-comparison__item.is-active {\n  color: var(--color-light-gray);\n}\n\n.card-comparison__status {\n  width: 20px;\n  height: 20px;\n  min-width: 20px;\n  border-radius: var(--radius-full);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-top: 1px;\n}\n\n.card-comparison__status svg {\n  width: 12px;\n  height: 12px;\n  stroke-width: 2.5;\n  fill: none;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n\n.card-comparison__status--yes { background: rgba(16, 185, 129, 0.15) \/* --color-status-success *\/; }\n.card-comparison__status--yes svg { stroke: var(--color-status-success); }\n\n.card-comparison__status--partial { background: rgba(245, 158, 11, 0.15) \/* --color-status-warning *\/; }\n.card-comparison__status--partial svg { stroke: var(--color-status-warning); }\n\n.card-comparison__status--no { background: rgba(255, 255, 255, 0.05); }\n.card-comparison__status--no svg { stroke: rgba(255, 255, 255, 0.2); }\n\n\/* --- PDF Modal --- *\/\n.pdf-modal {\n  position: fixed;\n  inset: 0;\n  z-index: 2000;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  opacity: 0;\n  visibility: hidden;\n  transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.pdf-modal.is-active {\n  opacity: 1;\n  visibility: visible;\n}\n\n.pdf-modal__bg {\n  position: absolute;\n  inset: 0;\n  background: rgba(0, 0, 0, 0.7);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n}\n\n.pdf-modal__panel {\n  position: relative;\n  width: 90vw;\n  height: 85vh;\n  max-width: 1000px;\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  box-shadow: 0 32px 96px rgba(0, 0, 0, 0.3);\n}\n\n.pdf-modal__close {\n  position: absolute;\n  top: var(--space-md);\n  right: var(--space-md);\n  width: 40px;\n  height: 40px;\n  border-radius: var(--radius-full);\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  z-index: 10;\n  transition: background 0.2s;\n}\n\n.pdf-modal__close:hover {\n  background: var(--color-gray);\n}\n\n.pdf-modal__iframe {\n  width: 100%;\n  height: 100%;\n  border: none;\n}\n\n\/* --- Section: Marquee \/ Animated Text --- *\/\n.section-marquee {\n  text-align: center;\n  padding: 64px var(--page-padding);\n  overflow: hidden;\n}\n\n.section-marquee--animated {\n  padding: 64px 0;\n}\n\n.section-marquee__text {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.31;\n  color: var(--color-black);\n}\n\n.section-marquee:not(.section-marquee--animated) .section-marquee__text {\n  max-width: 833px;\n  margin: 0 auto;\n}\n\n\/* --- Stat Cards (gradient numbers) --- *\/\n.stat-cards {\n  display: flex;\n  gap: 24px;\n  justify-content: center;\n  flex-wrap: wrap;\n}\n\n.stat-card {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 48px 36px;\n  text-align: center;\n  width: 369px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 4px;\n}\n\n.stat-card__value {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1.06;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.stat-card__label {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-black);\n}\n\n\/* --- Stat Card: Glass variant (dark overlay, 4-column) --- *\/\n.stat-cards--glass {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n  gap: var(--space-md);\n  width: 100%;\n}\n\n.stat-card--glass {\n  background: rgba(255, 255, 255, 0.06);\n  border: 1px solid rgba(255, 255, 255, 0.1);\n  border-radius: var(--radius-md);\n  backdrop-filter: blur(12px);\n  -webkit-backdrop-filter: blur(12px);\n  padding: var(--space-lg) var(--space-lg);\n  text-align: left;\n  width: auto;\n  align-items: flex-start;\n}\n\n.stat-card--glass .stat-card__value {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  background: none;\n  -webkit-background-clip: unset;\n  -webkit-text-fill-color: unset;\n  background-clip: unset;\n  color: var(--color-white);\n}\n\n.stat-card--glass .stat-card__label {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n}\n\n\/* --- Tabs: Big pill tabs --- *\/\n.tabs-big {\n  display: flex;\n  gap: 16px;\n  align-items: center;\n  justify-content: center;\n}\n\n.tab-big {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 20px 24px 18px;\n  min-width: 150px;\n  border-radius: var(--radius-full);\n  background: var(--color-white);\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  cursor: pointer;\n  border: none;\n  transition: color 0.3s, background-color 0.3s;\n}\n\n.tab-big:hover {\n  background: #1676C3;\n  color: var(--color-white);\n}\n\n.tab-big--active {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n\/* --- Section: Personas (tabbed comparison) --- *\/\n.section-personas {\n  background: var(--color-gray);\n  padding: 96px var(--page-padding);\n  position: relative;\n  overflow: hidden;\n}\n\n.section-personas__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-black);\n  text-align: center;\n  margin-bottom: var(--space-2xl);\n}\n\n.section-personas__blob {\n  position: absolute;\n  bottom: -350px;\n  right: 0;\n  width: 877px;\n  height: 1185px;\n  pointer-events: none;\n  z-index: 0;\n}\n\n.section-personas__blob img {\n  width: 100%;\n  height: 100%;\n}\n\n.section-personas .tabs-big,\n.section-personas .section-personas__panels-wrapper {\n  position: relative;\n  z-index: 1;\n}\n\n.section-personas__panels-wrapper {\n  position: relative;\n  margin-top: 40px;\n  min-height: 500px;\n}\n\n.section-personas__slide {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  opacity: 0;\n  pointer-events: none;\n  transition: opacity 0.4s ease;\n}\n\n.section-personas__slide.is-active {\n  position: relative;\n  opacity: 1;\n  pointer-events: auto;\n}\n\n.section-personas__panels {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: flex-start;\n  gap: 24px;\n  padding: clamp(16px, 3vw, 24px);\n  border-radius: var(--radius-lg);\n}\n\n.section-personas__quote-panel {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: clamp(20px, 4vw, 40px);\n  width: min(515px, 100%);\n  flex-shrink: 0;\n}\n\n.section-personas__quote-title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n  max-width: 361px;\n  margin-bottom: 35px;\n}\n\n.section-personas__quote-text {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n  margin-bottom: 23px;\n}\n\n.section-personas__quote-author {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n.section-personas__quote-avatar {\n  width: 50px;\n  height: 50px;\n  border-radius: 0;\n  overflow: hidden;\n  flex-shrink: 0;\n  object-fit: cover;\n}\n\n.section-personas__quote-meta {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n}\n\n.section-personas__benefits-panel {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: clamp(20px, 4vw, 40px);\n  flex: 1 1 min(100%, 400px);\n  display: flex;\n  flex-direction: column;\n  gap: 38px;\n}\n\n.section-personas__benefits-panel .btn {\n  align-self: flex-start;\n}\n\n.section-personas__benefits-header {\n  background: var(--color-white);\n  border: 1px solid var(--color-light-gray);\n  border-radius: var(--radius-lg);\n  padding: 36px;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n}\n\n.section-personas__benefits-title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.34;\n  color: var(--color-black);\n}\n\n.section-personas__benefits-icon {\n  width: 60px;\n  height: 60px;\n  flex-shrink: 0;\n}\n\n.section-personas__benefits-icon img {\n  width: 100%;\n  height: 100%;\n}\n\n\/* Persona Tabs \u2014 Mobile nav (hidden on desktop) *\/\n.section-personas__mobile-nav {\n  display: none;\n}\n\n\/* --- Checklist --- *\/\n.checklist {\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.checklist__item {\n  display: flex;\n  gap: 14px;\n  align-items: flex-start;\n}\n\n.checklist__icon {\n  width: 21px;\n  height: 21px;\n  flex-shrink: 0;\n  color: var(--color-erp-green);\n}\n\n.checklist__icon svg {\n  width: 100%;\n  height: 100%;\n}\n\n.checklist__text {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n\/* Checklist variant: black checkbox (like live assecobs.pl\/erp\/system-hr) *\/\n.checklist--check .checklist__icon {\n  color: var(--color-black);\n}\n\n.checklist--check .checklist__icon svg {\n  width: 21px;\n  height: 21px;\n}\n\n\/* --- Card: Feature (white card with icon) --- *\/\n.card-feature {\n  background: var(--color-white);\n  border-radius: var(--radius-lg);\n  padding: 0 32px 36px;\n  display: flex;\n  flex-direction: column;\n  gap: 32px;\n  cursor: pointer;\n  transition: background 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-feature__icon {\n  width: auto;\n  height: 60px;\n  padding-top: 32px;\n}\n\n.card-feature__icon img {\n  height: 100%;\n  width: auto;\n}\n\n.card-feature__content {\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n  flex: 1;\n}\n\n.card-feature__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.39;\n  color: var(--color-black);\n}\n\n.card-feature__desc {\n  font-size: 18px;\n  font-weight: 400;\n  line-height: 1.39;\n  color: var(--color-dark-gray);\n}\n\n.card-feature__action {\n  display: flex;\n  justify-content: flex-end;\n}\n\n.card-feature__detail-icon {\n  width: 50px;\n  height: 50px;\n  border-radius: 18px;\n  background: rgba(242, 242, 242, 0.75);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-feature__detail-icon svg {\n  width: 28px;\n  height: 28px;\n  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), filter 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-feature:hover .card-feature__detail-icon {\n  background: var(--color-black);\n}\n\n.card-feature:hover .card-feature__detail-icon svg {\n  transform: rotate(90deg);\n  filter: invert(1);\n}\n\n\/* --- Feature Cards Grid --- *\/\n.feature-grid {\n  display: grid;\n  grid-template-columns: repeat(3, minmax(0, 1fr));\n  gap: 36px 24px;\n  max-width: var(--max-width);\n  margin: 0 auto;\n}\n\n\/* --- Section: Feature Tags (image + tags cloud) --- *\/\n.section-feature-tags {\n  background: var(--color-gray);\n  padding: 64px var(--page-padding);\n  overflow: hidden;\n}\n\n.section-feature-tags__inner {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  display: flex;\n  flex-wrap: wrap;\n  gap: 64px;\n  align-items: flex-start;\n  position: relative;\n}\n\n.section-feature-tags__image {\n  width: 583px;\n  max-width: 100%;\n  height: 353px;\n  border-radius: var(--radius-lg);\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.section-feature-tags__image img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.section-feature-tags__content {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  gap: 24px;\n}\n\n.section-feature-tags__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-black);\n}\n\n\/* --- Tag: Big (white, rounded) --- *\/\n.tag-big {\n  display: inline-flex;\n  align-items: center;\n  padding: 12px;\n  border-radius: var(--radius-sm);\n  background: var(--color-white);\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.28px;\n  color: var(--color-black);\n  white-space: nowrap;\n}\n\n.tag-big-cloud {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n}\n\n\/* --- Section: Interface Slider --- *\/\n.section-interface-slider {\n  background: var(--color-gray);\n  padding: 64px 0;\n  text-align: center;\n  position: relative;\n  overflow: hidden;\n}\n\n.section-interface-slider__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 42px;\n  color: var(--color-black);\n  margin-bottom: 48px;\n}\n\n.section-interface-slider__track {\n  position: relative;\n  overflow: visible;\n  max-width: 825px;\n  margin: 0 auto;\n}\n\n.section-interface-slider__slides {\n  display: flex;\n  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.section-interface-slider__slide {\n  flex-shrink: 0;\n  width: 825px;\n  display: flex;\n  justify-content: center;\n}\n\n.section-interface-slider__slide img {\n  width: 100%;\n  height: auto;\n  border-radius: 0;\n  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);\n  transform: scale(0.9);\n}\n\n.section-interface-slider__slide.is-active img {\n  transform: scale(1.1);\n}\n\n.section-interface-slider__nav {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  transform: translate(-50%, -50%);\n  display: flex;\n  justify-content: space-between;\n  width: 100%;\n  max-width: 1060px;\n  padding: 0 24px;\n  box-sizing: border-box;\n  z-index: 2;\n  pointer-events: none;\n}\n\n.section-interface-slider__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 9999px;\n  border: none;\n  background: var(--color-white);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  pointer-events: auto;\n  transition: background 0.2s;\n}\n\n.section-interface-slider__arrow:hover {\n  background: var(--color-black);\n}\n\n.section-interface-slider__arrow:hover svg path {\n  stroke: var(--color-white);\n}\n\n.section-interface-slider__arrows {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  left: 0;\n  right: 0;\n  display: flex;\n  justify-content: space-between;\n  padding: 0 11%;\n  pointer-events: none;\n}\n\n.section-interface-slider__arrow {\n  pointer-events: auto;\n}\n\n\/* --- Card: Video (tall card with gradient overlay) --- *\/\n.card-video {\n  width: 355px;\n  height: 631px;\n  border-radius: 18px;\n  overflow: hidden;\n  position: relative;\n  flex-shrink: 0;\n  cursor: pointer;\n  transform: scale(0.9);\n  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-video.is-visible {\n  transform: scale(1);\n}\n\n\/* Embed wrapper \u2014 holds iframe, gradient overlay via ::after *\/\n.card-video__embed {\n  position: absolute;\n  inset: 0;\n  z-index: 1;\n}\n\n.card-video__embed iframe {\n  width: 100%;\n  height: 100%;\n  border: none;\n  border-radius: inherit;\n  pointer-events: none;\n  position: relative;\n  z-index: 1;\n}\n\n.card-video.is-playing .card-video__embed iframe {\n  pointer-events: auto;\n  z-index: 70;\n}\n\n.card-video__embed::after {\n  content: \"\";\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(180deg, transparent 20%, #232323 100%);\n  opacity: 1;\n  visibility: visible;\n  pointer-events: none;\n  z-index: 2;\n  transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.card-video.is-playing .card-video__embed::after {\n  opacity: 0;\n  visibility: hidden;\n}\n\n\/* Backward-compat: old __bg \/ __overlay still work if present *\/\n.card-video__bg {\n  position: absolute;\n  inset: 0;\n}\n\n.card-video__bg img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.card-video__overlay {\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(180deg, rgba(35,35,35,0) 1.5%, rgba(35,35,35,0.8) 98%);\n  border-radius: var(--radius-lg);\n}\n\n\/* Play\/pause toggle \u2014 top-right 50\u00d750 circle *\/\n.card-video__play-toggle {\n  position: absolute;\n  top: 16px;\n  right: 16px;\n  width: 50px;\n  height: 50px;\n  border-radius: 18px;\n  background: rgba(216, 216, 216, 0.4);\n  border: none;\n  cursor: pointer;\n  z-index: 60;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  transition: background 0.3s ease;\n}\n\n.card-video__play-toggle:hover {\n  background: rgb(35, 35, 35);\n}\n\n.card-video__play-toggle .icon-pause {\n  position: absolute;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.card-video__play-toggle .icon-play {\n  opacity: 1;\n  transition: opacity 0.3s ease;\n}\n\n.card-video:hover .card-video__play-toggle .icon-play {\n  opacity: 0;\n}\n\n.card-video:hover .card-video__play-toggle .icon-pause {\n  opacity: 1;\n}\n\n\/* Legacy center play button (hidden when new toggle is used) *\/\n.card-video__play {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  transform: translate(-50%, -50%);\n  width: 60px;\n  height: 60px;\n  border-radius: 50%;\n  background: rgba(255,255,255,0.2);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n}\n\n.card-video__play:hover {\n  background: rgba(255,255,255,0.35);\n}\n\n.card-video__top {\n  display: none;\n}\n\n.card-video__top-icon {\n  display: none;\n}\n\n\/* Bottom content area *\/\n.card-video__bottom {\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  padding: 0 16px;\n  z-index: 50;\n  display: grid;\n  grid-template-rows: 0fr;\n  align-items: flex-start;\n  transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-video:hover .card-video__bottom {\n  grid-template-rows: 1fr;\n}\n\n.card-video__person {\n  position: absolute;\n  bottom: calc(100% + 16px);\n  left: 0;\n  right: 0;\n  padding: 0 16px;\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n.card-video__person-icon {\n  width: 50px;\n  height: 50px;\n  flex-shrink: 0;\n}\n\n.card-video__person-title {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.3;\n  color: var(--color-white);\n  letter-spacing: -0.02rem;\n}\n\n.card-video__tags-wrap {\n  overflow: hidden;\n}\n\n.card-video__tags {\n  display: flex;\n  gap: 4px;\n  flex-wrap: wrap;\n  overflow: hidden;\n  margin-bottom: 0;\n  transition: margin-bottom 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-video:hover .card-video__tags {\n  margin-bottom: 16px;\n}\n\n.card-video__tag {\n  font-size: 12px;\n  color: var(--color-black);\n  background: var(--color-white);\n  border-radius: 8px;\n  padding: 9px 8px 7px;\n  line-height: 1;\n  white-space: nowrap;\n  letter-spacing: -0.02rem;\n}\n\n.card-video__info {\n  position: absolute;\n  bottom: 16px;\n  left: 16px;\n  right: 16px;\n  display: none;\n  align-items: center;\n  gap: 12px;\n}\n\n.card-video__product-icon {\n  width: 50px;\n  height: 50px;\n  border-radius: 16px;\n  background: var(--gradient-brand);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n  flex-shrink: 0;\n}\n\n.card-video__product-icon img {\n  width: 34px;\n  height: 34px;\n}\n\n.card-video__label {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-white);\n}\n\n\/* --- Section: Video Slider (text + cards) --- *\/\n.section-video-slider {\n  background: var(--color-gray);\n  padding: 96px 0;\n  overflow: hidden;\n}\n\n.section-video-slider__inner {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 32px;\n  align-items: flex-start;\n}\n\n.section-video-slider__header {\n  padding-left: var(--page-padding);\n  width: 562px;\n  max-width: 100%;\n  flex-shrink: 0;\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n}\n\n.section-video-slider__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.19;\n  color: var(--color-black);\n}\n\n.section-video-slider__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.section-video-slider__arrows {\n  display: flex;\n  gap: 16px;\n  margin-top: 24px;\n}\n\n.section-video-slider__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 9999px;\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n  color: var(--color-white);\n}\n\n.section-video-slider__arrow--prev {\n  background: #676767;\n  display: none;\n}\n\n.section-video-slider__arrow--prev.is-visible {\n  display: flex;\n}\n\n.section-video-slider__arrow--next {\n  background: var(--color-white);\n  color: var(--color-black);\n  box-shadow: 0 1px 4px rgba(0,0,0,0.1);\n}\n\n.section-video-slider__arrow:hover {\n  opacity: 0.8;\n}\n\n.section-video-slider__track {\n  display: flex;\n  gap: 24px;\n  overflow-x: auto;\n  padding-right: var(--page-padding);\n  -ms-overflow-style: none;\n  scrollbar-width: none;\n}\n\n.section-video-slider__track::-webkit-scrollbar {\n  display: none;\n}\n\n\/* --- Section: Cooperation Video Slider (Homepage) --- *\/\n\/* \u2500\u2500 Testimonials Quote Slider v2 (Homepage) \u2500\u2500 *\/\n.section-testimonials-v2 {\n  background: var(--color-base);\n  padding: 112px 0 122px;\n  position: relative;\n  overflow: visible;\n  background-image: url('images\/testimonials-blob.svg');\n  background-repeat: no-repeat;\n  background-position: 0% calc(100% + 400px);\n  background-size: 844px 1114px;\n}\n.section-testimonials-v2__left {\n  max-width: 480px;\n  padding: 0 24px;\n  margin-bottom: 40px;\n}\n.section-testimonials-v2__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 1.12;\n  margin-bottom: 32px;\n}\n.section-testimonials-v2__right {\n  position: relative;\n  padding-left: 24px;\n  overflow: hidden;\n}\n.section-testimonials-v2__nav {\n  display: flex;\n  gap: 16px;\n  justify-content: flex-end;\n  padding-right: 24px;\n  margin-bottom: 16px;\n}\n.section-testimonials-v2__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 50%;\n  background: var(--color-white);\n  border: none;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  z-index: 2;\n  transition: background 0.2s;\n}\n.section-testimonials-v2__arrow:hover {\n  background: var(--color-black);\n}\n.section-testimonials-v2__arrow:hover svg path {\n  stroke: #FDFDFD;\n}\n.section-testimonials-v2__track {\n  display: flex;\n  gap: 24px;\n  width: max-content;\n  animation: testimonialQuoteScroll 160s linear infinite;\n  padding: 8px 0 24px;\n}\n.section-testimonials-v2__track:hover {\n  animation-play-state: paused;\n}\n@keyframes testimonialQuoteScroll {\n  from { transform: translateX(0); }\n  to { transform: translateX(-50%); }\n}\n.section-testimonials-v2__card {\n  flex: 0 0 min(744px, 90vw);\n  background: var(--color-white);\n  border-radius: 24px;\n  padding: 36px 24px 24px;\n  display: flex;\n  flex-direction: column;\n  justify-content: space-between;\n  min-height: 380px;\n  position: relative;\n  border: 2px solid transparent;\n  transition: border-color 0.3s ease;\n}\n\n.section-testimonials-v2__card::before {\n  content: '';\n  position: absolute;\n  inset: -2px;\n  border-radius: 26px;\n  padding: 2px;\n  background: linear-gradient(107deg, #ef5909 17%, #d70e44 34%, #a046e1 55%, #1676c3 73%);\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n  pointer-events: none;\n}\n\n.section-testimonials-v2__card:hover::before {\n  opacity: 1;\n}\n.section-testimonials-v2__quote {\n  font-size: 24px;\n  font-weight: 400;\n  line-height: 1.38;\n  color: var(--color-black);\n  margin-bottom: 24px;\n}\n.section-testimonials-v2__footer {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  margin-top: auto;\n}\n.section-testimonials-v2__person {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n.section-testimonials-v2__avatar {\n  width: 50px;\n  height: 50px;\n  border-radius: 0;\n  object-fit: cover;\n}\n.section-testimonials-v2__name {\n  font-size: 16px;\n  font-weight: 400;\n  color: #676767;\n  line-height: 22px;\n}\n.section-testimonials-v2__role {\n  font-size: 16px;\n  font-weight: 400;\n  color: #676767;\n  line-height: 22px;\n}\n.section-testimonials-v2__logo {\n  height: 50px;\n  width: auto;\n  max-width: 140px;\n  object-fit: contain;\n}\n\n\/* Dark pill button with arrow (matches live site) *\/\n.btn-with-arrow {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n}\n.btn-with-arrow::before {\n  content: '';\n  display: block;\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  background-image: url(\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIgNi4yNWEuNzUuNzUgMCAwIDAgMCAxLjV2LTEuNVptMTIuNTMgMS4yOGEuNzUuNzUgMCAwIDAgMC0xLjA2TDkuNzU3IDEuNjk3YS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTIuOTM5IDdsLTQuMjQyIDQuMjQzYS43NS43NSAwIDAgMCAxLjA2IDEuMDZMMTQuNTMgNy41M1pNMiA3Ljc1aDEydi0xLjVIMnYxLjVaIiBmaWxsPSIjRkRGREZEIi8+PC9zdmc+\");\n  background-size: contain;\n  background-repeat: no-repeat;\n  transition: transform 0.2s;\n}\n.btn-with-arrow:hover {\n  background-color: #3FA2EB;\n}\n.btn-with-arrow:hover::before {\n  transform: translateX(4px);\n}\n\n.section-cooperation {\n  background: var(--color-dark-black);\n  border-radius: var(--radius-lg);\n  padding: 100px 0 120px;\n}\n\n.section-cooperation__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.15;\n  letter-spacing: -0.8px;\n  color: var(--color-gray);\n  text-align: center;\n  margin-bottom: 48px;\n}\n\n.section-cooperation__slider {\n  display: flex;\n  gap: 24px;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n  align-items: flex-start;\n}\n\n.section-cooperation__video {\n  flex: 1.9;\n  border-radius: 24px;\n  overflow: hidden;\n  position: relative;\n  aspect-ratio: 16\/9;\n}\n\n.section-cooperation__video iframe {\n  width: 100%;\n  height: 100%;\n  position: absolute;\n  top: 0;\n  left: 0;\n  border-radius: 24px;\n}\n\n.section-cooperation__info {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n}\n\n.section-cooperation__nav {\n  display: flex;\n  gap: 8px;\n  justify-content: flex-end;\n}\n\n.section-cooperation__arrow {\n  width: 30px;\n  height: 30px;\n  border-radius: 9999px;\n  background: var(--color-medium-gray);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  color: var(--color-white);\n  transition: background 0.2s;\n}\n\n.section-cooperation__arrow:hover {\n  background: var(--color-white);\n  color: var(--color-black);\n}\n\n.section-cooperation__card {\n  background: #141414;\n  border-radius: 24px;\n  padding: 36px 36px 40px;\n  min-height: 320px;\n  display: flex;\n  flex-direction: column;\n  position: relative;\n}\n\n.section-cooperation__slide {\n  display: none;\n  flex-direction: column;\n  flex: 1;\n}\n\n.section-cooperation__slide.is-active {\n  display: flex;\n}\n\n.section-cooperation__name {\n  font-size: 20px;\n  font-weight: 600;\n  line-height: 1.3;\n  color: var(--color-white);\n  margin-bottom: 8px;\n}\n\n.section-cooperation__role {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  color: var(--color-medium-gray);\n  margin-bottom: 16px;\n}\n\n.section-cooperation__company {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-medium-gray);\n  border: 1px solid var(--color-medium-gray);\n  border-radius: 9999px;\n  padding: 8px 14px;\n  display: inline-block;\n  align-self: flex-start;\n  margin-bottom: auto;\n}\n\n.section-cooperation__tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n\n.section-cooperation__tag {\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-black);\n  border-radius: 8px;\n  padding: 5px 8px;\n}\n\n@media (max-width: 768px) {\n  .section-cooperation__slider {\n    flex-direction: column;\n  }\n\n  .section-cooperation__heading {\n    font-size: 28px;\n  }\n}\n\n\/* --- Section: Stat Cards with Blob (Homepage) --- *\/\n.section-stat-cards {\n  position: relative;\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.section-stat-cards__grid {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 24px;\n  position: relative;\n  z-index: 2;\n}\n\n.stat-card-home {\n  flex: 1 1 min(100%, 280px);\n  background: var(--color-white);\n  border-radius: 24px;\n  padding: 40px 32px;\n  text-align: center;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  min-height: 220px;\n}\n\n.stat-card-home__number {\n  font-size: 68px;\n  font-weight: 400;\n  line-height: 1;\n  letter-spacing: -1.36px;\n  margin-bottom: 16px;\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.stat-card-home__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.32px;\n  color: var(--color-black);\n  text-align: center;\n  max-width: 300px;\n}\n\n.section-stat-cards__blob {\n  position: absolute;\n  bottom: -480px;\n  right: 0;\n  width: 60%;\n  height: 1310px;\n  background: url('images\/blob-desktop.svg') no-repeat right center;\n  background-size: contain;\n  z-index: 1;\n  pointer-events: none;\n}\n\n@media (max-width: 768px) {\n  .section-stat-cards__grid {\n    flex-direction: column;\n  }\n\n  .stat-card-home__number {\n    font-size: 48px;\n  }\n\n  .section-stat-cards__blob {\n    display: none;\n  }\n}\n\n\/* --- Section: Wybierz rozwi\u0105zanie --- *\/\n.section-choose {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n  text-align: center;\n}\n\n.section-choose__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n  text-align: center;\n  margin-bottom: 36px;\n}\n\n.section-choose__video-wrapper {\n  max-width: 980px;\n  margin: 0 auto;\n  overflow: hidden;\n}\n\n.section-choose__video {\n  width: 112%;\n  height: auto;\n  display: block;\n  margin-left: -6%;\n}\n\n@media (max-width: 768px) {\n  .section-choose__heading {\n    font-size: 28px;\n  }\n}\n\n\/* --- Section: Homepage Product Cards --- *\/\n.section-products {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding: 0 var(--page-padding);\n}\n\n.section-products__header {\n  display: flex;\n  gap: 40px;\n  margin-bottom: 64px;\n  align-items: flex-start;\n}\n\n.section-products__heading {\n  flex: 1;\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.13;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n}\n\n.section-products__desc {\n  flex: 1;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.32px;\n  color: var(--color-dark-gray);\n  padding-top: 10px;\n}\n\n.section-products__cards {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 28px;\n  margin-bottom: 64px;\n}\n\n.card-product-home {\n  flex: 1 1 min(100%, 400px);\n  background: var(--color-white);\n  border-radius: 24px;\n  padding: 32px;\n  display: flex;\n  flex-direction: column;\n}\n\n.card-product-home__logo {\n  margin-bottom: 32px;\n}\n\n.card-product-home__logo img {\n  height: 66px;\n  width: auto;\n}\n\n.card-product-home__title {\n  font-size: 24px;\n  font-weight: 600;\n  line-height: 1.2;\n  letter-spacing: -0.48px;\n  color: var(--color-black);\n  margin-bottom: 12px;\n}\n\n.card-product-home__desc {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: -0.32px;\n  color: var(--color-dark-gray);\n  margin-bottom: 32px;\n  flex: 1;\n}\n\n.card-product-home__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-black);\n  background: var(--color-white);\n  border: 1px solid var(--color-black);\n  border-radius: 9999px;\n  padding: 11px 16px 9px;\n  text-decoration: none;\n  cursor: pointer;\n  transition: background 0.2s, color 0.2s;\n  align-self: flex-start;\n}\n\n.card-product-home__btn:hover {\n  background: var(--color-black);\n  color: var(--color-white);\n}\n\n.card-product-home__btn:hover .arrow-icon {\n  stroke: var(--color-white);\n}\n\n.card-product-home__btn .arrow-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n}\n\n.section-products__cta {\n  text-align: center;\n}\n\n.section-products__cta-btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--color-white);\n  background: var(--color-black);\n  border: none;\n  border-radius: 9999px;\n  padding: 20px 24px 18px;\n  text-decoration: none;\n  cursor: pointer;\n  transition: opacity 0.2s;\n}\n\n.section-products__cta-btn:hover {\n  background: var(--color-erp-blue);\n}\n\n.section-products__cta-btn .arrow-icon {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  stroke: var(--color-white);\n}\n\n@media (max-width: 768px) {\n  .section-products__header {\n    flex-direction: column;\n    gap: 24px;\n  }\n\n  .section-products__cards {\n    flex-direction: column;\n  }\n\n  .section-products__heading {\n    font-size: 28px;\n  }\n}\n\n\/* --- Section: Why Choose (Vertical Text Nav) --- *\/\n.section-why-choose {\n  max-width: 1300px;\n  margin: 0 auto;\n  padding: 0 40px;\n}\n\n.section-why-choose__grid {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 40px;\n  align-items: start;\n}\n\n.section-why-choose__left {\n  display: flex;\n  flex-direction: column;\n  gap: 64px;\n}\n\n.section-why-choose__heading {\n  font-size: 40px;\n  font-weight: 600;\n  line-height: 1.12;\n  letter-spacing: -0.8px;\n  color: var(--color-black);\n}\n\n.section-why-choose__nav {\n  position: relative;\n  padding-left: 20px;\n}\n\n.section-why-choose__scrollbar {\n  position: absolute;\n  left: 0;\n  top: 0;\n  width: 12px;\n  height: 100%;\n  background: var(--color-light-gray);\n  border-radius: 9999px;\n}\n\n.section-why-choose__scrollbar-thumb {\n  position: absolute;\n  left: 0;\n  top: 0;\n  width: 12px;\n  height: 36px;\n  background: var(--color-black);\n  border-radius: 9999px;\n  transition: top 0.4s ease;\n}\n\n.section-why-choose__nav-list {\n  display: flex;\n  flex-direction: column;\n}\n\n.section-why-choose__nav-item {\n  background: none;\n  border: none;\n  padding: 14px 0 10px;\n  font-family: inherit;\n  font-size: 20px;\n  font-weight: 400;\n  line-height: 1.3;\n  letter-spacing: -0.4px;\n  color: var(--color-medium-gray);\n  text-align: left;\n  cursor: pointer;\n  transition: color 0.4s ease;\n}\n\n.section-why-choose__nav-item:hover {\n  color: var(--color-dark-gray);\n}\n\n.section-why-choose__nav-item.is-active {\n  color: var(--color-black);\n}\n\n\/* Right: content card *\/\n.section-why-choose__card {\n  position: relative;\n  background: var(--color-white);\n  border-radius: 24px;\n  overflow: hidden;\n  min-height: 620px;\n}\n\n.section-why-choose__slide {\n  display: none;\n  flex-direction: column;\n  justify-content: space-between;\n  padding: 36px;\n  min-height: 620px;\n}\n\n.section-why-choose__slide.is-active {\n  display: flex;\n}\n\n.section-why-choose__image {\n  margin: 0;\n  text-align: center;\n  overflow: hidden;\n  border-radius: var(--radius-lg);\n}\n\n.section-why-choose__image img {\n  max-width: 100%;\n  height: auto;\n  max-height: 340px;\n  border-radius: var(--radius-lg);\n}\n\n.section-why-choose__content {\n  padding: 0;\n}\n\n.section-why-choose__content p {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.375;\n  letter-spacing: -0.32px;\n  color: var(--color-dark-gray);\n  margin: 0 0 8px;\n}\n\n.section-why-choose__content p:last-child {\n  margin-bottom: 0;\n}\n\n.section-why-choose__content p strong {\n  font-weight: 600;\n  color: var(--color-dark-gray);\n}\n\n.section-why-choose__tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 16px;\n}\n\n.section-why-choose__tag {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1;\n  letter-spacing: -0.24px;\n  color: var(--color-white);\n  background: var(--color-black);\n  border-radius: 8px;\n  padding: 6px 8px 4px;\n}\n\n@media (max-width: 768px) {\n  .section-why-choose__grid {\n    grid-template-columns: 1fr;\n    gap: 32px;\n  }\n\n  .section-why-choose__heading {\n    font-size: 28px;\n  }\n\n  .section-why-choose__nav-item {\n    font-size: 16px;\n  }\n\n  .section-why-choose__card {\n    min-height: auto;\n  }\n\n  .section-why-choose__slide {\n    min-height: auto;\n  }\n}\n\n\/* --- Section: Contact Form --- *\/\n.section-contact-form {\n  background: var(--color-gray);\n  padding: 96px var(--page-padding);\n  position: relative;\n  overflow: hidden;\n}\n\n.section-contact-form__header {\n  text-align: center;\n  margin-bottom: 48px;\n}\n\n.section-contact-form__heading {\n  font-size: 32px;\n  font-weight: 600;\n  line-height: 42px;\n  color: var(--color-black);\n  margin-bottom: 16px;\n}\n\n.section-contact-form__intro {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n  text-align: center;\n  max-width: 700px;\n  margin: 0 auto;\n}\n\n.section-contact-form__fields {\n  display: flex;\n  gap: 36px;\n  max-width: 756px;\n  margin: 0 auto 32px;\n}\n\n.section-contact-form__column {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  gap: 16px;\n}\n\n.section-contact-form__submit {\n  text-align: center;\n  margin-top: 32px;\n}\n\n.section-contact-form__legal {\n  font-size: 10px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.2px;\n  color: var(--color-dark-gray);\n  text-align: center;\n  max-width: 756px;\n  margin: 32px auto 0;\n}\n\n\/* --- Form: Input --- *\/\n.form-input {\n  display: flex;\n  flex-direction: column;\n  gap: 4px;\n}\n\n.form-input__label {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n}\n\n.form-input__field {\n  width: 100%;\n  padding: 12px 16px;\n  border: 1px solid var(--color-light-gray);\n  border-radius: 12px;\n  font-size: 16px;\n  font-weight: 400;\n  font-family: inherit;\n  color: var(--color-black);\n  background: var(--color-white);\n  outline: none;\n  transition: border-color 0.2s;\n}\n\n.form-input__field:focus {\n  border-color: var(--color-black);\n}\n\n.form-input__field--textarea {\n  resize: vertical;\n  min-height: 156px;\n}\n\n\/* --- Form: Checkbox --- *\/\n.form-checkbox {\n  display: flex;\n  gap: 8px;\n  align-items: flex-start;\n}\n\n.form-checkbox__box {\n  width: 16px;\n  height: 16px;\n  flex-shrink: 0;\n  border: 1px solid var(--color-medium-gray);\n  border-radius: 2px;\n  margin-top: 2px;\n  cursor: pointer;\n  appearance: none;\n  -webkit-appearance: none;\n}\n\n.form-checkbox__box:checked {\n  background: var(--color-black);\n  border-color: var(--color-black);\n}\n\n.form-checkbox__label {\n  font-size: 12px;\n  font-weight: 400;\n  line-height: 1.44;\n  letter-spacing: -0.24px;\n  color: var(--color-dark-gray);\n}\n\n\/* --- Decorative Circles --- *\/\n.deco-circle {\n  position: absolute;\n  border-radius: 50%;\n  pointer-events: none;\n}\n\n.deco-circle--orange {\n  background: var(--color-erp-yellow);\n}\n\n.deco-circle--orange-light {\n  background: var(--color-erp-light-orange);\n}\n\n.deco-circle--green {\n  background: var(--color-erp-green);\n}\n\n\/* ============================================\n   ANIMATIONS & TRANSITIONS\n   ============================================ *\/\n\n\/* --- Scroll-Reveal Base --- *\/\n[data-anim] {\n  opacity: 0;\n  transform: translateY(40px);\n  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),\n              transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n[data-anim].is-visible {\n  opacity: 1;\n  transform: translateY(0);\n}\n\n\/* Variant: fade only *\/\n[data-anim=\"fade\"] {\n  transform: none;\n}\n\n\/* Variant: slide from left *\/\n[data-anim=\"slide-left\"] {\n  transform: translateX(-60px);\n}\n[data-anim=\"slide-left\"].is-visible {\n  transform: translateX(0);\n}\n\n\/* Variant: slide from right *\/\n[data-anim=\"slide-right\"] {\n  transform: translateX(60px);\n}\n[data-anim=\"slide-right\"].is-visible {\n  transform: translateX(0);\n}\n\n\/* Variant: scale up *\/\n[data-anim=\"scale\"] {\n  transform: scale(0.9);\n}\n[data-anim=\"scale\"].is-visible {\n  transform: scale(1);\n}\n\n\/* Variant: zoom in *\/\n[data-anim=\"zoom\"] {\n  transform: scale(0.85);\n}\n[data-anim=\"zoom\"].is-visible {\n  transform: scale(1);\n}\n\n\/* --- Stagger Delays (children) --- *\/\n[data-stagger] > *:nth-child(1) { transition-delay: 0s; }\n[data-stagger] > *:nth-child(2) { transition-delay: 0.1s; }\n[data-stagger] > *:nth-child(3) { transition-delay: 0.2s; }\n[data-stagger] > *:nth-child(4) { transition-delay: 0.3s; }\n[data-stagger] > *:nth-child(5) { transition-delay: 0.4s; }\n[data-stagger] > *:nth-child(6) { transition-delay: 0.5s; }\n[data-stagger] > *:nth-child(7) { transition-delay: 0.6s; }\n[data-stagger] > *:nth-child(8) { transition-delay: 0.7s; }\n[data-stagger] > *:nth-child(9) { transition-delay: 0.8s; }\n[data-stagger] > *:nth-child(10) { transition-delay: 0.9s; }\n[data-stagger] > *:nth-child(11) { transition-delay: 1.0s; }\n[data-stagger] > *:nth-child(12) { transition-delay: 1.1s; }\n\n\/* Stagger items start hidden *\/\n[data-stagger] > * {\n  opacity: 0;\n  transform: translateY(30px);\n  transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1),\n              transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n[data-stagger].is-visible > * {\n  opacity: 1;\n  transform: translateY(0);\n}\n\n\/* --- Custom Delay Attribute --- *\/\n[data-delay=\"100\"] { transition-delay: 0.1s; }\n[data-delay=\"200\"] { transition-delay: 0.2s; }\n[data-delay=\"300\"] { transition-delay: 0.3s; }\n[data-delay=\"400\"] { transition-delay: 0.4s; }\n[data-delay=\"500\"] { transition-delay: 0.5s; }\n[data-delay=\"600\"] { transition-delay: 0.6s; }\n\n\/* --- Marquee Animation --- *\/\n@keyframes marquee-scroll {\n  0% { transform: translateX(0); }\n  100% { transform: translateX(-50%); }\n}\n\n.section-marquee--animated .section-marquee__track {\n  display: flex;\n  gap: 80px;\n  white-space: nowrap;\n  animation: marquee-scroll 20s linear infinite;\n  width: max-content;\n}\n\n.section-marquee--animated .section-marquee__track:hover {\n  animation-play-state: paused;\n}\n\n\/* --- Events Ticker (Asseco Platform style) --- *\/\n.events-ticker {\n  width: 100%;\n  background: var(--color-black);\n  overflow: hidden;\n  position: relative;\n  display: flex;\n  align-items: center;\n  padding: 12px 16px;\n}\n\n.events-ticker__track {\n  display: flex;\n  gap: 2rem;\n  min-width: max-content;\n  animation: events-ticker-scroll 30s linear infinite;\n}\n\n.events-ticker__track:hover {\n  animation-play-state: paused;\n}\n\n.events-ticker__item {\n  color: var(--color-white);\n  font-size: 15px;\n  font-weight: 500;\n  white-space: nowrap;\n}\n\n.events-ticker__btn {\n  position: absolute;\n  right: 16px;\n  padding: 7px 19px;\n  background: var(--color-white);\n  color: var(--color-black);\n  border-radius: 9999px;\n  font-size: 14px;\n  font-weight: 500;\n  text-decoration: none;\n  white-space: nowrap;\n  transition: background-color 0.3s, color 0.3s;\n}\n\n.events-ticker__btn:hover {\n  background: var(--color-erp-blue);\n  color: var(--color-white);\n}\n\n@keyframes events-ticker-scroll {\n  0% { transform: translateX(0); }\n  100% { transform: translateX(-50%); }\n}\n\n\/* --- Floating Decorative Circles --- *\/\n@keyframes float-y {\n  0%, 100% { transform: translateY(0); }\n  50% { transform: translateY(-16px); }\n}\n\n@keyframes float-x {\n  0%, 100% { transform: translateX(0); }\n  50% { transform: translateX(12px); }\n}\n\n.deco-circle--float {\n  animation: float-y 4s ease-in-out infinite;\n}\n\n.deco-circle--float-alt {\n  animation: float-x 5s ease-in-out infinite;\n}\n\n\/* --- Counter Animation (number counting) --- *\/\n.stat-card__value[data-count] {\n  transition: none;\n}\n\n\/* --- Parallax-like Decorative Blobs --- *\/\n@keyframes rotate-slow {\n  0% { transform: rotate(0deg); }\n  100% { transform: rotate(360deg); }\n}\n\n.gradient-blob {\n  animation: rotate-slow 30s linear infinite;\n}\n\n\/* --- Blob Background (SVG decoration) --- *\/\n.blob-bg {\n  position: absolute;\n  pointer-events: none;\n  z-index: 0;\n  width: 900px;\n  height: auto;\n}\n\n.blob-bg--bottom-right {\n  bottom: -200px;\n  right: -260px;\n  transform: rotate(135deg);\n}\n\n.blob-bg--bottom-left {\n  bottom: -220px;\n  left: -200px;\n  transform: rotate(135deg) scaleX(-1);\n}\n\n.blob-bg--top-right {\n  top: -180px;\n  right: -200px;\n  transform: rotate(135deg);\n}\n\n\/* Decorative colored dots *\/\n.deco-dot {\n  position: absolute;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  pointer-events: none;\n  z-index: 1;\n}\n\n.deco-dot--orange  { background: var(--color-erp-yellow); }\n.deco-dot--pink    { background: var(--color-erp-red); }\n.deco-dot--cyan    { background: #27D8CD; }\n\n@media (max-width: 768px) {\n  \/* Hero mobile \u2014 1:1 from assecobs.pl\/erp *\/\n  .hero {\n    height: 549px;\n  }\n  .hero__desktop-bg {\n    display: none;\n  }\n  .hero__mobile-bg {\n    display: block;\n  }\n  .hero__content {\n    margin: 0;\n    padding: 176px 20px 56px;\n    width: 100%;\n    position: relative;\n    top: auto;\n    left: auto;\n  }\n  .hero__title {\n    font-size: 38px;\n    line-height: 44px;\n  }\n  .hero__subtitle {\n    display: none;\n  }\n  .hero__slider {\n    display: none;\n  }\n  .hero__arrows {\n    display: none;\n  }\n  .hero .btn {\n    width: 100%;\n    justify-content: center;\n  }\n\n  \/* Advantage bar mobile *\/\n  .advantage-bar__list {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .advantage-bar__item {\n    max-width: 100%;\n  }\n  .advantage-bar__text {\n    font-size: 16px;\n    line-height: 1.4;\n  }\n\n  .blob-bg {\n    width: 500px;\n  }\n  .deco-dot {\n    width: 24px;\n    height: 24px;\n  }\n\n  \/* ERP cards mobile *\/\n  .erp-products {\n    grid-template-columns: 1fr;\n    gap: 28px;\n    max-width: 335px;\n    margin: 0 auto;\n  }\n  .card-erp {\n    border-radius: 18px;\n    padding-bottom: 33px;\n  }\n  .card-erp__image {\n    height: 100px;\n    border-radius: 18px;\n  }\n  .card-erp__open {\n    width: 50px;\n    height: 50px;\n  }\n  .card-erp__logo {\n    display: none;\n  }\n  .card-erp__body {\n    margin-top: 0;\n  }\n  .card-erp__title {\n    font-size: 22px;\n    line-height: 28px;\n  }\n  .card-erp__desc {\n    font-size: 16px;\n    line-height: 22px;\n  }\n  .card-erp:hover .card-erp__image {\n    height: 100px;\n  }\n\n  \/* ERP popup mobile *\/\n  .erp-slider__panel {\n    width: 100%;\n    max-width: 100%;\n    border-radius: 0;\n  }\n  .erp-slide.is-active {\n    grid-template-columns: 1fr;\n    padding: 80px 20px 20px;\n    gap: 16px;\n  }\n  .erp-slide__image {\n    grid-column: 1;\n    grid-row: auto;\n  }\n  .erp-slide__heading {\n    font-size: 24px;\n    line-height: 34px;\n  }\n  .erp-slide__subheading {\n    font-size: 16px;\n    line-height: 20px;\n  }\n  .erp-slide__checklist li {\n    font-size: 15px;\n    line-height: 21px;\n  }\n  .erp-slider__nav {\n    bottom: 20px;\n    right: 20px;\n  }\n  .erp-slide__close {\n    top: 20px;\n    left: 20px;\n    width: 40px;\n    height: 40px;\n  }\n\n  \/* Industries mobile *\/\n  .tile-industry {\n    width: 140px;\n    height: 130px;\n  }\n}\n\n\/* --- Enhanced Hover Transitions --- *\/\n.card-erp,\n.card-product,\n.card-news,\n.card-video,\n.card-quote,\n.card-case {\n  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),\n              box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n.card-erp:hover,\n.card-quote:hover {\n  transform: translateY(-6px);\n  box-shadow: 0 12px 40px rgba(0,0,0,0.08);\n}\n\n.card-news:hover {\n  transform: translateY(-6px);\n  box-shadow: 0 12px 40px rgba(0,0,0,0.2);\n}\n\n\/* card-video: no lift\/scale hover \u2014 matches live assecobs.pl *\/\n\n\/* card-case: no hover state \u2014 matches live assecobs.pl *\/\n\/* tile-industry: no lift\/scale hover \u2014 matches live assecobs.pl *\/\n\n\/* --- Button Press Effect --- *\/\n.btn:active {\n  transform: scale(0.96);\n  transition: transform 0.1s;\n}\n\n.tab-big {\n  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n.tab-big:active {\n  transform: scale(0.95);\n}\n\n\/* --- Hero Entrance Animation --- *\/\n@keyframes hero-fade-in {\n  0% {\n    opacity: 0;\n    transform: translateY(30px);\n  }\n  100% {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\n@keyframes hero-bg-zoom {\n  0% {\n    transform: scale(1.08);\n  }\n  100% {\n    transform: scale(1);\n  }\n}\n\n.hero-video .hero-video__video-wrapper,\n.hero-subpage .hero-subpage__video-wrapper,\n.hero .hero__bg {\n  animation: hero-bg-zoom 1.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\n}\n\n.hero-video .hero-video__content,\n.hero-subpage .hero-subpage__content {\n  animation: hero-fade-in 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.3s both;\n}\n\n\/* --- Slider Track Smooth Scroll --- *\/\n.slider-track,\n.section-recommendations__track,\n.section-news__track,\n.section-video-slider__track {\n  scroll-behavior: smooth;\n}\n\n\/* --- Advantage Bar Scrolling --- *\/\n@keyframes advantage-scroll {\n  0% { transform: translateX(0); }\n  100% { transform: translateX(-50%); }\n}\n\n.advantage-bar--animated .advantage-bar__track {\n  display: flex;\n  gap: 48px;\n  animation: advantage-scroll 25s linear infinite;\n  width: max-content;\n}\n\n\/* --- Checklist Item Stagger --- *\/\n.checklist[data-stagger] .checklist__item {\n  opacity: 0;\n  transform: translateX(-20px);\n}\n\n.checklist[data-stagger].is-visible .checklist__item {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n\/* --- Form Input Focus Animation --- *\/\n.form-input__field {\n  transition: border-color 0.3s, box-shadow 0.3s;\n}\n\n.form-input__field:focus {\n  border-color: var(--color-black);\n  box-shadow: 0 0 0 3px rgba(35,35,35,0.08);\n}\n\n.label-pill {\n  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n\/* --- Gradient Text Shimmer (optional) --- *\/\n@keyframes gradient-shift {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n.text-gradient--animated {\n  background-size: 200% 200%;\n  animation: gradient-shift 4s ease infinite;\n}\n\n\/* --- Stat Card Value Scale-In --- *\/\n@keyframes value-pop {\n  0% {\n    opacity: 0;\n    transform: scale(0.5);\n  }\n  60% {\n    transform: scale(1.05);\n  }\n  100% {\n    opacity: 1;\n    transform: scale(1);\n  }\n}\n\n.stat-card.is-visible .stat-card__value {\n  animation: value-pop 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;\n}\n\n\/* --- Logo Bar Hover --- *\/\n.logo-bar__item {\n  transition: transform 0.3s;\n}\n\n.logo-bar__item:hover {\n  transform: scale(1.05);\n}\n\n\/* --- Smooth Section Transitions --- *\/\n.preview-section {\n  transition: opacity 0.3s;\n}\n\n\/* --- Persona Panel Slide --- *\/\n.section-personas__panels {\n  transition: opacity 0.4s, transform 0.4s;\n}\n\n.section-personas__quote-panel,\n.section-personas__benefits-panel {\n  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1),\n              opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n\/* ======================================================\n   ON-TIME INSIGHTS SLIDER\n   ====================================================== *\/\n.slider-on-time {\n  overflow: hidden;\n  padding: 6rem 0;\n  position: relative;\n}\n\n.slider-on-time__inner {\n  max-width: 82.375rem;\n  margin: 0 auto;\n  padding: 0 48px;\n  overflow: visible;\n}\n\n\/* Nav arrows row *\/\n.slider-on-time__nav {\n  display: flex;\n  justify-content: flex-end;\n  gap: 1rem;\n  margin-bottom: 2rem;\n}\n\n.slider-on-time__arrow {\n  width: 2.5rem;\n  height: 2.5rem;\n  border-radius: 9999px;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background-color 0.3s, border-color 0.3s;\n  padding: 0;\n}\n\n.slider-on-time__arrow svg {\n  width: 1rem;\n  height: 1rem;\n}\n\n.slider-on-time__arrow svg path {\n  stroke: #232323;\n  transition: stroke 0.3s;\n}\n\n.slider-on-time__arrow:hover {\n  background: #232323;\n  border-color: #232323;\n}\n\n.slider-on-time__arrow:hover svg path {\n  stroke: #fdfdfd;\n}\n\n.slider-on-time__arrow:disabled {\n  display: none;\n}\n\n\/* Track *\/\n.slider-on-time__track {\n  display: flex;\n  gap: 1.5rem;\n  overflow: hidden;\n  position: relative;\n}\n\n.slider-on-time__track-inner {\n  display: flex;\n  gap: 1.5rem;\n  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n  will-change: transform;\n}\n\n\/* Card *\/\n.card-on-time {\n  flex: 0 0 min(90vw, 75rem);\n  scroll-snap-align: start;\n  background: var(--color-gray);\n  border-radius: 1.5rem;\n  overflow: hidden;\n  display: grid;\n  grid-template-columns: 0.81fr 1fr;\n  min-height: 18rem;\n}\n\n@media (max-width: 48.875rem) {\n  .card-on-time {\n    grid-template-columns: 1fr;\n    grid-template-rows: max-content 1fr;\n    flex: 0 0 min(90vw, 22rem);\n  }\n}\n\n\/* Card media (image or video) *\/\n.card-on-time__media {\n  overflow: hidden;\n  position: relative;\n  border-top-left-radius: 1.5rem;\n  border-bottom-left-radius: 1.5rem;\n}\n\n@media (max-width: 48.875rem) {\n  .card-on-time__media {\n    border-bottom-left-radius: 0;\n    border-top-right-radius: 1.5rem;\n  }\n}\n\n.card-on-time__media img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  display: block;\n  aspect-ratio: 520 \/ 291;\n}\n\n.card-on-time__media iframe {\n  width: 100%;\n  height: 100%;\n  border: none;\n  display: block;\n}\n\n\/* Card content *\/\n.card-on-time__content {\n  display: flex;\n  flex-direction: column;\n  justify-content: space-between;\n  background: var(--color-white);\n  padding: 2.25rem 3rem 2.5rem;\n  border-top-right-radius: 1.5rem;\n  border-bottom-right-radius: 1.5rem;\n}\n\n@media (max-width: 48.875rem) {\n  .card-on-time__content {\n    border-top-right-radius: 0;\n    border-bottom-left-radius: 1.5rem;\n    padding: 2rem 1.25rem 2.25rem;\n  }\n}\n\n.card-on-time__heading {\n  font-size: 2rem;\n  font-weight: 600;\n  line-height: 2.625rem;\n  color: var(--color-black);\n  margin-bottom: 0.75rem;\n}\n\n.card-on-time__heading .text-gradient {\n  background: var(--gradient-brand);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  background-clip: text;\n}\n\n.card-on-time__desc {\n  font-size: 1rem;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-bottom: 2rem;\n  max-width: 27.5rem;\n}\n\n.card-on-time__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 0.75rem;\n  padding: 0.875rem 2rem;\n  background: var(--color-black);\n  color: var(--color-white);\n  border: none;\n  border-radius: 9999px;\n  font-size: 1rem;\n  font-weight: 500;\n  cursor: pointer;\n  text-decoration: none;\n  transition: background-color 0.3s;\n  width: fit-content;\n}\n\n.card-on-time__btn:hover {\n  background: var(--color-erp-blue);\n}\n\n.card-on-time__btn svg {\n  width: 1rem;\n  height: 1rem;\n}\n\n.card-on-time__btn svg path {\n  stroke: currentColor;\n}\n\n\/* ======================================================\n   POPULAR TOPICS \/ SLIDER POSTS V2 (from assecobs.pl)\n   ====================================================== *\/\n.slider-posts--v2 {\n  background: #090909;\n  border-radius: var(--radius-md);\n  padding: 128px 60px;\n  position: relative;\n  overflow: hidden;\n}\n\n.slider-posts__circle {\n  display: block;\n  width: 40px;\n  height: 40px;\n  background: #3FA2EB;\n  border-radius: 9999px;\n  position: absolute;\n  top: 114px;\n  right: 365px;\n}\n\n.slider-posts__heading {\n  font-size: 40px;\n  font-weight: 600;\n  color: #F2F2F2;\n  text-align: center;\n  margin: 0 0 100px;\n}\n\n.slider-posts__viewport {\n  position: relative;\n  max-width: 1240px;\n  margin: 0 auto;\n}\n\n.slider-posts__track {\n  display: flex;\n  gap: 1.5rem;\n  overflow: hidden;\n  scroll-behavior: smooth;\n}\n\n\/* --- Post Card --- *\/\n.post-card {\n  background: #141414;\n  border-radius: 24px;\n  padding: 36px;\n  display: flex;\n  flex-direction: column;\n  flex: 0 0 min(380px, 85vw);\n  text-decoration: none;\n  color: inherit;\n  transition: background-color 0.3s;\n}\n\n.post-card:hover {\n  background-color: #282828;\n}\n\n.post-card__image {\n  margin-bottom: 24px;\n}\n\n.post-card__image img {\n  width: 100%;\n  height: 194px;\n  object-fit: cover;\n  border-radius: 24px;\n  display: block;\n}\n\n.post-card__content {\n  display: flex;\n  flex-direction: column;\n  flex: 1;\n}\n\n.post-card__title {\n  font-size: 18px;\n  font-weight: 600;\n  line-height: 1.31;\n  margin: 0 0 28px;\n  color: #FDFDFD;\n}\n\n.post-card__excerpt {\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 1.375;\n  color: #AEAEAE;\n  margin: 0 0 28px;\n  flex: 1;\n}\n\n.post-card__meta {\n  display: flex;\n  gap: 8px;\n  margin-top: auto;\n}\n\n.post-card__meta div {\n  font-size: 12px;\n  color: #DFDFDF;\n  background: #232323;\n  border-radius: 9999px;\n  padding: 6px 16px;\n}\n\n\/* Arrows \u2014 vertically centered on both sides *\/\n.slider-posts__arrow {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 30px;\n  height: 30px;\n  background: #676767;\n  border: none;\n  border-radius: 9999px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n  z-index: 2;\n}\n\n.slider-posts__arrow:hover {\n  background: #AEAEAE;\n}\n\n.slider-posts__arrow--prev {\n  left: -48px;\n}\n\n.slider-posts__arrow--next {\n  right: -48px;\n}\n\n\/* CTA *\/\n.slider-posts__cta {\n  display: flex;\n  justify-content: center;\n  margin-top: 80px;\n}\n\n.slider-posts__btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  font-size: 16px;\n  color: #232323;\n  background: #FDFDFD;\n  border: 1px solid #232323;\n  border-radius: 9999px;\n  padding: 20px 24px 18px;\n  text-decoration: none;\n  transition: background 0.2s;\n}\n\n.slider-posts__btn:hover {\n  background: #3FA2EB;\n  color: #FDFDFD;\n  border-color: #3FA2EB;\n}\n\n.slider-posts__btn-arrow {\n  font-size: 14px;\n}\n\n\/* --- Query Form Popup --- *\/\n.query-form-popup {\n  position: fixed;\n  inset: 0;\n  z-index: 10000;\n  display: none;\n}\n\n.query-form-popup.is-active {\n  display: block;\n}\n\n.query-form-popup__bg {\n  position: absolute;\n  inset: 0;\n  background: rgba(0, 0, 0, 0.5);\n  animation: fadeIn 0.3s ease;\n}\n\n@keyframes fadeIn {\n  from { opacity: 0; }\n  to { opacity: 1; }\n}\n\n@keyframes slideInRight {\n  from { transform: translateX(100%); }\n  to { transform: translateX(0); }\n}\n\n.query-form-popup__panel {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  width: 68%;\n  max-width: 1307px;\n  background: var(--color-gray);\n  border-radius: 24px 0 0 24px;\n  padding: 32px 48px;\n  overflow-y: auto;\n  z-index: 1;\n  animation: slideInRight 0.6s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.query-form-popup__close {\n  width: 50px;\n  height: 50px;\n  border-radius: 16px;\n  background: var(--color-white);\n  border: none;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: background 0.2s;\n  margin-bottom: 24px;\n}\n\n.query-form-popup__close:hover {\n  background: var(--color-black);\n}\n\n.query-form-popup__close:hover svg path {\n  stroke: var(--color-white);\n}\n\n.query-form-popup__circle {\n  position: absolute;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n  z-index: 0;\n}\n\n.query-form-popup__circle--orange {\n  top: 80px;\n  right: 44%;\n  background: #FFA533;\n}\n\n.query-form-popup__circle--teal {\n  bottom: 30%;\n  right: 40%;\n  background: #00C2B6;\n}\n\n.query-form-popup__content {\n  display: flex;\n  gap: 53px;\n  position: relative;\n  z-index: 1;\n}\n\n.query-form-popup__left {\n  flex: 0 0 465px;\n  display: flex;\n  flex-direction: column;\n}\n\n.query-form-popup__right {\n  flex: 1;\n  max-width: 596px;\n}\n\n.query-form-popup__heading {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.1;\n  color: var(--color-black);\n  margin-bottom: 24px;\n}\n\n.query-form-popup__desc {\n  font-size: 12px;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.query-form-popup__desc a {\n  color: var(--color-black);\n  text-decoration: underline;\n}\n\n.query-form-popup__legal {\n  font-size: 11px;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-top: 24px;\n}\n\n\/* Form fields *\/\n.query-form__row {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 16px;\n}\n\n.query-form__field {\n  margin-bottom: 16px;\n}\n\n.query-form__field label {\n  display: block;\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--color-black);\n  margin-bottom: 16px;\n}\n\n.query-form__field input,\n.query-form__field textarea {\n  width: 100%;\n  height: 40px;\n  border: 1px solid #DFDFDF;\n  border-radius: 12px;\n  padding: 0 16px;\n  font-size: 16px;\n  font-family: var(--font-family);\n  background: var(--color-white);\n  color: var(--color-black);\n  outline: none;\n  transition: border-color 0.2s;\n  box-sizing: border-box;\n}\n\n.query-form__field input:focus,\n.query-form__field textarea:focus {\n  border-color: #1676C3;\n}\n\n.query-form__field textarea {\n  height: 160px;\n  resize: vertical;\n  padding: 12px 16px;\n}\n\n.query-form__consent-intro {\n  font-size: 12px;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-bottom: 12px;\n}\n\n.query-form__checkbox {\n  display: flex;\n  align-items: flex-start;\n  gap: 8px;\n  font-size: 14px;\n  color: var(--color-dark-gray);\n  margin-bottom: 8px;\n  cursor: pointer;\n}\n\n.query-form__checkbox input[type=\"checkbox\"] {\n  width: 18px;\n  height: 18px;\n  margin-top: 2px;\n  flex-shrink: 0;\n  accent-color: #1676C3;\n}\n\n.query-form__submit {\n  display: flex;\n  justify-content: flex-end;\n  margin-top: 24px;\n}\n\n\/* --- Query Form Inline (component preview) --- *\/\n.query-form-inline {\n  background: var(--color-gray);\n  border-radius: 24px;\n  padding: 32px 48px;\n  position: relative;\n  overflow: hidden;\n}\n\n.query-form-inline__circle {\n  position: absolute;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n  z-index: 0;\n}\n\n.query-form-inline__circle--orange {\n  top: 72px;\n  right: 44%;\n  background: #FFA533;\n}\n\n.query-form-inline__circle--teal {\n  bottom: 30%;\n  right: 40%;\n  background: #00C2B6;\n}\n\n.query-form-inline__content {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 53px;\n  position: relative;\n  z-index: 1;\n}\n\n.query-form-inline__left {\n  flex: 0 0 min(465px, 100%);\n  display: flex;\n  flex-direction: column;\n}\n\n.query-form-inline__right {\n  flex: 1;\n  max-width: 596px;\n}\n\n.query-form-inline__heading {\n  font-size: 48px;\n  font-weight: 600;\n  line-height: 1.1;\n  color: var(--color-black);\n  margin-bottom: 24px;\n}\n\n.query-form-inline__desc {\n  font-size: 12px;\n  line-height: 1.4;\n  color: var(--color-dark-gray);\n}\n\n.query-form-inline__desc a {\n  color: var(--color-black);\n  text-decoration: underline;\n}\n\n.query-form-inline__legal {\n  font-size: 11px;\n  line-height: 1.5;\n  color: var(--color-dark-gray);\n  margin-top: 24px;\n}\n\n.query-form-inline__legal a {\n  color: var(--color-black);\n  text-decoration: underline;\n}\n\n\/* ============================================\n   RESPONSIVE \u2014 Breakpoint overrides\n   ============================================ *\/\n\n\/* --- Small laptop (\u22641280px) --- *\/\n@media (max-width: 1280px) {\n  .section-feature-tags__inner {\n    gap: 32px;\n  }\n  .section-feature-tags__image {\n    width: 400px;\n    height: auto;\n  }\n  .section-video-slider__header {\n    width: 400px;\n  }\n  .card-case {\n    width: min(90vw, 54.6875rem);\n  }\n  .hero-video__heading {\n    font-size: 48px;\n  }\n}\n\n\/* --- Tablet (\u2264768px) --- *\/\n@media (max-width: 768px) {\n  \/* Feature Tags: stack vertically *\/\n  .section-feature-tags__inner {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .section-feature-tags__image {\n    width: 100%;\n    height: auto;\n  }\n\n  \/* Video Slider: stack header + track *\/\n  .section-video-slider__inner {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .section-video-slider__header {\n    width: 100%;\n    padding-left: var(--page-padding);\n    padding-right: var(--page-padding);\n  }\n  .section-video-slider__track {\n    padding-left: var(--page-padding);\n  }\n  .card-video {\n    width: 280px;\n    height: 498px;\n  }\n\n  \/* Testimonials Quote: smaller cards *\/\n  .section-testimonials-v2 {\n    padding: 64px 0;\n  }\n  .section-testimonials-v2__card {\n    flex: 0 0 min(90vw, 500px);\n    min-height: 300px;\n    padding: 24px 20px 20px;\n  }\n  .section-testimonials-v2__quote {\n    font-size: 18px;\n  }\n\n  \/* Case Studies: smaller cards *\/\n  .card-case {\n    width: min(90vw, 40rem);\n    padding: 2rem;\n    grid-template-columns: 1fr;\n    gap: 1.5rem;\n  }\n  .card-case__title {\n    font-size: 2rem;\n  }\n  .card-case__logo {\n    display: none;\n  }\n\n  \/* Insights Slider: card width responsive *\/\n  .card-on-time {\n    flex: 0 0 min(90vw, 22rem);\n  }\n\n  \/* Query Form: stack layout *\/\n  .query-form-inline__content {\n    flex-direction: column;\n    gap: 32px;\n  }\n  .query-form-inline__left {\n    flex: none;\n    width: 100%;\n  }\n  .query-form-inline__right {\n    width: 100%;\n  }\n  .query-form-inline {\n    padding: 24px;\n  }\n\n  \/* Hero Video *\/\n  .hero-video__heading {\n    font-size: 40px;\n  }\n  .hero-video__video {\n    min-height: 500px;\n  }\n  .hero-video__content {\n    padding: 80px 24px;\n  }\n\n  \/* Hero ERP *\/\n  .hero {\n    padding: 64px 24px;\n  }\n  .hero__slider {\n    display: none;\n  }\n  .hero__heading {\n    font-size: 40px;\n  }\n\n  \/* Content Split DRS: stack *\/\n  .section-content-split {\n    flex-direction: column;\n    gap: 32px;\n    padding: 64px var(--page-padding);\n  }\n  .section-content-split__text {\n    max-width: 100%;\n  }\n  .section-content-split__cards {\n    width: 100%;\n  }\n\n  \/* Award Banner: stack *\/\n  .award-banner__inner {\n    flex-direction: column;\n    gap: 24px;\n  }\n  .award-banner__card {\n    flex: none;\n    width: 100%;\n  }\n\n  \/* CS Card: stack *\/\n  .cs-card {\n    grid-template-columns: 1fr;\n    gap: 24px;\n  }\n\n  \/* CS Filter: wrap *\/\n  .cs-filter__bar {\n    flex-wrap: wrap;\n    gap: 12px;\n  }\n  .cs-filter__dropdown {\n    flex: 1 1 calc(50% - 8px);\n  }\n  .cs-filter__dropdown-toggle {\n    min-width: 0;\n    width: 100%;\n  }\n\n  \/* Cooperation Slider *\/\n  .section-cooperation__slide {\n    grid-template-columns: 1fr;\n    gap: 24px;\n  }\n\n  \/* Why Choose *\/\n  .section-why-choose__grid {\n    grid-template-columns: 1fr;\n    gap: 32px;\n  }\n  .section-why-choose__heading {\n    font-size: 32px;\n  }\n\n  \/* Why Cards DRS *\/\n  .section-why-cards__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Partner Cards DRS *\/\n  .section-partner-cards__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Persona Tabs *\/\n  .tabs-big {\n    flex-wrap: wrap;\n    gap: 8px;\n  }\n  .tab-big {\n    font-size: 14px;\n    padding: 10px 16px;\n  }\n  .section-personas__slide {\n    grid-template-columns: 1fr;\n    gap: 24px;\n  }\n\n  \/* ERP Solutions Grid *\/\n  .erp-products {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Feature Cards Grid *\/\n  .feature-grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Industries *\/\n  .industries__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Product Cards *\/\n  .section-product-cards__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Homepage Products *\/\n  .section-products__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Footer *\/\n  .footer__columns {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Stat cards *\/\n  .stat-cards {\n    flex-wrap: wrap;\n  }\n  .stat-card {\n    flex: 1 1 calc(50% - 12px);\n  }\n  .stat-cards--glass .stat-card--glass {\n    flex: 1 1 calc(50% - 12px);\n  }\n\n  \/* Logo Bar *\/\n  .logo-bar__grid {\n    grid-template-columns: repeat(3, 1fr);\n  }\n}\n\n\/* --- Mobile (\u2264480px) --- *\/\n@media (max-width: 480px) {\n  \/* Feature Tags *\/\n  .section-feature-tags {\n    padding: 48px 16px;\n  }\n  .section-feature-tags__heading {\n    font-size: 24px;\n  }\n\n  \/* Video Slider *\/\n  .section-video-slider {\n    padding: 48px 0;\n  }\n  .section-video-slider__heading {\n    font-size: 24px;\n  }\n  .card-video {\n    width: 240px;\n    height: 426px;\n  }\n\n  \/* Testimonials Quote *\/\n  .section-testimonials-v2__card {\n    flex: 0 0 calc(100vw - 48px);\n    min-height: auto;\n  }\n  .section-testimonials-v2__quote {\n    font-size: 16px;\n  }\n  .section-testimonials-v2__heading {\n    font-size: 24px;\n  }\n\n  \/* Case Studies *\/\n  .card-case {\n    width: calc(100vw - 48px);\n    padding: 1.5rem;\n  }\n  .card-case__title {\n    font-size: 1.5rem;\n  }\n\n  \/* Insights Slider *\/\n  .card-on-time {\n    flex: 0 0 calc(100vw - 48px);\n  }\n\n  \/* Query Form *\/\n  .query-form-inline {\n    padding: 16px;\n  }\n  .query-form__row {\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  \/* Hero Video *\/\n  .hero-video__heading {\n    font-size: 32px;\n  }\n  .hero-video__content {\n    padding: 48px 16px;\n  }\n  .hero-video__video {\n    min-height: 400px;\n  }\n\n  \/* Hero ERP *\/\n  .hero__heading {\n    font-size: 32px;\n  }\n\n  \/* Hero Subpage *\/\n  .hero-subpage__heading {\n    font-size: 38px;\n    line-height: 44px;\n  }\n  .hero-subpage__content {\n    padding: 176px 20px 56px;\n  }\n  .hero-subpage__cta {\n    width: 100%;\n  }\n  .hero-subpage__cta a,\n  .hero-subpage__cta .btn {\n    width: 100%;\n    justify-content: center;\n  }\n  .hero-badge {\n    font-size: 12px;\n  }\n\n  \/* Content Split *\/\n  .section-content-split {\n    padding: 48px 16px;\n  }\n  .section-content-split__heading {\n    font-size: 24px;\n  }\n\n  \/* Award Banner *\/\n  .award-banner__card {\n    padding: 32px 20px;\n    border-radius: var(--radius-lg);\n  }\n  .award-banner__heading {\n    font-size: 24px;\n    margin-bottom: 24px;\n  }\n\n  \/* CS Cards *\/\n  .cs-card {\n    padding: 16px;\n    gap: 16px;\n  }\n  .cs-card__title {\n    font-size: 20px;\n  }\n\n  \/* CS Filter *\/\n  .cs-filter__bar {\n    padding: 12px 16px;\n  }\n  .cs-filter__dropdown {\n    flex: 1 1 100%;\n  }\n\n  \/* Why Choose *\/\n  .section-why-choose__heading {\n    font-size: 24px;\n  }\n  .section-why-choose__card {\n    padding: 24px 16px;\n  }\n\n  \/* Why Cards DRS *\/\n  .section-why-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Partner Cards DRS *\/\n  .section-partner-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* ERP Solutions \/ Feature Cards Grid *\/\n  .erp-products,\n  .feature-grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Industries *\/\n  .industries__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Product Cards *\/\n  .section-product-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Footer *\/\n  .footer__columns {\n    grid-template-columns: 1fr;\n  }\n  .footer__top {\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  \/* Stat Cards *\/\n  .stat-card {\n    flex: 1 1 100%;\n  }\n  .stat-cards--glass .stat-card--glass {\n    flex: 1 1 100%;\n  }\n  .stat-card__value {\n    font-size: 40px;\n  }\n\n  \/* Marquee *\/\n  .section-marquee__text {\n    font-size: 32px;\n  }\n\n  \/* Logo Bar *\/\n  .logo-bar__grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  \/* Persona Tabs *\/\n  .tab-big {\n    font-size: 12px;\n    padding: 8px 12px;\n  }\n\n  \/* CTA Section *\/\n  .section-cta__heading {\n    font-size: 24px;\n  }\n\n  \/* Cooperation Slider *\/\n  .section-cooperation__heading {\n    font-size: 24px;\n  }\n\n  \/* Two-Column *\/\n  .section-description {\n    flex-direction: column;\n    gap: 24px;\n  }\n\n  \/* Navigation *\/\n  .site-header__nav {\n    display: none;\n  }\n\n  \/* Header DRS \u2014 mobile: only logo + hamburger *\/\n  .header-drs__hamburger {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    order: 3;\n  }\n  .header-drs__actions {\n    display: none;\n  }\n  .header-drs__inner {\n    overflow: visible;\n  }\n\n  \/* Mobile nav overlay \u2014 wz\u00f3r assecobs.pl *\/\n  .header-drs__nav {\n    display: none;\n    position: fixed;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100vh;\n    height: 100dvh;\n    background: var(--color-white);\n    z-index: 1100;\n    flex-direction: column;\n    align-items: stretch;\n    padding: 80px 24px 32px;\n    gap: 0;\n    overflow-y: auto;\n    white-space: normal;\n  }\n  .header-drs__nav.is-mobile-open {\n    display: flex;\n  }\n  .header-drs__nav-close {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    position: absolute;\n    top: 20px;\n    right: 20px;\n  }\n  .header-drs__nav a {\n    display: block;\n    color: var(--color-black);\n    font-size: 18px;\n    font-weight: 500;\n    padding: 20px 0;\n    border-bottom: 1px solid var(--color-light-gray);\n    border-radius: 0;\n    opacity: 1;\n    text-decoration: none;\n    text-align: left;\n  }\n  .header-drs__nav a:hover {\n    background: none;\n    color: var(--color-black);\n    opacity: 0.7;\n  }\n\n  \/* CTA button inside mobile nav *\/\n  .header-drs__nav-cta {\n    display: flex;\n    margin-top: auto;\n    padding-top: 24px;\n  }\n  .header-drs__nav-cta .btn {\n    display: flex !important;\n    width: 100%;\n    align-items: center !important;\n    justify-content: center !important;\n    gap: var(--space-sm) !important;\n    text-align: center !important;\n    background: var(--color-black);\n    color: var(--color-white);\n    border-color: var(--color-black);\n  }\n\n  \/* Mobile nav header \u2014 logo + close (wz\u00f3r assecobs.pl) *\/\n  .header-drs__nav-header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    padding: 16px 24px;\n    margin: -80px -24px 16px;\n    border-bottom: 1px solid var(--color-light-gray);\n    flex-shrink: 0;\n  }\n  .header-drs__nav-logo {\n    height: 36px;\n    width: auto;\n  }\n\n  \/* Mobile nav \u2014 list wrapper (zawiera linki) *\/\n  .header-drs__nav-list {\n    display: flex;\n    flex-direction: column;\n    padding: 0 24px;\n    flex-grow: 1;\n  }\n\n  \/* Mobile lang switcher \u2014 globus + dropdown popup \"Select Country\/Region\" *\/\n  .header-drs__nav-lang {\n    display: flex;\n    flex-direction: column;\n    padding: 0 24px 24px;\n    flex-shrink: 0;\n    position: relative;\n  }\n  .header-drs__nav-lang-toggle {\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n    background: transparent;\n    border: 0;\n    padding: 8px 0;\n    cursor: pointer;\n    width: fit-content;\n  }\n  .header-drs__nav-lang-toggle svg:last-child {\n    transition: transform 0.2s ease;\n  }\n  .header-drs__nav-lang.is-open .header-drs__nav-lang-toggle svg:last-child {\n    transform: rotate(180deg);\n  }\n  .header-drs__nav-lang-menu {\n    display: none;\n    flex-direction: column;\n    gap: 4px;\n    margin-top: 12px;\n    padding: 16px;\n    background: var(--color-white);\n    border: 1px solid var(--color-light-gray);\n    border-radius: var(--radius-md);\n    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);\n    width: 100%;\n    max-width: 280px;\n  }\n  .header-drs__nav-lang.is-open .header-drs__nav-lang-menu {\n    display: flex;\n  }\n  .header-drs__nav-lang-menu-header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 12px;\n    font-size: 16px;\n    font-weight: 600;\n    color: var(--color-black);\n    margin-bottom: 8px;\n  }\n  .header-drs__nav-lang-menu-close {\n    background: transparent;\n    border: 0;\n    padding: 4px;\n    cursor: pointer;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n  }\n  .header-drs__nav-lang-menu .header-drs__lang-btn {\n    padding: 8px 0;\n    font-size: 16px;\n    font-weight: 400;\n    color: var(--color-black);\n    text-decoration: none;\n    transition: color 0.2s ease;\n  }\n  .header-drs__nav-lang-menu .header-drs__lang-btn:hover {\n    color: var(--color-erp-blue);\n  }\n  .header-drs__nav-lang-menu .header-drs__lang-btn.is-active {\n    background: transparent;\n    color: var(--color-medium-gray);\n    pointer-events: none;\n  }\n\n  \/* Mobile nav: ukryj border-bottom na linkach wewn\u0105trz __nav-list oraz resetuj padding *\/\n  .header-drs__nav .header-drs__nav-list a {\n    padding: 20px 0;\n  }\n\n  \/* Process Timeline *\/\n  .timeline__item {\n    grid-template-columns: 1fr;\n    gap: 16px;\n  }\n\n  \/* Comparison Cards *\/\n  .section-comparison__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Cert Cards *\/\n  .section-cert-cards__grid {\n    grid-template-columns: 1fr;\n  }\n\n  \/* Global page padding *\/\n  :root {\n    --page-padding: 16px;\n  }\n\n  \/* Header DRS: hide lang, shrink CTA *\/\n  .header-drs__lang {\n    display: none;\n  }\n  .header-drs__actions .btn {\n    font-size: 13px;\n    padding: 6px 12px;\n  }\n  .header-drs__inner {\n    overflow: visible;\n  }\n\n  \/* CTA Banner Card: stack vertically *\/\n  .cta-banner-card {\n    flex-direction: column;\n    align-items: flex-start;\n    padding: var(--space-xl);\n  }\n  .cta-banner-card__actions {\n    flex-direction: column;\n    width: 100%;\n    flex-shrink: 1;\n  }\n  .cta-banner-card__actions .btn {\n    width: 100%;\n    justify-content: center;\n  }\n  .cta-banner-card__content h2 {\n    font-size: 24px;\n  }\n\n  \/* Process Timeline: contain within viewport *\/\n  .process-timeline__item:nth-child(odd),\n  .process-timeline__item:nth-child(even) {\n    padding-left: 36px;\n    padding-right: 0;\n  }\n  .process-timeline__content p {\n    max-width: 100%;\n  }\n  .process-timeline__dot {\n    left: 8px;\n  }\n  .process-timeline::before {\n    left: 8px !important;\n  }\n\n  \/* Personas benefits panel: prevent overflow + ikona po lewej, tytu\u0142 po prawej (jak na Asseco HR live) *\/\n  .section-personas__benefits-header {\n    padding: var(--space-md);\n    flex-wrap: nowrap;\n    flex-direction: row;\n    justify-content: flex-start;\n    text-align: left;\n    gap: var(--space-md);\n  }\n  .section-personas__benefits-icon {\n    width: 44px;\n    height: 44px;\n    order: -1;\n  }\n  .section-personas__benefits-title {\n    font-size: 18px;\n  }\n  .section-personas__benefits-panel {\n    max-width: 100%;\n    overflow: hidden;\n  }\n  .checklist__item {\n    flex-wrap: wrap;\n  }\n  .checklist__text {\n    max-width: 100%;\n    word-break: break-word;\n  }\n\n  \/* Persona Tabs \u2014 ukryj tabs-big, poka\u017c mobile nav (prev \/ title \/ next) *\/\n  .section-personas .tabs-big {\n    display: none;\n  }\n  .section-personas__mobile-nav {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 12px;\n    margin-top: var(--space-lg);\n    padding: 4px var(--page-padding);\n  }\n  .section-personas__arrow {\n    width: 44px;\n    height: 44px;\n    border-radius: 50%;\n    background: var(--color-white);\n    border: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    cursor: pointer;\n    flex-shrink: 0;\n    transition: background 0.3s ease;\n  }\n  .section-personas__arrow:hover {\n    background: var(--color-black);\n  }\n  .section-personas__arrow:hover svg path {\n    stroke: #fff;\n  }\n  .section-personas__arrow svg path {\n    transition: stroke 0.3s ease;\n  }\n  .section-personas__mobile-title {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 14px 24px;\n    min-width: 150px;\n    border-radius: var(--radius-full);\n    background: var(--color-black);\n    color: var(--color-white);\n    font-size: 14px;\n    font-weight: 400;\n    text-align: center;\n  }\n\n  \/* Testimonials: contain overflow *\/\n  .section-testimonials-v2 {\n    overflow: hidden;\n  }\n}\n\n\/* ===========================================================================\n   Form validation popups (DRS) \u2014 used with .form-input \/ .form-checkbox-wrap\n   =========================================================================== *\/\n.form-input,\n.form-checkbox-wrap {\n  position: relative;\n}\n.form-input__error {\n  display: none;\n  position: absolute;\n  top: calc(100% + 8px);\n  right: 0;\n  width: fit-content;\n  background: #FFC7C1;\n  color: #232323;\n  padding: 9px 10px 7px;\n  border-radius: 8px;\n  font-size: 10px;\n  font-weight: 400;\n  line-height: 1.4;\n  letter-spacing: normal;\n  z-index: 10;\n  pointer-events: none;\n}\n.form-input__error::before {\n  content: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='18' height='12' fill='none'%3E%3Cpath d='M7.48 1.358a2 2 0 0 1 2.79 0l6.444 6.271c1.286 1.252.4 3.434-1.395 3.434H2.431c-1.795 0-2.681-2.182-1.395-3.434L7.48 1.358Z' fill='%23FFC7C1'\/%3E%3C\/svg%3E\");\n  position: absolute;\n  top: -8px;\n  left: 16px;\n  width: 18px;\n  height: 12px;\n}\n.form-input.is-invalid > .form-input__error,\n.form-checkbox-wrap.is-invalid > .form-input__error {\n  display: block;\n}\n.form-input.is-invalid .form-input__field {\n  border-color: #FF7669;\n  border-width: 1.2px;\n}\n.form-checkbox-wrap.is-invalid .form-checkbox__box {\n  border-color: #FF7669;\n}\n\n\/* Checkbox checked state \u2014 white check on dark fill *\/\n.form-checkbox__box:checked {\n  background: var(--color-black) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 6 5 8.5 9.5 4' stroke='%23FDFDFD' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\") center\/10px 10px no-repeat;\n  border-color: var(--color-black);\n}\n\n\/* Legal text link (used in intro + legal paragraph of contact form) *\/\n.section-contact-form__legal-link {\n  color: inherit;\n  text-decoration: underline;\n  text-underline-offset: 2px;\n  transition: color 0.2s ease;\n}\n.section-contact-form__legal-link:hover,\n.section-contact-form__legal-link:focus-visible {\n  color: var(--color-black);\n}\n.form-status{max-width:756px;margin:32px auto;padding:10px 10px 10px 40px;font-size:14px;line-height:1.44;color:#232323;background:transparent;border:2px solid transparent;border-radius:12px;position:relative;background-repeat:no-repeat;background-position:10px center;background-size:21px 21px}\n.form-status[hidden]{display:none}\n.form-status.is-success{border-color:rgb(70,180,80);background-image:url(\"data:image\/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Ccircle cx='10.5' cy='10.5' r='9' stroke='%2346B450' stroke-width='2'\/%3E%3Cpath d='M6 10.7l3.2 3.2 6-6' stroke='%2346B450' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\")}\n.form-status.is-error{border-color:rgb(220,50,50);background-image:url(\"data:image\/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Ccircle cx='10.5' cy='10.5' r='9' stroke='%23DC3232' stroke-width='2'\/%3E%3Cpath d='M10.5 6v5M10.5 14.5v.5' stroke='%23DC3232' stroke-width='2' stroke-linecap='round'\/%3E%3C\/svg%3E\")}\n.form-status.is-sending{border-color:rgb(0,160,210);padding-left:16px;background-image:none}\n.quiz__form .form-status{color:#FDFDFD!important}\n.quiz__form .form-status.is-error{border-color:#FF7669}\n.quiz__form .form-status.is-sending{border-color:#3FA2EB}\n\n    \/* ============================================================\n       BRAND GRADIENT OVERRIDE (page-local)\n       Nowa paleta: #F16B5E -> #D529E0 -> #3F5BEB\n       Nadpisuje --gradient-brand z styles.css TYLKO dla tej strony.\n       SVG #scope-gradient (poni\u017cej w <body>) jest zaktualizowany r\u0119cznie.\n       ============================================================ *\/\n    :root {\n      --gradient-brand: linear-gradient(107deg, #F16B5E 0%, #D529E0 50%, #3F5BEB 100%);\n      --brand-purple: #D529E0;\n      --brand-purple-dark: #9a14a6;\n    }\n\n    .arrow-icon { width: 16px; height: 16px; flex-shrink: 0; }\n    .container { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); }\n\n    \/* Hero \u2014 prosta wersja: pe\u0142na wysoko\u015b\u0107 ekranu, content u g\u00f3ry *\/\n    .hero-subpage { min-height: 100vh !important; min-height: 100dvh !important; padding-top: var(--space-xl) !important; padding-bottom: 30px !important; align-items: flex-start !important; }\n    .hero-subpage__content { margin-bottom: 0 !important; }\n\n    \/* ============================================================\n       Sekcje page-specific (TL;DR, Direct Answer, HA\/DR, Benefits,\n       Banner, Offer Scope, Product Lines, Answer-First, Award stub)\n       Skopiowane 1:1 z komponent\u00f3w DS (61, 62, 64, 67, 68, 63, 69, 70).\n       ============================================================ *\/\n\n    \/* TL;DR (61) *\/\n    .section-tldr { background: var(--color-gray); padding: var(--space-4xl) 0; }\n    .section-tldr__header { max-width: 800px; margin: 0 auto var(--space-2xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-tldr__header h2 { font-size: clamp(28px, 3.5vw, 38px); font-weight: 600; line-height: 1.2; margin: 0; }\n    \/* TL;DR \u2014 dwa osobne kafelki: lewy z bulletami, prawy ze zdj\u0119ciem (tej samej wysoko\u015bci) *\/\n    .tldr-grid { max-width: var(--max-width); margin: 0 auto; display: grid; grid-template-columns: 1.35fr 1fr; gap: var(--space-lg); align-items: stretch; }\n    .tldr-card { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-2xl) var(--space-3xl); }\n    .tldr-card.tldr-card--image { padding: 0; overflow: hidden; display: flex; }\n    .tldr-card--image img { width: 100%; height: 100%; object-fit: cover; display: block; }\n    .tldr-card .checklist { display: grid; grid-template-columns: 1fr; gap: var(--space-md); }\n    .tldr-card .checklist__item { align-items: flex-start; }\n    .tldr-card .checklist__text { font-size: 15px; line-height: 1.5; color: var(--color-black); }\n    .tldr-card .checklist__text strong { font-weight: 600; color: var(--color-black); }\n    .meta-updated { max-width: var(--max-width); margin: var(--space-lg) auto 0; padding: 0 var(--page-padding); font-size: 13px; color: var(--color-dark-gray); display: flex; align-items: center; justify-content: space-between; gap: var(--space-md); flex-wrap: wrap; }\n    .meta-updated__author { display: inline-flex; align-items: center; gap: 8px; }\n    .meta-updated__author svg { flex-shrink: 0; }\n    .meta-updated time { font-weight: 500; color: var(--color-black); }\n    @media (max-width: 900px) { .tldr-grid { grid-template-columns: 1fr; gap: var(--space-md); } .tldr-card { padding: var(--space-xl); } .tldr-card .checklist { gap: var(--space-sm); } .tldr-card--image { order: -1; max-height: 320px; } }\n\n    \/* Direct Answer (62) *\/\n    .section-direct-answer { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .direct-answer-card { max-width: var(--max-width); margin: 0 auto; background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-3xl); display: grid; grid-template-columns: 1fr 1.2fr; gap: var(--space-2xl); align-items: start; }\n    .direct-answer-card__label { font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-dark-gray); margin-bottom: var(--space-md); }\n    .direct-answer-card__question { font-size: clamp(24px, 3vw, 32px); font-weight: 600; line-height: 1.2; color: var(--color-black); margin: 0 0 var(--space-lg); text-wrap: balance; }\n    .direct-answer-card__body { font-size: 17px; line-height: 1.6; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); }\n    .direct-answer-card__list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-sm) var(--space-lg); }\n    .direct-answer-card__list li { display: flex; align-items: flex-start; gap: var(--space-sm); font-size: 15px; line-height: 1.45; color: var(--color-black); }\n    .direct-answer-card__list svg { flex-shrink: 0; margin-top: 3px; }\n    @media (max-width: 900px) { .direct-answer-card { grid-template-columns: 1fr; padding: var(--space-2xl); } .direct-answer-card__list { grid-template-columns: 1fr; } }\n\n    \/* HA\/DR Split (67) *\/\n    .section-ha-dr { background: var(--color-gray); padding: var(--space-4xl) 0; }\n    .section-ha-dr__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-ha-dr__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); }\n    .section-ha-dr__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .ha-dr-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto auto 1fr auto; gap: var(--space-lg); }\n    .ha-dr-tile { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-2xl); display: grid; grid-template-rows: subgrid; grid-row: span 5; row-gap: 0; }\n    .ha-dr-tile--negative { background: #FFF5F4; }\n    .ha-dr-tile__icon { width: 56px; height: 56px; border-radius: var(--radius-sm); background: rgba(0,0,0,.04); display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-lg); }\n    .ha-dr-tile--negative .ha-dr-tile__icon { background: rgba(215,14,68,.08); }\n    .ha-dr-tile__icon svg { width: 28px; height: 28px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .ha-dr-tile--negative .ha-dr-tile__icon svg { stroke: #d70e44; }\n    .ha-dr-tile__title { font-size: 24px; font-weight: 600; line-height: 1.25; margin: 0 0 var(--space-md); }\n    .ha-dr-tile__body { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); }\n    .ha-dr-tile__list { list-style: none; padding: 0; margin: 0 0 var(--space-lg); display: flex; flex-direction: column; gap: 10px; }\n    .ha-dr-tile__list li { font-size: 14px; line-height: 1.5; color: var(--color-black); padding-left: 22px; position: relative; }\n    .ha-dr-tile__list li::before { content: '\u2713'; position: absolute; left: 0; top: 0; color: #00C2B6; font-weight: 700; }\n    .ha-dr-tile--negative .ha-dr-tile__list li::before { content: '\u2715'; color: #d70e44; }\n    .ha-dr-tile__chips { display: flex; flex-wrap: wrap; gap: 6px; align-self: start; }\n    .ha-dr-tile__chip { display: inline-block; padding: 6px 12px; font-size: 13px; font-weight: 500; color: var(--color-black); background: var(--color-gray); border: 1px solid var(--color-light-gray); border-radius: var(--radius-full); }\n    @media (max-width: 768px) { .ha-dr-grid { grid-template-columns: 1fr; grid-template-rows: none; } .ha-dr-tile { display: flex; flex-direction: column; grid-row: auto; } .ha-dr-tile__chips { margin-top: auto; align-self: stretch; } }\n\n    \/* Benefits Grid (64) *\/\n    .section-benefits { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-benefits__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-benefits__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); }\n    .section-benefits__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .benefits-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-lg); }\n    .benefits-grid--2 { grid-template-columns: repeat(2, 1fr); max-width: 900px; }\n    .benefits-grid--2x2 { grid-template-columns: repeat(2, 1fr); max-width: 1000px; }\n    .benefit-card { background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-2xl); }\n    .benefit-card__icon { width: 56px; height: 56px; border-radius: var(--radius-sm); background: #ffffff; display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-lg); }\n    .benefit-card__icon svg { width: 28px; height: 28px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .benefit-card__title { font-size: 20px; font-weight: 600; line-height: 1.3; margin: 0 0 var(--space-sm); color: var(--color-black); }\n    .benefit-card__desc { font-size: 15px; line-height: 1.55; color: var(--color-dark-gray); margin: 0; }\n    @media (max-width: 1100px) { .benefits-grid { grid-template-columns: repeat(2, 1fr); } }\n    @media (max-width: 600px) { .benefits-grid, .benefits-grid--2, .benefits-grid--2x2 { grid-template-columns: 1fr; } }\n\n    \/* Banner DRS (68) \u2014 bia\u0142e t\u0142o zgodne z s\u0105siadami + zmniejszony padding *\/\n    .section-banner-drs { background: var(--color-white); padding: var(--space-xl) 0; }\n    .banner-drs { max-width: var(--max-width); margin: 0 auto; position: relative; overflow: hidden; background:\n        radial-gradient(circle at 88% -12%, rgba(241,107,94,.55), transparent 38%),\n        radial-gradient(circle at 50% 110%, rgba(213,41,224,.45), transparent 42%),\n        radial-gradient(circle at 8% 50%, rgba(63,91,235,.50), transparent 36%),\n        linear-gradient(135deg, #090909 0%, #1a1a1a 50%, #090909 100%);\n      border-radius: var(--radius-lg); padding: var(--space-3xl); display: grid; grid-template-columns: 1.2fr .8fr; gap: var(--space-2xl); align-items: center; }\n    \/* Dodatkowe akcentowe k\u00f3\u0142ka \u2014 wzmacniaj\u0105 charakter brand gradientu *\/\n    .banner-drs::before { content: ''; position: absolute; top: -25%; right: -8%; width: 380px; height: 380px; border-radius: 50%; background: radial-gradient(circle, rgba(241,107,94,.45), transparent 65%); pointer-events: none; filter: blur(20px); }\n    .banner-drs::after { content: ''; position: absolute; bottom: -30%; left: 35%; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(213,41,224,.40), transparent 65%); pointer-events: none; filter: blur(18px); }\n    .banner-drs__content { position: relative; z-index: 1; }\n    .banner-drs__label { display: inline-block; padding: 6px 14px; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-white); border: 1px solid rgba(255,255,255,.2); border-radius: var(--radius-full); margin-bottom: var(--space-lg); }\n    .banner-drs__title { font-size: clamp(28px, 3.5vw, 40px); font-weight: 600; line-height: 1.2; color: var(--color-white); margin: 0 0 var(--space-md); }\n    .banner-drs__desc { font-size: 16px; line-height: 1.6; color: var(--color-medium-gray); margin: 0 0 var(--space-xl); max-width: 580px; }\n    .banner-drs__stat { position: relative; z-index: 1; text-align: center; }\n    .banner-drs__stat-value { font-size: clamp(56px, 8vw, 96px); font-weight: 600; line-height: 1; margin: 0; background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }\n    .banner-drs__stat-label { font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-medium-gray); margin-top: var(--space-sm); }\n    @media (max-width: 900px) { .banner-drs { grid-template-columns: 1fr; padding: var(--space-2xl); } .banner-drs__stat { order: -1; } }\n\n    \/* Offer Scope (63) *\/\n    .section-offer-scope { background: var(--color-dark-black); padding: var(--space-4xl) 0; color: var(--color-white); }\n    .section-offer-scope__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-offer-scope__header h2 { font-size: clamp(32px, 4vw, 48px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); color: var(--color-white); }\n    .section-offer-scope__header p { font-size: 17px; line-height: 1.6; color: var(--color-medium-gray); margin: 0; }\n    .offer-scope-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-md); }\n    .offer-scope-card { background: rgba(255,255,255,.04); border-radius: var(--radius-lg); padding: var(--space-xl); transition: transform .3s ease, background .3s ease; }\n    .offer-scope-card:hover { transform: translateY(-4px); background: rgba(255,255,255,.07); }\n    .offer-scope-card__badge { display: inline-block; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-medium-gray); margin-bottom: var(--space-md); }\n    .offer-scope-card__icon { width: 48px; height: 48px; border-radius: var(--radius-sm); background: rgba(255,255,255,.06); display: flex; align-items: center; justify-content: center; margin-bottom: var(--space-lg); }\n    .offer-scope-card__icon svg { width: 24px; height: 24px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .offer-scope-card__title { font-size: 18px; font-weight: 600; line-height: 1.3; color: var(--color-white); margin: 0 0 var(--space-sm); }\n    .offer-scope-card__desc { font-size: 14px; line-height: 1.55; color: var(--color-medium-gray); margin: 0; }\n    @media (max-width: 1024px) { .offer-scope-grid { grid-template-columns: 1fr; } }\n\n    \/* Product Lines (69) \u2014 used for \"Why Asseco\" *\/\n    .section-product-lines { background: var(--color-gray); padding: var(--space-4xl) 0; }\n    .section-product-lines__header { max-width: 760px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-product-lines__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); color: var(--color-black); }\n    .section-product-lines__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .product-lines-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); }\n    .product-line-card { background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-xl); }\n    .product-line-card__badge { display: inline-block; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); margin-bottom: var(--space-md); }\n    .product-line-card__title { font-size: 22px; font-weight: 600; line-height: 1.25; color: var(--color-black); margin: 0 0 var(--space-md); }\n    .product-line-card__intro { font-size: 14px; line-height: 1.55; color: var(--color-dark-gray); margin: 0 0 var(--space-md); }\n    .product-line-card__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }\n    .product-line-card__list li { font-size: 14px; line-height: 1.45; color: var(--color-black); padding-left: 16px; position: relative; }\n    .product-line-card__list li::before { content: ''; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 50%; background: var(--gradient-brand); }\n    @media (max-width: 900px) { .product-lines-grid { grid-template-columns: 1fr; } }\n\n    \/* Answer-First Callout (70) *\/\n    .answer-first { max-width: 900px; margin: 0 auto var(--space-2xl); padding: var(--space-xl); background: var(--color-white); border-radius: var(--radius-lg); display: grid; grid-template-columns: auto 1fr; gap: var(--space-lg); align-items: start; }\n    .answer-first__icon { width: 48px; height: 48px; border-radius: var(--radius-sm); background: rgba(0,0,0,.04); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }\n    .answer-first__icon svg { width: 24px; height: 24px; stroke: url(#scope-gradient); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }\n    .answer-first__body p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--color-black); }\n    .answer-first strong { font-weight: 600; }\n    .answer-first--on-dark { background: rgba(255,255,255,.04); }\n    .answer-first--on-dark .answer-first__icon { background: rgba(255,255,255,.06); }\n    .answer-first--on-dark .answer-first__body p { color: var(--color-light-gray); }\n    .answer-first--on-dark strong { color: var(--color-white); }\n    @media (max-width: 560px) { .answer-first { grid-template-columns: 1fr; padding: var(--space-lg); } }\n\n    \/* Industry Recognition (custom grid: Gartner \/ POI \/ ISO) *\/\n    .section-recognition { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-recognition__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-recognition__header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; line-height: 1.15; margin: 0 0 var(--space-md); }\n    .section-recognition__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .recognition-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); }\n    .recognition-card { background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-2xl); display: flex; flex-direction: column; gap: var(--space-md); }\n    .recognition-card__logo { height: 60px; display: flex; align-items: center; }\n    .recognition-card__logo img { max-height: 60px; max-width: 180px; object-fit: contain; }\n    .recognition-card__title { font-size: 22px; font-weight: 600; line-height: 1.2; color: var(--color-black); margin: 0; }\n    .recognition-card__meta { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); }\n    .recognition-card__desc { font-size: 15px; line-height: 1.55; color: var(--color-dark-gray); margin: 0; }\n    @media (max-width: 900px) { .recognition-grid { grid-template-columns: 1fr; } }\n\n    \/* Logo bar trust strip (22) \u2014 override grid for FMCG brand row\n       - mix-blend-mode: multiply + grayscale = jednolity szary BEZ\n         zamieniania bia\u0142ego t\u0142a PNG (Henkel) w czarny prostok\u0105t\n       - container height + img max-height = wyr\u00f3wnana waga wizualna *\/\n    .logo-bar--trust { padding: var(--space-3xl) 0; }\n    .logo-bar--trust .logo-bar__grid {\n      \/* styles.css ukrywa .logo-bar__grid na <= ~900px (pokazuje slider).\n         Wymuszamy grid tak\u017ce na mobile + chowamy slider variant. *\/\n      display: grid !important;\n      grid-template-columns: repeat(5, 1fr);\n      align-items: center;\n      gap: var(--space-xl);\n    }\n    .logo-bar--trust .logo-bar__slider,\n    .logo-bar--trust .logo-bar__dots { display: none !important; }\n    @media (max-width: 700px) {\n      .logo-bar--trust .logo-bar__grid { grid-template-columns: repeat(3, 1fr); }\n    }\n    .logo-bar--trust .logo-bar__item {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      height: 60px;\n      padding: 0 var(--space-sm);\n      \/* Wy\u0142\u0105cz stagger fade-in \u2014 tworzy stacking context (opacity\/transform)\n         kt\u00f3ry \u0142amie mix-blend-mode: multiply na <img> w \u015brodku.\n         Bez tego nadpisu logo znikaj\u0105 zanim IntersectionObserver odpali. *\/\n      opacity: 1 !important;\n      transform: none !important;\n    }\n    .logo-bar--trust .logo-bar__item img {\n      max-height: 44px;\n      max-width: 100%;\n      width: auto;\n      height: auto;\n      object-fit: contain;\n      \/* grayscale + opacity = jednolicie szare logotypy.\n         UWAGA: mix-blend-mode: multiply (kt\u00f3re wyeliminowa\u0142oby bia\u0142e t\u0142o\n         PNG Henkel) NIE dzia\u0142a, bo ancestor .logo-bar \/ .logo-bar__grid\n         maj\u0105 data-anim \/ data-stagger kt\u00f3re tworz\u0105 stacking context.\n         Trade-off: Henkel PNG ma bia\u0142e t\u0142o \u2014 b\u0119dzie ja\u015bniejszym prostok\u0105tem\n         na szarym tle sekcji. Do trwa\u0142ego rozwi\u0105zania potrzebny SVG\/transparent PNG. *\/\n      filter: grayscale(1);\n      opacity: 0.55;\n      transition: opacity .2s ease;\n    }\n    .logo-bar--trust .logo-bar__item img:hover { opacity: 0.9; }\n    \/* Henkel ma square-ish aspect ratio (mniejszy wizualnie ni\u017c wide wordmarki).\n       Powi\u0119kszamy o 50% via transform \u2014 nie zaburza grid layoutu. *\/\n    .logo-bar--trust .logo-bar__item img[alt=\"Henkel\"] { transform: scale(1.5); transform-origin: center; }\n    @media (max-width: 900px) {\n      .logo-bar--trust .logo-bar__grid { grid-template-columns: repeat(5, 1fr); gap: var(--space-md); }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: RECEIPT 3-STAGE DETECTION (fiscal paragon mockup)\n       Odpowiednik 3-stopniowej wizualizacji paragonu z orygina\u0142u\n       (Receipt arrives \u2192 SKUs detected \u2192 Promotion match identified)\n       ============================================================ *\/\n    .section-receipt-flow { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-receipt-flow__header { max-width: 800px; margin: 0 auto var(--space-3xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-receipt-flow__header h2 { font-size: clamp(28px, 3.5vw, 38px); font-weight: 600; line-height: 1.2; margin: 0 0 var(--space-md); }\n    .section-receipt-flow__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .receipt-stages { max-width: 1050px; margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--space-xl); align-items: stretch; }\n    .receipt-stage { display: flex; flex-direction: column; gap: var(--space-md); }\n    .receipt-stage__step { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-black); }\n    .receipt-stage__step-num { width: 24px; height: 24px; border-radius: 50%; background: var(--gradient-brand); color: var(--color-white); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 600; flex-shrink: 0; }\n    .receipt { background: #F1F0ED; border-radius: 4px; padding: var(--space-md) var(--space-lg); font-family: 'Courier New', Courier, monospace; font-size: 12.5px; line-height: 1.5; color: var(--color-black); flex: 1; position: relative; box-shadow: 0 8px 24px -12px rgba(0,0,0,.15); }\n    \/* Postrz\u0119pione kraw\u0119dzie g\u00f3ra\/d\u00f3\u0142 jak na prawdziwym paragonie *\/\n    .receipt::before, .receipt::after { content: ''; position: absolute; left: 0; right: 0; height: 8px; background-image: linear-gradient(135deg, transparent 40%, #F1F0ED 40%, #F1F0ED 60%, transparent 60%), linear-gradient(45deg, transparent 40%, #F1F0ED 40%, #F1F0ED 60%, transparent 60%); background-size: 12px 8px; background-repeat: repeat-x; background-position: 0 0; }\n    .receipt::before { top: -6px; }\n    .receipt::after { bottom: -6px; transform: scaleY(-1); }\n    .receipt__header { text-align: center; font-weight: 700; font-size: 12px; letter-spacing: .04em; }\n    .receipt__meta { text-align: center; font-size: 10.5px; color: var(--color-dark-gray); margin: 4px 0 0; letter-spacing: .04em; }\n    .receipt__divider { border-top: 1px dashed var(--color-medium-gray); margin: 8px 0; }\n    .receipt__items { list-style: none; padding: 0; margin: 0; }\n    .receipt__item { display: flex; justify-content: space-between; gap: 8px; padding: 2px 0; }\n    .receipt__item--highlight { background: linear-gradient(90deg, rgba(241,107,94,.18), rgba(213,41,224,.14)); margin: 1px -6px; padding: 2px 6px; border-radius: 3px; font-weight: 700; }\n    \/* Stage 3: silniejsze wyr\u00f3\u017cnienie konkretnego SKU, kt\u00f3ry dopasowa\u0142 si\u0119 do promocji *\/\n    .receipt__item--match { position: relative; background: var(--gradient-brand); color: var(--color-white); margin: 1px -6px; padding: 2px 6px 2px 22px; border-radius: 3px; font-weight: 700; box-shadow: 0 4px 12px -4px rgba(213,41,224,.45); }\n    .receipt__item--match::before { content: '\u25b6'; position: absolute; left: 6px; top: 50%; transform: translateY(-50%); font-size: 9px; color: var(--color-white); }\n    .receipt__total { display: flex; justify-content: space-between; font-weight: 700; padding-top: 2px; }\n    .receipt__flag-badge { margin-top: var(--space-md); padding: 8px 10px; background: var(--gradient-brand); color: var(--color-white); border-radius: 4px; font-family: 'PP Mori', sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; text-align: center; }\n    @media (max-width: 900px) {\n      .receipt-stages { grid-template-columns: 1fr; gap: var(--space-2xl); }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: DATA ACQUISITION FLOW (LIGHT theme, clean)\n       - bez r\u00f3\u017cowych lewych ramek \/ glow shadows\n       - badges neutralne (bia\u0142e na szarym rowie)\n       - output row jako kontrast: bia\u0142e t\u0142o + badge w gradient brand\n       - linia procesu na \u015brodku k\u00f3\u0142ek + brand gradient zamiast pink\n       ============================================================ *\/\n    \/* Compressed vertical rhythm \u2014 less whitespace between rows and inside cards *\/\n    \/* Balanced internal spacing \u2014 middle ground mi\u0119dzy \"rozsztrzelone\" a \"za ciasne\" *\/\n    .infographic-flow { max-width: 1050px; margin: var(--space-lg) auto 0; background: var(--color-white); border-radius: var(--radius-lg); padding: 24px; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 24px 60px -30px rgba(0,0,0,.18); }\n    .infographic-flow__row { position: relative; background: var(--color-gray); border-radius: var(--radius-md); padding: 14px 20px; }\n    .infographic-flow__row--row { display: grid; grid-template-columns: minmax(280px, 1fr) auto; gap: var(--space-md); align-items: center; }\n    .infographic-flow__row--output { background: rgba(213, 41, 224, 0.04); position: relative; overflow: hidden; padding: 14px 20px 16px; }\n    .infographic-flow__row--output::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--gradient-brand); }\n    .infographic-flow__row--output .infographic-flow__badge { background: var(--gradient-brand); color: var(--color-white); border: 0; }\n    .infographic-flow__row--output .infographic-flow__title { color: var(--color-black); }\n    .infographic-flow__badge { display: inline-flex; align-items: center; justify-content: center; padding: 4px 9px; font-size: 7px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; line-height: 1; background: var(--color-black); color: var(--color-white); border: 0; border-radius: var(--radius-full); margin-bottom: 5px; white-space: nowrap; }\n    .infographic-flow__title { font-size: 17px; font-weight: 600; color: var(--color-black); margin: 0; line-height: 1.2; }\n    .infographic-flow__row > .infographic-flow__title:not(:last-child) { margin-bottom: 12px; }\n    .infographic-flow__chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }\n    .infographic-flow__chip { display: inline-block; padding: 6px 14px; font-size: 13px; font-weight: 500; color: var(--color-black); background: var(--color-white); border: 1px solid var(--color-light-gray); border-radius: var(--radius-sm); }\n    .infographic-flow__chip--sm { padding: 4px 11px; font-size: 11px; font-weight: 600; letter-spacing: .04em; border-radius: var(--radius-full); }\n    .infographic-flow__arrow { display: flex; justify-content: center; padding: 0; margin: -2px 0; }\n    .infographic-flow__arrow svg { width: 18px; height: 18px; color: var(--color-medium-gray); }\n    .infographic-flow__steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-md); align-items: start; position: relative; padding: 4px var(--space-md) 2px; }\n    \/* Linia procesu na \u015brodku k\u00f3\u0142ek: top = paddingTop (4px) + circle radius (15px) = 19px *\/\n    .infographic-flow__steps::before { content: ''; position: absolute; top: 19px; left: 12.5%; right: 12.5%; height: 2px; background: var(--gradient-brand); opacity: .35; z-index: 0; border-radius: 999px; }\n    .infographic-flow__step { text-align: center; position: relative; z-index: 1; }\n    .infographic-flow__step-num { width: 30px; height: 30px; border-radius: 50%; background: var(--gradient-brand); box-shadow: 0 0 0 4px var(--color-gray); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 600; color: var(--color-white); margin-bottom: 6px; }\n    .infographic-flow__step-title { font-size: 14px; font-weight: 600; color: var(--color-black); margin: 0; line-height: 1.2; }\n    .infographic-flow__step-meta { font-size: 11px; color: var(--color-dark-gray); margin-top: 1px; }\n    .infographic-flow__output-desc { margin: 0; font-size: 13px; color: var(--color-dark-gray); line-height: 1.45; }\n    @media (max-width: 820px) {\n      .infographic-flow__row--row { grid-template-columns: 1fr; }\n      .infographic-flow__chips { justify-content: flex-start; }\n      .infographic-flow__steps { grid-template-columns: 1fr 1fr; gap: var(--space-md); }\n      .infographic-flow__steps::before { display: none; }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: SETTLEMENT REPORT DASHBOARD (light card)\n       KPI strip + bar chart (mechanic breakdown) + sample promo table.\n       ============================================================ *\/\n    .section-dashboard { background: var(--color-white); padding: var(--space-4xl) 0; }\n    .section-dashboard__header { max-width: 800px; margin: 0 auto var(--space-2xl); text-align: center; padding: 0 var(--page-padding); }\n    .section-dashboard__header h2 { font-size: clamp(28px, 3.5vw, 38px); font-weight: 600; line-height: 1.2; margin: 0 0 var(--space-md); }\n    .section-dashboard__header p { font-size: 16px; line-height: 1.6; color: var(--color-dark-gray); margin: 0; }\n    .infographic-dashboard { max-width: 1050px; margin: 0 auto; background: var(--color-white); border-radius: var(--radius-lg); padding: var(--space-2xl); box-shadow: 0 24px 60px -30px rgba(0,0,0,.25); }\n    .infographic-dashboard__header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: var(--space-xl); padding-bottom: var(--space-md); border-bottom: 1px solid var(--color-light-gray); flex-wrap: wrap; gap: var(--space-sm); }\n    .infographic-dashboard__title { font-size: 16px; font-weight: 600; color: var(--color-black); margin: 0; display: flex; align-items: center; gap: 8px; }\n    .infographic-dashboard__title::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--gradient-brand); }\n    .infographic-dashboard__period { font-size: 12px; font-weight: 600; color: var(--color-dark-gray); letter-spacing: .08em; text-transform: uppercase; }\n    .dashboard-kpis { display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-sm); margin-bottom: var(--space-2xl); }\n    .dashboard-kpi { padding: var(--space-md); background: var(--color-gray); border-radius: var(--radius-md); text-align: center; }\n    .dashboard-kpi__value { font-size: clamp(20px, 2.5vw, 28px); font-weight: 600; background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; line-height: 1; }\n    .dashboard-kpi__label { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--color-dark-gray); margin-top: 8px; line-height: 1.3; }\n    .dashboard-mid { display: grid; grid-template-columns: 1fr 1.3fr; gap: var(--space-2xl); margin-bottom: var(--space-lg); }\n    .dashboard-block__title { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); margin: 0 0 var(--space-md); }\n    .dashboard-bar { display: grid; grid-template-columns: 90px 1fr 38px; gap: var(--space-sm); align-items: center; margin-bottom: 10px; font-size: 13px; }\n    .dashboard-bar__label { color: var(--color-black); font-weight: 500; }\n    .dashboard-bar__track { height: 8px; background: var(--color-gray); border-radius: var(--radius-full); overflow: hidden; }\n    .dashboard-bar__fill { height: 100%; background: var(--gradient-brand); border-radius: var(--radius-full); }\n    .dashboard-table { width: 100%; border-collapse: collapse; font-size: 13px; }\n    .dashboard-table th, .dashboard-table td { padding: 9px 12px; text-align: left; border-bottom: 1px solid var(--color-light-gray); }\n    .dashboard-table th { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--color-dark-gray); font-weight: 600; }\n    .dashboard-table td { color: var(--color-black); }\n    .dashboard-table td.num { text-align: right; font-weight: 600; }\n    .dashboard-table tr.dashboard-table__more td { text-align: center; color: var(--color-dark-gray); font-style: italic; font-weight: 500; border-bottom: 0; }\n    .dashboard-chip { display: inline-block; padding: 2px 8px; font-size: 10px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; background: var(--color-gray); border-radius: var(--radius-full); color: var(--color-dark-gray); }\n    .dashboard-foot { display: flex; justify-content: space-between; align-items: center; padding-top: var(--space-md); border-top: 1px solid var(--color-light-gray); font-size: 13px; flex-wrap: wrap; gap: var(--space-sm); }\n    .dashboard-foot__label { font-size: 12px; font-weight: 600; letter-spacing: .04em; color: var(--color-dark-gray); }\n    .dashboard-foot__formats { display: flex; gap: 8px; }\n    .dashboard-foot__formats span { padding: 4px 10px; border: 1px solid var(--color-light-gray); border-radius: var(--radius-full); font-size: 11px; font-weight: 600; color: var(--color-black); }\n    @media (max-width: 900px) {\n      .dashboard-kpis { grid-template-columns: repeat(2, 1fr); }\n      .dashboard-mid { grid-template-columns: 1fr; }\n      .dashboard-bar { grid-template-columns: 80px 1fr 36px; font-size: 12px; }\n    }\n\n    \/* ============================================================\n       INFOGRAPHIC: SHARE OF CATEGORY (compact dark table)\n       Lives inside the Bonus Layer (Offer Scope) section.\n       ============================================================ *\/\n    .share-of-category { max-width: 900px; margin: var(--space-3xl) auto 0; background: rgba(255,255,255,.03); border-radius: var(--radius-lg); padding: var(--space-2xl); }\n    .share-of-category__header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: var(--space-md); padding-bottom: var(--space-sm); border-bottom: 1px solid rgba(255,255,255,.08); flex-wrap: wrap; gap: var(--space-sm); }\n    .share-of-category__title { font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #f0a8f6; margin: 0; }\n    .share-of-category__period { font-size: 12px; font-weight: 600; color: var(--color-medium-gray); letter-spacing: .08em; text-transform: uppercase; }\n    .share-table { width: 100%; border-collapse: collapse; font-size: 14px; }\n    .share-table th, .share-table td { padding: 12px 10px; text-align: left; border-bottom: 1px solid rgba(255,255,255,.06); color: var(--color-white); }\n    .share-table th { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--color-medium-gray); font-weight: 600; }\n    .share-table td.num { text-align: right; font-variant-numeric: tabular-nums; }\n    .share-table td.share { text-align: right; font-weight: 600; background: var(--gradient-brand); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }\n    .share-table tr:last-child td { border-bottom: 0; }\n    @media (max-width: 600px) { .share-table th, .share-table td { padding: 10px 6px; font-size: 12px; } }\n\n    \/* Section-process flush-top \u2014 bez border-radius u g\u00f3ry \u017ceby zlewa\u0142o si\u0119 z poprzedni\u0105 ciemn\u0105 sekcj\u0105 *\/\n    .section-process.section-process--flush-top { border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }\n\n    \/* Implementation timeline \u2014 gradient brand line z fade + kropki jak w How It Works *\/\n    .section-process .process-timeline::before {\n      background: linear-gradient(180deg, #F16B5E 0%, #D529E0 50%, #3F5BEB 100%) !important;\n      border-radius: 2px;\n      -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n              mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n    }\n    .section-process .process-timeline__dot {\n      width: 24px !important;\n      height: 24px !important;\n      top: 2px !important;\n      box-shadow: 0 0 0 6px var(--color-dark-black), 0 0 0 8px rgba(255,255,255,.06) !important;\n    }\n    .section-process .process-timeline__item:hover .process-timeline__dot {\n      box-shadow: 0 0 0 6px var(--color-dark-black), 0 0 0 10px rgba(255,255,255,.12) !important;\n    }\n\n    \/* Process timeline \u2014 mobile\/responsywne: wszystko wyr\u00f3wnane do lewej, kropki na lewej osi *\/\n    @media (max-width: 900px) {\n      .process-timeline { padding-left: 0 !important; padding-right: 0 !important; }\n      .process-timeline::before { left: 8px !important; right: auto !important; transform: none !important; }\n      .process-timeline__item { display: block !important; width: 100% !important; padding: 0 0 var(--space-xl) 36px !important; margin: 0 !important; text-align: left !important; }\n      .process-timeline__item:nth-child(even),\n      .process-timeline__item:nth-child(odd) { padding-left: 36px !important; padding-right: 0 !important; text-align: left !important; }\n      .process-timeline__dot { left: 0 !important; right: auto !important; top: 8px !important; transform: translateX(0) !important; }\n      .process-timeline__content { text-align: left !important; padding: 0 !important; max-width: 100% !important; }\n      .process-timeline__content h3 { text-align: left !important; }\n      .process-timeline__content p { text-align: left !important; max-width: 100% !important; }\n      .process-timeline__label { text-align: left !important; }\n    }\n\n    \/* Settlement formula \u2014 grid layout: formula card po lewej, image po prawej *\/\n    .formula-grid { max-width: var(--max-width); margin: var(--space-2xl) auto 0; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1.35fr 1fr; gap: var(--space-lg); align-items: stretch; }\n    .formula-box { background: var(--color-white); border: 1px solid var(--color-light-gray); border-radius: var(--radius-lg); padding: var(--space-2xl); font-family: 'PP Mori', monospace; margin: 0; }\n    .formula-box__title { font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); font-family: 'PP Mori', sans-serif; letter-spacing: .12em; }\n    .formula-box__list { display: flex; flex-direction: column; gap: var(--space-md); }\n    .formula-box__row { display: flex; gap: var(--space-md); align-items: baseline; padding: var(--space-sm) 0; border-bottom: 1px dashed var(--color-light-gray); }\n    .formula-box__row:last-child { border-bottom: 0; }\n    .formula-box__lhs { font-weight: 600; color: var(--color-black); min-width: 180px; }\n    .formula-box__rhs { color: var(--color-dark-gray); }\n    .formula-box.formula-box--image { padding: 0; overflow: hidden; display: flex; align-items: stretch; justify-content: center; background: var(--color-gray); }\n    .formula-box--image img { width: 100%; height: 100%; object-fit: cover; display: block; }\n    @media (max-width: 900px) {\n      .formula-grid { grid-template-columns: 1fr; gap: var(--space-md); }\n      .formula-box--image { order: -1; max-height: 320px; }\n    }\n    @media (max-width: 700px) { .formula-box__row { flex-direction: column; gap: 4px; } .formula-box__lhs { min-width: 0; } }\n\n    \/* ============================================================\n       HOW IT WORKS \u2014 vertical timeline (text|line+dot|visual)\n       ============================================================ *\/\n    .section-how-it-works { background: var(--color-dark-black); }\n    .hiw-header { background: var(--color-dark-black); padding: var(--space-4xl) 0 var(--space-2xl); }\n    .hiw-header__inner { max-width: 880px; margin: 0 auto; text-align: center; padding: 0 var(--page-padding); }\n    .hiw-header__inner h2 { font-size: clamp(32px, 4vw, 44px); font-weight: 600; line-height: 1.15; color: var(--color-white); margin: 0 0 var(--space-md); }\n    .hiw-header__inner p { font-size: 16px; line-height: 1.6; color: var(--color-light-gray); margin: 0; }\n\n    \/* Timeline wrapper \u2014 light gray bg, vertical center line *\/\n    .hiw-timeline {\n      background: var(--color-gray);\n      padding: var(--space-4xl) var(--page-padding);\n      position: relative;\n    }\n    .hiw-timeline::before {\n      content: '';\n      position: absolute;\n      left: 50%;\n      top: var(--space-xl);\n      bottom: var(--space-xl);\n      width: 2px;\n      margin-left: -1px;\n      background: linear-gradient(180deg, #F16B5E 0%, #D529E0 50%, #3F5BEB 100%);\n      z-index: 0;\n      border-radius: 2px;\n      \/* Fade in at the top and out at the bottom *\/\n      -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n              mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);\n    }\n\n    \/* Row = text (left) | center (line\/dot) | visual (right) *\/\n    .hiw-row {\n      max-width: var(--max-width);\n      margin: 0 auto var(--space-4xl);\n      display: grid;\n      grid-template-columns: 1fr 80px 1fr;\n      gap: var(--space-lg);\n      align-items: start;\n      position: relative;\n    }\n    .hiw-row:last-child { margin-bottom: 0; }\n\n    .hiw-row__text { padding: var(--space-xl) var(--space-lg) var(--space-xl) 0; min-width: 0; }\n    .hiw-row__visual { padding: var(--space-xl) 0 var(--space-xl) var(--space-lg); min-width: 0; }\n\n    .hiw-row__center {\n      display: flex;\n      justify-content: center;\n      align-items: flex-start;\n      padding-top: var(--space-2xl);\n      position: relative;\n      z-index: 1;\n    }\n    .hiw-row__dot {\n      width: 24px;\n      height: 24px;\n      border-radius: 50%;\n      background: var(--gradient-brand);\n      box-shadow: 0 0 0 6px var(--color-gray), 0 0 0 8px rgba(0,0,0,.06);\n      display: block;\n      position: relative;\n      z-index: 2;\n    }\n\n    \/* Text styling \u2014 left-aligned now (not centered) *\/\n    .hiw-step__eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 8px; }\n    .hiw-step__title { font-size: clamp(24px, 2.8vw, 32px); font-weight: 600; line-height: 1.2; color: var(--color-black); margin: 0 0 var(--space-md); }\n    .hiw-step__desc { font-size: 15px; line-height: 1.6; color: var(--color-dark-gray); margin: 0 0 var(--space-lg); }\n    .hiw-step__bullets { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }\n    .hiw-step__bullets li { padding-left: 22px; position: relative; font-size: 14px; line-height: 1.5; color: var(--color-black); }\n    .hiw-step__bullets li::before { content: ''; position: absolute; left: 0; top: 7px; width: 8px; height: 8px; border-radius: 50%; background: var(--gradient-brand); }\n\n    \/* =====================================================\n       Compact infographics inside the narrow right column\n       (.hiw-row__visual ~ \u2264 540px on desktop)\n       ===================================================== *\/\n\n    \/* --- Trade Data Hub flow --- *\/\n    .hiw-row__visual .infographic-flow {\n      max-width: 100%;\n      margin: 0;\n      padding: 16px;\n      gap: 6px;\n      box-shadow: 0 12px 30px -18px rgba(0,0,0,.15);\n    }\n    .hiw-row__visual .infographic-flow__row { padding: 10px 14px; }\n    .hiw-row__visual .infographic-flow__row--row { grid-template-columns: minmax(0, 1fr); gap: 8px; }\n    .hiw-row__visual .infographic-flow__title { font-size: 14px; }\n    .hiw-row__visual .infographic-flow__row > .infographic-flow__title:not(:last-child) { margin-bottom: 8px; }\n    .hiw-row__visual .infographic-flow__badge { font-size: 6px; padding: 3px 7px; margin-bottom: 4px; }\n    .hiw-row__visual .infographic-flow__chips { justify-content: flex-start; gap: 4px; }\n    .hiw-row__visual .infographic-flow__chip { padding: 4px 10px; font-size: 11px; }\n    .hiw-row__visual .infographic-flow__chip--sm { padding: 3px 8px; font-size: 10px; }\n    .hiw-row__visual .infographic-flow__steps { grid-template-columns: repeat(4, 1fr); gap: 6px; padding: 4px 8px 2px; }\n    .hiw-row__visual .infographic-flow__steps::before { left: 12%; right: 12%; top: 15px; }\n    .hiw-row__visual .infographic-flow__step-num { width: 24px; height: 24px; font-size: 10px; margin-bottom: 4px; }\n    .hiw-row__visual .infographic-flow__step-title { font-size: 11px; }\n    .hiw-row__visual .infographic-flow__step-meta { font-size: 9px; }\n    .hiw-row__visual .infographic-flow__output-desc { font-size: 12px; }\n    .hiw-row__visual .infographic-flow__arrow svg { width: 14px; height: 14px; }\n\n    \/* --- Receipt carousel \u2014 one stage visible at a time (Step 02) --- *\/\n    .receipt-carousel {\n      max-width: 380px;          \/* square-ish card *\/\n      margin: 0 auto;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      gap: var(--space-md);\n    }\n    .receipt-carousel__viewport {\n      position: relative;\n      width: 100%;\n      min-height: 380px;          \/* keeps near-square aspect *\/\n    }\n    .receipt-carousel .receipt-stage {\n      position: absolute;\n      inset: 0;\n      opacity: 0;\n      visibility: hidden;\n      transform: translateY(8px);\n      transition: opacity .55s ease, transform .55s ease, visibility 0s linear .55s;\n      display: flex;\n      flex-direction: column;\n      gap: var(--space-md);\n    }\n    .receipt-carousel .receipt-stage.is-active {\n      opacity: 1;\n      visibility: visible;\n      transform: translateY(0);\n      transition: opacity .55s ease, transform .55s ease, visibility 0s linear 0s;\n    }\n    \/* Override receipt color \u2192 white on this carousel *\/\n    .receipt-carousel .receipt {\n      background: var(--color-white);\n      padding: 14px 18px;\n      font-size: 12px;\n      line-height: 1.5;\n      box-shadow: 0 14px 32px -18px rgba(0,0,0,.18);\n    }\n    .receipt-carousel .receipt::before,\n    .receipt-carousel .receipt::after {\n      background-image:\n        linear-gradient(135deg, transparent 40%, var(--color-white) 40%, var(--color-white) 60%, transparent 60%),\n        linear-gradient(45deg,  transparent 40%, var(--color-white) 40%, var(--color-white) 60%, transparent 60%);\n    }\n    .receipt-carousel .receipt-stage__step { font-size: 11px; }\n    .receipt-carousel .receipt-stage__step-num { width: 22px; height: 22px; font-size: 11px; }\n    .receipt-carousel .receipt__header { font-size: 11px; }\n    .receipt-carousel .receipt__meta { font-size: 10px; }\n    .receipt-carousel .receipt__total { font-size: 13px; }\n    .receipt-carousel .receipt__flag-badge { font-size: 11px; padding: 5px 12px; }\n\n    \/* Dots *\/\n    .receipt-carousel__dots {\n      display: flex;\n      gap: 10px;\n      padding-top: var(--space-sm);\n    }\n    .receipt-carousel__dot {\n      width: 32px;\n      height: 6px;\n      border-radius: 999px;\n      border: 0;\n      background: rgba(0,0,0,.15);\n      padding: 0;\n      cursor: pointer;\n      transition: background .3s ease, width .3s ease;\n    }\n    .receipt-carousel__dot:hover { background: rgba(0,0,0,.3); }\n    .receipt-carousel__dot.is-active {\n      background: var(--gradient-brand);\n      width: 48px;\n    }\n\n    @media (max-width: 700px) {\n      .receipt-carousel { max-width: 340px; }\n      .receipt-carousel__viewport { min-height: 360px; }\n    }\n\n    \/* --- Settlement dashboard --- *\/\n    .hiw-row__visual .infographic-dashboard {\n      max-width: 100%;\n      margin: 0;\n      padding: var(--space-lg);\n      box-shadow: 0 12px 30px -18px rgba(0,0,0,.2);\n    }\n    .hiw-row__visual .infographic-dashboard__title { font-size: 13px; }\n    .hiw-row__visual .infographic-dashboard__period { font-size: 10px; }\n    .hiw-row__visual .dashboard-kpis { grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: var(--space-lg); }\n    .hiw-row__visual .dashboard-kpi { padding: 10px 8px; }\n    .hiw-row__visual .dashboard-kpi__value { font-size: 18px; }\n    .hiw-row__visual .dashboard-kpi__label { font-size: 9px; margin-top: 4px; }\n    .hiw-row__visual .dashboard-mid { grid-template-columns: 1fr; gap: var(--space-lg); margin-bottom: var(--space-md); }\n    .hiw-row__visual .dashboard-block__title { font-size: 10px; margin-bottom: 8px; }\n    .hiw-row__visual .dashboard-bar { grid-template-columns: 70px 1fr 32px; font-size: 11px; gap: 6px; margin-bottom: 6px; }\n    .hiw-row__visual .dashboard-bar__track { height: 6px; }\n    .hiw-row__visual .dashboard-table { font-size: 11px; }\n    .hiw-row__visual .dashboard-table th { font-size: 9px; }\n    .hiw-row__visual .dashboard-table th, .hiw-row__visual .dashboard-table td { padding: 6px 8px; }\n    .hiw-row__visual .dashboard-chip { font-size: 9px; padding: 2px 6px; }\n    .hiw-row__visual .dashboard-foot { font-size: 11px; }\n    .hiw-row__visual .dashboard-foot__label { font-size: 10px; }\n    .hiw-row__visual .dashboard-foot__formats span { font-size: 10px; padding: 3px 8px; }\n\n    \/* Responsive: stack on tablet\/mobile *\/\n    @media (max-width: 1024px) {\n      .hiw-timeline::before { display: none; }\n      .hiw-row { grid-template-columns: 1fr; gap: var(--space-md); margin-bottom: var(--space-3xl); }\n      .hiw-row__text, .hiw-row__visual { padding: 0; }\n      .hiw-row__center { display: none; }\n      .hiw-row__visual .dashboard-kpis { grid-template-columns: repeat(5, 1fr); }\n      .hiw-row__visual .dashboard-mid { grid-template-columns: 1fr 1fr; }\n      .hiw-row__visual .receipt-stages { grid-template-columns: repeat(3, 1fr); }\n      .hiw-row__visual .infographic-flow__steps { grid-template-columns: repeat(4, 1fr); }\n    }\n    @media (max-width: 700px) {\n      .hiw-row__visual .dashboard-kpis { grid-template-columns: repeat(2, 1fr); }\n      .hiw-row__visual .dashboard-mid { grid-template-columns: 1fr; }\n      .hiw-row__visual .receipt-stages { grid-template-columns: 1fr; }\n      .hiw-row__visual .infographic-flow__steps { grid-template-columns: repeat(2, 1fr); }\n    }\n\n    \/* \"From receipt to refund\" \u2014 4-step horizontal flow (Settlement Model) *\/\n    .receipt-to-refund-grid { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding); display: grid; grid-template-columns: 1fr 24px 1fr 24px 1fr 24px 1fr; gap: var(--space-md); align-items: stretch; }\n    .r2r-step { background: var(--color-gray); border-radius: var(--radius-lg); padding: var(--space-lg) var(--space-xl); display: flex; flex-direction: column; gap: 8px; }\n    .r2r-step__num { font-size: 11px; font-weight: 700; letter-spacing: .14em; color: transparent; background: var(--gradient-brand); -webkit-background-clip: text; background-clip: text; }\n    .r2r-step__title { font-size: 16px; font-weight: 600; line-height: 1.3; margin: 0; color: var(--color-black); }\n    .r2r-step__desc { font-size: 13px; line-height: 1.5; color: var(--color-dark-gray); margin: 0; }\n    .r2r-arrow { display: flex; align-items: center; justify-content: center; }\n    .r2r-arrow svg { width: 24px; height: 24px; }\n    @media (max-width: 1100px) {\n      .receipt-to-refund-grid { grid-template-columns: 1fr 1fr; gap: var(--space-md); }\n      .r2r-arrow { display: none; }\n    }\n    @media (max-width: 600px) {\n      .receipt-to-refund-grid { grid-template-columns: 1fr; }\n    }\n\n    \/* Settlement report \u2014 output fields *\/\n    .output-fields { display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-md); }\n    .output-field { background: var(--color-gray); border-radius: var(--radius-md); padding: var(--space-lg); }\n    .output-field__name { font-size: 14px; font-weight: 700; color: var(--color-black); margin-bottom: 4px; }\n    .output-field__desc { font-size: 12px; line-height: 1.5; color: var(--color-dark-gray); }\n    @media (max-width: 1100px) { .output-fields { grid-template-columns: repeat(3, 1fr); } }\n    @media (max-width: 700px) { .output-fields { grid-template-columns: repeat(2, 1fr); } }\n    @media (max-width: 480px) { .output-fields { grid-template-columns: 1fr; } }\n\n    \/* Get Started \u2014 final CTA section *\/\n    .section-get-started { background: var(--color-dark-black); padding: var(--space-4xl) var(--page-padding); }\n    .get-started-card { max-width: var(--max-width); margin: 0 auto; background: linear-gradient(135deg, rgba(241,107,94,.08) 0%, rgba(213,41,224,.08) 50%, rgba(63,91,235,.08) 100%); border-radius: var(--radius-xl); padding: var(--space-4xl) var(--space-3xl); position: relative; overflow: hidden; }\n    .get-started-card::before { content: ''; position: absolute; top: -200px; right: -200px; width: 500px; height: 500px; background: radial-gradient(circle, rgba(241,107,94,.18), transparent 70%); pointer-events: none; }\n    .get-started-card::after { content: ''; position: absolute; bottom: -200px; left: -200px; width: 500px; height: 500px; background: radial-gradient(circle, rgba(63,91,235,.18), transparent 70%); pointer-events: none; }\n    .get-started-card__inner { max-width: 800px; margin: 0 auto; text-align: center; position: relative; z-index: 1; }\n    .get-started-card__title { font-size: clamp(32px, 4.2vw, 48px); font-weight: 600; line-height: 1.15; color: var(--color-white); margin: 0 0 var(--space-lg); }\n    .get-started-card__desc { font-size: 17px; line-height: 1.6; color: var(--color-light-gray); margin: 0 0 var(--space-2xl); }\n    .get-started-card__cta { display: flex; justify-content: center; gap: var(--space-md); flex-wrap: wrap; }\n    @media (max-width: 700px) { .get-started-card { padding: var(--space-3xl) var(--space-xl); } }\n\n\/* WP breakout overrides *\/\n.entry-content > .wp-block-group.alignfull {\n  width: 100vw !important;\n  max-width: 100vw !important;\n  margin-left: calc(50% - 50vw) !important;\n  margin-right: calc(50% - 50vw) !important;\n  margin-top: -100px !important;\n  padding: 0 !important;\n}\n.entry-content.wp-block-post-content { padding-left: 0 !important; padding-right: 0 !important; }\nheader.wp-block-template-part { position: relative !important; z-index: 100 !important; }\n.hero-subpage { padding-top: 100px !important; }\n\n\/* ==== KONIEC bazy DS \u2014 nizej overlay AP ==== *\/\n\/* ==== warstwa AP z LP SRE ==== *\/\n\n.ap-scope{--ap-text:#1B1B1B;--ap-body:#3A3A3A;--ap-muted:#676767;--ap-muted2:#8A8A90;--ap-line:#ECECF1;--ap-card:#F5F5F7;--ap-white:#FFFFFF;--ap-magenta:#C2298C;--ap-grad:linear-gradient(135deg,#F16B5E 0%,#D529E0 52%,#3F5BEB 100%);--ap-tint:linear-gradient(135deg,rgba(241,107,94,.09) 0%,rgba(213,41,224,.09) 52%,rgba(63,91,235,.10) 100%);font-family:\"PP Mori\",Arial,sans-serif;color:var(--ap-body);-webkit-font-smoothing:antialiased;line-height:1.5}\n.ap-scope *{box-sizing:border-box}\n.ap-grad-text{background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}\n.ap-cycle{width:100%;max-width:760px;margin:0 auto}\n.ap-cycle__cap{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 24px}\n.ap-cycle__cap svg{width:13px;height:13px;fill:none;stroke:var(--ap-muted2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}\n.ap-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);align-items:start}\n.ap-track::before{content:\"\";position:absolute;top:23px;left:12.5%;right:12.5%;height:1px;background:var(--ap-line);z-index:0}\n.ap-node{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}\n.ap-node__circle{position:relative;z-index:1;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ap-white);border:1px solid var(--ap-line)}\n.ap-node__circle svg{width:21px;height:21px;color:var(--ap-muted2)}\n.ap-node__label{font-size:14px;font-weight:500;letter-spacing:-.1px;color:var(--ap-muted2)}\n.ap-node.is-active .ap-node__circle{background:var(--ap-grad);border-color:transparent;box-shadow:0 10px 26px -8px rgba(213,41,224,.5),0 2px 8px -2px rgba(63,91,235,.32)}\n.ap-node.is-active .ap-node__circle svg{color:var(--ap-white)}\n.ap-node.is-active .ap-node__label{color:var(--ap-text);font-weight:600}\n.ap-cycle__mobile{display:none}\n.ap-mobile__phase{text-align:center;font-size:15px;font-weight:600;letter-spacing:-.2px;color:var(--ap-text);margin:0 0 14px}\n.ap-dots{display:flex;align-items:center;justify-content:center;gap:9px}\n.ap-dot{width:8px;height:8px;border-radius:999px;background:var(--ap-line)}\n.ap-dot.is-active{width:26px;background:var(--ap-grad)}\n.ap-band{padding:76px 0}\n.ap-band--grey{background:var(--ap-card)}\n.ap-band__inner{max-width:1120px;margin:0 auto;padding:0 40px}\n.ap-intro{max-width:760px;margin:44px auto 0;text-align:center}\n.ap-intro__h{font-size:40px;font-weight:600;letter-spacing:-.9px;line-height:1.1;margin:0 0 18px;color:var(--ap-text)}\n.ap-intro__lede{font-size:18px;color:var(--ap-muted);margin:0 auto;max-width:620px}\n.ap-block{max-width:940px;margin:0 auto}\n.ap-block__grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}\n.ap-block__grid--split{grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);gap:56px;align-items:center}\n.ap-block__grid--rev{grid-template-columns:minmax(0,.85fr) minmax(0,1.05fr)}\n.ap-block__head{display:flex;align-items:flex-start;gap:18px;margin-bottom:22px}\n.ap-tile{width:56px;height:56px;border-radius:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--ap-tint);border:1px solid rgba(194,41,140,.14)}\n.ap-tile svg{width:26px;height:26px;color:var(--ap-magenta)}\n.ap-block__headtext{padding-top:3px}\n.ap-block__label{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--ap-muted);margin:0 0 8px}\n.ap-genius{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--ap-white);background:var(--ap-grad);border-radius:999px;padding:3px 9px 2px;line-height:1}\n.ap-block__h{font-size:25px;font-weight:600;letter-spacing:-.4px;line-height:1.22;margin:0;color:var(--ap-text)}\n.ap-block__foundation{font-size:18px;line-height:1.62;color:var(--ap-body);margin:0}\n.ap-diff{position:relative;margin:26px 0 30px;border-radius:16px;overflow:hidden;background:var(--ap-tint);padding:22px 26px 24px 30px}\n.ap-diff::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ap-grad)}\n.ap-diff__eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 9px}\n.ap-diff__text{font-size:16.5px;line-height:1.6;color:var(--ap-text);margin:0}\n.ap-support{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 40px;margin-top:4px}\n.ap-support--one{grid-template-columns:1fr}\n.ap-point{display:flex;align-items:flex-start;gap:12px}\n.ap-point__check{width:19px;height:19px;flex-shrink:0;margin-top:2px;color:var(--ap-magenta)}\n.ap-point__check svg{width:100%;height:100%}\n.ap-point__text{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n.ap-point__text b{color:var(--ap-text);font-weight:600}\n.ap-mock{border:1px solid var(--ap-line);border-radius:18px;background:var(--ap-white);padding:20px 20px 22px;box-shadow:0 24px 60px -34px rgba(27,27,27,.28)}\n.ap-mock__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}\n.ap-mock__title{font-size:13px;font-weight:600;letter-spacing:-.1px;color:var(--ap-text)}\n.ap-mock__live{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--ap-muted2)}\n.ap-mock__live i{width:7px;height:7px;border-radius:50%;background:var(--ap-grad);display:inline-block}\n.ap-mrow{display:flex;align-items:center;gap:13px;padding:12px 4px;border-top:1px solid var(--ap-line)}\n.ap-mrow:first-of-type{border-top:none}\n.ap-mrow__rank{width:22px;height:22px;border-radius:7px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--ap-muted);background:var(--ap-card)}\n.ap-mrow--top .ap-mrow__rank{background:var(--ap-grad);color:var(--ap-white)}\n.ap-mrow__meta{min-width:0;flex:1}\n.ap-mrow__store{display:block;font-size:13px;font-weight:600;color:var(--ap-text);line-height:1.25}\n.ap-mrow__reason{display:block;font-size:11.5px;color:var(--ap-muted2);margin-top:2px}\n.ap-mrow__bar{width:52px;height:5px;border-radius:999px;background:var(--ap-card);overflow:hidden;flex-shrink:0}\n.ap-mrow__bar i{display:block;height:100%;background:var(--ap-grad);border-radius:999px}\n.ap-decor{position:relative;display:flex;align-items:center;justify-content:center;min-height:200px}\n.ap-decor svg{width:180px;height:180px;color:var(--ap-magenta);opacity:.16}\n.ap-decor__ring{position:absolute;width:230px;height:230px;border-radius:50%;background:var(--ap-tint);z-index:-1}\n@media(max-width:860px){.ap-block__grid--split,.ap-block__grid--rev{grid-template-columns:1fr;gap:34px}.ap-block__grid--rev .ap-block__vis{order:2}.ap-decor{order:-1;min-height:0}.ap-decor svg{width:120px;height:120px}.ap-decor__ring{width:150px;height:150px}}\n@media(max-width:720px){.ap-band{padding:56px 0}.ap-band__inner{padding:0 22px}.ap-intro__h{font-size:30px}.ap-intro__lede{font-size:16px}.ap-block__h{font-size:22px}.ap-block__foundation{font-size:16.5px}.ap-support{grid-template-columns:1fr;gap:16px}}\n@media(max-width:620px){.ap-track{display:none}.ap-cycle__mobile{display:block}}\n\/* placeholder visual slot (real product screenshots swap in later) *\/\n.ap-shot{position:relative;border:1px solid var(--ap-line);border-radius:18px;background:var(--ap-white);box-shadow:0 24px 60px -34px rgba(27,27,27,.28);overflow:hidden}\n.ap-shot__bar{display:flex;align-items:center;gap:6px;padding:13px 16px;border-bottom:1px solid var(--ap-line)}\n.ap-shot__bar i{width:9px;height:9px;border-radius:50%;background:var(--ap-line)}\n.ap-shot__body{aspect-ratio:4\/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:var(--ap-tint);text-align:center;padding:30px}\n.ap-shot__ico{width:46px;height:46px;color:var(--ap-magenta);opacity:.55}\n.ap-shot__ico svg{width:100%;height:100%}\n.ap-shot__label{font-size:13px;font-weight:600;letter-spacing:.1px;color:var(--ap-muted)}\n.ap-shot__note{font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--ap-muted2)}\n.ap-more{display:inline-flex;align-items:center;gap:7px;margin-top:24px;font-size:15px;font-weight:600;color:var(--ap-magenta);text-decoration:none;transition:gap .18s ease}\n.ap-more:hover{gap:11px}\n.ap-more svg{width:15px;height:15px}\n.ap-usecase{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--ap-muted);background:var(--ap-card);border:1px solid var(--ap-line);border-radius:999px;padding:3px 9px 2px;line-height:1}\n.ap-sp-note{background:var(--ap-card);padding:34px 0}\n.ap-sp-note__inner{max-width:820px;margin:0 auto;padding:0 40px;text-align:center;font-size:17px;line-height:1.6;color:var(--ap-muted)}\n@media(max-width:720px){.ap-sp-note__inner{padding:0 22px;font-size:15.5px}}\n\n.ap-head-c{text-align:center;max-width:760px;margin:0 auto}\n.ap-eyebrow{display:inline-block;font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 16px}\n.ap-head-c .ap-intro__h{margin:0 0 16px}\n.ap-head-c .ap-intro__lede{margin:0 auto}\n\/* Commercial *\/\n.ap-mini{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:940px;margin:30px auto 0}\n.ap-mini--one{grid-template-columns:1fr;max-width:560px}\n.ap-mini__card{border:1px solid var(--ap-line);border-radius:16px;background:var(--ap-white);padding:24px 26px}\n.ap-mini__head{display:flex;align-items:center;gap:12px;margin-bottom:12px}\n.ap-mini__ico{width:42px;height:42px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--ap-tint);border:1px solid rgba(194,41,140,.14)}\n.ap-mini__ico svg{width:21px;height:21px;color:var(--ap-magenta)}\n.ap-mini__h{font-size:17px;font-weight:600;color:var(--ap-text);margin:0}\n.ap-mini__p{font-size:15px;line-height:1.58;color:var(--ap-muted);margin:0}\n.ap-mini__p b{color:var(--ap-text);font-weight:600}\n@media(max-width:720px){.ap-mini{grid-template-columns:1fr}}\n\/* Proof *\/\n.ap-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1020px;margin:44px auto 0}\n.ap-stat{text-align:center;padding:26px 14px;border:1px solid var(--ap-line);border-radius:16px;background:var(--ap-white)}\n.ap-stat__v{font-size:30px;font-weight:600;letter-spacing:-1px;line-height:1;margin:0 0 8px;color:var(--ap-text)}\n.ap-stat__l{font-size:12.5px;line-height:1.4;color:var(--ap-muted);margin:0}\n.ap-proofnote{max-width:720px;margin:26px auto 0;text-align:center;font-size:14px;line-height:1.55;color:var(--ap-muted)}\n.ap-trust{max-width:840px;margin:40px auto 0;text-align:center}\n.ap-trust__cap{font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ap-muted2);margin:0 0 16px}\n.ap-trust__names{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;font-size:17px;font-weight:600;color:var(--ap-text)}\n@media(max-width:860px){.ap-stats{grid-template-columns:repeat(2,1fr)}}\n@media(max-width:440px){.ap-stats{grid-template-columns:1fr}}\n\/* Ecosystem *\/\n\/* IT-facing *\/\n\/* CTA dark *\/\n.ap-cta{position:relative;overflow:hidden;background:#111114;padding:90px 0}\n.ap-cta__glow{position:absolute;inset:0;background:radial-gradient(58% 120% at 50% 0%,rgba(213,41,224,.30),transparent 62%);z-index:0}\n.ap-cta__inner{max-width:820px;margin:0 auto;padding:0 40px;text-align:center;position:relative;z-index:1}\n.ap-cta__h{font-size:40px;font-weight:600;letter-spacing:-1px;line-height:1.12;color:#fff;margin:0 0 18px}\n.ap-cta__p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.72);margin:0 auto 32px;max-width:620px}\n.ap-cta__btn{display:inline-flex;align-items:center;gap:9px;padding:15px 30px;border-radius:999px;font-size:16px;font-weight:600;color:#111114;background:#fff;text-decoration:none;transition:gap .18s ease}\n.ap-cta__btn:hover{gap:13px}\n.ap-cta__btn svg{width:17px;height:17px}\n@media(max-width:720px){.ap-cta{padding:66px 0}.ap-cta__h{font-size:30px}.ap-cta__inner{padding:0 22px}}\n\n\/* ==== sekcje 2-4 nowej LP RIR (CHG-475) ==== *\/\n\n.ps-h2{font-size:clamp(28px,3.1vw,40px);line-height:1.18;font-weight:650;margin:0 0 18px;color:var(--ap-text)}\n.ps-lede{font-size:18px;line-height:1.6;color:var(--ap-muted);max-width:44rem;margin:0 0 28px}\n\n@media(max-width:900px){}\n\n\/* ============================================================\n   AP DESIGN LAYER \u2014 nadrz\u0119dne nadpisania nad Asseco DS.\n   NIE edytuj DS styles.css. Ten plik wgrywany INLINE PO DS CSS.\n   Namespace: .ap-*  (additywne, obok klas DS).\n   ============================================================ *\/\n\n\/* --- AP Hero (na bazie DS .hero-subpage \/ 45-hero-video-drs) --- *\/\n\/* content-driven wysoko\u015b\u0107 zamiast wymuszonego min-height:100vh *\/\n.ap-hero{min-height:0 !important;height:auto !important}\n.ap-hero .hero-subpage__content{padding-top:clamp(48px,5.5vw,84px);padding-bottom:var(--space-xl)}\n@media(max-width:768px){.ap-hero .hero-subpage__content{padding-top:72px;padding-bottom:var(--space-lg)}}\n\n\/* rotator realnych klip\u00f3w wideo w tle hero (homepage-style crossfade) *\/\n.ap-hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}\n.ap-hero-vid.is-active{opacity:1}\n\n\/* ==== W-147 \/ CHG-517: warstwa wlasna LP planogram compliance ==== *\/\n.ps-quote{margin:34px 0 0;padding:36px 40px 32px;border-radius:18px;background:#fff;border:1px solid var(--ap-line);box-shadow:0 16px 44px rgba(20,20,30,.08);position:relative;overflow:hidden}\n.ps-quote::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#ff5a5f 0%,#d946ef 48%,#7B61FF 100%)}\n.ps-quote blockquote{margin:0 0 22px;padding:0;border:none;font-size:21px;line-height:1.5;color:var(--ap-text);font-weight:500;letter-spacing:-.1px}\n.ps-quote figcaption{font-size:15px;color:var(--ap-muted);line-height:1.5}\n.ps-quote figcaption strong{color:var(--ap-text)}\n.ps-faq{margin-top:26px;border-top:1px solid var(--ap-line)}\n.ps-faq details{border-bottom:1px solid var(--ap-line)}\n.ps-faq summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-size:17.5px;font-weight:650;color:var(--ap-text);position:relative}\n.ps-faq summary::-webkit-details-marker{display:none}\n.ps-faq summary::after{content:\"+\";position:absolute;right:6px;top:19px;font-size:24px;font-weight:400;color:#7B61FF;line-height:1}\n.ps-faq details[open] summary::after{content:\"\u2212\"}\n.ps-faq p{margin:0 0 22px;font-size:16px;line-height:1.62;color:var(--ap-muted);max-width:46rem}\n\/* trzy kadry na jednym zdjeciu polki, sekcja What gets measured *\/\n.ps-zoom{position:absolute;inset:0;overflow:hidden;background:#0d0f12}\n.ps-zoom__in{position:absolute;inset:0;transform:scale(var(--z));transform-origin:var(--ox) var(--oy)}\n.ps-zoom__in img{width:100%;height:100%;object-fit:cover;display:block}\n.ps-box{position:absolute;border:2px solid var(--c,#2fbf6a);border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.35)}\n.ps-box--red{--c:#ff3b30;background:rgba(255,59,48,.18)}\n.ps-box--green{--c:#2fbf6a}\n.ps-box--amber{--c:#ffb020;background:rgba(255,176,32,.14)}\n.ps-tag{position:absolute;transform:translate(-50%,-100%);background:#ff3b30;color:#fff;font-size:9px;font-weight:700;\n  letter-spacing:.4px;text-transform:uppercase;padding:3px 7px;border-radius:3px;white-space:nowrap;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}\n.ps-tag--green{background:#2fbf6a}\n.ps-read{position:absolute;left:50%;transform:translateX(-50%);bottom:11px;display:flex;gap:7px;align-items:center;\n  background:rgba(13,15,18,.9);color:#fff;padding:8px 13px;border-radius:8px;font-size:12px;line-height:1.25;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;white-space:nowrap}\n.ps-read b{font-size:15px;font-weight:700}\n.ps-read s{opacity:.6}\n.ps-read i{font-style:normal;color:#ff6b62;font-weight:700}\n.ps-legend{position:absolute;left:11px;bottom:11px;display:flex;gap:12px;font-size:10px;color:#fff;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}\n.ps-legend span{display:flex;align-items:center;gap:5px}\n.ps-legend i{width:9px;height:9px;border-radius:2px;display:block;border:2px solid #2fbf6a}\n.ps-legend i.r{border-color:#ff3b30;background:rgba(255,59,48,.25)}\n.ps-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}\n.ps-kpi__i{border-top:2px solid var(--ap-line);padding-top:18px}\n.ps-kpi__i h3{font-size:17px;font-weight:650;margin:0 0 9px;color:var(--ap-text)}\n.ps-kpi__i p{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n.ps-steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:34px}\n.ps-step3__media{position:relative;aspect-ratio:3\/4;border-radius:14px;overflow:hidden;background:#eceff1;border:1px solid var(--ap-line)}\n.ps-step3__media img{width:100%;height:100%;object-fit:cover;display:block}\n.ps-step3__n{display:block;font-size:11px;font-weight:700;letter-spacing:1.4px;color:#7B61FF;margin:0 0 10px}\n.ps-step3 h3{font-size:17px;font-weight:650;margin:0 0 8px;color:var(--ap-text);line-height:1.3}\n.ps-step3 p{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n.ps-step3{display:flex;flex-direction:column}\n.ps-step3__txt{flex:1 1 auto;margin-top:16px;background:#fff;border:1px solid var(--ap-line);border-radius:14px;padding:24px 26px 26px;box-shadow:0 14px 40px rgba(20,20,30,.07)}\n@media(max-width:900px){.ps-steps3{grid-template-columns:1fr;gap:26px}}\n\n\/* makieta ekranu aplikacji, standard smartow (wzorzec: KC Reports Mobile) *\/\n.ps-ui{position:absolute;inset:0;overflow:hidden;container-type:inline-size;\n  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;\n  background:#eef1f4;display:flex;flex-direction:column;\n  box-shadow:inset 0 0 0 1.6cqw #0e1116, inset 0 0 0 2.4cqw #2a2f38}\n.ps-ui *{box-sizing:border-box}\n.ps-ui__status{flex:0 0 auto;height:6.4cqw;display:flex;align-items:center;justify-content:space-between;\n  padding:0 5.6cqw;font-size:3.1cqw;font-weight:600;color:#0b0b0c;background:#fff;margin:2.4cqw 2.4cqw 0;border-radius:3.4cqw 3.4cqw 0 0}\n.ps-ui__status svg{height:2.9cqw;width:auto;display:block}\n.ps-ui__stat-r{display:flex;align-items:center;gap:1.5cqw}\n.ps-ui__bar{flex:0 0 auto;background:linear-gradient(180deg,#1b3a63 0%,#16294a 100%);color:#fff;\n  padding:4.2cqw 5.6cqw 6.4cqw;margin:0 2.4cqw;display:flex;align-items:flex-start;justify-content:space-between;gap:3cqw}\n.ps-ui__ttl{min-width:0}\n.ps-ui__ttl b{display:block;font-size:4.7cqw;font-weight:650;line-height:1.2;letter-spacing:.1px}\n.ps-ui__ttl span{display:block;margin-top:1.1cqw;font-size:3.2cqw;font-weight:400;opacity:.86;line-height:1.25}\n.ps-ui__bar svg{width:4.3cqw;height:4.3cqw;flex:0 0 auto;opacity:.92}\n.ps-ui__icons{display:flex;gap:3.2cqw;align-items:center;padding-top:.8cqw}\n.ps-ui__sheet{flex:1 1 auto;min-height:0;margin:-3.4cqw 4.4cqw 0;background:#fff;border-radius:3cqw;\n  box-shadow:0 .6cqw 3.4cqw rgba(10,20,40,.14);overflow:hidden;position:relative;z-index:3}\n.ps-ui__filters{display:flex;gap:1.8cqw;padding:3.4cqw 3.6cqw 2.6cqw}\n.ps-ui__pill{font-size:2.9cqw;font-weight:600;padding:1.5cqw 3.4cqw;border-radius:99px;background:#eef1f4;color:#4a5260}\n.ps-ui__pill--on{background:#16294a;color:#fff}\n.ps-ui__card{padding:3.2cqw 3.6cqw;display:flex;align-items:center;justify-content:space-between;gap:3cqw;border-top:1px solid #edf0f3}\n.ps-ui__todo{font-size:2.8cqw;color:#7a8493;letter-spacing:.3px;text-transform:uppercase;font-weight:600}\n.ps-ui__name{font-size:4cqw;font-weight:700;color:#16294a;margin:1cqw 0 1.1cqw;line-height:1.18}\n.ps-ui__due{font-size:2.9cqw;color:#6b7482}\n.ps-ui__due b{color:#111;font-weight:700}\n.ps-ui__btn{margin-top:2.6cqw;display:inline-block;background:#1668c8;color:#fff;font-size:3.1cqw;font-weight:650;padding:2cqw 5cqw;border-radius:99px}\n.ps-ui__thumb{flex:0 0 auto}\n.ps-ui__thumb svg{width:13cqw;height:13cqw;display:block}\n.ps-ui__hbar{position:absolute;bottom:2.6cqw;left:50%;transform:translateX(-50%);width:26cqw;height:1cqw;border-radius:99px;background:#0d0d0d;opacity:.55;z-index:8}\n.ps-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);gap:44px;align-items:start}.ps-split .ps-fig{margin:0;display:flex;flex-direction:column;align-items:flex-end}.ps-split .ps-fig img{max-height:880px;width:auto;max-width:100%}.ps-split .ps-fig figcaption{text-align:left;width:100%}@media(max-width:1000px){.ps-split .ps-fig{align-items:stretch}.ps-split .ps-fig img{max-height:none;width:100%}}.ps-split .ps-lede{max-width:none}@media(max-width:1000px){.ps-split{grid-template-columns:1fr;gap:32px}}.ps-fig{margin:38px 0 0;padding:0}.ps-fig img{display:block;width:100%;height:auto;border-radius:16px}.ps-fig figcaption{margin-top:14px;font-size:14px;line-height:1.5;color:var(--ap-muted)}\n@media(max-width:900px){.ps-kpi{grid-template-columns:1fr}}\n\/* makieta raportowania per poziom analityczny, wzorzec: LP TDH sekcja One View (.ap-bi) *\/\n.ps-bi{--r:#d70e44;--o:#ef5909;--g:#1aa15a;--b:#1668c8;--mut:#6b7280;--ln:#e6e8ee;\n  margin-top:34px;border:1px solid var(--ln);border-radius:16px;overflow:hidden;background:#fff;\n  box-shadow:0 14px 40px rgba(20,20,30,.07);position:relative}\n.ps-bi *{box-sizing:border-box}\n.ps-bi__top{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fafafb;border-bottom:1px solid var(--ln)}\n.ps-bi__dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}\n.ps-bi__title{font-weight:600;font-size:13px;color:#232323;margin-right:auto}\n.ps-bi input{position:absolute;opacity:0;pointer-events:none}\n.ps-bi__tabs{display:flex;gap:4px;padding:10px 12px 0;overflow-x:auto;background:#fafafb}\n.ps-bi__tabs label{flex:0 0 auto;font-size:13px;font-weight:600;color:var(--mut);padding:9px 14px;border-radius:9px 9px 0 0;cursor:pointer;white-space:nowrap;border:1px solid transparent;border-bottom:none}\n.ps-bi__tabs label:hover{color:#232323}\n.ps-bi__panel{display:none;padding:18px}\n.ps-bi__cap{font-size:13px;color:var(--mut);margin:0 0 14px;line-height:1.5}\n.ps-bi__kpis{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}\n.ps-bi__kpi{flex:1 1 0;min-width:118px;border:1px solid var(--ln);border-radius:11px;padding:12px 14px;background:#fff}\n.ps-bi__kpi b{display:block;font-size:24px;font-weight:700;line-height:1.15;color:#232323;font-variant-numeric:tabular-nums}\n.ps-bi__kpi span{font-size:11.5px;color:var(--mut)}\n.ps-bi__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}\n.ps-bi__grid--wide{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,0.55fr);gap:16px;align-items:stretch}\n.ps-bi__card{border:1px solid var(--ln);border-radius:11px;padding:14px}\n.ps-bi__h{font-size:12px;font-weight:700;color:#232323;margin:0 0 12px}\n.ps-bi__row{display:flex;align-items:center;gap:10px;margin:9px 0;font-size:12px}\n.ps-bi__row .lab{flex:0 0 96px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.ps-bi__track{flex:1;height:9px;border-radius:6px;background:var(--ln);overflow:hidden}\n.ps-bi__fill{display:block;height:100%;border-radius:6px}\n.ps-bi__val{flex:0 0 auto;font-weight:700;color:#232323;font-variant-numeric:tabular-nums}\n.ps-bi table{width:100%;border-collapse:collapse;font-size:12px;margin:0}\n.ps-bi th{text-align:left;color:var(--mut);font-weight:600;padding:7px 8px;border-bottom:1px solid var(--ln);font-size:11px}\n.ps-bi td{padding:7px 8px;border-bottom:1px solid #f3f3f5;color:#232323}\n.ps-bi tbody tr:last-child td{border-bottom:none}\n.ps-bi td.n,.ps-bi th.n{text-align:right;font-variant-numeric:tabular-nums}\n.ps-bi__pill{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px}\n.ps-bi__lg{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:11px;color:var(--mut)}\n.ps-bi__lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}\n.ps-bi__fix{display:flex;gap:10px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #f3f3f5}\n.ps-bi__fix:last-child{border-bottom:none}\n.ps-bi__fix b{display:block;color:#232323;font-size:12.5px;font-weight:700;margin-bottom:2px}\n.ps-bi__fix span span{display:block;color:var(--mut);font-size:12px;line-height:1.45}\n.ps-bi__ix{flex:0 0 22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}\n.ps-bi__ph{display:grid;grid-template-columns:300px minmax(0,33rem);gap:34px;align-items:center}\n.ps-bi__phbox{position:relative;width:300px;max-width:100%;aspect-ratio:9\/16;border-radius:26px;overflow:hidden}\n.ps-bi__notes p{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--mut)}\n.ps-bi__notes p:last-child{margin-bottom:0}\n.ps-bi__notes b{color:#232323;font-weight:700}\n@media(max-width:820px){.ps-bi__grid,.ps-bi__grid--wide{grid-template-columns:1fr}.ps-bi__ph{grid-template-columns:1fr;gap:24px;justify-items:center}.ps-bi__notes{max-width:34rem}}\n@media(max-width:560px){.ps-bi__top{flex-wrap:wrap;row-gap:8px}.ps-bi__title{flex:1 1 auto}}\n\/* ekran KPI wlasciciela sklepu, na tej samej makiecie urzadzenia co krok 01 *\/\n.ps-ui__kwrap{padding:3.8cqw 4.4cqw 1.4cqw}\n.ps-ui__krow{padding:2.9cqw 0;border-bottom:1px solid #edf0f3}\n.ps-ui__krow:last-child{border-bottom:none}\n.ps-ui__kmain{display:flex;align-items:baseline;justify-content:space-between;gap:2cqw}\n.ps-ui__klab{font-size:3.4cqw;font-weight:650;color:#16294a}\n.ps-ui__kval{font-size:5.6cqw;font-weight:750;line-height:1;font-variant-numeric:tabular-nums}\n.ps-ui__meter{height:1.5cqw;border-radius:99px;background:#eef1f4;overflow:hidden;margin-top:1.7cqw}\n.ps-ui__meter i{display:block;height:100%;border-radius:99px}\n.ps-ui__ksub{display:block;margin-top:1.5cqw;font-size:2.8cqw;color:#7a8493;line-height:1.3}\n.ps-ui__todoline{display:flex;align-items:center;justify-content:space-between;gap:2cqw;padding:3.2cqw 4.4cqw 3cqw;font-size:3cqw;color:#4a5260;border-top:1px solid #edf0f3}\n.ps-ui__slist{padding:0 4.4cqw 4cqw}\n.ps-ui__srow{display:flex;align-items:center;justify-content:space-between;gap:2cqw;padding:2.7cqw 0;border-bottom:1px solid #f2f4f7;font-size:3cqw;color:#16294a;font-weight:600}\n.ps-ui__srow:last-child{border-bottom:none}\n.ps-ui__spill{font-style:normal;font-size:2.7cqw;font-weight:700;padding:.9cqw 2.6cqw;border-radius:99px;flex:0 0 auto}\n.ps-ui__todoline .ps-ui__btn{margin-top:0}\n\/* kroki 02 i 03: ekran wyniku rozpoznania, wzorzec z aplikacji wdrozeniowej *\/\n.ps-ui__nav{flex:0 0 auto;background:linear-gradient(180deg,#1b3a63 0%,#16294a 100%);color:#fff;margin:0 2.4cqw;padding:2.8cqw 4.2cqw;display:flex;align-items:center;gap:3cqw}\n.ps-ui__back{font-size:5.6cqw;line-height:.8;opacity:.9;flex:0 0 auto}\n.ps-ui__navt{flex:1;min-width:0;font-size:3.5cqw;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.ps-ui__nav svg{width:4.4cqw;height:4.4cqw;flex:0 0 auto;opacity:.92}\n.ps-ui__grad{flex:0 0 auto;height:1cqw;margin:0 2.4cqw;background:linear-gradient(90deg,#1aa15a 0%,#1676c3 34%,#a046e1 67%,#ef5909 100%)}\n.ps-ui__segs{flex:0 0 auto;display:flex;background:#fff;margin:0 2.4cqw}\n.ps-ui__seg{flex:1;text-align:center;padding:2.6cqw 0 2.2cqw;font-size:3cqw;font-weight:650;color:#8a929d;letter-spacing:.2px;text-transform:uppercase}\n.ps-ui__seg--on{color:#16294a;box-shadow:inset 0 -.7cqw 0 #16294a}\n.ps-ui__srch{flex:0 0 auto;display:flex;align-items:center;gap:3cqw;background:#fff;margin:0 2.4cqw;padding:2cqw 4.2cqw 2.4cqw;border-top:1px solid #eef1f4}\n.ps-ui__inp{flex:1;min-width:0;height:6.8cqw;border-radius:1.8cqw;background:#f1f3f6;display:flex;align-items:center;gap:2cqw;padding:0 3cqw;font-size:3cqw;color:#9aa3ae}\n.ps-ui__inp svg{width:4.2cqw;height:4.2cqw;flex:0 0 auto;color:#9aa3ae}\n.ps-ui__srch > svg{width:4.8cqw;height:4.8cqw;color:#4a5260;flex:0 0 auto}\n.ps-ui__shot{flex:1 1 auto;min-height:0;background:#000;margin:0 2.4cqw 2.4cqw;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}\n.ps-ui__frame{position:relative;height:100%;aspect-ratio:676\/1034;max-width:100%}\n.ps-ui__frame img{width:100%;height:100%;object-fit:cover;display:block}\n.ps-ui__bx{position:absolute;border:.4cqw solid #35d07f;border-radius:.4cqw}\n.ps-ui__bx--r{border-color:#ff3b30;background:rgba(255,59,48,.18)}\n.ps-ui__bx--hi{border-width:.8cqw;box-shadow:0 0 0 .4cqw rgba(255,59,48,.35)}\n.ps-ui__hbar--l{background:#fff;opacity:.75}\n.ps-ui__dim{position:absolute;inset:0;background:rgba(6,8,12,.66)}\n.ps-ui__pop{position:absolute;left:3.4cqw;right:3.4cqw;top:41%;background:#fff;border-radius:3cqw;overflow:hidden;box-shadow:0 1.6cqw 5cqw rgba(0,0,0,.5)}\n.ps-ui__pop-h{display:flex;align-items:center;gap:2.6cqw;padding:2.4cqw 3.4cqw 1.9cqw}\n.ps-ui__pop-th{flex:0 0 6.4cqw}\n.ps-ui__pop-th svg{width:6.4cqw;height:8.8cqw;display:block}\n.ps-ui__pop-n{flex:1;min-width:0;font-size:2.9cqw;font-weight:700;color:#16294a;line-height:1.3;text-transform:uppercase}\n.ps-ui__pop-i{flex:0 0 auto}\n.ps-ui__pop-i svg{width:5.2cqw;height:5.2cqw;display:block}\n.ps-ui__pop-w{background:#fdf3e0;color:#8a5a00;font-size:2.9cqw;font-weight:700;text-align:center;padding:2.2cqw}\n.ps-ui__pop-r{display:flex;gap:2.4cqw;padding:2.2cqw 3.4cqw}\n.ps-ui__pop-r svg{width:4.4cqw;height:4.4cqw;flex:0 0 auto}\n.ps-ui__pop-b{font-size:2.85cqw;font-weight:700;color:#16294a;line-height:1.4}\n.ps-ui__pop-s{display:block;font-weight:400;color:#7a8493;margin-top:.7cqw}\n.ps-ui__pop-s b{color:#16294a;font-weight:650}\n.ps-ui__pop-f{display:flex;align-items:center;gap:2.4cqw;padding:2.2cqw 3.4cqw;border-top:1px solid #eef1f4;font-size:2.9cqw;font-weight:700;color:#16294a}\n.ps-ui__pop-f svg{width:4.6cqw;height:4.6cqw;flex:0 0 auto}\n\/* sekcja 6: ta sama chrome co raportowanie w sekcji 5, ale jeden panel bez zakladek *\/\n.ps-bi--solo .ps-bi__panel{display:block}\n.ps-bi__ev{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}\n.ps-bi__evi{margin:0}\n.ps-bi__evb{position:relative;aspect-ratio:3\/4;border-radius:7px;overflow:hidden;background:#0d0f12}\n.ps-bi__evi .ps-zoom__in img{width:100%;height:100%;object-fit:cover;display:block}\n.ps-bi__evi figcaption{font-size:10.5px;color:var(--mut);margin-top:5px;text-align:center;line-height:1.35}\n.ps-bi__evn{margin:12px 0 0;font-size:11.5px;color:var(--mut);line-height:1.5}\n\/* sekcja 7: trzy etapy jako wykres, idiom deckowy (wzorzec: slajd two-stage, deck Paulig) *\/\n@media(max-width:900px){}\n\/* sekcja referencyjna: grafika z case study po lewej, naglowek i akapit po prawej *\/\n.ps-cs{display:grid;grid-template-columns:minmax(0,0.82fr) minmax(0,1.18fr);gap:44px;align-items:start}\n.ps-cs__fig{margin:0}\n.ps-cs__fig img{display:block;width:100%;height:auto;max-width:400px}\n@media(max-width:1000px){.ps-cs{grid-template-columns:1fr;gap:26px}.ps-cs__fig img{max-width:340px;margin:0 auto}}\n\/* sekcja 9: sciezka wspolpracy, jedna linia z trzema wezlami zamiast trzech kart ze slupkami *\/\n.ps-path{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:42px}\n.ps-path__rail{position:absolute;left:calc(16.6667% - 11.33px);right:calc(16.6667% - 11.33px);top:20px;height:4px;border-radius:4px;\n  background:linear-gradient(90deg,#e2dbff 0%,#b8a6ff 34%,#8f6cff 62%,#d946ef 86%,#ff5a5f 100%)}\n.ps-path__i{position:relative;min-width:0}\n.ps-path__node{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;\n  width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid #c9bcff;color:#7B61FF;\n  font-size:13.5px;font-weight:700;letter-spacing:.5px;margin:0 auto 20px}\n.ps-path__i:nth-of-type(2) .ps-path__node{border-color:#9b7dff}\n.ps-path__i:nth-of-type(3) .ps-path__node{border:none;color:#fff;\n  background:linear-gradient(140deg,#ff5a5f 0%,#d946ef 50%,#7B61FF 100%);\n  box-shadow:0 8px 20px rgba(123,97,255,.34)}\n.ps-path__stage{font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#7B61FF;margin:0 0 10px}\n.ps-path__i h3{font-size:18px;font-weight:650;margin:0 0 9px;color:var(--ap-text);line-height:1.28}\n.ps-path__i > p:last-child{font-size:15px;line-height:1.55;color:var(--ap-muted);margin:0}\n@media(max-width:900px){.ps-path{grid-template-columns:1fr;gap:28px}.ps-path__rail{display:none}\n  .ps-path__node{margin:0 0 14px}}\n\n\/* ==== OTIF (CHG-524) \u2014 dodatki ponad przemianowany scoped z \/planogram-compliance\/ ==== *\/\n\n\/* przelaczniki zakladek: dwa niezalezne zestawy radio *\/\n#otm1:checked ~ .ps-bi__tabs label[for=otm1],\n#otm2:checked ~ .ps-bi__tabs label[for=otm2],\n#otm3:checked ~ .ps-bi__tabs label[for=otm3],\n#otr1:checked ~ .ps-bi__tabs label[for=otr1],\n#otr2:checked ~ .ps-bi__tabs label[for=otr2],\n#otr3:checked ~ .ps-bi__tabs label[for=otr3],\n#otr4:checked ~ .ps-bi__tabs label[for=otr4]\n{background:#fff;color:#232323;border-color:#e6e8ee;border-bottom-color:#fff;margin-bottom:-1px}\n#otm1:checked ~ .ps-bi__body #otp-m1,\n#otm2:checked ~ .ps-bi__body #otp-m2,\n#otm3:checked ~ .ps-bi__body #otp-m3,\n#otr1:checked ~ .ps-bi__body #otp-r1,\n#otr2:checked ~ .ps-bi__body #otp-r2,\n#otr3:checked ~ .ps-bi__body #otp-r3,\n#otr4:checked ~ .ps-bi__body #otp-r4\n{display:block}\n.ps-bi__body{border-top:1px solid #e6e8ee;background:#fff}\n\n\/* siatka trzykolumnowa w panelu *\/\n.ps-bi__grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;align-items:stretch}\n@media(max-width:880px){.ps-bi__grid3{grid-template-columns:1fr}}\n\n\/* tabele w panelach *\/\n.ps-tbl{width:100%;border-collapse:collapse;font-size:12.5px;margin:0}\n.ps-tbl th{text-align:left;color:#6b7280;font-weight:600;padding:7px 8px 7px 0;border-bottom:1px solid #e6e8ee;font-size:11px;text-transform:uppercase;letter-spacing:.04em}\n.ps-tbl td{padding:8px 8px 8px 0;border-bottom:1px solid #f3f3f5;color:#232323;vertical-align:middle}\n.ps-tbl tr:last-child td{border-bottom:none}\n.ps-tbl td.n,.ps-tbl th.n{text-align:right;font-variant-numeric:tabular-nums}\n.ps-bar{display:block;height:8px;border-radius:5px;background:#eef1f5;overflow:hidden;min-width:64px}\n.ps-bar i{display:block;height:100%;border-radius:5px}\n\n\/* listy w panelu \"where it breaks\" *\/\n.ps-li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f3f3f5;font-size:12.5px;color:#232323}\n.ps-li:last-child{border-bottom:none}\n.ps-li span{color:#6b7280;font-variant-numeric:tabular-nums;flex:0 0 auto}\n\n\/* pierscien i slupki *\/\n.ps-donut{display:flex;align-items:center;gap:18px;flex-wrap:wrap}\n.ps-ring{width:116px;height:116px;border-radius:50%;flex:0 0 auto;\n  background:conic-gradient(#1aa15a 0 83.4%,#e8ebef 83.4% 100%);display:grid;place-items:center}\n.ps-ring span{width:84px;height:84px;background:#fff;border-radius:50%;display:grid;place-items:center;\n  font-size:21px;font-weight:700;color:#16294a;font-variant-numeric:tabular-nums}\n.ps-donut__t{font-size:12.5px;line-height:1.7;color:#232323}\n.ps-donut__t b{font-variant-numeric:tabular-nums}\n.ps-donut__t i{font-style:normal;color:#6b7280}\n.ps-cols{display:flex;align-items:flex-end;gap:8px;height:150px;padding-top:6px}\n.ps-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}\n.ps-col b{width:100%;background:#2f7d92;display:block}\n.ps-col b.t{background:#cfe0e6;border-radius:4px 4px 0 0}\n.ps-col em{font-style:normal;font-size:10.5px;color:#6b7280}\n.ps-col u{text-decoration:none;font-size:10.5px;font-weight:700;color:#16294a;font-variant-numeric:tabular-nums}\n\n\/* telefon w panelu roli *\/\n.ps-phwrap{display:grid;place-items:center}\n.ps-ph{width:252px;border:1px solid #e6e8ee;border-radius:22px;background:#fff;padding:14px;\n  box-shadow:0 10px 30px rgba(20,20,30,.09)}\n.ps-ph__h{display:flex;justify-content:space-between;font-size:11px;color:#6b7280;margin-bottom:12px}\n.ps-ph__r{border:1px solid #e6e8ee;border-radius:9px;padding:10px 12px;margin-bottom:8px}\n.ps-ph__r b{display:block;font-size:12.5px;color:#232323}\n.ps-ph__r i{font-style:normal;display:block;font-size:11.5px;color:#6b7280;margin-top:2px;line-height:1.4}\n\n\n\/* callout i nota *\/\n.ps-callout{margin-top:26px;border-left:3px solid #2f7d92;background:#f6f9fa;border-radius:0 10px 10px 0;\n  padding:16px 20px;font-size:15.5px;line-height:1.55;color:#232323;max-width:46rem}\n\n\n\n\/* --- rewizja CHG-525: panel bez zakladek + lista warunkow umowy --- *\/\n.ps-bi__panel--open{display:block !important}\n.ps-set{display:flex !important;flex-direction:column !important}\n.ps-set__r{display:flex !important;justify-content:space-between !important;align-items:baseline;gap:18px !important;padding:10px 0 !important;margin:0 !important;border-bottom:1px solid #f3f3f5;font-size:12.5px;line-height:1.45}\n.ps-set__r:last-child{border-bottom:none}\n.ps-set__r span{color:#6b7280;flex:0 1 auto;white-space:nowrap}\n.ps-set__r b{color:#232323;text-align:right;font-weight:650;flex:1 1 auto;min-width:0}\n\n.ps-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}\n\n\/* --- rewizja CHG-525\/7: os czasu w wariancie czterowezlowym --- *\/\n.ps-path--4{grid-template-columns:repeat(4,1fr)}\n.ps-path--4 .ps-path__rail{left:calc(12.5% - 11.33px);right:calc(12.5% - 11.33px)}\n.ps-path--4 .ps-path__i:nth-of-type(3) .ps-path__node{background:#fff;border:3px solid #9b7dff;color:#7B61FF;box-shadow:none}\n.ps-path--4 .ps-path__i:nth-of-type(4) .ps-path__node{border:none;color:#fff;background:linear-gradient(140deg,#ff5a5f 0%,#d946ef 50%,#7B61FF 100%);box-shadow:0 8px 20px rgba(123,97,255,.34)}\n@media(max-width:900px){.ps-path--4{grid-template-columns:1fr}}\n\n\/* --- rewizja CHG-525\/8: linki w tresci sekcji, fiolet marki jak na \/planogram-compliance\/ --- *\/\n.ps-lede a,.ps-path__i p a,.ps-callout a,.ps-bi__cap a{color:#7B61FF !important;text-decoration:none}\n.ps-lede a:hover,.ps-path__i p a:hover,.ps-callout a:hover,.ps-bi__cap a:hover{text-decoration:underline;text-underline-offset:3px}\n\n\/* ==== Komponent 6 \u2014 etykieta grafiki AI (art. 50 AI Act), na ciemnym hero ==== *\/\n.ps26 .ap-ai-credit{display:block;font-size:12px;line-height:1.45;color:rgba(255,255,255,0.78);margin-top:14px;letter-spacing:.01em}\n.ps26 .ps-fig figcaption .ap-ai-credit{color:#475569;margin-top:6px;font-style:normal}\n\/* ==== brak sieci: przyciemnienie kadru plus ikona (CHG-565) ==== *\/\n.ps-zoom--off .ps-zoom__in{filter:grayscale(.35)}\n.ps-zoom--off::after{content:\"\";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,11,.55) 0%,rgba(8,9,11,.78) 100%);z-index:1}\n.ps-off{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:2;display:block;line-height:0}\n.ps-off svg{display:block}\n\n\/* ==== Komponent 6 v2: ikona UE \"AI GENERATED\" na grafice (kodeks KE, art. 50 AI Act), CHG-660 ==== *\/\n.ap-ai-mark{position:relative;display:block}\n.ap-ai-mark--fit{width:fit-content;max-width:100%;margin:0 auto}\n.ap-ai-badge{position:absolute;top:12px;right:12px;width:124px;height:25px;background:url(\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/eu-ai-generated-black.svg\") no-repeat center\/contain;pointer-events:none;z-index:3}\n.ap-ai-badge--light{background-image:url(\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/eu-ai-generated-white.svg\")}\n.ap-ai-badge--hero{top:24px;right:24px;width:140px;height:28px}\n@media (max-width:640px){.ap-ai-badge,.ap-ai-badge--hero{width:100px;height:20px;top:8px;right:8px}}\n\/* ==== Komponent 6 v2.1 (CHG-675): ikona mniejsza w prawym dolnym rogu, podpis tylko dla czytnikow ekranu ==== *\/\n.ap-ai-badge{top:auto;bottom:10px;right:10px;width:92px;height:19px}\n.ap-ai-badge--hero{top:20px;bottom:auto;right:20px;width:108px;height:22px}\n@media (max-width:640px){.ap-ai-badge{top:auto;bottom:8px;right:8px;width:72px;height:15px}.ap-ai-badge--hero{top:12px;bottom:auto;right:12px;width:84px;height:17px}}\n.ap-ai-credit{position:absolute !important;width:1px !important;height:1px !important;margin:-1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important}\n\n\n\/* ===== CHG-665: warstwa lokalna LP RIR (klocki spoza rodziny) ===== *\/\n.ps26 .ps-kpis{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}\n.ps26 .ps-kpis li{font-size:15px;line-height:1.5;color:var(--ap-muted);padding-left:14px;position:relative}\n.ps26 .ps-kpis li::before{content:\"\";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,#ff5a5f,#7B61FF)}\n.ps26 .ps-kpis li b{color:var(--ap-text);font-weight:600}\n.ps26 .ps-ps{margin:34px 0 0;padding:28px 32px;border-radius:18px;background:#fff;border:1px solid var(--ap-line);max-width:60rem}\n.ps26 .ps-ps h3{margin:0 0 8px;font-size:20px}\n.ps26 .ps-ps p{margin:0;color:var(--ap-muted);font-size:16px;line-height:1.6}\n.ps26 .ps-places{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}\n.ps26 .ps-place{background:#fff;border:1px solid var(--ap-line);border-radius:16px;padding:22px 22px 20px}\n.ps26 .ps-place h3{font-size:17px;margin:0 0 6px;line-height:1.3}\n.ps26 .ps-place p{font-size:14.5px;line-height:1.5;color:var(--ap-muted);margin:0}\n.ps26 .ps-place__ic{display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:16px;background:linear-gradient(135deg,rgba(255,90,95,.09),rgba(123,97,255,.12));margin:0 0 16px}\n.ps26 .ps-place__ic svg{width:46px;height:46px;display:block}\n.ps26 .ps-place--ho .ps-place__ic{background:rgba(255,255,255,.08)}\n.ps26 .ps-place--ho{background:#111114;border-color:#111114}\n.ps26 .ps-place--ho h3{color:#fff}.ps26 .ps-place--ho p{color:rgba(255,255,255,.72)}\n@media(max-width:1000px){.ps26 .ps-places{grid-template-columns:repeat(2,1fr)}}\n@media(max-width:560px){.ps26 .ps-places{grid-template-columns:1fr}}\n.ps26 .ps-roles{display:grid;grid-template-columns:230px 1fr;gap:44px;margin-top:34px;align-items:start}\n.ps26 .ps-rail{position:sticky;top:110px;display:flex;flex-direction:column;gap:4px;border-left:2px solid var(--ap-line);padding-left:0}\n.ps26 .ps-rail a{display:block;padding:9px 16px;margin-left:-2px;border-left:2px solid transparent;font-size:14.5px;font-weight:500;color:var(--ap-muted);text-decoration:none;line-height:1.35}\n.ps26 .ps-rail a.is-on{color:var(--ap-text);font-weight:600;border-left-color:#7B61FF}\n.ps26 .ps-role{background:#fff;border:1px solid var(--ap-line);border-radius:20px;padding:34px 36px;margin-bottom:22px;scroll-margin-top:110px}\n.ps26 .ps-role__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:start}\n.ps26 .ps-role__pill{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#7B61FF;background:rgba(123,97,255,.09);padding:5px 11px;border-radius:999px;margin-bottom:12px}\n.ps26 .ps-role h3{font-size:22px;line-height:1.3;margin:0 0 12px}\n.ps26 .ps-role p{font-size:16px;line-height:1.62;color:var(--ap-muted);margin:0 0 12px}\n.ps26 .ps-role__hand{color:var(--ap-text)!important;font-weight:500}\n.ps26 .ps-role__foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--ap-line);font-size:13.5px;line-height:1.55;color:var(--ap-muted)}\n.ps26 .ps-role__foot b{color:var(--ap-text)}\n.ps26 .ps-shot{border-radius:16px;background:repeating-linear-gradient(135deg,#f3f3f6 0 12px,#ececf1 12px 24px);min-height:300px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;font-size:13px;color:#6b6b70;border:1px dashed #cfcfd6}\n.ps26 .ps-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 16px}\n.ps26 .ps-tabs button{font:inherit;font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;border:1px solid var(--ap-line);background:#fff;color:var(--ap-muted);cursor:pointer}\n.ps26 .ps-tabs button[aria-selected=\"true\"]{background:#111114;color:#fff;border-color:#111114}\n.ps26 .ps-tabpanel[hidden]{display:none}\n@media(max-width:980px){.ps26 .ps-roles{grid-template-columns:1fr;gap:18px}.ps26 .ps-rail{position:sticky;top:64px;z-index:5;flex-direction:row;overflow-x:auto;border-left:0;border-bottom:2px solid var(--ap-line);background:var(--color-gray,#f5f5f7)}.ps26 .ps-rail a{white-space:nowrap;margin:0 0 -2px;border-left:0;border-bottom:2px solid transparent}.ps26 .ps-rail a.is-on{border-bottom-color:#7B61FF}.ps26 .ps-role__grid{grid-template-columns:1fr}.ps26 .ps-role{padding:26px 22px}}\n.ps26 .ps-film{margin-top:34px;background:#111114;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr}\n.ps26 .ps-film__body{padding:40px 42px}\n.ps26 .ps-film__badge{font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,.55);margin:0 0 12px}\n.ps26 .ps-film h3{color:#fff;font-size:24px;line-height:1.28;margin:0 0 10px}\n.ps26 .ps-film__meta{font-size:13.5px;color:rgba(255,255,255,.6);margin:0 0 22px}\n.ps26 .ps-film blockquote{margin:0 0 14px;padding:0 0 0 20px;border-left:3px solid #7B61FF;font-size:17px;line-height:1.6;color:rgba(255,255,255,.92)}\n.ps26 .ps-film cite{display:block;font-style:normal;font-size:13.5px;color:rgba(255,255,255,.62);margin:0 0 22px}\n.ps26 .ps-film__link{color:#fff;font-weight:600;font-size:15px;text-decoration:underline}\n.ps26 .ps-film__media{position:relative;min-height:320px;background:#000}\n.ps26 .ps-film__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}\n@media(max-width:900px){.ps26 .ps-film{grid-template-columns:1fr}.ps26 .ps-film__media{min-height:240px;order:-1}.ps26 .ps-film__body{padding:28px 24px}}\n.ps26 .ps-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}\n.ps26 .ps-card{display:grid;grid-template-columns:160px 1fr;background:#fff;border:1px solid var(--ap-line);border-radius:18px;overflow:hidden;text-decoration:none;color:inherit}\n.ps26 .ps-card img{width:100%;height:100%;object-fit:cover;display:block}\n.ps26 .ps-card__b{padding:20px 22px}\n.ps26 .ps-card__k{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#7B61FF;margin:0 0 6px}\n.ps26 .ps-card h3{font-size:18px;line-height:1.3;margin:0 0 6px;color:var(--ap-text)}\n.ps26 .ps-card p{font-size:14.5px;line-height:1.5;color:var(--ap-muted);margin:0}\n@media(max-width:820px){.ps26 .ps-cards{grid-template-columns:1fr}.ps26 .ps-card{grid-template-columns:120px 1fr}}\n.ps26 .ps-nums{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;background:#f5f5f7;border-radius:18px}\n.ps26 .ps-num{padding:26px 30px;border-left:1px solid #e4e4ea}\n.ps26 .ps-num:first-child{border-left:0}\n.ps26 .ps-num b{display:block;font-size:clamp(34px,3.4vw,46px);line-height:1;font-weight:600;margin:0 0 10px;background:linear-gradient(90deg,#ff5a5f,#d946ef 55%,#7B61FF);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}\n.ps26 .ps-num span{display:block;font-size:14.5px;line-height:1.45;color:var(--ap-muted)}\n@media(max-width:760px){.ps26 .ps-nums{grid-template-columns:1fr}.ps26 .ps-num{border-left:0;border-top:1px solid #e4e4ea}.ps26 .ps-num:first-child{border-top:0}}\n.ps26 .ps-film__logo{height:30px;width:auto;margin:0 0 18px;filter:brightness(0) invert(1);display:block}\n.ps26 .ps-voice{margin:22px 0 0;display:grid;grid-template-columns:240px 1fr;background:#f5f5f7;border-radius:22px;overflow:hidden}\n.ps26 .ps-voice__brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:34px 30px;background:#fff;border:1px solid #ececf1;border-radius:22px 0 0 22px}\n.ps26 .ps-voice__brand img{width:150px;height:auto}\n.ps26 .ps-voice__brand span{font-size:13px;color:var(--ap-muted)}\n.ps26 .ps-voice__q{padding:34px 40px}\n.ps26 .ps-voice blockquote{margin:0 0 16px;padding:0;border:0;font-size:19px;line-height:1.55;color:var(--ap-text);font-weight:500}\n.ps26 .ps-voice figcaption{font-size:14px;color:var(--ap-muted)}\n.ps26 .ps-voice figcaption strong{color:var(--ap-text)}\n@media(max-width:820px){.ps26 .ps-voice{grid-template-columns:1fr}.ps26 .ps-voice__brand{border-radius:22px 22px 0 0}.ps26 .ps-voice__q{padding:26px 24px}}\n.ps26 .ps-more__h{margin:44px 0 0;font-size:20px}\n.ps26 .ps-cards .ps-card{background:#f5f5f7;border-color:#f5f5f7}\n.ps26 .ps-more__brands{margin:18px 0 0;font-size:15px;color:var(--ap-muted)}\n.ps26 .ps-qs{display:grid;gap:14px;margin-top:28px;max-width:60rem}\n.ps26 .ps-q{background:#fff;border:1px solid var(--ap-line);border-radius:16px;padding:22px 26px}\n.ps26 .ps-q h3{font-size:18px;line-height:1.35;margin:0 0 6px}\n.ps26 .ps-q p{margin:0;font-size:15.5px;line-height:1.55;color:var(--ap-muted)}\n.ps26 .ps-ph-note{font-size:13px;color:#6b6b70;margin-top:14px}\n.ps26 .ap-band:not(.ap-band--grey){background:#fff}\n.ps26 .ap-band__inner{max-width:1270px}\n\n@media(min-width:1024px){.ps26 .ap-band__inner{padding-left:48px;padding-right:48px}}\n.ps26 .ps-step3__txt a,.ps26 .ps-q a,.ps26 .ps-role a,.ps26 .ps-ps a,.ps26 .ps-faq a,.ps26 .ap-rec-card a{color:#7B61FF !important;text-decoration:none}\n.ps26 .ps-step3__txt a:hover,.ps26 .ps-q a:hover,.ps26 .ps-role a:hover,.ps26 .ps-ps a:hover,.ps26 .ps-faq a:hover,.ps26 .ap-rec-card a:hover{text-decoration:underline;text-underline-offset:3px}\n.ps26 .ps-ps{max-width:none}\n.ps26 #sec-8 .stat-card-home__number{font-size:clamp(38px,4vw,54px);line-height:1.05}\n.ps26 .ps-shot{min-height:240px}\n.ps26 .ap-rec-card{background:#fff;border:1px solid #ececed;border-radius:var(--radius-lg,20px);padding:var(--space-2xl,32px);position:relative;overflow:hidden}\n.ps26 .ap-rec-card::before{content:\"\";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ef5909,#d70e44,#a046e1,#1676c3)}\n.ps26 .ap-rec-card__logo{height:44px;margin-bottom:var(--space-md,16px);display:flex;align-items:center}\n.ps26 .ap-rec-card__logo img{height:44px;width:auto;max-width:160px;object-fit:contain}\n.ps26 .ap-rec-card h3{font-size:18px;font-weight:600;margin:0 0 6px;color:var(--color-black,#111)}\n.ps26 .ap-rec-card__sub{font-size:13px;color:#3F5BEB;margin-bottom:var(--space-sm,10px)}\n.ps26 .ap-rec-card p{font-size:15px;line-height:1.55;color:var(--color-dark-gray,#555);margin:0}\n@media(max-width:900px){.ps26 .ap-rec{grid-template-columns:1fr !important}}\n<\/style>\n<style>\n\/* CHG-674: dodatki Perfect Store ponad przemianowany scoped z #9838 *\/\n#psr1:checked ~ .ps-bi__tabs label[for=psr1],\n#psr2:checked ~ .ps-bi__tabs label[for=psr2],\n#psr3:checked ~ .ps-bi__tabs label[for=psr3]\n{background:#fff;color:#232323;border-color:#e6e8ee;border-bottom-color:#fff;margin-bottom:-1px}\n#psr1:checked ~ .ps-bi__body #psp1,\n#psr2:checked ~ .ps-bi__body #psp2,\n#psr3:checked ~ .ps-bi__body #psp3\n{display:block}\n.ps26 .ap-band p a,.ps26 .ap-band li a,.ps26 .ps-path__i p a{color:#7B61FF !important;text-decoration:none !important;font-weight:500}\n.ps26 .ap-band p a:hover,.ps26 .ap-band li a:hover{text-decoration:underline !important}\n.ps26 .ps-hero-bg{background:radial-gradient(1200px 600px at 80% 20%,rgba(123,97,255,.35),transparent 60%),linear-gradient(135deg,#0b0b14 0%,#161233 55%,#24154f 100%)}\n.ps26 #sec-3 .ps-prob{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,440px) !important;gap:64px !important}\n@media(max-width:1000px){.ps26 #sec-3 .ps-prob{grid-template-columns:1fr !important;gap:28px !important}}\n.ps26 #sec-3 .ps-prob .ps-h2{margin-top:0}\n.ps26 #sec-3 .ps-fig{align-items:stretch;margin:0 !important}\n.ps26 .ps-br{display:none}\n.ps26 .ps-ann{display:block;position:relative;line-height:0;width:100%}\n.ps26 .ps-ann__crop{display:block;width:100%;overflow:hidden;border-radius:16px}\n.ps26 #sec-3 .ps-ann__crop img{display:block;width:100% !important;max-width:none !important;max-height:none !important;height:auto;margin-top:0}\n.ps26 .ps-ann__box{position:absolute;border:2px solid var(--c,#d70e44);border-radius:8px;box-shadow:0 0 0 2px rgba(255,255,255,.7);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--c,#d70e44) 38%,transparent) 0 5px,color-mix(in srgb,var(--c,#d70e44) 10%,transparent) 5px 11px)}\n.ps26 .ps-ann__tag{position:absolute;display:inline-flex;align-items:center;gap:6px;background:var(--c,#d70e44);color:#fff;font-size:12px;line-height:1;font-weight:600;padding:5px 9px 5px 5px;border-radius:999px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.28);z-index:2}\n.ps26 .ps-ann__tag b{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:#fff;color:var(--c,#d70e44);font-size:10px;font-weight:700}\n@media(max-width:600px){.ps26 .ps-ann__tag{font-size:10px;gap:4px;padding:3px 7px 3px 3px}.ps26 .ps-ann__tag b{width:14px;height:14px;font-size:9px}}\n.ps26 .ps-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 40%}\n.ps26 .ps-fine{font-size:13px;color:rgba(255,255,255,.62);margin:14px 0 0}\n.ps26 .ps-rules{list-style:none !important;margin:22px 0 0 !important;padding:0 !important;counter-reset:psr}\n.ps26 .ps-rules li{counter-increment:psr;position:relative;padding:0 0 18px 46px !important;margin:0 !important;font-size:16px;line-height:1.6;color:var(--ap-muted)}\n.ps26 .ps-rules li::before{content:counter(psr);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#ff5a5f,#d946ef 55%,#7B61FF);color:#fff;font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center}\n.ps26 .ps-rules li b{color:var(--ap-text);font-weight:600}\n.ps26 .ps-h3{font-size:20px;font-weight:600;color:var(--ap-text);margin:0}\n.ps26 .ps-tbl tr.ps-tot td{font-weight:700;border-top:2px solid #e6e8ee}\n.ps26 .ps-cap-tag{display:inline-block;font-size:11px;font-weight:600;color:#7B61FF;background:#f1edff;border-radius:6px;padding:2px 6px;margin-left:6px}\n.ps26 .ps-shots{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}\n.ps26 .ps-shots img{width:100%;height:auto;display:block;border-radius:14px;box-shadow:0 14px 40px rgba(20,20,30,.10);border:1px solid #ececf1}\n.ps26 .ps-shots--path{margin-top:34px;grid-template-columns:1.35fr 1fr}\n.ps26 .ps-list{margin:18px 0 0 !important;padding:0 !important;list-style:none !important}\n.ps26 .ps-list li{position:relative;padding:0 0 10px 22px !important;margin:0 !important;font-size:16px;line-height:1.55;color:var(--ap-muted)}\n.ps26 .ps-list li::before{content:\"\";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,#ff5a5f,#7B61FF)}\n.ps26 .ps-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}\n.ps26 .ps-blk{background:#fff;border:1px solid #e6e8ee;border-radius:16px;padding:24px}\n.ps26 .ap-band--grey .ps-blk{background:#fff}\n.ps26 .ps-blk h3{font-size:18px;font-weight:600;color:var(--ap-text);margin:0 0 10px}\n.ps26 .ps-blk p{font-size:15px;line-height:1.6;color:var(--ap-muted);margin:0}\n.ps26 .ps-mgr{margin-top:30px}\n.ps26 .ps-mgr > h3{font-size:20px;font-weight:600;color:var(--ap-text);margin:0 0 6px}\n.ps26 .ps-mgr > p{font-size:16px;line-height:1.6;color:var(--ap-muted);margin:0}\n.ps26 .ps-proof-note{font-size:15px;color:var(--ap-muted);margin:18px 0 0}\n.ps26 .ps-cust{margin-top:28px !important;background:#fff !important;border:1px solid #e6e8ee;border-radius:22px;position:relative;box-shadow:0 14px 40px rgba(20,20,30,.06);grid-template-columns:260px 1fr}\n.ps26 .ps-cust::before{content:\"\";position:absolute;left:0;right:0;top:0;height:4px;border-radius:22px 22px 0 0;background:linear-gradient(90deg,#ff5a5f,#d946ef 55%,#7B61FF);z-index:1}\n.ps26 .ps-cust .ps-voice__brand{background:#fafafb;border:0;border-right:1px solid #eeeef2;align-items:center;text-align:center}\n.ps26 .ps-cust .ps-voice__brand img{width:170px}\n.ps26 .ps-cust__k{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7B61FF;margin:0 0 8px}\n.ps26 .ps-cust__h{font-size:24px;line-height:1.25;font-weight:600;color:var(--ap-text);margin:0 0 10px}\n.ps26 .ps-cust__p{font-size:17px;line-height:1.6;color:var(--ap-muted);margin:0 0 16px;max-width:44rem}\n.ps26 .ps-cust__tags{display:flex;flex-wrap:wrap;gap:8px}\n.ps26 .ps-cust__tags span{font-size:12.5px;font-weight:500;color:#52525b;background:#fff;border:1px solid #e4e4e9;border-radius:999px;padding:4px 11px}\n@media(max-width:760px){.ps26 .ps-cust{grid-template-columns:1fr}.ps26 .ps-cust .ps-voice__brand{border-right:0;border-bottom:1px solid #eeeef2;padding:26px}.ps26 .ps-cust__h{font-size:20px}}\n.ps26 .ps-proof-ferrero{font-size:17px;line-height:1.55;color:var(--ap-text);margin:22px 0 0;padding:18px 22px;background:#fff;border:1px solid #e6e8ee;border-radius:14px;max-width:46rem}\n.ps26 .ps-tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}\n@media(max-width:600px){.ps26 .ps-tblwrap .ps-tbl{min-width:520px}.ps26 .ps-cfg .ps-tblwrap .ps-tbl{min-width:420px}}\n.ps26 .ps-steps{display:flex;flex-direction:column;gap:0;margin-top:40px}\n.ps26 .ps-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:56px;align-items:center;background:linear-gradient(135deg,#f8f7fc 0%,#f3f4f8 100%);border:1px solid #ecebf3;border-radius:24px;padding:40px 44px}\n.ps26 .ps-conn{height:80px;position:relative}\n.ps26 .ps-conn svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}\n@media(max-width:900px){.ps26 .ps-step{padding:24px 20px;border-radius:18px}.ps26 .ps-conn{height:48px}.ps26 .ps-conn svg{display:none}.ps26 .ps-conn::before{content:\"\";position:absolute;left:50%;top:0;bottom:0;border-left:2px dashed #d946ef;transform:translateX(-1px)}}\n.ps26 .ps-step--rev .ps-step__txt{order:2}\n.ps26 .ps-step__n{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#ff5a5f,#d946ef 55%,#7B61FF);color:#fff;font-weight:600;font-size:15px;margin-bottom:14px}\n.ps26 .ps-step__txt h3{font-size:24px;line-height:1.25;font-weight:600;color:var(--ap-text);margin:4px 0 12px}\n.ps26 .ps-step__txt p:not(.ps-path__stage){font-size:17px;line-height:1.6;color:var(--ap-muted);margin:0;max-width:34rem}\n.ps26 .ps-step__vis{display:flex;justify-content:center}\n.ps26 .ps-step__vis > .ps-cfg{width:100%;max-width:600px;height:auto}\n.ps26 .ps-step__img{display:block;max-height:540px;width:auto !important;max-width:100%;border-radius:14px;box-shadow:0 14px 40px rgba(20,20,30,.12)}\n.ps26 .ps-step__mark{border-radius:14px}\n.ps26 .ps-step__chips{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;z-index:2}\n.ps26 .ps-step__chip{background:rgba(255,255,255,.95);color:#0f7a44;font-size:12.5px;font-weight:600;line-height:1;padding:7px 10px;border-radius:999px;box-shadow:0 4px 12px rgba(0,0,0,.2);white-space:nowrap}\n@media(max-width:900px){.ps26 .ps-step{grid-template-columns:minmax(0,1fr);gap:24px}.ps26 .ps-step--rev .ps-step__txt{order:0}.ps26 .ps-step__img{max-height:480px}.ps26 .ps-step__chip{font-size:11px;padding:5px 8px;white-space:normal}.ps26 .ps-step__chips{right:12px}}\n.ps26 .ps-shots--path3{margin-top:34px;grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr) minmax(0,.9fr);align-items:stretch}\n.ps26 .ps-shots--path3 > img{height:100%;object-fit:cover;object-position:top}\n.ps26 .ps-cfg{height:100%}\n.ps26 .ps-std{display:flex;flex-direction:column;height:100%}\n.ps26 .ps-std__mark{flex:1 1 auto;min-height:0;display:block;position:relative;border-radius:14px;overflow:hidden}\n.ps26 .ps-std__mark img{position:absolute;inset:0;width:100% !important;height:100% !important;max-height:none !important;object-fit:cover;object-position:center top}\n@media(max-width:900px){.ps26 .ps-std__mark{aspect-ratio:900\/1342;flex:none}}\n.ps26 .ps-cfg__chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}\n.ps26 .ps-cfg__chips span{font-size:12px;font-weight:600;color:#232323;background:#f3f3f6;border-radius:999px;padding:4px 10px}\n.ps26 .ps-cfg__chips .ps-cfg__on{background:#e7f6ee;color:#0f7a44}\n.ps26 .ps-cfg__src{display:inline-block;font-size:11px;font-weight:600;border-radius:6px;padding:2px 7px;background:#f1edff;color:#5b45d6}\n.ps26 .ps-cfg__src--f{background:#f3f3f6;color:#56565c}\n.ps26 .ps-cfg__lab{font-size:12px;font-weight:600;color:#6b7280;margin:16px 0 6px;text-transform:uppercase;letter-spacing:.04em}\n.ps26 .ps-cfg__seg{display:inline-flex;border:1px solid #e6e8ee;border-radius:10px;overflow:hidden}\n.ps26 .ps-cfg__seg span{font-size:12.5px;padding:7px 12px;color:#56565c;background:#fff}\n.ps26 .ps-cfg__seg .ps-cfg__seg--on{background:#232323;color:#fff;font-weight:600}\n.ps26 .ps-cfg__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid #f0f0f3;font-size:12.5px;color:#6b7280}\n.ps26 .ps-cfg__btn{background:#7B61FF;color:#fff;font-weight:600;border-radius:9px;padding:7px 12px}\n@media(max-width:900px){.ps26 .ps-shots--path3{grid-template-columns:1fr}.ps26 .ps-shots--path3 > img{height:auto}.ps26 .ps-shots--path3 .ps-shot{min-height:420px !important}}\n.ps26 #sec-6 .ps-split{grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr) !important;gap:48px !important}\n@media(max-width:900px){.ps26 #sec-6 .ps-split{grid-template-columns:1fr !important}.ps26 .ps-shots,.ps26 .ps-shots--path,.ps26 .ps-grid3{grid-template-columns:1fr}}\n<\/style>\n\n\n\n<div class=\"wp-block-group alignfull ps26 ap-scope is-layout-flow wp-block-group-is-layout-flow\">\n\n\n<div class=\"hero-subpage ap-hero ps-hero-bg\">\n  <div class=\"hero-subpage__video-wrapper\">\n    <img class=\"ps-hero-img\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/perfect-store-hero-sre.webp\" alt=\"Przedstawiciel handlowy w alejce sklepu patrzy na tablet przed zatowarowan\u0105 p\u00f3\u0142k\u0105\" width=\"946\" height=\"624\" fetchpriority=\"high\" decoding=\"async\">\n  <\/div>\n  <div class=\"hero-subpage__content\" data-anim=\"zoom\">\n    <span class=\"hero-badge\">Perfect Store<\/span>\n    <h1 class=\"hero-subpage__heading\">Perfect Store: <span class=\"text-gradient\">wynik z ka\u017cdej wizyty i rozmowa przy 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:48rem;margin-bottom:var(--space-md)\">Zanim przedstawiciel wyjdzie ze sklepu, widzi jego wynik Perfect Store wzgl\u0119dem Twojego standardu i na tym samym ekranie omawia luki z kierownikiem sklepu. Gdy do\u0142o\u017cysz modu\u0142y dodatkowe, ten sam wynik mo\u017cesz wykorzysta\u0107 w premiach i planach wizyt.<\/p>\n    <p class=\"text-h10 text-light-gray\" style=\"max-width:44rem;margin-bottom:var(--space-xl)\">Perfect Store to standard, w kt\u00f3rym producent FMCG opisuje, jak jego produkty maj\u0105 si\u0119 prezentowa\u0107 w ka\u017cdym typie sklepu. Modu\u0142 Perfect Store w Asseco Platform ju\u017c podczas wizyty wylicza, w jakim stopniu sklep realizuje ten standard. To zaawansowany modu\u0142 <a href=\"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/\" style=\"color:#fff;text-decoration:underline\">Sales &amp; Retail Execution<\/a>, dost\u0119pny w Mobile Touch, z kt\u00f3rego przedstawiciel korzysta w terenie.<\/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<\/a>\n      <a href=\"#sec-4\" class=\"btn btn-outline-white\"><svg class=\"arrow-icon\" style=\"width:16px;height:16px;flex-shrink:0;\" viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n        Zobacz, jak powstaje wynik\n      <\/a>\n    <\/div>\n    <div class=\"stat-cards stat-cards--glass\" data-stagger style=\"margin-top:var(--space-lg)\">\n      <div class=\"stat-card stat-card--glass\"><div class=\"stat-card__value\">&minus;35%<\/div><div class=\"stat-card__label\">Czas raportowania wizyty<\/div><\/div>\n      <div class=\"stat-card stat-card--glass\"><div class=\"stat-card__value\">6 tygodni<\/div><div class=\"stat-card__label\">Od rozpocz\u0119cia projektu do pierwszej wizyty z wynikiem<\/div><\/div>\n      <div class=\"stat-card stat-card--glass\"><div class=\"stat-card__value\">Offline<\/div><div class=\"stat-card__label\">Pe\u0142ny audyt i wynik bez zasi\u0119gu sieci<\/div><\/div>\n    <\/div>\n    <p class=\"ps-fine\">Dane z naszych wdro\u017ce\u0144 u producent\u00f3w FMCG. Czas wdro\u017cenia jest orientacyjny.<\/p>\n  <\/div>\n<\/div>\n\n\n\n<section class=\"wp-block-group alignfull we-spread-trust has-gray-default-background-color has-background is-layout-constrained wp-container-core-group-is-layout-cafc2787 wp-block-group-is-layout-constrained\" style=\"padding-top:97px;padding-right:0;padding-bottom:131px;padding-left:0\">\n<div class=\"wp-block-group alignwide animate-on-visible fade-in is-layout-flow wp-block-group-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"h-trusted-globally-by-leading-brands\" style=\"margin-bottom:var(--wp--preset--spacing--24-px)\">Zaufa\u0142y nam wiod\u0105ce marki na ca\u0142ym \u015bwiecie<\/h2>\n\n\n\t\t<div class=\"wp-block-group alignfull slider-wrapper animate-on-visible\"\n\t\t\tdata-mobile-speed=\"1000\"\n\t\t\tdata-desktop-speed=\"1000\"\n\t\t\t>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<span class=\"circle\"><\/span>\n\t\t\t<div class=\"wp-block-group alignwide\">\n\t\t\t\t<div class=\"splide logos wrapper-cols-6\">\n\t\t\t\t\t<div class=\"splide__track \">\n\t\t\t\t\t\t<ul class=\"splide__list\">\n\t\t\t\t\t\t\t\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-13.svg\" alt=\"Dr. Oetker\" class=\"wp-image-286\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-15.svg\" alt=\"Bacardi\" class=\"wp-image-287\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-17.svg\" alt=\"Barilla\" class=\"wp-image-288\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-19.svg\" alt=\"Heineken\" class=\"wp-image-289\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-21.svg\" alt=\"Kenvue\" class=\"wp-image-290\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-22.svg\" alt=\"Loreal\" class=\"wp-image-292\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-14.svg\" alt=\"McCormick\" class=\"wp-image-293\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/Nestle-logo-centered.svg\" alt=\"Nestl\u00e9\" class=\"wp-image-7556\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-18.svg\" alt=\"Mondelez\" class=\"wp-image-295\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-20.svg\" alt=\"Perfetti van Melle\" class=\"wp-image-296\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-23.svg\" alt=\"Ferrero\" class=\"wp-image-297\" \/><\/figure>\n<\/li>\n\t\t\n\n\t\t\t\n<li class=\"splide__slide\">\n<figure class=\"wp-block-image size-full splide__slide\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/AP-logo-24.svg\" alt=\"Pernod Ricard\" class=\"wp-image-298\" \/><\/figure>\n<\/li>\n\t\t\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"splide__nav-wrapper\">\n\t\t\t\t\t\t<div class=\"splide__arrows\">\n\t\t\t\t\t\t\t<button class=\"splide__arrow splide__arrow--prev\">\n\t\t\t\t\t\t\t\t<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t<path d=\"M1.05713 7.99023L15 7.99023\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M0.885742 7.99033L7.95913 15\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M0.885742 7.99023L7.95913 0.999905\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t\t<\/button>\n\n\t\t\t\t\t\t\t<button class=\"splide__arrow splide__arrow--next\">\n\t\t\t\t\t\t\t\t<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t<path d=\"M14.9429 8.00977L0.999993 8.00977\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M15.1143 8.00967L8.04087 1\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t\t<path d=\"M15.1143 8.00977L8.04087 15.0001\" stroke=\"#232323\" stroke-width=\"1.6\" stroke-miterlimit=\"1\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t\t<\/button>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-3\" aria-labelledby=\"sec-3h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Problem<\/p>\n    <div class=\"ps-split ps-prob\">\n      <div>\n        <h2 id=\"sec-3h\" class=\"ps-h2\">Tw\u00f3j standard Perfect Store zostaje w prezentacji, <span class=\"text-gradient\">do kt\u00f3rej w sklepie nikt nie zagl\u0105da<\/span><\/h2>\n        <p class=\"ps-lede\">Trade marketing ustala standard raz w roku: jakie produkty musi prowadzi\u0107 ka\u017cdy sklep, ile miejsca na p\u00f3\u0142ce dostaje marka i gdzie ma sta\u0107 ekspozycja. Potem standard trafia do prezentacji. W sklepie przedstawiciel zaznacza \u201etak\u201d albo \u201enie\u201d na li\u015bcie kontrolnej, z kt\u00f3rej nikt potem nie wylicza wyniku, a kierownik sklepu cz\u0119sto w og\u00f3le nie zna tego standardu.<\/p>\n        <p class=\"ps-lede\">Luki wida\u0107 dopiero kwarta\u0142 p\u00f3\u017aniej, w danych sprzeda\u017cy. Wtedy nikt ju\u017c nie pami\u0119ta, w kt\u00f3rym sklepie zabrak\u0142o ekspozycji, a za sprzeda\u017c\u0105 regionu, kt\u00f3ra na papierze wygl\u0105da dobrze, mog\u0105 si\u0119 kry\u0107 sklepy z pustymi p\u00f3\u0142kami.<\/p>\n\n      <\/div>\n      <figure class=\"ps-fig\">\n        <span class=\"ap-ai-mark ps-ann\"><span class=\"ps-ann__crop\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/perfect-store-drinks-shelf-gaps.webp\" alt=\"P\u00f3\u0142ka z napojami z czterema zaznaczonymi problemami: braki na pi\u0119ciu p\u00f3\u0142kach, butelka bez frontowania, etykieta bez ceny i butelka w z\u0142ym miejscu\" loading=\"lazy\" width=\"687\" height=\"1024\" data-ai-generated=\"true\"><\/span><span class=\"ap-ai-badge\" aria-hidden=\"true\"><\/span>\n        <span class=\"ps-ann__box\" style=\"--c:#d70e44;left:34.6%;top:19.5%;width:10.2%;height:61.0%\" aria-hidden=\"true\"><\/span><span class=\"ps-ann__tag\" style=\"--c:#d70e44;left:36.0%;top:52.0%\"><b>1<\/b>Brak towaru<\/span>\n        <span class=\"ps-ann__box\" style=\"--c:#e8590c;left:30.5%;top:34.5%;width:4.0%;height:9.5%\" aria-hidden=\"true\"><\/span><span class=\"ps-ann__tag\" style=\"--c:#e8590c;left:2.0%;top:29.8%\"><b>2<\/b>Brak frontowania<\/span>\n        <span class=\"ps-ann__box\" style=\"--c:#7b3fe4;left:30.3%;top:44.2%;width:4.6%;height:1.9%\" aria-hidden=\"true\"><\/span><span class=\"ps-ann__tag\" style=\"--c:#7b3fe4;left:2.0%;top:47.6%\"><b>3<\/b>Etykieta bez ceny<\/span>\n        <span class=\"ps-ann__box\" style=\"--c:#1668c8;left:65.3%;top:34.8%;width:3.2%;height:9.3%\" aria-hidden=\"true\"><\/span><span class=\"ps-ann__tag\" style=\"--c:#1668c8;left:50.0%;top:29.8%\"><b>4<\/b>Niew\u0142a\u015bciwe miejsce<\/span><\/span>\n        <figcaption><span class=\"ap-ai-credit\">Obraz wygenerowany przez AI<\/span><\/figcaption>\n      <\/figure>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-4\" aria-labelledby=\"sec-4h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Wynik<\/p>\n    <h2 id=\"sec-4h\" class=\"ps-h2\" style=\"max-width:40rem\">Jak oblicza si\u0119 <span class=\"text-gradient\">Perfect Store score?<\/span><\/h2>\n    <p class=\"ps-lede\" style=\"max-width:46rem\">Perfect Store score, czyli wynik Perfect Store, to liczba od 0 do 100. Wida\u0107 po niej, jak bardzo dany sklep zbli\u017ca si\u0119 do standardu ustalonego dla sklep\u00f3w jego typu. Ka\u017cdy KPI dostaje wag\u0119, a wagi sumuj\u0105 si\u0119 do 100.<\/p>\n    <p class=\"ps-lede\" style=\"max-width:46rem\">Punkty za KPI to jego waga pomno\u017cona przez stopie\u0144 realizacji celu, kt\u00f3ry przedstawiciel stwierdzi\u0142 w sklepie: realizacja celu w 85% daje 85% wagi. Wynik Perfect Store to suma punkt\u00f3w ze wszystkich KPI.<\/p>\n    <div class=\"ps-split\" style=\"align-items:start\">\n      <div>\n        <h3 class=\"ps-h3\">Trzy zasady liczenia wyniku<\/h3>\n        <ol class=\"ps-rules\">\n          <li><b>Za KPI nie mo\u017cna dosta\u0107 wi\u0119cej punkt\u00f3w, ni\u017c wynosi jego waga.<\/b> Przy realizacji celu powy\u017cej 100% punkt\u00f3w jest tyle, ile wynosi waga.<\/li>\n          <li><b>Ty decydujesz, co si\u0119 dzieje, gdy brakuje celu.<\/b> Je\u015bli sklep nie ma celu dla danego KPI, na przyk\u0142ad dlatego, \u017ce nie ma strefy przykasowej, ten KPI dostaje zero punkt\u00f3w albo jego waga rozk\u0142ada si\u0119 na pozosta\u0142e KPI. Regu\u0142\u0119 wybierasz w back office.<\/li>\n          <li><b>Wyniki zbiorcze to \u015brednie, a s\u0142abe sklepy nadal wida\u0107.<\/b> Wynik przedstawiciela, regionu albo sieci handlowej to \u015brednia wynik\u00f3w ich sklep\u00f3w. W panelu mened\u017cera wszystkie sklepy s\u0105 te\u017c u\u0142o\u017cone wed\u0142ug wyniku, najs\u0142absze na g\u00f3rze.<\/li>\n        <\/ol>\n      <\/div>\n      <div class=\"ps-bi ps-bi--solo\" aria-label=\"Przyk\u0142adowy wynik Perfect Store dla jednego sklepu\" style=\"margin-top:0\">\n        <div class=\"ps-bi__top\"><span class=\"ps-bi__dot\" style=\"background:#ef5909\"><\/span><span class=\"ps-bi__dot\" style=\"background:#a046e1\"><\/span><span class=\"ps-bi__dot\" style=\"background:#1668c8\"><\/span><span class=\"ps-bi__title\">Example: score for one store<\/span><\/div>\n        <div class=\"ps-bi__body\">\n          <div class=\"ps-bi__panel ps-bi__panel--open\">\n            <div class=\"ps-tblwrap\"><table class=\"ps-tbl\">\n              <tr><th>KPI<\/th><th class=\"n\">Weight<\/th><th class=\"n\">Target<\/th><th class=\"n\">Found<\/th><th class=\"n\">% of target<\/th><th class=\"n\">Points<\/th><\/tr>\n              <tr><td>Distribution of must-stock products<\/td><td class=\"n\">40<\/td><td class=\"n\">20 products<\/td><td class=\"n\">17<\/td><td class=\"n\">85%<\/td><td class=\"n\"><b>34<\/b><\/td><\/tr>\n              <tr><td>Share of shelf<\/td><td class=\"n\">30<\/td><td class=\"n\">25%<\/td><td class=\"n\">30%<\/td><td class=\"n\">120%<\/td><td class=\"n\"><b>30<\/b> <span class=\"ps-cap-tag\">capped<\/span><\/td><\/tr>\n              <tr><td>Secondary display<\/td><td class=\"n\">15<\/td><td class=\"n\">2<\/td><td class=\"n\">1<\/td><td class=\"n\">50%<\/td><td class=\"n\"><b>7.5<\/b><\/td><\/tr>\n              <tr><td>POS materials<\/td><td class=\"n\">15<\/td><td class=\"n\">4<\/td><td class=\"n\">2<\/td><td class=\"n\">50%<\/td><td class=\"n\"><b>7.5<\/b><\/td><\/tr>\n              <tr class=\"ps-tot\"><td>Perfect Store score<\/td><td class=\"n\">100<\/td><td><\/td><td><\/td><td><\/td><td class=\"n\">79<\/td><\/tr>\n            <\/table><\/div>\n            <p class=\"ps-bi__cap\" style=\"margin:14px 0 0\">Gdyby punkty za KPI nie by\u0142y ograniczone do jego wagi, nadwy\u017cka udzia\u0142u w p\u00f3\u0142ce doda\u0142aby 6 punkt\u00f3w i podnios\u0142a wynik tego sklepu do 85. Przy takim wyniku nie by\u0142oby wida\u0107 brakuj\u0105cej ekspozycji dodatkowej ani brakuj\u0105cych materia\u0142\u00f3w POS.<\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-5\" aria-labelledby=\"sec-5h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Jak to dzia\u0142a<\/p>\n    <h2 id=\"sec-5h\" class=\"ps-h2\" style=\"max-width:38rem\">Od Twojego standardu <span class=\"text-gradient\">do wyniku w sklepie<\/span><\/h2>\n    <div class=\"ps-steps\">\n    <div class=\"ps-step\">\n      <div class=\"ps-step__txt\"><span class=\"ps-step__n\">01<\/span><p class=\"ps-path__stage\">Trade marketing<\/p><h3>Ustal standard<\/h3><p>Trade marketing ustala w back office KPI, wagi i cele, osobno dla ka\u017cdego typu sklepu. Typ sklepu to kana\u0142 (na przyk\u0142ad handel tradycyjny, sieci handlowe albo cash &amp; carry), segment (na przyk\u0142ad sklepy premium albo ekonomiczne) albo po\u0142\u0105czenie obu. Ka\u017cdy sklep dostaje standard dla swojego typu. Trade marketing mo\u017ce zmieni\u0107 KPI albo wag\u0119 bez anga\u017cowania dzia\u0142u IT.<\/p><\/div>\n      <div class=\"ps-step__vis\">\n      <div class=\"ps-bi ps-bi--solo ps-cfg\" aria-label=\"Przyk\u0142adowy standard Perfect Store w back office\" style=\"margin-top:0\">\n        <div class=\"ps-bi__top\"><span class=\"ps-bi__dot\" style=\"background:#ef5909\"><\/span><span class=\"ps-bi__dot\" style=\"background:#a046e1\"><\/span><span class=\"ps-bi__dot\" style=\"background:#1668c8\"><\/span><span class=\"ps-bi__title\">Back office &middot; Perfect Store standard &middot; example<\/span><\/div>\n        <div class=\"ps-bi__body\"><div class=\"ps-bi__panel ps-bi__panel--open\">\n          <div class=\"ps-cfg__chips\"><span>Coffee<\/span><span>Traditional trade<\/span><span>Premium stores<\/span><span class=\"ps-cfg__on\">Active<\/span><\/div>\n          <div class=\"ps-tblwrap\"><table class=\"ps-tbl\">\n            <tr><th>KPI<\/th><th class=\"n\">Weight<\/th><th class=\"n\">Target<\/th><th>Source<\/th><\/tr>\n            <tr><td>Distribution of must-stock products<\/td><td class=\"n\">40<\/td><td class=\"n\">20 products<\/td><td><span class=\"ps-cfg__src\">Photo (optional)<\/span><\/td><\/tr>\n            <tr><td>Share of shelf<\/td><td class=\"n\">30<\/td><td class=\"n\">25%<\/td><td><span class=\"ps-cfg__src\">Photo (optional)<\/span><\/td><\/tr>\n            <tr><td>Secondary display<\/td><td class=\"n\">15<\/td><td class=\"n\">2<\/td><td><span class=\"ps-cfg__src ps-cfg__src--f\">Form<\/span><\/td><\/tr>\n            <tr><td>POS materials<\/td><td class=\"n\">15<\/td><td class=\"n\">4<\/td><td><span class=\"ps-cfg__src ps-cfg__src--f\">Form<\/span><\/td><\/tr>\n            <tr class=\"ps-tot\"><td>Total weight<\/td><td class=\"n\">100<\/td><td><\/td><td><\/td><\/tr>\n          <\/table><\/div>\n          <p class=\"ps-cfg__lab\">When a store has no target for a KPI<\/p>\n          <div class=\"ps-cfg__seg\"><span>Score zero<\/span><span class=\"ps-cfg__seg--on\">Spread its weight<\/span><\/div>\n          <div class=\"ps-cfg__foot\"><span>Assigned to 312 premium stores<\/span><span class=\"ps-cfg__btn\">Send to Mobile Touch<\/span><\/div>\n        <\/div><\/div>\n      <\/div>\n      <\/div>\n    <\/div>\n    <div class=\"ps-conn\" aria-hidden=\"true\"><svg viewBox=\"0 0 100 80\" preserveAspectRatio=\"none\"><defs><linearGradient id=\"psg23\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\"><stop offset=\"0\" stop-color=\"#ff5a5f\"\/><stop offset=\".55\" stop-color=\"#d946ef\"\/><stop offset=\"1\" stop-color=\"#7B61FF\"\/><\/linearGradient><\/defs><path d=\"M23 0 C23 40 77 40 77 80\" fill=\"none\" stroke=\"url(#psg23)\" stroke-width=\"2\" stroke-dasharray=\"6 6\" vector-effect=\"non-scaling-stroke\"\/><\/svg><\/div>\n    <div class=\"ps-step ps-step--rev\">\n      <div class=\"ps-step__txt\"><span class=\"ps-step__n\">02<\/span><p class=\"ps-path__stage\">Przedstawiciel<\/p><h3>Audyt podczas wizyty<\/h3><p>Przedstawiciel otwiera audyt Perfect Store w Mobile Touch i ma na urz\u0105dzeniu aktualny planogram. Wynik przelicza si\u0119 na bie\u017c\u0105co, w miar\u0119 jak uzupe\u0142nia dane dla kolejnych KPI.<\/p><\/div>\n      <div class=\"ps-step__vis\">\n      <img decoding=\"async\" class=\"ps-step__img\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/05\/KV-Dashboard-dark-mode.png\" alt=\"Audyt Perfect Store w Mobile Touch: wynik sklepu obok wyniku z ostatniej wizyty, dost\u0119pno\u015b\u0107 i facingi ka\u017cdego produktu\" loading=\"lazy\" width=\"1668\" height=\"2388\">\n      <\/div>\n    <\/div>\n    <div class=\"ps-conn\" aria-hidden=\"true\"><svg viewBox=\"0 0 100 80\" preserveAspectRatio=\"none\"><defs><linearGradient id=\"psg77\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\"><stop offset=\"0\" stop-color=\"#ff5a5f\"\/><stop offset=\".55\" stop-color=\"#d946ef\"\/><stop offset=\"1\" stop-color=\"#7B61FF\"\/><\/linearGradient><\/defs><path d=\"M77 0 C77 40 23 40 23 80\" fill=\"none\" stroke=\"url(#psg77)\" stroke-width=\"2\" stroke-dasharray=\"6 6\" vector-effect=\"non-scaling-stroke\"\/><\/svg><\/div>\n    <div class=\"ps-step\">\n      <div class=\"ps-step__txt\"><span class=\"ps-step__n\">03<\/span><p class=\"ps-path__stage\">Opcjonalnie<\/p><h3>Formularz uzupe\u0142niony ze zdj\u0119cia<\/h3><p>Gdy korzystasz z <a href=\"https:\/\/assecoplatform.com\/pl\/cyfrowe-rozpoznawanie-polek\/\">Retail Image Recognition<\/a>, status dystrybucji ka\u017cdego produktu i liczba facing\u00f3w trafiaj\u0105 ze zdj\u0119cia p\u00f3\u0142ki do audytu. Przedstawiciel mo\u017ce poprawi\u0107 ka\u017cdy status. Cz\u0119\u015b\u0107 KPI mo\u017ce pochodzi\u0107 ze zdj\u0119\u0107, a cz\u0119\u015b\u0107 z formularza.<\/p><\/div>\n      <div class=\"ps-step__vis\">\n      <figure class=\"ps-fig\" style=\"margin:0\"><span class=\"ap-ai-mark ap-ai-mark--fit ps-step__mark\"><img decoding=\"async\" class=\"ps-step__img\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/perfect-store-coffee-shelf-standard.webp\" alt=\"P\u00f3\u0142ka z kaw\u0105 sfotografowana podczas wizyty, z rozpoznanymi produktami i facingami policzonymi ze zdj\u0119cia\" loading=\"lazy\" width=\"900\" height=\"1342\" data-ai-generated=\"true\"><span class=\"ps-step__chips\"><span class=\"ps-step__chip\">&#10003; 17 z 20 produkt\u00f3w obowi\u0105zkowych na p\u00f3\u0142ce<\/span><span class=\"ps-step__chip\">&#10003; Facingi policzone<\/span><\/span><span class=\"ap-ai-badge\" aria-hidden=\"true\"><\/span><\/span><figcaption><span class=\"ap-ai-credit\">Obraz wygenerowany przez AI<\/span><\/figcaption><\/figure>\n      <\/div>\n    <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-6\" aria-labelledby=\"sec-6h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Smart Presentation<\/p>\n    <h2 id=\"sec-6h\" class=\"ps-h2\" style=\"max-width:34rem\">Co przedstawiciel pokazuje <span class=\"text-gradient\">kierownikowi sklepu<\/span><\/h2>\n    <div class=\"ps-split\" style=\"align-items:start\">\n      <div>\n        <p class=\"ps-lede\" style=\"max-width:40rem\">Smart Presentation to ekran, kt\u00f3ry przedstawiciel pokazuje kierownikowi sklepu, obracaj\u0105c urz\u0105dzenie w jego stron\u0119. Wcze\u015bniej sam przegl\u0105da wszystkie KPI na jednym widoku i wybiera luki, o kt\u00f3rych chce porozmawia\u0107. Na ekranie kierownik widzi:<\/p>\n        <ul class=\"ps-list\">\n          <li>Wynik Perfect Store tego sklepu i KPI, kt\u00f3re go obni\u017cy\u0142y<\/li>\n          <li>Brakuj\u0105ce produkty, kt\u00f3re przedstawiciel mo\u017ce zam\u00f3wi\u0107 od r\u0119ki, bez wychodzenia z Mobile Touch<\/li>\n          <li>Jak zmieni\u0142 si\u0119 ka\u017cdy KPI od ostatniej wizyty<\/li>\n          <li>Jak ten sklep wypada na tle sklep\u00f3w w okolicy<\/li>\n          <li>Zewn\u0119trzne dane rynkowe, je\u015bli je wgrasz<\/li>\n        <\/ul>\n        <p class=\"ps-lede\" style=\"max-width:40rem;margin-top:18px\">Dzi\u0119ki por\u00f3wnaniu ze sklepami w okolicy przedstawiciel ma konkretny argument, na przyk\u0142ad \u017ce sklep kilka ulic dalej ma o 15 punkt\u00f3w wy\u017cszy wynik przy tym samym standardzie.<\/p>\n      <\/div>\n      <div class=\"ps-shots\">\n        <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/05\/Brand-Summary-light-mode.png\" alt=\"Podsumowanie wizyty w Smart Presentation: wynik Perfect Store na tle wyniku z ostatniej wizyty i zmiana ka\u017cdego KPI\" loading=\"lazy\" width=\"834\" height=\"1194\">\n        <img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/05\/Brand-Dashboard-light-mode.png\" alt=\"Ekran audytu w Smart Presentation: punkty za ka\u017cdy KPI, udzia\u0142 w p\u00f3\u0142ce w por\u00f3wnaniu z celem i rekomendacje\" loading=\"lazy\" width=\"834\" height=\"1194\">\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band\" id=\"sec-7\" aria-labelledby=\"sec-7h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Po wizycie<\/p>\n    <h2 id=\"sec-7h\" class=\"ps-h2\" style=\"max-width:44rem\">Dok\u0105d wynik <span class=\"text-gradient\">trafia dalej<\/span><\/h2>\n    <p class=\"ps-lede\" style=\"max-width:46rem\">Po synchronizacji urz\u0105dzenia wynik trafia do panelu mened\u017cera, kt\u00f3ry jest cz\u0119\u015bci\u0105 Perfect Store. Gdy do\u0142o\u017cysz programy motywacyjne, modu\u0142 Coaching albo Dynamic Route Optimization, ten sam wynik mo\u017cesz wykorzysta\u0107 w regu\u0142ach premiowych, w coachingu i w planach wizyt. Dzi\u0119ki Trade Data Hub w planach wizyt uwzgl\u0119dnisz te\u017c sell-out dystrybutor\u00f3w.<\/p>\n    <div class=\"ps-mgr\">\n      <h3>Panel mened\u017cera<\/h3>\n      <p>Panel mened\u017cera pokazuje ranking sklep\u00f3w oraz KPI, kt\u00f3re wypadaj\u0105 s\u0142abo w ca\u0142ym regionie, w ca\u0142ej sieci handlowej albo w ca\u0142ym typie sklep\u00f3w.<\/p>\n      <div class=\"ps-bi\" aria-label=\"Przyk\u0142adowy panel mened\u017cera Perfect Store\">\n        <input type=\"radio\" name=\"psr\" id=\"psr1\" checked><input type=\"radio\" name=\"psr\" id=\"psr2\"><input type=\"radio\" name=\"psr\" id=\"psr3\">\n        <div class=\"ps-bi__top\"><span class=\"ps-bi__dot\" style=\"background:#ef5909\"><\/span><span class=\"ps-bi__dot\" style=\"background:#a046e1\"><\/span><span class=\"ps-bi__dot\" style=\"background:#1668c8\"><\/span><span class=\"ps-bi__title\">Perfect Store &middot; manager dashboard &middot; example data<\/span><\/div>\n        <div class=\"ps-bi__tabs\"><label for=\"psr1\">Channels and regions<\/label><label for=\"psr2\">Stores below threshold<\/label><label for=\"psr3\">Reps<\/label><\/div>\n        <div class=\"ps-bi__body\">\n          <div class=\"ps-bi__panel\" id=\"psp1\">\n            <p class=\"ps-bi__cap\">\u015aredni wynik wed\u0142ug kana\u0142\u00f3w i region\u00f3w w tym miesi\u0105cu.<\/p>\n            <div class=\"ps-bi__kpis\"><div class=\"ps-bi__kpi\"><b>74<\/b><span>Average Perfect Store score<\/span><\/div><div class=\"ps-bi__kpi\"><b>1,420<\/b><span>Stores audited this month<\/span><\/div><div class=\"ps-bi__kpi\"><b>584<\/b><span>Stores below 80<\/span><\/div><div class=\"ps-bi__kpi\"><b>+2 pts<\/b><span>Change vs last month<\/span><\/div><\/div>\n            <div class=\"ps-bi__grid\">\n              <div class=\"ps-bi__card\"><p class=\"ps-bi__h\">By channel<\/p><table class=\"ps-tbl\"><tr><th>Channel<\/th><th class=\"n\">Score<\/th><th style=\"width:140px\"><\/th><\/tr>\n                <tr><td>Traditional trade<\/td><td class=\"n\">71<\/td><td><span class=\"ps-bar\"><i style=\"width:71%;background:#ef5909\"><\/i><\/span><\/td><\/tr>\n                <tr><td>Chains<\/td><td class=\"n\">78<\/td><td><span class=\"ps-bar\"><i style=\"width:78%;background:#ef5909\"><\/i><\/span><\/td><\/tr>\n                <tr><td>Cash-and-carry<\/td><td class=\"n\">69<\/td><td><span class=\"ps-bar\"><i style=\"width:69%;background:#d70e44\"><\/i><\/span><\/td><\/tr>\n              <\/table><\/div>\n              <div class=\"ps-bi__card\"><p class=\"ps-bi__h\">By region<\/p><table class=\"ps-tbl\"><tr><th>Region<\/th><th class=\"n\">Score<\/th><th style=\"width:140px\"><\/th><\/tr>\n                <tr><td>North<\/td><td class=\"n\">76<\/td><td><span class=\"ps-bar\"><i style=\"width:76%;background:#ef5909\"><\/i><\/span><\/td><\/tr>\n                <tr><td>Central<\/td><td class=\"n\">74<\/td><td><span class=\"ps-bar\"><i style=\"width:74%;background:#ef5909\"><\/i><\/span><\/td><\/tr>\n                <tr><td>South<\/td><td class=\"n\">70<\/td><td><span class=\"ps-bar\"><i style=\"width:70%;background:#ef5909\"><\/i><\/span><\/td><\/tr>\n                <tr><td>East<\/td><td class=\"n\">68<\/td><td><span class=\"ps-bar\"><i style=\"width:68%;background:#d70e44\"><\/i><\/span><\/td><\/tr>\n              <\/table><\/div>\n            <\/div>\n          <\/div>\n          <div class=\"ps-bi__panel\" id=\"psp2\">\n            <p class=\"ps-bi__cap\">Sklepy z wynikiem poni\u017cej ustalonego przez Ciebie progu 80, od najni\u017cszego wyniku. Przy ka\u017cdym sklepie KPI, kt\u00f3ry najbardziej obni\u017cy\u0142 jego wynik.<\/p>\n            <div class=\"ps-bi__kpis\"><div class=\"ps-bi__kpi\"><b>584<\/b><span>Stores below 80<\/span><\/div><div class=\"ps-bi__kpi\"><b>96<\/b><span>Stores below 60<\/span><\/div><div class=\"ps-bi__kpi\"><b>Distribution<\/b><span>Most common weakest KPI<\/span><\/div><\/div>\n            <div class=\"ps-bi__card\"><table class=\"ps-tbl\"><tr><th>Store<\/th><th>Channel<\/th><th class=\"n\">Score<\/th><th style=\"width:120px\"><\/th><th>Weakest KPI<\/th><th class=\"n\">Vs last visit<\/th><\/tr>\n              <tr><td>Store 0412<\/td><td>Traditional trade<\/td><td class=\"n\">58<\/td><td><span class=\"ps-bar\"><i style=\"width:58%;background:#d70e44\"><\/i><\/span><\/td><td>Distribution<\/td><td class=\"n\">&minus;6<\/td><\/tr>\n              <tr><td>Store 0187<\/td><td>Chains<\/td><td class=\"n\">66<\/td><td><span class=\"ps-bar\"><i style=\"width:66%;background:#d70e44\"><\/i><\/span><\/td><td>Secondary display<\/td><td class=\"n\">&minus;3<\/td><\/tr>\n              <tr><td>Store 0533<\/td><td>Traditional trade<\/td><td class=\"n\">72<\/td><td><span class=\"ps-bar\"><i style=\"width:72%;background:#ef5909\"><\/i><\/span><\/td><td>POS materials<\/td><td class=\"n\">+2<\/td><\/tr>\n              <tr><td>Store 0091<\/td><td>Cash-and-carry<\/td><td class=\"n\">79<\/td><td><span class=\"ps-bar\"><i style=\"width:79%;background:#ef5909\"><\/i><\/span><\/td><td>Secondary display<\/td><td class=\"n\">&minus;1<\/td><\/tr>\n            <\/table><\/div>\n          <\/div>\n          <div class=\"ps-bi__panel\" id=\"psp3\">\n            <p class=\"ps-bi__cap\">\u015aredni wynik sklep\u00f3w ka\u017cdego przedstawiciela i KPI, z kt\u00f3rym przedstawiciel najcz\u0119\u015bciej ma problem.<\/p>\n            <div class=\"ps-bi__kpis\"><div class=\"ps-bi__kpi\"><b>73<\/b><span>Team average<\/span><\/div><div class=\"ps-bi__kpi\"><b>2<\/b><span>Reps below 70<\/span><\/div><\/div>\n            <div class=\"ps-bi__card\"><table class=\"ps-tbl\"><tr><th>Rep<\/th><th class=\"n\">Avg score<\/th><th style=\"width:140px\"><\/th><th>KPI missed most often<\/th><\/tr>\n              <tr><td>Rep 07<\/td><td class=\"n\">86<\/td><td><span class=\"ps-bar\"><i style=\"width:86%;background:#1aa15a\"><\/i><\/span><\/td><td>None<\/td><\/tr>\n              <tr><td>Rep 12<\/td><td class=\"n\">81<\/td><td><span class=\"ps-bar\"><i style=\"width:81%;background:#1aa15a\"><\/i><\/span><\/td><td>Secondary display<\/td><\/tr>\n              <tr><td>Rep 03<\/td><td class=\"n\">74<\/td><td><span class=\"ps-bar\"><i style=\"width:74%;background:#ef5909\"><\/i><\/span><\/td><td>POS materials<\/td><\/tr>\n              <tr><td>Rep 19<\/td><td class=\"n\">69<\/td><td><span class=\"ps-bar\"><i style=\"width:69%;background:#d70e44\"><\/i><\/span><\/td><td>Distribution<\/td><\/tr>\n              <tr><td>Rep 22<\/td><td class=\"n\">52<\/td><td><span class=\"ps-bar\"><i style=\"width:52%;background:#d70e44\"><\/i><\/span><\/td><td>Distribution<\/td><\/tr>\n            <\/table><\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n    <div class=\"ps-grid3\">\n      <div class=\"ps-blk\"><h3>Premia przedstawiciela<\/h3><p>Je\u015bli korzystasz z program\u00f3w motywacyjnych w <a href=\"https:\/\/assecoplatform.com\/pl\/sprzedaz-i-realizacja-w-handlu-detalicznym\/\">Sales &amp; Retail Execution<\/a>, wynik Perfect Store mo\u017ce by\u0107 warunkiem w regu\u0142ach premiowych. Ju\u017c podczas audytu przedstawiciel widzi, jak wynik wp\u0142ywa na jego premi\u0119.<\/p><\/div>\n      <div class=\"ps-blk\"><h3>Coaching<\/h3><p>W module Coaching mened\u017cerowie regionalni widz\u0105, z kt\u00f3rymi KPI przedstawiciel stale ma problem, i na tej podstawie planuj\u0105 sesje coachingowe w terenie.<\/p><\/div>\n      <div class=\"ps-blk\"><h3>Nast\u0119pna wizyta<\/h3><p>Dzi\u0119ki <a href=\"https:\/\/assecoplatform.com\/pl\/dynamiczna-optymalizacja-tras\/\">Dynamic Route Optimization<\/a> sklepy z wynikiem poni\u017cej Twojego progu dostaj\u0105 pierwsze\u0144stwo w planie wizyt, wi\u0119c przedstawiciel wraca do nich, \u017ceby usun\u0105\u0107 luki. Je\u015bli korzystasz z <a href=\"https:\/\/assecoplatform.com\/pl\/trade-data-hub\/\">Trade Data Hub<\/a>, spadek sell-out dystrybutor\u00f3w do sklepu te\u017c mo\u017ce podnie\u015b\u0107 jego priorytet.<\/p><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-8\" aria-labelledby=\"sec-8h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Efekty<\/p>\n    <h2 id=\"sec-8h\" class=\"ps-h2\" style=\"max-width:38rem\">Efekty Perfect Store, <span class=\"text-gradient\">kt\u00f3re zmierzyli\u015bmy<\/span><\/h2>\n    <div class=\"ps-nums\">\n      <div class=\"ps-num\"><b>+18%<\/b><span>sprzeda\u017cy w sklepach z wynikiem Perfect Store powy\u017cej 80 w por\u00f3wnaniu ze sklepami z wynikiem poni\u017cej 80<\/span><\/div>\n      <div class=\"ps-num\"><b>+22%<\/b><span>dost\u0119pno\u015bci na p\u00f3\u0142ce po wdro\u017ceniu programu audyt\u00f3w<\/span><\/div>\n      <div class=\"ps-num\"><b>3&times;<\/b><span>tyle wizyt z audytem dziennie na przedstawiciela, co przed wdro\u017ceniem<\/span><\/div>\n    <\/div>\n    <p class=\"ps-proof-note\">Dane z kilku naszych wdro\u017ce\u0144 u producent\u00f3w FMCG.<\/p>\n    <figure class=\"ps-voice ps-cust\">\n      <div class=\"ps-voice__brand\"><img decoding=\"async\" src=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/04\/ferrero.svg\" alt=\"Ferrero logo\" loading=\"lazy\"><span>S\u0142odycze<\/span><\/div>\n      <div class=\"ps-voice__q\">\n        <p class=\"ps-cust__k\">Klient<\/p>\n        <h3 class=\"ps-cust__h\">Ferrero ocenia sklepy na podstawie zdj\u0119\u0107 p\u00f3\u0142ek<\/h3>\n        <p class=\"ps-cust__p\">Ferrero korzysta z Perfect Store razem z Retail Image Recognition. Przedstawiciel robi zdj\u0119cie p\u00f3\u0142ki, a wynik Perfect Store uwzgl\u0119dnia to, co rozpoznano na zdj\u0119ciu.<\/p>\n        <div class=\"ps-cust__tags\"><span>Perfect Store<\/span><span>Retail Image Recognition<\/span><\/div>\n      <\/div>\n    <\/figure>\n  <\/div>\n<\/section>\n\n\n\n<style>\n.ps26 .ap-faq2{max-width:none;margin:40px auto 0}\n.ps26 .ap-faq2__head{max-width:none;margin:0;text-align:left}\n.ps26 .ap-faq2__head .ap-eyebrow{display:inline-block;margin-bottom:14px;background:rgba(17,17,17,.06);color:#56565C;padding:5px 12px;border-radius:20px}\n.ps26 .ap-faq2__lede{font-size:18px;line-height:1.6;color:var(--ap-muted);margin:0;max-width:780px}\n.ps26 .ap-faq2__lede a{color:#7B61FF;font-weight:500;text-decoration:none}\n.ps26 .ap-faq2__group{margin-bottom:52px}\n.ps26 .ap-faq2__group:last-child{margin-bottom:0}\n.ps26 .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.ps26 .ap-faq2__qs{display:grid;grid-template-columns:1fr 1fr;gap:22px 64px}\n.ps26 .ap-faq2__qa{padding-bottom:22px;border-bottom:1px solid rgba(0,0,0,.08)}\n.ps26 .ap-faq2__qa .q{font-weight:600;color:var(--ap-text);font-size:16px;line-height:1.35;margin:0 0 8px}\n.ps26 .ap-faq2__qa .a{font-size:15px;line-height:1.62;color:var(--ap-muted);margin:0}\n.ps26 .ap-faq2__qa .a a{color:#7B61FF;font-weight:500;text-decoration:none}\n@media(max-width:820px){.ps26 .ap-faq2__qs{grid-template-columns:1fr;gap:22px}}\n<\/style>\n<section class=\"ap-band\" id=\"sec-9\" aria-labelledby=\"faq-h\">\n  <div class=\"ap-band__inner\">\n    <div class=\"ap-faq2__head\">\n      <p class=\"ap-eyebrow\">FAQ<\/p>\n      <h2 id=\"faq-h\" class=\"ps-h2\" style=\"max-width:40rem\">Pytania o <span class=\"text-gradient\">Perfect Store<\/span><\/h2>\n      <p class=\"ap-faq2__lede\">Je\u015bli nie ma tu odpowiedzi na Twoje pytanie, <a href=\"https:\/\/assecoplatform.com\/pl\/skontaktuj-sie-z-nami\/\">napisz do nas<\/a>.<\/p>\n    <\/div>\n    <div class=\"ap-faq2\"><div class=\"ap-faq2__group\"><h3 class=\"ap-faq2__h\">Perfect Store i wynik<\/h3><div class=\"ap-faq2__qs\"><div class=\"ap-faq2__qa\"><p class=\"q\">Czym jest Perfect Store?<\/p><p class=\"a\">Perfect Store to standard, w kt\u00f3rym producent opisuje, jak jego produkty maj\u0105 si\u0119 prezentowa\u0107 w danym typie sklepu: kt\u00f3re produkty s\u0105 w asortymencie, ile miejsca na p\u00f3\u0142ce dostaj\u0105, jakie ceny i promocje s\u0105 widoczne i gdzie stoj\u0105 ekspozycje. Modu\u0142 Perfect Store podczas wizyty mierzy, jak blisko tego standardu jest ka\u017cdy sklep. Dzi\u0119ki temu realizacj\u0119 standardu masz w postaci jednego wyniku, kt\u00f3ry mo\u017cesz por\u00f3wnywa\u0107 mi\u0119dzy sklepami, przedstawicielami i regionami.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Czym jest Perfect Store score i jak si\u0119 go mierzy?<\/p><p class=\"a\">Perfect Store score, czyli wynik Perfect Store, to liczba od 0 do 100, po kt\u00f3rej wida\u0107, jak bardzo dany sklep zbli\u017ca si\u0119 do standardu producenta. Ka\u017cdy KPI ma wag\u0119, wagi sumuj\u0105 si\u0119 do 100, a punkty za KPI rosn\u0105 proporcjonalnie do stopnia realizacji celu w sklepie. Za KPI nie mo\u017cna dosta\u0107 wi\u0119cej punkt\u00f3w, ni\u017c wynosi jego waga.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Jakie KPI sk\u0142adaj\u0105 si\u0119 na wynik Perfect Store?<\/p><p class=\"a\">Najcz\u0119\u015bciej KPI dotycz\u0105 dystrybucji produkt\u00f3w obowi\u0105zkowych, widoczno\u015bci na p\u00f3\u0142ce i udzia\u0142u w p\u00f3\u0142ce, ekspozycji dodatkowych i promocji, cen oraz materia\u0142\u00f3w POS. Ka\u017cdy KPI mo\u017cna podzieli\u0107 na KPI cz\u0105stkowe, na przyk\u0142ad facingi albo miejsce na p\u00f3\u0142ce, wi\u0119c model mo\u017ce mie\u0107 trzy poziomy: wynik Perfect Store, KPI i KPI cz\u0105stkowe. Producent wybiera KPI i ich wagi dla ka\u017cdego typu sklepu.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Co si\u0119 dzieje, gdy sklep nie ma celu dla danego KPI?<\/p><p class=\"a\">W Perfect Store wybierasz w back office jedn\u0105 z dw\u00f3ch regu\u0142. Albo KPI dostaje zero punkt\u00f3w i sklep nie mo\u017ce osi\u0105gn\u0105\u0107 100, albo KPI zostaje pomini\u0119ty, a jego waga rozk\u0142ada si\u0119 proporcjonalnie na pozosta\u0142e KPI.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Czy handel tradycyjny i sieci handlowe mog\u0105 mie\u0107 r\u00f3\u017cne standardy Perfect Store?<\/p><p class=\"a\">Tak. Ka\u017cdy typ sklepu mo\u017ce mie\u0107 w\u0142asny standard Perfect Store. Typ sklepu to kana\u0142 (na przyk\u0142ad handel tradycyjny, sieci handlowe albo cash &amp; carry), segment (na przyk\u0142ad sklepy premium albo ekonomiczne) albo po\u0142\u0105czenie obu. Ka\u017cdy sklep dostaje standard dla swojego typu, a trade marketing zmienia KPI i wagi w back office bez anga\u017cowania dzia\u0142u IT.<\/p><\/div><\/div><\/div><div class=\"ap-faq2__group\"><h3 class=\"ap-faq2__h\">Praca w terenie i wdro\u017cenie<\/h3><div class=\"ap-faq2__qs\"><div class=\"ap-faq2__qa\"><p class=\"q\">Czy Perfect Store wymaga rozpoznawania obrazu?<\/p><p class=\"a\">Nie. Przedstawiciel mo\u017ce wype\u0142ni\u0107 ca\u0142y audyt Perfect Store r\u0119cznie. Gdy do\u0142o\u017cysz Retail Image Recognition, status dystrybucji ka\u017cdego produktu i liczba facing\u00f3w trafiaj\u0105 ze zdj\u0119cia p\u00f3\u0142ki do audytu. Ty decydujesz, kt\u00f3re KPI pochodz\u0105 ze zdj\u0119\u0107, a kt\u00f3re z formularza.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Czy Perfect Store dzia\u0142a w sklepach bez zasi\u0119gu sieci kom\u00f3rkowej?<\/p><p class=\"a\">Tak. Audyt Perfect Store i wynik s\u0105 dost\u0119pne na urz\u0105dzeniu przedstawiciela tak\u017ce bez po\u0142\u0105czenia z sieci\u0105. Je\u015bli korzystasz z Retail Image Recognition, rozpoznawanie te\u017c mo\u017ce dzia\u0142a\u0107 offline, bo modele rozpoznawania s\u0105 zainstalowane na urz\u0105dzeniu. Wyniki synchronizuj\u0105 si\u0119, gdy urz\u0105dzenie zn\u00f3w jest online.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Czy Perfect Store dzia\u0142a poza Mobile Touch?<\/p><p class=\"a\">Nie. Perfect Store to zaawansowany modu\u0142 Sales &amp; Retail Execution. Jest dost\u0119pny w Mobile Touch, z kt\u00f3rego przedstawiciel ju\u017c korzysta przy wizytach, zam\u00f3wieniach i Selling Stories. Mo\u017cesz go do\u0142o\u017cy\u0107 do dzia\u0142aj\u0105cego wdro\u017cenia Mobile Touch albo uwzgl\u0119dni\u0107 w pe\u0142nym wdro\u017ceniu Sales &amp; Retail Execution.<\/p><\/div><div class=\"ap-faq2__qa\"><p class=\"q\">Ile trwa wdro\u017cenie Perfect Store?<\/p><p class=\"a\">Nasz wzorcowy harmonogram wdro\u017cenia Perfect Store to 6 tygodni od rozpocz\u0119cia projektu do pierwszej wizyty z wynikiem. Obejmuje zdefiniowanie standardu, konfiguracj\u0119 audytu, szkolenie przedstawicieli i mened\u017cer\u00f3w oraz uruchomienie. Rzeczywisty czas zale\u017cy od wielko\u015bci modelu KPI, liczby rynk\u00f3w, integracji z Twoimi systemami i od tego, czy korzystasz ju\u017c z Mobile Touch.<\/p><\/div><\/div><\/div><\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-band ap-band--grey\" id=\"sec-10\" aria-labelledby=\"sec-10h\">\n  <div class=\"ap-band__inner\">\n    <p class=\"ap-eyebrow\">Jak zacz\u0105\u0107<\/p>\n    <h2 id=\"sec-10h\" class=\"ps-h2\" style=\"max-width:36rem\">Jak wdro\u017cenie Perfect Store <span class=\"text-gradient\">zwykle si\u0119 rozwija<\/span><\/h2>\n    <div class=\"ps-path\">\n      <span class=\"ps-path__rail\" aria-hidden=\"true\"><\/span>\n      <div class=\"ps-path__i\"><span class=\"ps-path__node\">01<\/span><p class=\"ps-path__stage\">Start<\/p><h3>Jeden kana\u0142<\/h3><p>Zacznij od jednego standardu w jednym kanale, na przyk\u0142ad w handlu tradycyjnym, i oceniaj jego realizacj\u0119 przy ka\u017cdej wizycie.<\/p><\/div>\n      <div class=\"ps-path__i\"><span class=\"ps-path__node\">02<\/span><p class=\"ps-path__stage\">Rozszerzenie<\/p><h3>Wszystkie kana\u0142y<\/h3><p>Dodaj standardy dla sieci handlowych, cash &amp; carry oraz innych typ\u00f3w sklep\u00f3w, a potem por\u00f3wnuj wyniki kana\u0142\u00f3w w panelu mened\u017cera.<\/p><\/div>\n      <div class=\"ps-path__i\"><span class=\"ps-path__node\">03<\/span><p class=\"ps-path__stage\">Pe\u0142ny zakres<\/p><h3>Premie, coaching i plany wizyt<\/h3><p>Do\u0142\u00f3\u017c programy motywacyjne, modu\u0142 Coaching i Dynamic Route Optimization, a wybrane KPI uzupe\u0142niaj ze zdj\u0119\u0107 p\u00f3\u0142ek dzi\u0119ki Retail Image Recognition.<\/p><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<section class=\"ap-cta\" id=\"sec-11\">\n  <div class=\"ap-cta__inner\">\n    <h2 class=\"ap-cta__h\">Zobacz wynik w sklepach, kt\u00f3re odwiedzaj\u0105 Twoi przedstawiciele<\/h2>\n    <p class=\"ap-cta__p\">Wy\u015blij nam obecny standard Perfect Store, a poka\u017cemy Ci w Mobile Touch, jaki wynik dostaje wed\u0142ug niego jeden ze sklep\u00f3w, kt\u00f3re odwiedzaj\u0105 Twoi przedstawiciele. Je\u015bli dopiero tworzysz standard, pomo\u017cemy Ci go ustali\u0107.<\/p>\n    <a href=\"https:\/\/assecoplatform.com\/pl\/skontaktuj-sie-z-nami\/\" class=\"ap-cta__btn\">Um\u00f3w demo\n      <svg viewBox=\"0 0 16 16\" fill=\"none\"><path d=\"M3 8h10M9 4l4 4-4 4\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n    <\/a>\n  <\/div>\n<\/section>\n\n\n\n<script type=\"application\/ld+json\">\n{\"@context\": \"https:\/\/schema.org\", \"@graph\": [{\"@type\": \"WebPage\", \"@id\": \"https:\/\/assecoplatform.com\/pl\/perfect-store\/\", \"url\": \"https:\/\/assecoplatform.com\/pl\/perfect-store\/\", \"name\": \"Perfect Store dla producent\u00f3w FMCG\", \"isPartOf\": {\"@id\": \"https:\/\/assecoplatform.com\/#website\"}}, {\"@type\": \"Service\", \"@id\": \"https:\/\/assecoplatform.com\/pl\/perfect-store\/#service\", \"name\": \"Perfect Store\", \"serviceType\": \"Perfect Store dla przedstawicieli w terenie w bran\u017cy FMCG\", \"provider\": {\"@type\": \"Organization\", \"name\": \"Asseco Platform\"}, \"description\": \"W Perfect Store ka\u017cdy sklep dostaje podczas wizyty wynik od 0 do 100 wzgl\u0119dem standardu producenta. Przedstawiciel omawia ten wynik z kierownikiem sklepu w Smart Presentation, a wynik mo\u017cna wykorzysta\u0107 w regu\u0142ach premiowych, w coachingu i w planach wizyt.\"}, {\"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"Czym jest Perfect Store?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Perfect Store to standard, w kt\u00f3rym producent opisuje, jak jego produkty maj\u0105 si\u0119 prezentowa\u0107 w danym typie sklepu: kt\u00f3re produkty s\u0105 w asortymencie, ile miejsca na p\u00f3\u0142ce dostaj\u0105, jakie ceny i promocje s\u0105 widoczne i gdzie stoj\u0105 ekspozycje. Modu\u0142 Perfect Store podczas wizyty mierzy, jak blisko tego standardu jest ka\u017cdy sklep. Dzi\u0119ki temu realizacj\u0119 standardu masz w postaci jednego wyniku, kt\u00f3ry mo\u017cesz por\u00f3wnywa\u0107 mi\u0119dzy sklepami, przedstawicielami i regionami.\"}}, {\"@type\": \"Question\", \"name\": \"Czym jest Perfect Store score i jak si\u0119 go mierzy?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Perfect Store score, czyli wynik Perfect Store, to liczba od 0 do 100, po kt\u00f3rej wida\u0107, jak bardzo dany sklep zbli\u017ca si\u0119 do standardu producenta. Ka\u017cdy KPI ma wag\u0119, wagi sumuj\u0105 si\u0119 do 100, a punkty za KPI rosn\u0105 proporcjonalnie do stopnia realizacji celu w sklepie. Za KPI nie mo\u017cna dosta\u0107 wi\u0119cej punkt\u00f3w, ni\u017c wynosi jego waga.\"}}, {\"@type\": \"Question\", \"name\": \"Jakie KPI sk\u0142adaj\u0105 si\u0119 na wynik Perfect Store?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Najcz\u0119\u015bciej KPI dotycz\u0105 dystrybucji produkt\u00f3w obowi\u0105zkowych, widoczno\u015bci na p\u00f3\u0142ce i udzia\u0142u w p\u00f3\u0142ce, ekspozycji dodatkowych i promocji, cen oraz materia\u0142\u00f3w POS. Ka\u017cdy KPI mo\u017cna podzieli\u0107 na KPI cz\u0105stkowe, na przyk\u0142ad facingi albo miejsce na p\u00f3\u0142ce, wi\u0119c model mo\u017ce mie\u0107 trzy poziomy: wynik Perfect Store, KPI i KPI cz\u0105stkowe. Producent wybiera KPI i ich wagi dla ka\u017cdego typu sklepu.\"}}, {\"@type\": \"Question\", \"name\": \"Co si\u0119 dzieje, gdy sklep nie ma celu dla danego KPI?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"W Perfect Store wybierasz w back office jedn\u0105 z dw\u00f3ch regu\u0142. Albo KPI dostaje zero punkt\u00f3w i sklep nie mo\u017ce osi\u0105gn\u0105\u0107 100, albo KPI zostaje pomini\u0119ty, a jego waga rozk\u0142ada si\u0119 proporcjonalnie na pozosta\u0142e KPI.\"}}, {\"@type\": \"Question\", \"name\": \"Czy handel tradycyjny i sieci handlowe mog\u0105 mie\u0107 r\u00f3\u017cne standardy Perfect Store?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Tak. Ka\u017cdy typ sklepu mo\u017ce mie\u0107 w\u0142asny standard Perfect Store. Typ sklepu to kana\u0142 (na przyk\u0142ad handel tradycyjny, sieci handlowe albo cash & carry), segment (na przyk\u0142ad sklepy premium albo ekonomiczne) albo po\u0142\u0105czenie obu. Ka\u017cdy sklep dostaje standard dla swojego typu, a trade marketing zmienia KPI i wagi w back office bez anga\u017cowania dzia\u0142u IT.\"}}, {\"@type\": \"Question\", \"name\": \"Czy Perfect Store wymaga rozpoznawania obrazu?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Nie. Przedstawiciel mo\u017ce wype\u0142ni\u0107 ca\u0142y audyt Perfect Store r\u0119cznie. Gdy do\u0142o\u017cysz Retail Image Recognition, status dystrybucji ka\u017cdego produktu i liczba facing\u00f3w trafiaj\u0105 ze zdj\u0119cia p\u00f3\u0142ki do audytu. Ty decydujesz, kt\u00f3re KPI pochodz\u0105 ze zdj\u0119\u0107, a kt\u00f3re z formularza.\"}}, {\"@type\": \"Question\", \"name\": \"Czy Perfect Store dzia\u0142a w sklepach bez zasi\u0119gu sieci kom\u00f3rkowej?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Tak. Audyt Perfect Store i wynik s\u0105 dost\u0119pne na urz\u0105dzeniu przedstawiciela tak\u017ce bez po\u0142\u0105czenia z sieci\u0105. Je\u015bli korzystasz z Retail Image Recognition, rozpoznawanie te\u017c mo\u017ce dzia\u0142a\u0107 offline, bo modele rozpoznawania s\u0105 zainstalowane na urz\u0105dzeniu. Wyniki synchronizuj\u0105 si\u0119, gdy urz\u0105dzenie zn\u00f3w jest online.\"}}, {\"@type\": \"Question\", \"name\": \"Czy Perfect Store dzia\u0142a poza Mobile Touch?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Nie. Perfect Store to zaawansowany modu\u0142 Sales & Retail Execution. Jest dost\u0119pny w Mobile Touch, z kt\u00f3rego przedstawiciel ju\u017c korzysta przy wizytach, zam\u00f3wieniach i Selling Stories. Mo\u017cesz go do\u0142o\u017cy\u0107 do dzia\u0142aj\u0105cego wdro\u017cenia Mobile Touch albo uwzgl\u0119dni\u0107 w pe\u0142nym wdro\u017ceniu Sales & Retail Execution.\"}}, {\"@type\": \"Question\", \"name\": \"Ile trwa wdro\u017cenie Perfect Store?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Nasz wzorcowy harmonogram wdro\u017cenia Perfect Store to 6 tygodni od rozpocz\u0119cia projektu do pierwszej wizyty z wynikiem. Obejmuje zdefiniowanie standardu, konfiguracj\u0119 audytu, szkolenie przedstawicieli i mened\u017cer\u00f3w oraz uruchomienie. Rzeczywisty czas zale\u017cy od wielko\u015bci modelu KPI, liczby rynk\u00f3w, integracji z Twoimi systemami i od tego, czy korzystasz ju\u017c z Mobile Touch.\"}}]}]}\n<\/script>\n\n\n\n<script>\n\/* AP HERO + init scroll-reveal (kopia ze strony OTIF, CHG-524). Inline na koncu tresci strony. *\/\n(function(){\n  var vids=document.querySelectorAll('.ap-hero-vid');\n  if(vids.length>1){\n    var i=0;\n    try{vids[0].play();}catch(e){}\n    setInterval(function(){\n      var cur=vids[i]; i=(i+1)%vids.length; var nxt=vids[i];\n      try{nxt.currentTime=0; nxt.play();}catch(e){}\n      nxt.classList.add('is-active'); cur.classList.remove('is-active');\n    },8000);\n  }\n})();\n\/* scroll-reveal (DS data-anim\/data-stagger -> .is-visible) *\/\nvar apAnim, apStagger;\nfunction apInitObservers(){\n  if(apAnim)apAnim.disconnect(); if(apStagger)apStagger.disconnect();\n  apAnim=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('is-visible');apAnim.unobserve(e.target);}});},{threshold:0.15,rootMargin:'0px 0px -40px 0px'});\n  document.querySelectorAll('[data-anim]').forEach(function(el){if(!el.classList.contains('is-visible'))apAnim.observe(el);});\n  apStagger=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('is-visible');apStagger.unobserve(e.target);}});},{threshold:0.1,rootMargin:'0px 0px -20px 0px'});\n  document.querySelectorAll('[data-stagger]').forEach(function(el){if(!el.classList.contains('is-visible'))apStagger.observe(el);});\n}\napInitObservers();\n<\/script>\n\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Zanim przedstawiciel wyjdzie ze sklepu, widzi jego wynik Perfect Store wzgl\u0119dem Twojego standardu i na tym samym ekranie omawia luki z kierownikiem sklepu. Gdy do\u0142o\u017cysz modu\u0142y dodatkowe, ten sam wynik&hellip;<\/p>\n","protected":false},"author":0,"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-7883","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.8 (Yoast SEO v28.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Perfect Store w FMCG: wynik z ka\u017cdej wizyty | Asseco Platform<\/title>\n<meta name=\"description\" content=\"Perfect Store: audyt sklepu i wynik od 0 do 100 przy ka\u017cdej wizycie. Przedstawiciel omawia go z kierownikiem sklepu, a wynik zasila premie i plany wizyt.\" \/>\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\/perfect-store\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Perfect Store dla producent\u00f3w FMCG | Asseco Platform\" \/>\n<meta property=\"og:description\" content=\"Perfect Store: audyt sklepu i wynik od 0 do 100 przy ka\u017cdej wizycie. Przedstawiciel omawia go z kierownikiem sklepu, a wynik zasila premie i plany wizyt.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/assecoplatform.com\/pl\/perfect-store\/\" \/>\n<meta property=\"og:site_name\" content=\"Asseco Platform\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-20T10:51:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/Sales-Retail-Execution-picture-v1.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Perfect Store\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/Sales-Retail-Execution-picture-v1.png\" \/>\n<meta name=\"twitter:label1\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data1\" content=\"11 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/\",\"name\":\"Perfect Store w FMCG: wynik z ka\u017cdej wizyty | Asseco Platform\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/perfect-store-hero-sre.webp\",\"datePublished\":\"2026-05-06T13:20:48+00:00\",\"dateModified\":\"2026-10-20T10:51:45+00:00\",\"description\":\"Perfect Store: audyt sklepu i wynik od 0 do 100 przy ka\u017cdej wizycie. Przedstawiciel omawia go z kierownikiem sklepu, a wynik zasila premie i plany wizyt.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/perfect-store-hero-sre.webp\",\"contentUrl\":\"https:\\\/\\\/assecoplatform.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/perfect-store-hero-sre.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/perfect-store\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Perfect Store\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/#website\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/\",\"name\":\"Asseco Platform\",\"description\":\"Solutions for FMCG\",\"publisher\":{\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/#organization\",\"name\":\"Asseco Platform\",\"url\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/assecoplatform.com\\\/pl\\\/#\\\/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\\\/pl\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Perfect Store w FMCG: wynik z ka\u017cdej wizyty | Asseco Platform","description":"Perfect Store: audyt sklepu i wynik od 0 do 100 przy ka\u017cdej wizycie. Przedstawiciel omawia go z kierownikiem sklepu, a wynik zasila premie i plany wizyt.","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\/perfect-store\/","og_locale":"pl_PL","og_type":"article","og_title":"Perfect Store dla producent\u00f3w FMCG | Asseco Platform","og_description":"Perfect Store: audyt sklepu i wynik od 0 do 100 przy ka\u017cdej wizycie. Przedstawiciel omawia go z kierownikiem sklepu, a wynik zasila premie i plany wizyt.","og_url":"https:\/\/assecoplatform.com\/pl\/perfect-store\/","og_site_name":"Asseco Platform","article_modified_time":"2026-10-20T10:51:45+00:00","og_image":[{"url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/Sales-Retail-Execution-picture-v1.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_title":"Perfect Store","twitter_image":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2024\/08\/Sales-Retail-Execution-picture-v1.png","twitter_misc":{"Szacowany czas czytania":"11 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/assecoplatform.com\/pl\/perfect-store\/","url":"https:\/\/assecoplatform.com\/pl\/perfect-store\/","name":"Perfect Store w FMCG: wynik z ka\u017cdej wizyty | Asseco Platform","isPartOf":{"@id":"https:\/\/assecoplatform.com\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/assecoplatform.com\/pl\/perfect-store\/#primaryimage"},"image":{"@id":"https:\/\/assecoplatform.com\/pl\/perfect-store\/#primaryimage"},"thumbnailUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/perfect-store-hero-sre.webp","datePublished":"2026-05-06T13:20:48+00:00","dateModified":"2026-10-20T10:51:45+00:00","description":"Perfect Store: audyt sklepu i wynik od 0 do 100 przy ka\u017cdej wizycie. Przedstawiciel omawia go z kierownikiem sklepu, a wynik zasila premie i plany wizyt.","breadcrumb":{"@id":"https:\/\/assecoplatform.com\/pl\/perfect-store\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/assecoplatform.com\/pl\/perfect-store\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/assecoplatform.com\/pl\/perfect-store\/#primaryimage","url":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/perfect-store-hero-sre.webp","contentUrl":"https:\/\/assecoplatform.com\/wp-content\/uploads\/2026\/10\/perfect-store-hero-sre.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/assecoplatform.com\/pl\/perfect-store\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/assecoplatform.com\/pl\/"},{"@type":"ListItem","position":2,"name":"Perfect Store"}]},{"@type":"WebSite","@id":"https:\/\/assecoplatform.com\/pl\/#website","url":"https:\/\/assecoplatform.com\/pl\/","name":"Asseco Platform","description":"Solutions for FMCG","publisher":{"@id":"https:\/\/assecoplatform.com\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/assecoplatform.com\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/assecoplatform.com\/pl\/#organization","name":"Asseco Platform","url":"https:\/\/assecoplatform.com\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/assecoplatform.com\/pl\/#\/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\/pl\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages\/7883","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"}],"replies":[{"embeddable":true,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/comments?post=7883"}],"version-history":[{"count":5,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages\/7883\/revisions"}],"predecessor-version":[{"id":11110,"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/pages\/7883\/revisions\/11110"}],"wp:attachment":[{"href":"https:\/\/assecoplatform.com\/pl\/wp-json\/wp\/v2\/media?parent=7883"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}