/* Blok Pasek CTA z kontaktem: czerwony gradient na zdjęciu, treść po lewej, kafelki kontaktu po prawej. */
.rg-cta-strip__box {
  position: relative; isolation: isolate; overflow: hidden;
  display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 32px; align-items: center;
  min-height: 256px; padding: 43px; border-radius: 14px; background: #141416;
}
.rg-cta-strip__image { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: var(--image-focus, 50% 40%); }
.rg-cta-strip__box::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(90deg, var(--color-red) 0%, rgba(203, 33, 39, .95) 34%, rgba(182, 28, 34, .7) 58%, rgba(15, 15, 16, .15) 100%);
}
.rg-cta-strip h2 { max-width: 15em; font-size: var(--text-h2); font-weight: var(--weight-bold); line-height: 1.2; letter-spacing: -.05em; }
.rg-cta-strip__lead { max-width: 594px; margin-top: 16px; color: rgba(255, 255, 255, .94); line-height: 1.65; }
.rg-cta-strip__button { margin-top: 22px; }

/* Przyciski wyboru tematu (np. „Towar ADR”): każdy wpisuje swój temat w formularz kontaktowy. */
.rg-cta-strip__choices { display: flex; flex-wrap: wrap; gap: 9px; margin: 24px 0; padding: 0; list-style: none; }
.rg-cta-strip__choice {
  display: inline-flex; align-items: center; min-height: 44px; padding: 10px 14px;
  border: 1px solid rgba(20, 20, 22, .2); border-radius: var(--radius-control); background: #fff;
  color: #141416; font-size: var(--text-button); font-weight: var(--weight-medium); line-height: 1.4;
  transition: border-color var(--duration) var(--ease);
}
.rg-cta-strip__choice:is(:hover, :focus-visible) { border-color: var(--color-red); }

/* Wariant jasny: jasny panel z ciemnym tekstem, zdjęcie w prawej części, czerwony przycisk. */
.rg-cta-strip--light .rg-cta-strip__box::after {
  background: linear-gradient(90deg, #f4f2f3 0%, #f4f2f3 60%, rgba(244, 242, 243, .7) 66%, rgba(244, 242, 243, 0) 82%);
}
.rg-cta-strip--light .rg-cta-strip__image { left: 58%; width: 42%; object-position: var(--image-focus, 50% 50%); }
.rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement) h2 { color: #141416; }
.rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement) .rg-cta-strip__lead { color: #46464c; }
.rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement) .rg-cta-strip__contacts:not(.rg-cta-strip__contacts--overlay, .rg-cta-strip__contacts--stacked) { align-self: end; }
.rg-cta-strip--light .rg-cta-strip__contact { border-color: rgba(255, 255, 255, .18); background: rgba(15, 15, 16, .8); backdrop-filter: blur(11px); }

.rg-cta-strip__contacts { display: grid; gap: 9px; }
.rg-cta-strip h2 em { color: var(--color-red); font-style: normal; }

