    /* ════════════════════════════
       HERO
    ════════════════════════════ */
    .hero {
      background:
        radial-gradient(1100px 620px at 88% 12%, rgba(246,175,51,0.08), transparent 60%),
        linear-gradient(180deg, #fdfcfb 0%, #f5f4f2 100%);
      color: var(--black);
      min-height: 100svh;
      padding-top: 84px;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      position: relative;
    }
    /* miękki rozjaśniający woal po lewej — tekst zawsze czytelny na zdjęciu */
    .hero::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(to right, #fdfcfb 30%, rgba(253,252,251,0) 62%);
      pointer-events: none;
      z-index: 0;
    }
    .hero-van-box {
      position: absolute;
      right: 0;
      bottom: 0;
      height: 100%;
      width: 64%;
      display: block;
      overflow: hidden;
      opacity: 0.92;
      pointer-events: none;
      z-index: 0;
      mask-image: linear-gradient(to right, transparent 0%, black 40%);
      -webkit-mask-image: linear-gradient(to right, transparent 0%, black 40%);
    }
    /* Kadr (object-position + scale) ustawia styl inline z pól ACF. */
    .hero-van {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .hero-body { position: relative; z-index: 1; }

    /* CRITICAL FIX: use padding-top/bottom only so .wrap's horizontal padding (28px) is preserved */
    .hero-body {
      flex: 1;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 48px;
      /*
       * Kolumny kotwiczone u góry, nie wyśrodkowane w pionie.
       * Wysokość bloku tekstu zależy od długości treści — inna w wersji
       * polskiej i angielskiej, inna po każdej edycji copy, inna przy każdej
       * szerokości okna (zawijanie listy). Przy wyśrodkowaniu ta różnica
       * przesuwała nagłówek i kartę, co przy przełączeniu języka wyglądało
       * jak „skok" strony. Kotwica u góry trzyma nagłówek i kartę zawsze
       * w tym samym miejscu, a różnica długości tekstu schodzi na dół bloku,
       * gdzie jest niewidoczna.
       */
      align-items: start;
      /* rytm pionowy skalowany wysokością okna — cały hero z CTA mieści się
         w pierwszym widoku także na niskich ekranach laptopów */
      padding-top: clamp(24px, 4.5vh, 64px);
      padding-bottom: clamp(24px, 3.5vh, 40px);
      position: relative;
    }

    /* Blok tekstu: odstęp od nagłówka strony zamiast wyśrodkowania —
       skalowany wysokością okna, jak cały rytm hero. */
    .hero-text { padding-top: clamp(16px, 6.5vh, 76px); }

    /* Karta zostaje wyśrodkowana dokładnie tak jak w projekcie. Może, bo jej
       wysokość nie zależy już od długości napisów (patrz .tc-step-label). */
    .hero-visual { align-self: center; }

    .hero-headline {
      font-size: clamp(2.75rem, min(5vw, 9vh), 8rem);
      font-weight: 800;
      line-height: 1.0;
      letter-spacing: -0.04em;
      color: var(--black);
    }
    .hero-headline em {
      font-style: normal;
      color: var(--red);
    }
    .hero-sub {
      margin-top: clamp(14px, 2.2vh, 28px);
      font-size: clamp(0.9375rem, 1.2vw, 1.25rem);
      color: var(--muted);
      max-width: 420px;
      line-height: 1.75;
    }
    .hero-sub--secondary {
      margin-top: 14px;
      color: var(--muted);
      font-size: clamp(0.875rem, 1.2vw, 0.9375rem);
    }
    .hero-list-label {
      margin-top: clamp(12px, 2vh, 20px);
      margin-bottom: 6px;
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--red);
    }
    .hero-list {
      margin-top: 0;
      padding: 0;
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: clamp(3px, 0.7vh, 6px);
    }
    .hero-list li {
      font-size: clamp(0.875rem, 1.2vw, 0.9375rem);
      color: #55534f;
      padding-left: 18px;
      position: relative;
      line-height: 1.6;
    }
    .hero-list li::before {
      content: '';
      position: absolute;
      left: 0;
      top: 8px;
      width: 8px;
      height: 9px;
      background: var(--amber);
      clip-path: polygon(0 0, 100% 50%, 0 100%);
    }
    .hero-actions {
      margin-top: clamp(16px, 3vh, 36px);
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
    }
    /* niskie ekrany (13" laptopy, okna niepełnoekranowe) — dodatkowe ściśnięcie,
       żeby nagłówek, lista i przycisk zmieściły się bez scrollowania */
    @media (min-width: 901px) and (max-height: 740px) {
      .hero { padding-top: 72px; }
      .hero-headline { font-size: min(5vw, 8vh); }
      .hero-list li { line-height: 1.5; }
      .hero-sub { line-height: 1.6; }
    }

    /* Tracking card column */
    .hero-visual {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
    }
    /* wspólna kotwica dla karty, plakietki i trójkątów — wszystko pozycjonowane względem karty */
    .tracking-wrap { position: relative; }

    .tracking-card {
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: 20px;
      width: 340px;
      box-shadow: 0 24px 64px rgba(26,26,26,0.13), 0 4px 16px rgba(26,26,26,0.05);
      overflow: hidden;
      position: relative;
      z-index: 1;
      /* isolation: isolate prevents dot-grid pseudo-element from bleeding into card */
      isolation: isolate;
      will-change: transform;
      transition: transform 0.4s ease, box-shadow 0.4s ease;
    }
    .tracking-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 32px 80px rgba(26,26,26,0.17), 0 8px 24px rgba(26,26,26,0.07);
    }

    .tc-header {
      background: var(--black);
      padding: 18px 20px 16px;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .tc-title {
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.5);
    }
    .tc-id {
      font-size: 0.8125rem;
      font-weight: 600;
      color: var(--white);
      margin-top: 2px;
    }
    .tc-badge {
      background: rgba(246,175,51,0.15);
      border: 1px solid var(--amber);
      color: var(--amber);
      font-size: 0.6875rem;
      font-weight: 700;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      padding: 5px 10px;
      border-radius: 20px;
      display: flex;
      align-items: center;
      gap: 5px;
    }
    .tc-badge-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--amber);
      animation: pulse-dot 1.6s ease-in-out infinite;
    }
    @keyframes pulse-dot {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(0.7); }
    }

    .tc-map {
      height: 160px;
      position: relative;
      overflow: hidden;
      border-radius: 0;
    }
    .tc-map #tracker-map { width: 100%; height: 100%; }
    .tc-map .leaflet-control-attribution { display: none; }
    .tc-map .leaflet-control-zoom { display: none; }
    @keyframes pulse-ring {
      0%   { box-shadow: 0 0 0 0 rgba(163,26,25,0.4); }
      70%  { box-shadow: 0 0 0 8px rgba(163,26,25,0); }
      100% { box-shadow: 0 0 0 0 rgba(163,26,25,0); }
    }

    /* ─── BRAND TRIANGLE MOTIF SYSTEM ─── */
    .tri-deco {
      position: absolute;
      pointer-events: none;
      user-select: none;
      z-index: 0;
      display: block;
    }
    /* Light/off-white backgrounds: multiply removes white bg, shows brand colors */
    .tri-deco--mul { mix-blend-mode: multiply; }
    /* Dark/black backgrounds: screen reveals brand colors against darkness */
    .tri-deco--scr { mix-blend-mode: screen; }
    /* delikatne unoszenie — `translate` nie nadpisuje transform ustawionego inline */
    @keyframes tri-float {
      0%, 100% { translate: 0 0; }
      50%      { translate: 0 -14px; }
    }
    .tri-deco--float      { animation: tri-float 8s ease-in-out infinite; }
    .tri-deco--float-slow { animation: tri-float 13s ease-in-out infinite; }
    @media (prefers-reduced-motion: reduce) {
      .tri-deco--float, .tri-deco--float-slow { animation: none; }
    }

    /* .sec positioning is handled globally in style.css */

    .tc-eta {
      padding: 14px 20px;
      display: flex;
      align-items: center;
      gap: 12px;
      border-bottom: 1px solid var(--border);
    }
    .tc-eta-icon {
      width: 36px; height: 36px;
      border-radius: 8px;
      background: rgba(163,26,25,0.08);
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
    }
    .tc-eta-icon svg { width: 18px; height: 18px; stroke: var(--red); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
    .tc-eta-label { font-size: 0.6875rem; color: var(--muted); font-weight: 500; }
    .tc-eta-value { font-size: 0.9375rem; font-weight: 700; color: var(--black); }

    .tc-timeline {
      padding: 14px 20px;
      display: flex;
      align-items: center;
      border-bottom: 1px solid var(--border);
    }
    .tc-step {
      flex: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 6px;
      position: relative;
    }
    .tc-step::after {
      content: '';
      position: absolute;
      top: 8px;
      left: 50%;
      width: 100%;
      height: 2px;
      background: var(--border);
    }
    .tc-step:last-child::after { display: none; }
    .tc-step.done::after { background: var(--red); }
    .tc-step-dot {
      width: 18px; height: 18px;
      border-radius: 50%;
      border: 2px solid var(--border);
      background: var(--white);
      z-index: 1;
      display: flex; align-items: center; justify-content: center;
    }
    .tc-step.done .tc-step-dot { background: var(--red); border-color: var(--red); }
    .tc-step.active .tc-step-dot { background: var(--white); border-color: var(--red); box-shadow: 0 0 0 4px rgba(163,26,25,0.15); }
    .tc-step.done .tc-step-dot::after {
      content: '';
      width: 6px; height: 4px;
      border-left: 1.5px solid white;
      border-bottom: 1.5px solid white;
      transform: rotate(-45deg) translateY(-1px);
      display: block;
    }
    .tc-step.active .tc-step-dot::after {
      content: '';
      width: 6px; height: 6px;
      border-radius: 50%;
      background: var(--red);
      display: block;
    }
    /* Dwie linie na stałe: najdłuższa etykieta wyznaczała wysokość osi czasu,
       a więc i całej karty — przy krótszym napisie karta „skakała”. */
    .tc-step-label {
      font-size: 0.625rem;
      color: var(--muted);
      text-align: center;
      line-height: 1.3;
      font-weight: 500;
      /* Trzy linie na stałe: przy karcie zwężonej do 300 px (poniżej 1100 px
         okna) najdłuższa etykieta zawija się na trzy linie i podnosiła
         wysokość całej karty. Stałe pudełko trzyma kartę w jednym rozmiarze
         niezależnie od języka i długości napisu. */
      min-height: 3.9em;
    }
    .tc-step.done .tc-step-label,
    .tc-step.active .tc-step-label { color: var(--black); }

    .tc-courier {
      padding: 14px 20px;
      display: flex; align-items: center; gap: 12px;
    }
    .tc-courier-avatar {
      width: 36px; height: 36px; border-radius: 50%;
      background: var(--red); color: var(--white);
      font-size: 0.75rem; font-weight: 700;
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
    }
    .tc-courier-name { font-size: 0.875rem; font-weight: 600; color: var(--black); }
    .tc-courier-rating { font-size: 0.6875rem; color: var(--muted); margin-top: 1px; }
    .tc-courier-rating span { color: var(--amber); }
    .tc-courier-btn {
      margin-left: auto;
      width: 34px; height: 34px; border-radius: 50%;
      border: 1.5px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0; cursor: pointer;
    }
    .tc-courier-btn svg { width: 16px; height: 16px; stroke: var(--black); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }

    .hero-card-mini {
      position: absolute;
      top: 122px; left: -56px;
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 12px 16px;
      box-shadow: 0 16px 40px rgba(26,26,26,0.12);
      display: flex; align-items: center; gap: 10px;
      z-index: 2;
    }
    .hcm-icon {
      width: 32px; height: 32px; border-radius: 8px;
      background: rgba(163,26,25,0.1);
      display: flex; align-items: center; justify-content: center;
    }
    .hcm-icon svg { width: 16px; height: 16px; stroke: var(--red); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
    .hcm-label { font-size: 0.6875rem; color: var(--muted); }
    .hcm-value { font-size: 0.875rem; font-weight: 700; color: var(--black); }

    /* ════════════════════════════
       PARTNERS
    ════════════════════════════ */
    .partners-sec {
      padding: var(--sec-y-sm) 0;
      background: var(--white);
      border-bottom: 1px solid var(--border);
      position: relative;
      overflow: hidden;
    }
    .partners-head {
      text-align: center;
      margin-bottom: 52px;
    }
    .partners-head .label { justify-content: center; }
    .partners-tagline {
      font-size: 1rem;
      color: var(--muted);
      margin-top: 10px;
      line-height: 1.6;
    }
    .partners-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      border: 1px solid var(--border);
      border-radius: var(--r-md);
      overflow: hidden;
    }
    .partner-cell {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 52px 60px;
      border-right: 1px solid var(--border);
      background: var(--white);
      transition: background var(--ease);
      cursor: default;
    }
    .partner-cell:last-child { border-right: none; }
    .partner-cell { transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease; }
    .partner-cell:hover { background: var(--off); transform: scale(1.04); box-shadow: 0 8px 24px rgba(0,0,0,0.07); z-index: 1; }
    .partner-logo {
      max-height: 56px;
      max-width: 100%;
      width: auto;
      object-fit: contain;
      display: block;
      filter: grayscale(1) opacity(0.42);
      mix-blend-mode: multiply;
      transition: filter 0.3s ease, transform 0.3s ease;
    }
    .partner-cell:hover .partner-logo {
      filter: grayscale(0) opacity(1);
      transform: scale(1.05);
    }
    @media (max-width: 700px) {
      .partners-grid { grid-template-columns: 1fr; }
      .partner-cell { border-right: none; border-bottom: 1px solid var(--border); padding: 40px 48px; }
      .partner-cell:last-child { border-bottom: none; }
    }

    /* ════════════════════════════
       SERVICES
    ════════════════════════════ */
    .services-layout {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: start;
    }
    .service-list { margin-top: 40px; }
    .service-item {
      display: grid;
      grid-template-columns: 52px 1fr;
      gap: 20px;
      align-items: start;
      padding: 24px 16px;
      border-bottom: 1px solid var(--border);
      border-radius: 10px;
      transition: transform 0.28s cubic-bezier(0.25,0.46,0.45,0.94), box-shadow 0.28s ease, background 0.28s ease;
      cursor: default;
    }
    .service-item:first-child { border-top: 1px solid var(--border); }
    .service-item:hover {
      transform: translateX(6px);
      box-shadow: 0 8px 28px rgba(0,0,0,0.08);
      background: var(--white);
      border-color: transparent;
    }
    .service-item:hover .icon-box {
      background: var(--red);
    }
    .service-item:hover .icon-box svg {
      stroke: var(--white);
    }
    .icon-box { transition: background 0.28s ease; }
    .icon-box svg { transition: stroke 0.28s ease; }
    .service-name { font-size: 1.0625rem; font-weight: 600; color: var(--black); }
    .service-desc { font-size: 0.875rem; color: var(--muted); margin-top: 4px; line-height: 1.6; }

    /* Service metrics panel */
    .services-visual { position: sticky; top: 96px; }
    .service-feature-card {
      background: var(--off);
      border-radius: var(--r-lg);
      padding: 32px;
      overflow: hidden;
      position: relative;
    }
    .sfc-decor-1 {
      position: absolute; top: -50px; right: -50px;
      width: 200px; height: 200px; border-radius: 50%;
      background: rgba(163,26,25,0.06);
      pointer-events: none;
    }
    .sfc-decor-2 {
      position: absolute; bottom: -60px; left: -40px;
      width: 240px; height: 240px; border-radius: 50%;
      background: rgba(246,175,51,0.07);
      pointer-events: none;
    }
    .sfc-stat-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      margin-bottom: 12px;
      position: relative;
    }
    .sfc-stat {
      background: var(--white);
      border-radius: var(--r-md);
      padding: 18px 20px;
    }
    .sfc-stat-num {
      font-size: 1.875rem;
      font-weight: 800;
      letter-spacing: -0.03em;
      color: var(--black);
      line-height: 1;
    }
    .sfc-stat-num { transition: color 0.3s ease; }
    .sfc-stat:hover .sfc-stat-num { color: var(--red); }
    .sfc-stat-label { font-size: 0.75rem; color: var(--muted); margin-top: 4px; }

    .sfc-bar-group {
      background: var(--white);
      border-radius: var(--r-md);
      padding: 20px;
      position: relative;
    }
    .sfc-bar-group-title {
      font-size: 0.6875rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 16px;
    }
    .sfc-bar-entry { margin-bottom: 14px; }
    .sfc-bar-entry:last-child { margin-bottom: 0; }
    .sfc-bar-top {
      display: flex;
      justify-content: space-between;
      margin-bottom: 6px;
    }
    .sfc-bar-name { font-size: 0.8125rem; color: var(--black); font-weight: 500; }
    .sfc-bar-pct { font-size: 0.8125rem; font-weight: 700; color: var(--black); }
    .sfc-bar {
      height: 6px;
      background: var(--border);
      border-radius: 3px;
      overflow: hidden;
    }
    .sfc-bar-fill {
      height: 100%;
      border-radius: 3px;
      background: var(--red);
    }
    .sfc-bar-fill.amber { background: var(--amber); }

    /* Checklist replacing confusing tags */
    .sfc-checklist {
      margin-top: 12px;
      background: var(--white);
      border-radius: var(--r-md);
      padding: 16px 20px;
      position: relative;
    }
    .sfc-checklist-title {
      font-size: 0.6875rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 10px;
    }
    .sfc-check-item {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 5px 0;
      font-size: 0.8125rem;
      color: var(--black);
    }
    .sfc-check-item svg {
      width: 14px; height: 14px;
      stroke: var(--red);
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
      flex-shrink: 0;
    }

    /* ════════════════════════════
       SCALE
    ════════════════════════════ */
    .scale-section {
      background: var(--black);
      color: var(--white);
      padding: var(--sec-y) 0;
      position: relative;
      overflow: hidden;
      /* ciemna "wyspa" — zaokrąglona, z oddechem wokół */
      width: min(1560px, calc(100% - 32px));
      margin: 0 auto;
      border-radius: 36px;
    }
    .scale-bg-svg {
      position: absolute; inset: 0;
      width: 100%; height: 100%;
      opacity: 0.07;
      pointer-events: none;
    }
    .scale-inner { position: relative; z-index: 1; }
    .scale-van-box {
      position: absolute;
      right: 0;
      top: 0;
      height: 100%;
      width: 62%;
      display: block;
      overflow: hidden;
      opacity: 0.22;
      mask-image: linear-gradient(to right, transparent 0%, black 45%);
      -webkit-mask-image: linear-gradient(to right, transparent 0%, black 45%);
      pointer-events: none;
      z-index: 0;
    }
    .scale-van {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .scale-top {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: center;
      margin-bottom: 56px;
    }
    .scale-numbers {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 0;
    }
    .scale-item {
      padding-right: 40px;
      border-right: 1px solid rgba(255,255,255,0.1);
    }
    .scale-item:last-child { border-right: none; padding-right: 0; }
    .scale-item:not(:first-child) { padding-left: 40px; }
    /* tabular-nums prevents width jumping during counter animation */
    .scale-num {
      font-size: clamp(2.5rem, 4vw, 4rem);
      font-weight: 800;
      color: var(--white);
      letter-spacing: -0.04em;
      line-height: 1;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .scale-num { transition: color 0.3s ease; }
    .scale-item:hover .scale-num { color: var(--red-lt); }
    .scale-label { font-size: 0.875rem; color: rgba(255,255,255,0.5); margin-top: 10px; line-height: 1.5; }

    .coverage-strip {
      border-top: 1px solid rgba(255,255,255,0.08);
      padding-top: 40px;
      display: flex;
      align-items: center;
      gap: 32px;
      flex-wrap: wrap;
    }
    .coverage-label {
      font-size: 0.6875rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.35);
      white-space: nowrap;
    }
    .coverage-cities { display: flex; gap: 8px; flex-wrap: wrap; }
    .city-chip {
      font-size: 0.8125rem;
      font-weight: 500;
      color: rgba(255,255,255,0.6);
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.1);
      border-radius: 20px;
      padding: 5px 14px;
      transition: all 0.2s ease;
      cursor: default;
    }
    .city-chip:hover {
      background: rgba(255,255,255,0.15);
      color: var(--white);
      border-color: rgba(255,255,255,0.3);
      transform: translateY(-2px);
    }
    .city-chip--more { color: rgba(255,255,255,0.35); }

    /* ════════════════════════════
       PROCESS
    ════════════════════════════ */
    .process-header {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: end;
      margin-bottom: 64px;
    }
    .process-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 0;
      position: relative;
    }
    .process-connector {
      position: absolute;
      top: 23px;
      left: 12.5%;
      right: 12.5%;
      height: 2px;
      background: repeating-linear-gradient(to right, var(--border) 0 10px, transparent 10px 20px);
      z-index: 0;
    }
    .process-step {
      padding-right: 24px;
      position: relative;
      z-index: 1;
      transition: transform 0.28s cubic-bezier(0.25,0.46,0.45,0.94);
      cursor: default;
    }
    .process-step:hover { transform: translateY(-4px); }
    .process-step:hover .process-num-circle {
      background: var(--red);
      border-color: var(--red);
      color: var(--white);
    }
    .process-num-circle { transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease; }
    .process-step:last-child { padding-right: 0; }
    .process-num-circle {
      width: 48px; height: 48px;
      border-radius: 50%;
      background: var(--white);
      border: 1.5px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      font-size: 0.8125rem; font-weight: 700; color: var(--muted);
      margin-bottom: 20px;
    }
    .process-step.active .process-num-circle {
      background: var(--red);
      border-color: var(--red);
      color: var(--white);
    }
    .process-step-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 8px; }
    .process-step-desc { font-size: 0.8125rem; color: var(--muted); line-height: 1.6; }

    /* ════════════════════════════
       BRANŻE
    ════════════════════════════ */
    .industries-section { background: transparent; overflow: hidden; }
    .industries-section h2 { color: var(--black); }
    .industries-rows {
      display: flex;
      flex-direction: column;
      gap: 96px;
      margin-top: 72px;
    }
    .ind-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 72px;
      align-items: center;
    }
    /* co drugi rząd — grafika po prawej */
    .ind-row--flip .ind-media { order: 2; }
    .ind-media { position: relative; max-width: 400px; margin: 0 auto; width: 100%; }
    .ind-tri {
      position: relative;
      z-index: 1;
      display: block;
      width: 100%;
      height: auto;
    }
    .ind-tri image {
      transform-box: fill-box;
      transform-origin: center;
      transition: transform 0.5s ease;
    }
    .ind-row:hover .ind-tri image { transform: scale(1.045); }
    /* mały dekoracyjny trójkąt wystający zza zdjęcia */
    .ind-accent {
      position: absolute;
      width: 36%;
      height: auto;
      z-index: 0;
      pointer-events: none;
    }
    .ind-accent--red { left: -7%; bottom: 3%; }
    .ind-accent--amber { right: -6%; top: -5%; }
    .ind-icon {
      width: 56px; height: 56px;
      border-radius: 14px;
      background: var(--red);
      color: var(--white);
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 22px;
    }
    .ind-name {
      font-size: 1.875rem; font-weight: 700;
      color: var(--black);
      line-height: 1.25;
      margin: 0 0 18px;
    }
    .ind-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
    .ind-list li { font-size: 0.9375rem; color: var(--muted); line-height: 1.6; padding-left: 18px; position: relative; }
    .ind-list li::before { content: ''; position: absolute; left: 0; top: 8px; width: 8px; height: 9px; background: var(--amber); clip-path: polygon(0 0, 100% 50%, 0 100%); }
    .ind-link {
      display: inline-flex; align-items: center; gap: 8px;
      margin-top: 26px;
      font-size: 0.9375rem; font-weight: 600;
      color: var(--red);
      text-decoration: none;
    }
    .ind-link svg { transition: transform 0.25s ease; }
    .ind-link:hover svg { transform: translateX(4px); }
    @media (max-width: 900px) {
      .industries-rows { gap: 64px; margin-top: 48px; }
      .ind-row { grid-template-columns: 1fr; gap: 36px; }
      .ind-row--flip .ind-media { order: 0; }
      .ind-media { max-width: 420px; margin: 0 auto; width: 100%; }
    }

    /* ════════════════════════════
       WHY SCALE
    ════════════════════════════ */
    .why-scale-grid {
      display: grid;
      grid-template-columns: 380px 1fr;
      gap: 72px;
      align-items: center;
    }
    .why-scale-left .eyebrow { margin-bottom: 12px; }
    .why-scale-left h2 { margin-bottom: 20px; }
    .why-scale-right {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }
    .wsb-card {
      display: flex;
      flex-direction: column;
      gap: 14px;
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: 14px;
      padding: 24px 22px;
      transition: transform 0.28s cubic-bezier(0.25,0.46,0.45,0.94), box-shadow 0.28s ease, border-color 0.28s ease;
      cursor: default;
    }
    .wsb-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 12px 32px rgba(0,0,0,0.09);
      border-color: rgba(163,26,25,0.25);
    }
    .wsb-card:hover .wsb-icon {
      background: var(--red);
      color: var(--white);
    }
    .wsb-icon { transition: background 0.28s ease, color 0.28s ease; }
    .wsb-icon {
      flex-shrink: 0;
      width: 44px;
      height: 44px;
      border-radius: 10px;
      background: rgba(163,26,25,0.08);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--red);
    }
    .wsb-title {
      font-size: 0.9375rem;
      font-weight: 700;
      color: var(--black);
      margin-bottom: 4px;
      line-height: 1.3;
    }
    .wsb-desc {
      font-size: 0.8125rem;
      color: var(--muted);
      line-height: 1.6;
    }
    @media (max-width: 1000px) {
      .why-scale-grid { grid-template-columns: 1fr; gap: 40px; }
    }
    @media (max-width: 540px) {
      .why-scale-right { grid-template-columns: 1fr; }
    }

    /* ════════════════════════════
       TESTIMONIAL
    ════════════════════════════ */
    .testimonial-section {
      position: relative;
      overflow: hidden;
      background:
        radial-gradient(900px 480px at 92% 0%, rgba(246,175,51,0.09), transparent 60%),
        var(--white);
    }
    .testimonial-section .wrap { position: relative; z-index: 2; }
    .testimonial-inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: center;
    }
    .testimonial-stars { display: flex; gap: 4px; margin-bottom: 24px; }
    .testimonial-stars svg { width: 20px; height: 20px; fill: var(--amber); }
    .testimonial-quote {
      font-size: clamp(1.1rem, 1.8vw, 1.375rem);
      font-weight: 600;
      line-height: 1.5;
      letter-spacing: -0.01em;
      color: var(--black);
    }
    .testimonial-author { margin-top: 28px; display: flex; align-items: center; gap: 14px; }
    .testimonial-avatar {
      width: 48px; height: 48px; border-radius: 50%;
      background: var(--red); color: var(--white);
      font-size: 0.8125rem; font-weight: 700;
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
    }
    .testimonial-name { font-size: 0.9375rem; font-weight: 600; }
    .testimonial-role { font-size: 0.8125rem; color: var(--muted); margin-top: 2px; }

    .testimonial-metrics {
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: var(--r-lg);
      padding: 32px;
      box-shadow: 0 20px 56px rgba(26,26,26,0.06);
    }
    .tm-header {
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 24px;
    }
    .tm-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px 0;
      border-bottom: 1px solid var(--border);
    }
    .tm-row:last-child { border-bottom: none; padding-bottom: 0; }
    .tm-row-label { font-size: 0.875rem; color: var(--muted); }
    .tm-row-value { font-size: 1rem; font-weight: 700; color: var(--black); }
    .tm-row-value.green { color: #16a34a; }
    .tm-ring-wrap { margin: 0 0 24px; display: flex; align-items: center; gap: 20px; }
    .tm-ring { position: relative; width: 80px; height: 80px; flex-shrink: 0; }
    .tm-ring svg { transform: rotate(-90deg); }
    .tm-ring-track { fill: none; stroke: var(--border); stroke-width: 8; }
    .tm-ring-fill { fill: none; stroke: var(--red); stroke-width: 8; stroke-linecap: round; stroke-dasharray: 213; stroke-dashoffset: 15; }
    .tm-ring-label { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 1rem; font-weight: 800; color: var(--black); }
    .tm-ring-desc { font-size: 0.875rem; color: var(--muted); line-height: 1.5; }
    .tm-ring-desc strong { color: var(--black); display: block; font-weight: 700; margin-bottom: 2px; }

    /* ════════════════════════════
       CTA CLOSE
    ════════════════════════════ */
    .cta-close-section {
      background: linear-gradient(135deg, var(--red) 0%, #8d1516 100%);
      padding: var(--sec-y) 0;
      position: relative;
      overflow: hidden;
      /* czerwona "wyspa" przed stopką */
      width: min(1560px, calc(100% - 32px));
      margin: var(--sec-y) auto 40px;
      border-radius: 36px;
    }
    .cta-close-inner {
      position: relative;
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 40px;
      align-items: center;
    }
    .cta-close-headline {
      font-size: clamp(2rem, 3.5vw, 2.75rem);
      font-weight: 700;
      line-height: 1.15;
      letter-spacing: -0.02em;
      color: var(--white);
    }

    /* ════════════════════════════
       RESPONSIVE
    ════════════════════════════ */
    @media (max-width: 1100px) {
      .tracking-card { width: 300px; }
      .hero-card-mini { left: -30px; }
    }
    /* ════════════════════════════
       STATS SHOWCASE SECTION
    ════════════════════════════ */
    .stats-showcase {
      background: transparent;
      position: relative;
      overflow: hidden;
      /* dół = 0: odstęp do kolejnej sekcji daje jej własny padding (.sec = 96px),
         góra symetrycznie tyle samo */
      padding: var(--sec-y) 0 0;
    }
    .stats-showcase-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: 24px;
      overflow: hidden;
      box-shadow: 0 20px 56px rgba(26,26,26,0.05);
    }
    .stats-showcase-cell {
      padding: 44px 36px;
      border-right: 1px solid var(--border);
      display: flex;
      align-items: flex-start;
      gap: 18px;
      position: relative;
      transition: background 0.3s ease, transform 0.3s cubic-bezier(0.25,0.46,0.45,0.94);
      cursor: default;
    }
    .stats-showcase-cell:last-child { border-right: none; }
    .stats-showcase-cell:hover {
      background: rgba(163,26,25,0.04);
      transform: translateY(-4px);
    }
    .stats-showcase-cell:hover .stats-sc-num {
      color: var(--red);
    }
    .stats-showcase-cell:hover .stats-sc-tri {
      transform: scale(1.15);
      fill: var(--red);
    }
    .stats-sc-num { transition: color 0.3s ease; }
    .stats-sc-tri { transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), fill 0.3s ease; }
    .stats-sc-tri {
      width: 44px;
      height: 44px;
      flex-shrink: 0;
      margin-top: 6px;
    }
    .stats-sc-num {
      font-size: clamp(2.25rem, 3vw, 3.25rem);
      font-weight: 700;
      color: var(--black);
      letter-spacing: -0.04em;
      line-height: 1;
    }
    .stats-sc-label {
      font-size: 0.8125rem;
      color: var(--muted);
      margin-top: 8px;
      line-height: 1.55;
      max-width: 160px;
    }

    @media (max-width: 900px) {
      .hero-body {
        grid-template-columns: 1fr;
        padding-top: 48px;
        padding-bottom: 24px;
      }
      .hero-visual { display: none; }
      /* van jako delikatna tekstura pod tekstem */
      .hero-van-box {
        width: 100%;
        opacity: 0.28;
        mask-image: linear-gradient(to right, transparent 0%, black 55%);
        -webkit-mask-image: linear-gradient(to right, transparent 0%, black 55%);
      }
      .hero::after {
        background: linear-gradient(to bottom, rgba(253,252,251,0.7), rgba(253,252,251,0.35));
      }
      .stats-showcase-grid { grid-template-columns: 1fr 1fr; }
      .stats-showcase-cell:nth-child(2) { border-right: none; }
      .stats-showcase-cell:nth-child(3) { border-top: 1px solid var(--border); }
      .stats-showcase-cell:nth-child(4) { border-top: 1px solid var(--border); border-right: none; }
      .logo-item { min-width: 90px; }
      .services-layout { grid-template-columns: 1fr; }
      .services-visual { position: static; margin-top: 32px; }
      .sfc-stat-row { grid-template-columns: 1fr 1fr; }
      .scale-top { grid-template-columns: 1fr; gap: 32px; }
      .scale-numbers { grid-template-columns: 1fr; gap: 0; }
      .scale-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.1); padding: 20px 0; }
      .scale-item:last-child { border-bottom: none; padding-bottom: 0; }
      .scale-item:not(:first-child) { padding-left: 0; }
      .scale-num { font-size: clamp(2rem, 10vw, 3rem); }
      .process-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
      .process-connector { display: none; }
      .process-step { padding-right: 0; }
      .process-header { grid-template-columns: 1fr; gap: 20px; }
      .testimonial-inner { grid-template-columns: 1fr; gap: 40px; }
      .cta-close-inner { grid-template-columns: 1fr; }
    }
    @media (max-width: 600px) {
      .hero-list, .hero-list-label { display: none; }
      .hero { min-height: 65svh; }
      .hero-headline { font-size: clamp(2.75rem, 11vw, 3.5rem); }
      .stats-showcase-grid { grid-template-columns: 1fr 1fr; border-top: none; }
      .stats-showcase-cell { padding: 24px 20px; gap: 14px; border-right: none; border-top: 1px solid var(--border); }
      .stats-showcase-cell:nth-child(odd) { border-right: 1px solid var(--border); }
      .stats-sc-tri { width: 24px; height: 24px; flex-shrink: 0; margin-top: 0; }
      .stats-sc-num { font-size: clamp(1.6rem, 8vw, 2.25rem); }
      .stats-sc-unit { font-size: 0.85em; }
      .stats-sc-label { font-size: 0.72rem; margin-top: 4px; max-width: none; line-height: 1.4; }
      .logo-item { padding: 8px 12px; }
      .logo-wordmark { font-size: 0.9375rem; }
      .process-grid { grid-template-columns: 1fr; }
      .sfc-stat-row { grid-template-columns: 1fr; }
    }

    /* ════════════════════════════
       HERO — WIDE
    ════════════════════════════ */
    @media (min-width: 1440px) {
      .hero-van-box { width: 58%; }
      .hero-visual {
        justify-content: flex-end;
        padding-right: 24px;
      }
    }
  