/* Zdjęcie w kolumnie kontaktu: kafelki na zdjęciu (overlay) albo pod nim (stacked). */
.rg-cta-strip__contacts--overlay {
  position: relative; isolation: isolate; align-self: stretch; align-content: end; overflow: hidden;
  min-height: var(--contacts-photo-h, 361px); padding: 16px; border-radius: 12px;
}
.rg-cta-strip__contacts--overlay .rg-cta-strip__contacts-photo { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; object-position: var(--contacts-focus, 50% 50%); }
.rg-cta-strip__contacts--stacked { align-self: start; gap: 16px; }
.rg-cta-strip__contacts--stacked .rg-cta-strip__contacts-photo { width: 100%; height: var(--contacts-photo-h, 220px); border-radius: 4px; object-fit: cover; object-position: var(--contacts-focus, 50% 40%); }
/* Kafelek osoby i kafelek kontaktu (linki) pod zdjęciem, np. Dyrektor Logistyki; szersza kolumna kontaktu. */
@media (min-width: 1025px) { .rg-cta-strip__box:has(.rg-cta-strip__people) { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); } }
.rg-cta-strip__contacts:has(.rg-cta-strip__people) { gap: 40px; }
.rg-cta-strip__contacts:has(.rg-cta-strip__people) .rg-cta-strip__contacts-photo { height: 250px; object-position: 50% 25%; }
/* Zdjęcie przed treścią w kodzie (kafelek osoby): prawa kolumna, nad kafelkami; treść w lewej kolumnie na obu wierszach. */
.rg-cta-strip__box:has(> .rg-cta-strip__contacts-photo--lead) { grid-template-rows: auto auto; gap: 40px; }
.rg-cta-strip__box:has(> .rg-cta-strip__contacts-photo--lead) .rg-cta-strip__main { grid-column: 1; grid-row: 1 / 3; }
.rg-cta-strip__contacts-photo--lead { grid-column: 2; grid-row: 1; width: 100%; height: 250px; border-radius: 4px; object-fit: cover; object-position: 50% 25%; }
.rg-cta-strip__box:has(> .rg-cta-strip__contacts-photo--lead) .rg-cta-strip__contacts { grid-column: 2; grid-row: 2; align-self: start; }
.rg-cta-strip__people { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rg-cta-strip__person { display: grid; align-content: center; gap: 4px; min-height: 86px; line-height: 1.4; padding: 16px 24px; border: 1px solid rgba(20, 20, 22, .12); border-radius: 12px; background: #fff; color: #141416; }
.rg-cta-strip__person strong { font-size: 17px; font-weight: var(--weight-medium); }
.rg-cta-strip__person span { color: rgba(20, 20, 22, .66); font-size: 15px; }
.rg-cta-strip__person a { color: #141416; text-decoration: underline; text-underline-offset: 3px; }
.rg-cta-strip__person a:is(:hover, :focus-visible) { color: var(--color-red); }

/* Wariant statement: jasny panel z delikatnymi kręgami po prawej, ciemny przycisk, białe kafelki kontaktu. */
.rg-cta-strip--statement .rg-cta-strip__box { background: #f1efef; }
.rg-cta-strip--statement .rg-cta-strip__box::after {
  background: radial-gradient(circle at 88% 50%, transparent 0 106px, rgba(20, 20, 22, .07) 107px 108px, transparent 109px 169px,
    rgba(20, 20, 22, .063) 170px 171px, transparent 172px 241px, rgba(20, 20, 22, .05) 242px 243px, transparent 244px);
}
.rg-cta-strip--statement h2 { max-width: 460px; font-weight: var(--weight-semibold); }
.rg-cta-strip--wide h2, .rg-cta-strip--statement.rg-cta-strip--wide h2 { max-width: none; }
.rg-cta-strip--statement .rg-cta-strip__lead { max-width: 513px; line-height: 1.6; }
.rg-cta-strip--statement .rg-cta-strip__button { background: #141416; border-color: #141416; color: #fff; }
.rg-cta-strip--statement .rg-cta-strip__button:is(:hover, :focus-visible) { background: #2a2a2e; border-color: #2a2a2e; }
.rg-cta-strip--statement .rg-cta-strip__contact { border-color: rgba(20, 20, 22, .12); background: #fff; color: #141416; backdrop-filter: none; }
.rg-cta-strip--statement .rg-cta-strip__contact small { color: #6b6b71; }
.rg-cta-strip--statement .rg-cta-strip__contact button { background: rgba(20, 20, 22, .05); color: #141416; }
.rg-cta-strip--statement .rg-cta-strip__contact button:is(:hover, :focus-visible) { background: rgba(20, 20, 22, .1); }
.rg-cta-strip__contact {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px;
  padding: 14px 16px; border: 1px solid rgba(255, 255, 255, .22); border-radius: 12px;
  background: rgba(15, 15, 16, .72); backdrop-filter: blur(5px); font-size: 15px; line-height: 1.6;
}
.rg-cta-strip__contact small { display: block; color: rgba(255, 255, 255, .72); font-size: var(--text-small); line-height: 1.6; }
.rg-cta-strip__contact strong { display: block; margin-top: 3px; font-size: 14.4px; font-weight: var(--weight-regular); line-height: 1.6; }
.rg-cta-strip__contact a:is(:hover, :focus-visible) strong { text-decoration: underline; text-underline-offset: 4px; }
.rg-cta-strip__contact button {
  min-height: 40px; padding: 8px 10px; border: 0; border-radius: 7px;
  background: rgba(255, 255, 255, .1); color: #fff; font-size: 15px; font-weight: var(--weight-light);
  transition: background-color var(--duration) var(--ease);
}
.rg-cta-strip__contact button:is(:hover, :focus-visible) { background: rgba(255, 255, 255, .18); }

@media (max-width: 1024px) {
  .rg-cta-strip__box { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; min-height: 285px; padding: 48px; border-radius: 16px; }
  .rg-cta-strip__lead { margin-top: 18px; }
  .rg-cta-strip__lead + .rg-cta-strip__lead { margin-top: 16px; }
  .rg-cta-strip__button { margin-top: 24px; }
  .rg-cta-strip__contacts { gap: 10px; }
  .rg-cta-strip__contact { gap: 18px; padding: 16px 18px; border-radius: 13px; }
  .rg-cta-strip__contact strong { font-size: var(--text-body); }
  .rg-cta-strip__contact button { min-height: 44px; padding: 9px 11px; border-radius: 8px; }
}
@media (max-width: 920px) {
  .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr); gap: 26px; min-height: 0; padding: 34px; }
  .rg-cta-strip__contacts--overlay { min-height: 365px; }
  .rg-cta-strip__box:has(> .rg-cta-strip__contacts-photo--lead) { grid-template-rows: none; gap: 26px; }
  .rg-cta-strip__box:has(> .rg-cta-strip__contacts-photo--lead) .rg-cta-strip__main { grid-column: 1; grid-row: 1; }
  .rg-cta-strip__contacts-photo--lead { grid-column: 1; grid-row: 2; }
  .rg-cta-strip__box:has(> .rg-cta-strip__contacts-photo--lead) .rg-cta-strip__contacts { grid-column: 1; grid-row: 3; }
}
@media (max-width: 640px) {
  .rg-cta-strip__box { padding: 24px; }
  .rg-cta-strip__box::after { background: linear-gradient(var(--color-red) 0%, rgba(203, 33, 39, .92) 55%, rgba(143, 19, 24, .95) 100%); }
  .rg-cta-strip--statement .rg-cta-strip__box::after { background: radial-gradient(circle at 88% 30%, transparent 0 106px, rgba(20, 20, 22, .07) 107px 108px, transparent 109px 169px, rgba(20, 20, 22, .063) 170px 171px, transparent 172px); }
  .rg-cta-strip--statement h2 { max-width: none; }
  .rg-cta-strip__contacts--stacked .rg-cta-strip__contacts-photo { height: 202px; }
  .rg-cta-strip__button { white-space: normal; text-align: left; }
  .rg-cta-strip__contacts:has(.rg-cta-strip__people) .rg-cta-strip__contacts-photo, .rg-cta-strip__contacts-photo--lead { height: 240px; }
  .rg-cta-strip__people { grid-template-columns: minmax(0, 1fr); }
  .rg-cta-strip--light .rg-cta-strip__box::after { background: linear-gradient(#f4f2f3 0%, #f4f2f3 62%, rgba(244, 242, 243, .6) 78%, rgba(244, 242, 243, 0) 100%); }
  .rg-cta-strip--light .rg-cta-strip__image { inset: auto 0 0; top: 72%; left: 0; width: 100%; height: auto; }
  .rg-cta-strip__choices { gap: 10px; }
  .rg-cta-strip__contact { gap: 10px; padding: 14px; }
  .rg-cta-strip__contact button { padding: 10px; }
}

/* Wariant ciemny (strona główna): sekcja na ciemniejszej powierzchni z mniejszym odstępem u góry, panel na przyciemnionym
   zdjęciu z ciemnym gradientem, nagłówek 24 px, czerwony przycisk, kafelki kontaktu półprzezroczyste. */
.rg-cta-strip--dark { padding-block: 27px 48.6px; background: var(--color-surface-2); }
.rg-cta-strip--dark .rg-cta-strip__box { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 32.4px; min-height: 256.5px; padding: 43.2px; border-radius: 16.2px; background: var(--color-surface-2); }
.rg-cta-strip--dark .rg-cta-strip__image { opacity: .32; }
.rg-cta-strip--dark .rg-cta-strip__box::after { background: linear-gradient(90deg, rgba(20, 20, 22, .96) 0%, rgba(20, 20, 22, .72) 50%, rgba(20, 20, 22, .26) 100%); }
.rg-cta-strip--dark h2 { max-width: 594px; font-size: var(--text-h3); letter-spacing: -.02em; line-height: 1.3; }
.rg-cta-strip--dark .rg-cta-strip__button { margin-top: 21.6px; }
.rg-cta-strip--dark .rg-cta-strip__contact { padding: 14.4px 16.2px; border-color: rgba(255, 255, 255, .18); border-radius: 11.7px; background: rgba(15, 15, 16, .56); backdrop-filter: blur(12px); }
.rg-cta-strip--dark .rg-cta-strip__contact small { color: rgba(255, 255, 255, .66); }
.rg-cta-strip--dark .rg-cta-strip__contact button:is(:hover, :focus-visible) { background: var(--color-red); }
@media (max-width: 1180px) { .rg-cta-strip--dark .rg-cta-strip__box { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 1024px) {
  .rg-cta-strip--dark { padding-block: 30px 54px; }
  .rg-cta-strip--dark .rg-cta-strip__box { gap: 36px; min-height: 285px; padding: 48px; border-radius: 18px; }
  .rg-cta-strip--dark .rg-cta-strip__button { margin-top: 24px; }
  .rg-cta-strip--dark .rg-cta-strip__contact { padding: 16px 18px; border-radius: 13px; }
}
@media (max-width: 900px) {
  .rg-cta-strip--dark { padding-top: 28px; }
  .rg-cta-strip--dark .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 34px; }
}
@media (max-width: 640px) {
  .rg-cta-strip--dark .shell { padding-inline: 14px; }
  .rg-cta-strip--dark .rg-cta-strip__box { gap: 26px; padding: 26px; }
  .rg-cta-strip--dark .rg-cta-strip__box::after { background: linear-gradient(90deg, rgba(20, 20, 22, .96) 0%, rgba(20, 20, 22, .72) 50%, rgba(20, 20, 22, .26) 100%); }
  .rg-cta-strip--dark .rg-cta-strip__contact { padding: 13px; }
}

/* Lista „co przygotować” (checklist_title + checklist) nad przyciskiem: wymiary z obecnej strony (components.css: cta-checklist). */
.rg-cta-strip__checklist-title { margin: var(--space-4) 0 0; color: #fff; font-size: 17px; font-weight: var(--weight-medium); line-height: 1.2; }
.rg-cta-strip__checklist { display: grid; gap: var(--space-2); margin: var(--space-3) 0 var(--space-4); padding: 0; list-style: none; color: rgba(255, 255, 255, .88); font-size: 15px; line-height: 1.5; }
.rg-cta-strip__checklist strong { margin-right: var(--space-1); color: #fff; font-weight: var(--weight-medium); }
.rg-cta-strip__checklist + .rg-cta-strip__button { margin-top: 21.6px; } /* jak .cta-main .btn w HTML: lista ma własny dolny odstęp 16 px */

/* Pasek z osobą (person.cutout; uwaga 26.10, makiety Klaudii; jak .cta-strip--person w HTML): treść po lewej, wycięta sylwetka
   przy dolnej krawędzi paska wystająca 64 px nad pasek, po prawej biała wizytówka z ikonami (imię i stanowisko, e-mail, telefon).
   Pasek bez zdjęcia pod gradientem; gradient i kręgi obcięte do zaokrąglenia, bo pasek nie przycina sylwetki (overflow visible). */
.rg-cta-strip--person .rg-cta-strip__box {
  --cta-pad: 48px;
  /* 40 px nad paskiem i sylwetka wystająca 56 px (HTML e55569a): głowa nie wchodzi w sekcję wyżej. */
  --cta-person-over: 56px;
  margin-top: 40px;
  /* Układ (spotkanie 27.10): sylwetka przy prawej krawędzi, wizytówka nachodzi na sylwetkę od dołu po lewej. */
  --cta-person-over: 72px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .46fr); column-gap: var(--space-5); align-items: center;
  padding: var(--cta-pad); overflow: visible;
}
.rg-cta-strip--person .rg-cta-strip__box::after, .rg-cta-strip--person .rg-cta-strip__image { border-radius: inherit; }
/* Czerwony pasek z osobą (Transport, Alan Puzyna): pełny czerwony gradient jak w HTML (--gradient-red), bez ciemnego końca. */
.rg-cta-strip--person:not(.rg-cta-strip--light, .rg-cta-strip--statement, .rg-cta-strip--dark) .rg-cta-strip__box::after {
  background: linear-gradient(90deg, #cb2127 0%, #cb2127 38%, #a8191f 60%, #3a1316 86%, #141416 100%); /* czerwień z ciemnym końcem (klientka 27.10) */
}
/* Ciemny pasek z osobą na zdjęciu (Logistyka #wzrost, Maciej Przybyszewski na tle magazynu; uwaga 27.10): zdjęcie ma być
   widoczne, więc jest jaśniejsze niż w zwykłym ciemnym pasku, a gradient ciemny tylko pod tekstem. Bez cienia za sylwetką
   na jasnym pasku (uwaga 27.10). */
.rg-cta-strip--dark.rg-cta-strip--person .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr) minmax(280px, .46fr); gap: 0 var(--space-5); padding: var(--cta-pad); }
.rg-cta-strip--dark.rg-cta-strip--person .rg-cta-strip__image { opacity: .6; object-position: var(--image-focus, 50% 50%); }
.rg-cta-strip--dark.rg-cta-strip--person .rg-cta-strip__box::after { background: linear-gradient(90deg, rgba(20, 20, 22, .94) 0%, rgba(20, 20, 22, .78) 42%, rgba(20, 20, 22, .35) 70%, rgba(20, 20, 22, .45) 100%); }
.rg-cta-strip--dark.rg-cta-strip--person h2 { max-width: 15em; font-size: var(--text-h2); letter-spacing: -.05em; line-height: 1.2; }
.rg-cta-strip--dark.rg-cta-strip--person .rg-cta-strip__button { margin-top: 24px; }
.rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement).rg-cta-strip--person .rg-cta-strip__person-figure img { filter: none; }
.rg-cta-strip--person .rg-cta-strip__main { grid-column: 1; grid-row: 1; }
.rg-cta-strip__person-figure {
  grid-column: 2; grid-row: 1; position: relative; z-index: 2; align-self: stretch;
  margin: calc(-1 * var(--cta-pad)) calc(-1 * var(--cta-pad) + 8px) calc(-1 * var(--cta-pad)) 0; min-height: 240px;
}
.rg-cta-strip__person-figure img {
  position: absolute; inset: auto; bottom: 0; right: 0; width: auto; max-width: none; height: calc(100% + var(--cta-person-over, 56px));
  object-fit: contain; object-position: bottom right;
  filter: drop-shadow(0 18px 24px rgba(0, 0, 0, .28)); pointer-events: none;
}
.rg-section.rg-cta-strip--person .rg-cta-strip__box > .rg-cta-strip__contacts--person { position: absolute; right: calc(var(--cta-pad) + 150px); bottom: var(--cta-pad); z-index: 3; padding: 0; }
.rg-cta-strip__card {
  display: grid; gap: 10px; min-width: 260px; padding: 18px 20px; border-radius: 14px;
  background: #fff; color: #141416; box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
}
.rg-cta-strip__card-row { display: flex; align-items: center; gap: 12px; color: inherit; font-size: 15px; line-height: 1.35; text-decoration: none; }
.rg-cta-strip__card-row strong { display: block; font-size: 16px; font-weight: var(--weight-medium); }
.rg-cta-strip__card-row span:not(.rg-cta-strip__card-icon) { display: block; color: #6b6b71; font-size: 14px; }
a.rg-cta-strip__card-row:is(:hover, :focus-visible) { color: var(--color-red); }
.rg-cta-strip__card-icon { display: grid; flex: none; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(20, 20, 22, .06); color: #141416; }
.rg-cta-strip__card-icon svg { width: 18px; height: 18px; }
.rg-cta-strip--person:not(.rg-cta-strip--light, .rg-cta-strip--statement, .rg-cta-strip--dark) .rg-cta-strip__card { box-shadow: 0 10px 30px rgba(0, 0, 0, .3); }
@media (max-width: 1024px) {
  .rg-cta-strip--person .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr) minmax(200px, .55fr); row-gap: var(--space-4); }
  .rg-section.rg-cta-strip--person .rg-cta-strip__box > .rg-cta-strip__contacts--person { position: static; grid-column: 1 / -1; grid-row: 2; justify-self: start; }
}
@media (max-width: 600px) {
  .rg-cta-strip--person .rg-cta-strip__box, .rg-cta-strip--dark.rg-cta-strip--person .rg-cta-strip__box { --cta-pad: 28px; grid-template-columns: minmax(0, 1fr); } /* ciemny wariant też w jednej kolumnie (inaczej postać miała 2 px) */
  .rg-cta-strip__person-figure { grid-column: 1; grid-row: 2; margin: 0; min-height: 0; }
  .rg-cta-strip__person-figure img { position: static; display: block; width: auto; max-width: 100%; height: 240px; margin: 0 auto; transform: none; filter: none; }
  .rg-section.rg-cta-strip--person .rg-cta-strip__box > .rg-cta-strip__contacts--person { grid-row: 3; justify-self: stretch; }
  .rg-cta-strip__card { min-width: 0; }
}

/* CTA z dwiema osobami (Kariera, mail klientki 27.10): tekst u góry po lewej, przycisk w prawym górnym rogu, para
   na środku z nogami obciętymi dolną krawędzią, wizytówki w dolnych rogach. */
.rg-cta-strip--duo .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr) minmax(300px, .55fr) minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); row-gap: var(--space-4); min-height: 360px; }
.rg-cta-strip--duo .rg-cta-strip__main { grid-column: 1; grid-row: 1; }
.rg-cta-strip--duo .rg-cta-strip__corner { grid-column: 3; grid-row: 1; justify-self: end; align-self: start; position: relative; z-index: 2; }
.rg-cta-strip--duo .rg-cta-strip__person-figure { grid-column: 2; grid-row: 1 / 3; margin-inline: 0; clip-path: inset(-140px 0 0 0); }
.rg-cta-strip--duo .rg-cta-strip__person-figure img { left: 50%; right: auto; transform: translateX(-50%); object-position: bottom center; }
.rg-section.rg-cta-strip--duo .rg-cta-strip__box > .rg-cta-strip__contacts--person { position: static; grid-row: 2; align-self: end; grid-column: 1; justify-self: start; }
.rg-section.rg-cta-strip--duo .rg-cta-strip__box > .rg-cta-strip__contacts--second { grid-column: 3; justify-self: end; }
/* Dłuższy tekst (text_wide, Spedytor i Akademia 31.10, jak .cta-strip--duo[data-person-fit]): szersza kolumna tekstu, żeby pasek
   nie rósł (wraz z nim rośnie zdjęcie pary, a środkowa kolumna ucina je z boków). */
@media (min-width: 1025px) {
  .rg-cta-strip--text-wide .rg-cta-strip__box { grid-template-columns: minmax(0, 1.2fr) minmax(300px, .55fr) minmax(0, .9fr); }
}
@media (max-width: 1024px) {
  .rg-cta-strip--duo .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; }
  .rg-cta-strip--duo .rg-cta-strip__corner { grid-column: 1; grid-row: 2; justify-self: start; }
  .rg-cta-strip--duo .rg-cta-strip__person-figure { grid-column: 1; grid-row: 3; margin: 0; min-height: 0; clip-path: none; }
  .rg-cta-strip--duo .rg-cta-strip__person-figure img { position: static; display: block; width: auto; max-width: 100%; height: 260px; margin: 0 auto; transform: none; filter: none; }
  .rg-section.rg-cta-strip--duo .rg-cta-strip__box > .rg-cta-strip__contacts--person { grid-column: 1; grid-row: 4; justify-self: stretch; }
  .rg-section.rg-cta-strip--duo .rg-cta-strip__box > .rg-cta-strip__contacts--second { grid-row: 5; }
}
/* CTA z osobą bez wycinanki (Kierowca: Piotr Błachut): zdjęcie osoby jako tło ciemnego paska, wizytówka po prawej. */
.rg-cta-strip--person-photo .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr) auto; }
.rg-section.rg-cta-strip--person-photo .rg-cta-strip__box > .rg-cta-strip__contacts--person { position: static; grid-column: 2; grid-row: 1; align-self: center; }
.rg-cta-strip--dark.rg-cta-strip--person-photo .rg-cta-strip__image { opacity: .55; }
/* Na stronie Kierowcy (31.10, kariera.css) pasek stoi w zwykłej sekcji: odstępy i tło sekcji jak pozostałe, panel #141416,
   na telefonie zwykły margines strony i 16 px między tekstem a wizytówką. */
.rg-cta-strip--dark.rg-cta-strip--person-photo { padding-block: var(--section-pad-y); background: none; }
.rg-cta-strip--dark.rg-cta-strip--person-photo .rg-cta-strip__box { background: #141416; }
@media (max-width: 1024px) {
  .rg-section.rg-cta-strip--person-photo .rg-cta-strip__box > .rg-cta-strip__contacts--person { grid-column: 1; grid-row: 2; justify-self: start; }
  .rg-cta-strip--dark.rg-cta-strip--person-photo .rg-cta-strip__box { row-gap: var(--space-4); }
}
@media (max-width: 640px) {
  .rg-cta-strip--dark.rg-cta-strip--person-photo .shell { padding-inline: var(--gutter); }
}

/* Dwa przyciski obok siebie (button2, 31.10: Paliwa „Regularnie zużywasz paliwo?”, jak .paliwa-cta-actions). */
.rg-cta-strip__buttons { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: 22px; }
.rg-cta-strip__buttons .rg-cta-strip__button { margin-top: 0; }
@media (max-width: 640px) { .rg-cta-strip__buttons { row-gap: 36px; } } /* telefon: przyciski jeden pod drugim jak w HTML */

/* Pas w gradiencie akcentu (variant band, 31.10: Przewoźnicy CTA 1 i 2, jak .pz-band): bez zdjęcia, tekst po lewej,
   biały przycisk po prawej; sekcja z mniejszym odstępem (32 px). */
.rg-cta-strip--band { padding-block: var(--space-6); }
.rg-cta-strip--band .rg-cta-strip__box {
  grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-5) var(--space-8); min-height: 0;
  padding: var(--space-7); border-radius: var(--radius-card); background: var(--gradient-red, var(--color-red));
}
.rg-cta-strip--band .rg-cta-strip__box::after { content: none; }
.rg-cta-strip--band h2 { max-width: none; color: #fff; }
.rg-cta-strip--band .rg-cta-strip__lead { max-width: 760px; color: rgba(255, 255, 255, .88); }
.rg-cta-strip--band .rg-cta-strip__box > .rg-cta-strip__button { margin-top: 0; }
@media (max-width: 1024px) {
  .rg-cta-strip--band .rg-cta-strip__box { grid-template-columns: minmax(0, 1fr); justify-items: start; padding: var(--space-6); }
}
@media (max-width: 760px) {
  .rg-cta-strip--band .rg-cta-strip__box { padding: var(--space-5); }
}

/* Motyw jasny (jak prototyp: theme-light.css robi z .cta-strip ciemną wyspę, 327ca06): każdy pasek ma ciemny panel.
   Panel ma tokeny ciemne (base.css), warianty jasny i statement odwracają się na #141416 z białym tekstem,
   przycisk statement jest biały (był czarny na czarnym). */
:root[data-theme="light"] .rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement) .rg-cta-strip__box { background: #141416; }
:root[data-theme="light"] .rg-cta-strip--light .rg-cta-strip__box::after {
  background: linear-gradient(90deg, #141416 0%, #141416 60%, rgba(20, 20, 22, .7) 66%, rgba(20, 20, 22, 0) 82%);
}
:root[data-theme="light"] .rg-cta-strip--statement .rg-cta-strip__box::after {
  background: radial-gradient(circle at 88% 50%, transparent 0 106px, rgba(255, 255, 255, .07) 107px 108px, transparent 109px 169px,
    rgba(255, 255, 255, .063) 170px 171px, transparent 172px 241px, rgba(255, 255, 255, .05) 242px 243px, transparent 244px);
}
:root[data-theme="light"] .rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement) h2 { color: #fff; }
:root[data-theme="light"] .rg-cta-strip:is(.rg-cta-strip--light, .rg-cta-strip--statement) .rg-cta-strip__lead { color: rgba(255, 255, 255, .78); }
:root[data-theme="light"] .rg-cta-strip--statement .rg-cta-strip__button { background: #fff; border-color: #fff; color: #141416; }
:root[data-theme="light"] .rg-cta-strip--statement .rg-cta-strip__button:is(:hover, :focus-visible) { background: #e6e6e8; border-color: #e6e6e8; }
@media (max-width: 640px) {
  :root[data-theme="light"] .rg-cta-strip--light .rg-cta-strip__box::after {
    background: linear-gradient(#141416 0%, #141416 62%, rgba(20, 20, 22, .6) 78%, rgba(20, 20, 22, 0) 100%);
  }
  :root[data-theme="light"] .rg-cta-strip--statement .rg-cta-strip__box::after {
    background: radial-gradient(circle at 88% 30%, transparent 0 106px, rgba(255, 255, 255, .07) 107px 108px, transparent 109px 169px, rgba(255, 255, 255, .063) 170px 171px, transparent 172px);
  }
}

/* Pasek z osobą po uwagach 29.10 (HTML 4f2517f, 5ee6d30, 50483b6): sekcja ze zwykłym odstępem nad paskiem, postać większa
   (kadr do pępka: zdjęcie powiększone o 1/--cta-person-crop i przycięte dolną krawędzią paska, głowa dalej nad paskiem),
   wizytówka dalej w lewo i stałej szerokości, czarny pasek z czerwonym gradientem za osobą (A10: bez samego czarnego tła). */
.rg-cta-strip--dark.rg-cta-strip--person { padding-top: var(--section-pad-y); }
.rg-cta-strip--dark.rg-cta-strip--person:not(:has(.rg-cta-strip__image)) .rg-cta-strip__box {
  background: linear-gradient(100deg, #161618 0%, #161618 50%, #3a1316 72%, #8e1a1f 100%);
}
.rg-cta-strip--dark.rg-cta-strip--person:not(:has(.rg-cta-strip__image)) .rg-cta-strip__box::after { content: none; }
@media (min-width: 601px) {
  .rg-cta-strip--person:not(.rg-cta-strip--duo) { --cta-person-crop: .72; }
  .rg-cta-strip--person:has(img[src*="gabriela-eichenlaub"]) { --cta-person-crop: .82; }
  .rg-cta-strip--person:not(.rg-cta-strip--duo) .rg-cta-strip__person-figure { clip-path: inset(-400px -400px 0 -400px); }
  .rg-cta-strip--person:not(.rg-cta-strip--duo) .rg-cta-strip__person-figure img {
    height: calc((100% + var(--cta-person-over, 56px)) / var(--cta-person-crop));
    bottom: calc((100% + var(--cta-person-over, 56px)) * (1 - 1 / var(--cta-person-crop)));
  }
  .rg-section.rg-cta-strip--person:not(.rg-cta-strip--duo) .rg-cta-strip__box > .rg-cta-strip__contacts--person { right: calc(var(--cta-pad) + 270px); }
}
@media (min-width: 1025px) {
  .rg-cta-strip--person:not(.rg-cta-strip--duo) .rg-cta-strip__card { width: 312px; min-width: 0; }
}
/* Białe CTA (statement, uwaga 30.10 A8, reguła globalna; HTML 8fc740f): nagłówek i akapit w kolumnie tekstu (bez 460 px
   nagłówka i 513 px akapitu). Z postacią wspólny limit kończący tekst przed wizytówką. */
.rg-cta-strip--statement :is(h2, .rg-cta-strip__lead) { max-width: none; }
@media (min-width: 1025px) {
  .rg-cta-strip--statement.rg-cta-strip--person :is(h2, .rg-cta-strip__lead) { max-width: min(580px, calc(146% - 582px - var(--space-5))); }
}
