/* =========================================================================
   CRUJIENTE - podstrony: O nas, Jak to robimy, Kontakt
   (ladowane tylko na szablonach page-o-nas.php, page-jak-to-robimy.php, page-kontakt.php)
   ========================================================================= */

/* ---------- Wspolne elementy podstron ---------- */
.crj-sub-pill { flex: none; }
.crj-sub-note { font-family: var(--font-mono); font-size: 13.5px; letter-spacing: .06em; line-height: 1.7; border: 2px dashed var(--ink-35); border-radius: 20px; padding: 16px 20px; }
.crj-sub-note--cream { font-size: 13px; letter-spacing: .04em; border-color: rgba(251, 233, 231, .45); border-radius: 18px; padding: 14px 18px; }
.crj-sub-quote { font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: 21px; line-height: 1.35; color: var(--terakota-ciemna); }
.crj-sub-quote--lg { font-size: 26px; }
.crj-sub-scroll-hint { display: none; opacity: .7; }
.crj-dots { display: none; gap: 8px; justify-content: center; }
.crj-dots__dot { width: 10px; height: 5px; border-radius: var(--r-pill); background: var(--ink-35); transition: width var(--t-fast), background var(--t-fast); }
.crj-dots__dot.is-active { width: 26px; background: var(--atrament); }
.crj-bg-terra .crj-dots__dot, .crj-bg-terra-dark .crj-dots__dot { background: var(--cream-40); }
.crj-bg-terra .crj-dots__dot.is-active, .crj-bg-terra-dark .crj-dots__dot.is-active { background: var(--kremowy); }
@media (max-width: 767px) {
  .crj-sub-note { font-size: 12.5px; padding: 14px 16px; border-radius: 16px; }
  .crj-sub-quote { font-size: 19px; }
  .crj-sub-quote--lg { font-size: 22px; }
  .crj-sub-pill { font-size: 11px; padding: 8px 16px; }
  .crj-sub-scroll-hint { display: block; margin-top: -10px; }
  .crj-dots { display: flex; margin-top: -8px; }
}

/* ---------- Hero dwukolumnowy (O nas, Jak to robimy) ---------- */
.crj-sub-hero { padding: 88px 0 96px; }
.crj-sub-hero__grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 64px; align-items: center; }
.crj-sub-hero__content { display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.crj-sub-hero__pill { font-size: 13px; letter-spacing: .2em; padding: 9px 18px; }
.crj-sub-hero__title { font-family: var(--font-display); font-weight: 850; font-size: clamp(50px, 5.3vw, 84px); line-height: 1.02; letter-spacing: -.01em; }
.crj-sub-hero__lead { font-size: 20px; line-height: 1.65; max-width: 52ch; }
.crj-sub-hero__quote { font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: 24px; line-height: 1.35; color: var(--terakota-ciemna); }
.crj-sub-hero__ctas { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 6px; }
.crj-sub-hero__ctas .crj-btn { font-size: 14px; padding: 15px 28px; }
.crj-sub-hero__media { position: relative; }
.crj-sub-hero__media img { position: relative; width: 100%; height: auto; border-radius: var(--r-card); border: 2px solid var(--atrament); }
.crj-sub-hero__blob { position: absolute; inset: -16px auto auto -12px; width: 66%; height: 72%; border-radius: var(--blob-1); z-index: 0; }
.crj-sub-hero__badge { position: absolute; right: -14px; bottom: -14px; font-size: 12px; letter-spacing: .1em; padding: 9px 16px; z-index: 1; }
@media (max-width: 1023px) {
  .crj-sub-hero { padding: 64px 0 72px; }
  .crj-sub-hero__grid { gap: 40px; }
  .crj-sub-hero__lead { font-size: 18px; }
}
@media (max-width: 767px) {
  .crj-sub-hero { padding: 40px 0 56px; }
  .crj-sub-hero__grid { grid-template-columns: 1fr; gap: 22px; }
  .crj-sub-hero__content { display: contents; }
  .crj-sub-hero__pill { order: -2; justify-self: start; font-size: 11px; letter-spacing: .16em; padding: 8px 14px; }
  .crj-sub-hero__title { order: -1; font-size: clamp(38px, 10.5vw, 48px); }
  .crj-sub-hero__lead, .crj-sub-hero__quote, .crj-sub-hero__ctas { order: 1; }
  .crj-sub-hero__lead { font-size: 17px; margin-top: 8px; }
  .crj-sub-hero__quote { font-size: 20px; }
  .crj-sub-hero__ctas { flex-direction: column; width: 100%; gap: 10px; margin-top: 0; }
  .crj-sub-hero__ctas .crj-btn { width: 100%; }
  .crj-sub-hero__media img { border-radius: 22px; }
  .crj-sub-hero__blob { inset: -10px auto auto -6px; width: 62%; height: 66%; }
  .crj-sub-hero__badge { right: 8px; bottom: -12px; font-size: 10.5px; padding: 8px 13px; }
}

/* O nas: dlugi wyraz w tytule ("Wysokowrazliwych") - szersza kolumna tekstu i nieco mniejszy tytul */
.crj-onas-hero .crj-sub-hero__grid { grid-template-columns: 1.15fr 1fr; gap: 48px; }
.crj-onas-hero .crj-sub-hero__title { font-size: clamp(40px, 4.15vw, 60px); }
@media (max-width: 767px) {
  .crj-onas-hero .crj-sub-hero__grid { grid-template-columns: 1fr; gap: 22px; }
  .crj-onas-hero .crj-sub-hero__title { font-size: clamp(30px, 8.4vw, 44px); }
}

/* ---------- Sekcja dzielona: zdjecie + tekst ---------- */
.crj-sub-split { display: grid; grid-template-columns: 1fr 1.05fr; gap: 64px; align-items: center; }
.crj-sub-split--media-right { grid-template-columns: 1.05fr 1fr; }
.crj-sub-split__media { position: relative; }
.crj-sub-split__media img { position: relative; width: 100%; height: auto; border-radius: var(--r-card); border: 2px solid var(--atrament); }
.crj-sub-split__blob { position: absolute; z-index: 0; }
.crj-sub-split__blob--br { inset: auto -12px -16px auto; width: 70%; height: 66%; }
.crj-sub-split__blob--tr { inset: -16px -10px auto auto; width: 68%; height: 70%; }
.crj-sub-split__badge { position: absolute; z-index: 1; font-size: 12px; letter-spacing: .1em; padding: 9px 16px; }
.crj-sub-split__badge--tl { left: -12px; top: -14px; }
.crj-sub-split__badge--br { right: -12px; bottom: -14px; }
.crj-sub-split__content { display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.crj-sub-split__text { font-size: 19px; line-height: 1.65; max-width: 56ch; }
@media (max-width: 1023px) {
  .crj-sub-split, .crj-sub-split--media-right { gap: 40px; }
  .crj-sub-split__text { font-size: 17.5px; }
}
@media (max-width: 767px) {
  .crj-sub-split, .crj-sub-split--media-right { grid-template-columns: 1fr; gap: 24px; }
  .crj-sub-split__content { display: contents; }
  .crj-sub-split__content > h2 { order: -1; }
  .crj-sub-split__content > .crj-sub-hero__pill { order: -2; justify-self: start; }
  .crj-sub-split--media-right .crj-sub-split__media { order: -1; }
  .crj-sub-split__content > .crj-sub-split__text:first-of-type { margin-top: 6px; }
  .crj-sub-split__media img { border-radius: 22px; }
  .crj-sub-split__blob--br { inset: auto -6px -10px auto; width: 64%; height: 60%; }
  .crj-sub-split__blob--tr { inset: -10px -6px auto auto; width: 62%; height: 64%; }
  .crj-sub-split__badge { font-size: 10.5px; padding: 8px 13px; }
  .crj-sub-split__badge--tl { left: 8px; top: -12px; }
  .crj-sub-split__badge--br { right: 8px; bottom: -12px; }
  .crj-sub-split__text { font-size: 17px; }
}

/* ---------- Ramka ¡Gracias! (CTA) ---------- */
.crj-gracias { padding: 0 var(--gutter) 110px; }
.crj-gracias__box { max-width: 1000px; margin: 0 auto; background: var(--terakota-ciemna); border-radius: 36px; padding: 64px 72px; color: var(--kremowy); display: grid; grid-template-columns: 1fr auto; gap: 48px; align-items: center; }
.crj-gracias__content { display: flex; flex-direction: column; gap: 16px; }
.crj-gracias__eyebrow { font-size: 12.5px; letter-spacing: .18em; opacity: .9; }
.crj-gracias__title { font-family: var(--font-display); font-weight: 850; font-size: clamp(32px, 3.4vw, 46px); line-height: 1.05; }
.crj-gracias__text { font-size: 17.5px; line-height: 1.6; max-width: 52ch; }
.crj-gracias__btns { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 6px; }
.crj-gracias__btns .crj-btn { font-size: 14px; padding: 15px 28px; letter-spacing: .1em; }
.crj-gracias__sign { font-family: var(--font-display); font-style: italic; font-weight: 700; font-size: 22px; margin-top: 8px; }
@media (max-width: 899px) {
  .crj-gracias { padding-bottom: 72px; }
  .crj-gracias__box { grid-template-columns: 1fr; padding: 40px 32px; gap: 24px; border-radius: 28px; }
  .crj-gracias__box .crj-stamp-wrap { display: none; }
}
@media (max-width: 480px) {
  .crj-gracias { padding-bottom: 56px; }
  .crj-gracias__box { padding: 32px 22px; }
  .crj-gracias__btns { flex-direction: column; align-items: stretch; }
  .crj-gracias__btns .crj-btn { width: 100%; }
  .crj-gracias__title { font-size: 28px; }
}

/* =========================================================================
   O NAS
   ========================================================================= */

/* Biogramy */
.crj-onas-bio__inner { display: flex; flex-direction: column; gap: 52px; }
.crj-onas-bio__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.crj-onas-bio__card { border: 2px solid var(--kremowy); border-radius: var(--r-card); background: var(--ink-12); padding: 30px; display: flex; flex-direction: column; gap: 18px; }
.crj-onas-bio__media { position: relative; display: block; height: 280px; }
.crj-onas-bio__blob { opacity: .5; }
.crj-onas-bio__media img { position: relative; width: 100%; height: 280px; object-fit: cover; object-position: var(--focus, center); }
.crj-onas-bio__head { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.crj-onas-bio__name { font-family: var(--font-display); font-weight: 850; font-size: 40px; line-height: 1.05; }
.crj-onas-bio__role { letter-spacing: .14em; }
.crj-onas-bio__text { display: flex; flex-direction: column; gap: 12px; font-size: 17px; line-height: 1.6; }
.crj-onas-bio__badge { margin-top: auto; align-self: flex-start; font-size: 12.5px; letter-spacing: .1em; padding: 8px 16px; white-space: normal; }
@media (max-width: 1023px) {
  .crj-onas-bio__inner { gap: 32px; }
  .crj-onas-bio__grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .crj-onas-bio__inner { gap: 22px; }
  .crj-onas-bio__grid { gap: 14px; }
  .crj-onas-bio__card { border-radius: 22px; padding: 18px; gap: 14px; }
  .crj-onas-bio__media, .crj-onas-bio__media img { height: 200px; }
  .crj-onas-bio__name { font-size: 32px; }
  .crj-onas-bio__role { font-size: 11px; }
  .crj-onas-bio__text { font-size: 15.5px; line-height: 1.55; gap: 10px; }
  .crj-onas-bio__badge { font-size: 10.5px; padding: 7px 12px; }
}

/* Czyli my */
.crj-onas-hist { padding: 88px 0 96px; }
@media (max-width: 767px) { .crj-onas-hist { padding: 52px 0 60px; } }

/* Linia smakow */
.crj-onas-smaki__inner { display: flex; flex-direction: column; gap: 52px; }
.crj-onas-smaki__title { max-width: 16ch; }
.crj-onas-smaki__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.crj-onas-smaki__item { position: relative; border: 2px solid var(--kremowy); border-radius: var(--r-card); padding: 28px 26px; background: var(--ink-12); display: flex; flex-direction: column; gap: 12px; }
.crj-onas-smaki__item.is-hi { background: var(--kremowy); color: var(--atrament); }
.crj-onas-smaki__top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.crj-onas-smaki__num { font-family: var(--font-display); font-weight: 900; font-size: 44px; line-height: 1; opacity: .4; }
.crj-onas-smaki__item.is-hi .crj-onas-smaki__num { opacity: .35; }
.crj-onas-smaki__tag { border-color: currentColor; color: inherit; font-size: 11px; letter-spacing: .12em; padding: 5px 12px; }
.crj-onas-smaki__award { position: absolute; top: -13px; right: 22px; }
.crj-onas-smaki__name { font-family: var(--font-display); font-weight: 800; font-size: 27px; line-height: 1.1; }
.crj-onas-smaki__item p { font-size: 16px; line-height: 1.6; opacity: .95; }
.crj-onas-smaki__item.is-hi p { opacity: 1; }
.crj-onas-smaki__quote { text-align: center; font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.35; max-width: 44ch; align-self: center; }
@media (max-width: 1023px) {
  .crj-onas-smaki__inner { gap: 32px; }
  .crj-onas-smaki__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .crj-onas-smaki__inner { gap: 20px; }
  .crj-onas-smaki__title { max-width: none; }
  .crj-onas-smaki__grid { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; margin: 0 calc(-1 * var(--gutter)); padding: 18px var(--gutter) 10px; scrollbar-width: none; }
  .crj-onas-smaki__grid::-webkit-scrollbar { display: none; }
  .crj-onas-smaki__item { scroll-snap-align: start; flex: 0 0 272px; border-radius: 22px; padding: 22px 20px; }
  .crj-onas-smaki__num { font-size: 36px; }
  .crj-onas-smaki__name { font-size: 22px; }
  .crj-onas-smaki__item p { font-size: 15px; }
  .crj-onas-smaki__quote { font-size: 20px; margin-top: 4px; }
}

/* Nazwa */
.crj-onas-nazwa .crj-sub-split__content { gap: 22px; }
.crj-onas-nazwa__pills { display: flex; gap: 12px; flex-wrap: wrap; }
.crj-onas-nazwa__pron { display: inline-flex; align-items: center; font-family: var(--font-mono); font-weight: 700; font-size: 15px; letter-spacing: .2em; text-transform: uppercase; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 12px 24px; }
.crj-onas-nazwa__meaning { display: inline-flex; align-items: center; font-family: var(--font-mono); font-size: 15px; letter-spacing: .08em; background: var(--atrament); color: var(--kremowy); border-radius: var(--r-pill); padding: 14px 24px; }
@media (max-width: 767px) {
  .crj-onas-nazwa__pron, .crj-onas-nazwa__meaning { font-size: 12.5px; padding: 10px 16px; letter-spacing: .14em; }
}

/* Karuzela produktow */
.crj-onas-prod { padding: 0 0 96px; }
.crj-onas-prod__head { padding-bottom: 40px; }
.crj-onas-prod__marquee { padding: 8px 0; }
.crj-onas-prod__track { gap: 24px; padding-right: 24px; animation-duration: 42s; }
.crj-onas-prod__track .crj-pcard { width: 380px; flex: none; }
@media (max-width: 767px) {
  .crj-onas-prod { padding-bottom: 60px; }
  .crj-onas-prod__head { padding-bottom: 20px; }
  .crj-onas-prod__head .crj-btn { display: none; }
  .crj-onas-prod__track { gap: 14px; padding-right: 14px; animation-duration: 36s; }
  .crj-onas-prod__track .crj-pcard { width: 264px; }
}

/* =========================================================================
   JAK TO ROBIMY
   ========================================================================= */

/* Szesc etapow */
.crj-proces-etapy { padding-bottom: 104px; }
.crj-proces-etapy__inner { display: flex; flex-direction: column; gap: 56px; }
.crj-proces-etapy__title { max-width: 20ch; }
.crj-proces-etapy__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 26px; }
.crj-proces-etap { display: grid; grid-template-columns: 1fr 1.15fr; gap: 44px; align-items: center; border: 2px solid var(--kremowy); border-radius: 32px; background: var(--ink-12); padding: 26px 30px; }
.crj-proces-etap--flip { grid-template-columns: 1.15fr 1fr; }
.crj-proces-etap--flip .crj-proces-etap__media { order: 2; }
.crj-proces-etap--last { background: var(--kremowy); color: var(--atrament); }
.crj-proces-etap__media { position: relative; display: block; height: 300px; }
.crj-proces-etap__media img { position: relative; width: 100%; height: 300px; object-fit: cover; }
.crj-proces-etap__body { display: flex; flex-direction: column; gap: 14px; }
.crj-proces-etap__top { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.crj-proces-etap__roman { font-family: var(--font-display); font-weight: 900; font-size: 76px; line-height: .9; opacity: .4; }
.crj-proces-etap--last .crj-proces-etap__roman { opacity: .35; }
.crj-proces-etap__tag { font-family: var(--font-mono); font-size: 12px; letter-spacing: .14em; white-space: nowrap; border: 1.5px solid currentColor; border-radius: var(--r-pill); padding: 5px 13px; line-height: 1.4; }
.crj-proces-etap__tag--solid { background: var(--kremowy); color: var(--terakota-ciemna); border-color: var(--kremowy); }
.crj-proces-etap--last .crj-proces-etap__tag { background: var(--atrament); color: var(--kremowy); border-color: var(--atrament); }
.crj-proces-etap__title { font-family: var(--font-display); font-weight: 800; font-size: 38px; line-height: 1.1; }
.crj-proces-etap__text { font-size: 17.5px; line-height: 1.6; }
.crj-proces-etap__quote { color: inherit; }
.crj-proces-etap--last .crj-proces-etap__quote { color: var(--terakota-ciemna); }
@media (max-width: 1023px) {
  .crj-proces-etapy__inner { gap: 32px; }
  .crj-proces-etap, .crj-proces-etap--flip { grid-template-columns: 1fr; gap: 20px; padding: 22px; border-radius: 26px; }
  .crj-proces-etap--flip .crj-proces-etap__media { order: 0; }
  .crj-proces-etap__media, .crj-proces-etap__media img { height: 260px; }
  .crj-proces-etap__title { font-size: 32px; }
}
@media (max-width: 767px) {
  .crj-proces-etapy { padding-bottom: 60px; }
  .crj-proces-etapy__inner { gap: 22px; }
  .crj-proces-etapy__title { max-width: none; }
  .crj-proces-etapy__list { gap: 14px; }
  .crj-proces-etap { padding: 16px; border-radius: 22px; gap: 14px; }
  .crj-proces-etap__media, .crj-proces-etap__media img { height: 200px; }
  .crj-proces-etap__body { gap: 10px; }
  .crj-proces-etap__top { gap: 12px; }
  .crj-proces-etap__roman { font-size: 46px; }
  .crj-proces-etap__tag { font-size: 10.5px; padding: 4px 10px; white-space: normal; }
  .crj-proces-etap__title { font-size: 25px; }
  .crj-proces-etap__title br { display: none; }
  .crj-proces-etap__text { font-size: 15.5px; line-height: 1.55; }
}

/* Przyrzady */
.crj-proces-narz { padding-top: 84px; }
.crj-proces-narz__inner { display: flex; flex-direction: column; gap: 44px; }
.crj-proces-narz__title { max-width: 22ch; font-size: clamp(38px, 4vw, 56px); }
.crj-proces-narz__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.crj-proces-narz__card { border: 2px solid var(--atrament); border-radius: 26px; background: var(--biel); padding: 26px 24px; display: flex; flex-direction: column; gap: 12px; }
.crj-proces-narz__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.crj-proces-narz__num { width: 46px; height: 46px; border-radius: var(--r-pill); border: 2px solid var(--atrament); display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-mono); font-weight: 700; font-size: 13px; flex: none; }
.crj-proces-narz__icon { color: var(--terakota-ciemna); flex: none; }
.crj-proces-narz__name { font-family: var(--font-display); font-weight: 800; font-size: 27px; line-height: 1.1; }
.crj-proces-narz__card p { font-size: 16px; line-height: 1.6; }
.crj-proces-narz__quote { align-self: center; text-align: center; font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: clamp(23px, 2.3vw, 31px); line-height: 1.35; max-width: 46ch; }
@media (max-width: 1023px) {
  .crj-proces-narz__inner { gap: 32px; }
  .crj-proces-narz__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .crj-proces-narz { padding-top: 52px; }
  .crj-proces-narz__inner { gap: 20px; }
  .crj-proces-narz__title { max-width: none; }
  .crj-proces-narz__title br { display: none; }
  .crj-proces-narz__grid { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; margin: 0 calc(-1 * var(--gutter)); padding: 14px var(--gutter) 10px; scrollbar-width: none; }
  .crj-proces-narz__grid::-webkit-scrollbar { display: none; }
  .crj-proces-narz__card { scroll-snap-align: start; flex: 0 0 250px; border-radius: 22px; padding: 20px 18px; }
  .crj-proces-narz__num { width: 40px; height: 40px; font-size: 12px; }
  .crj-proces-narz__icon { width: 36px; height: 36px; }
  .crj-proces-narz__name { font-size: 22px; }
  .crj-proces-narz__card p { font-size: 15px; }
  .crj-proces-narz__quote { font-size: 20px; }
}

/* Prazenie kontra smazenie */
.crj-proces-por { padding: 0 0 100px; }
.crj-proces-por__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.crj-proces-por__card { border-radius: 32px; padding: 38px 36px; display: flex; flex-direction: column; gap: 16px; }
.crj-proces-por__card--ink { background: var(--atrament); color: var(--kremowy); border: 2px solid var(--atrament); }
.crj-proces-por__card--dashed { border: 2px dashed rgba(30, 33, 54, .4); }
.crj-proces-por__chip { align-self: flex-start; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; padding: 6px 14px; border-color: currentColor; color: inherit; }
.crj-proces-por__chip--muted { border-color: var(--ink-45); }
.crj-proces-por__title { font-family: var(--font-display); font-weight: 850; font-size: 40px; line-height: 1.05; }
.crj-proces-por__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; font-size: 17px; line-height: 1.55; }
.crj-proces-por__list li { display: flex; gap: 12px; align-items: flex-start; }
.crj-proces-por__mark { flex: none; margin-top: 3px; }
@media (max-width: 899px) {
  .crj-proces-por__grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .crj-proces-por { padding-bottom: 60px; }
  .crj-proces-por__grid { gap: 14px; }
  .crj-proces-por__card { border-radius: 22px; padding: 24px 20px; gap: 12px; }
  .crj-proces-por__title { font-size: 30px; }
  .crj-proces-por__list { font-size: 15.5px; gap: 10px; }
}

/* Filary */
.crj-proces-fil__inner { display: flex; flex-direction: column; gap: 48px; }
.crj-proces-fil__title { font-size: clamp(38px, 4vw, 56px); }
.crj-proces-fil__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.crj-proces-fil__card { border: 2px solid var(--kremowy); border-radius: var(--r-card); background: var(--ink-12); padding: 28px 26px; display: flex; flex-direction: column; gap: 12px; }
.crj-proces-fil__card.is-hi { background: var(--kremowy); color: var(--atrament); }
.crj-proces-fil__name { font-family: var(--font-mono); font-weight: 700; font-size: 14px; letter-spacing: .2em; text-transform: uppercase; line-height: 1.4; }
.crj-proces-fil__card.is-hi .crj-proces-fil__name { color: var(--terakota-ciemna); }
.crj-proces-fil__card p { font-size: 17px; line-height: 1.6; }
@media (max-width: 1023px) {
  .crj-proces-fil__inner { gap: 32px; }
  .crj-proces-fil__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .crj-proces-fil__inner { gap: 20px; }
  .crj-proces-fil__grid { grid-template-columns: 1fr; gap: 12px; }
  .crj-proces-fil__card { border-radius: 20px; padding: 20px; gap: 8px; }
  .crj-proces-fil__name { font-size: 13px; }
  .crj-proces-fil__card p { font-size: 15.5px; line-height: 1.55; }
}

/* Pistacja */
.crj-proces-pist { padding: 84px 0 96px; }
.crj-proces-pist .crj-sub-split { gap: 60px; }
.crj-proces-pist .crj-sub-split__content { gap: 22px; }
.crj-proces-pist .crj-sub-split__text { font-size: 18.5px; max-width: 54ch; }
.crj-proces-pist__steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.crj-proces-pist__steps li { display: flex; gap: 14px; align-items: flex-start; font-size: 17px; line-height: 1.55; }
.crj-proces-pist__plus { flex: none; font-family: var(--font-mono); font-weight: 700; font-size: 13px; background: var(--atrament); color: var(--kremowy); border-radius: var(--r-pill); padding: 5px 12px; line-height: 1.4; }
.crj-proces-pist__cta { align-self: flex-start; }
@media (max-width: 1023px) { .crj-proces-pist .crj-sub-split { gap: 40px; } }
@media (max-width: 767px) {
  .crj-proces-pist { padding: 52px 0 60px; }
  .crj-proces-pist .crj-sub-split { gap: 22px; }
  .crj-proces-pist .crj-sub-split__text { font-size: 17px; }
  .crj-proces-pist__steps li { font-size: 15.5px; }
  .crj-proces-pist__cta { width: 100%; }
}

/* Despacio - 2 dni */
.crj-proces-desp { padding: 0 0 104px; }
.crj-proces-desp__box { background: var(--atrament); color: var(--kremowy); border-radius: 36px; padding: 60px 64px; display: flex; flex-direction: column; gap: 40px; }
.crj-proces-desp__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: flex-start; }
.crj-proces-desp__main { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.crj-proces-desp__pill { font-size: 12.5px; letter-spacing: .2em; text-transform: uppercase; border: 1.5px solid var(--kremowy); color: inherit; padding: 7px 16px; }
.crj-proces-desp__title { font-family: var(--font-display); font-weight: 850; font-size: clamp(36px, 3.8vw, 52px); line-height: 1.03; }
.crj-proces-desp__text { font-size: 18px; line-height: 1.65; max-width: 48ch; }
.crj-proces-desp__quote { font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: 23px; line-height: 1.35; color: var(--c-ziemny); }
.crj-proces-desp__side { display: flex; flex-direction: column; gap: 14px; }
.crj-proces-desp__sub { font-size: 12.5px; letter-spacing: .18em; opacity: .75; }
.crj-proces-desp__side p { font-size: 17px; line-height: 1.6; }
.crj-proces-desp__timeline { list-style: none; margin: 0; padding: 26px 0 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 1.5px dashed rgba(251, 233, 231, .35); }
.crj-proces-desp__timeline li { display: flex; flex-direction: column; gap: 8px; padding: 0 22px; border-left: 1.5px solid var(--cream-25); }
.crj-proces-desp__timeline li:first-child { padding-left: 0; border-left: 0; }
.crj-proces-desp__timeline li:last-child { padding-right: 0; }
.crj-proces-desp__day { font-family: var(--font-mono); font-size: 12px; letter-spacing: .14em; white-space: nowrap; color: var(--c-ziemny); }
.crj-proces-desp__day-title { font-family: var(--font-display); font-weight: 800; font-size: 24px; line-height: 1.15; }
.crj-proces-desp__day-text { font-size: 15.5px; line-height: 1.55; opacity: .85; }
@media (max-width: 1023px) {
  .crj-proces-desp__box { padding: 44px 40px; gap: 32px; }
  .crj-proces-desp__grid { grid-template-columns: 1fr; gap: 28px; }
  .crj-proces-desp__timeline { grid-template-columns: 1fr 1fr; gap: 24px 0; }
  .crj-proces-desp__timeline li:nth-child(odd) { padding-left: 0; border-left: 0; }
}
@media (max-width: 767px) {
  .crj-proces-desp { padding-bottom: 60px; }
  .crj-proces-desp__box { padding: 32px 22px; gap: 26px; border-radius: 26px; }
  .crj-proces-desp__title br { display: none; }
  .crj-proces-desp__text { font-size: 16.5px; }
  .crj-proces-desp__quote { font-size: 20px; }
  .crj-proces-desp__side p { font-size: 15.5px; }
  .crj-proces-desp__timeline { grid-template-columns: 1fr; gap: 18px; padding-top: 22px; }
  .crj-proces-desp__timeline li, .crj-proces-desp__timeline li:nth-child(odd), .crj-proces-desp__timeline li:first-child { padding: 0 0 0 16px; border-left: 1.5px solid var(--cream-25); }
  .crj-proces-desp__day-title { font-size: 21px; }
  .crj-proces-desp__day-text { font-size: 15px; }
}

/* =========================================================================
   KONTAKT
   ========================================================================= */
.crj-kontakt-header .crj-page-header__title { font-size: clamp(52px, 6vw, 92px); }
.crj-kontakt { padding: 56px 0 72px; }
.crj-kontakt__grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: 32px; align-items: start; }

/* Formularz */
.crj-kontakt__form-card { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-card); padding: 36px; }
.crj-kontakt__fields { display: flex; flex-direction: column; gap: 22px; }
.crj-kontakt__form-title { font-family: var(--font-display); font-weight: 850; font-size: 32px; line-height: 1.1; }
.crj-kontakt__row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.crj-kontakt__form .crj-field label, .crj-kontakt__form .crj-field__label { font-weight: 700; font-size: 12px; letter-spacing: .14em; }
.crj-kontakt__form .crj-field input:not([type=checkbox]):not([type=radio]), .crj-kontakt__form .crj-field textarea { background: var(--kremowy); border-radius: 14px; padding: 13px 16px; }
.crj-kontakt__form .crj-field input:focus, .crj-kontakt__form .crj-field textarea:focus { border-color: var(--terakota); box-shadow: 0 0 0 3px rgba(192, 87, 79, .25); }
.crj-kontakt__form .crj-field textarea { min-height: 160px; line-height: 1.55; }
.crj-kontakt__topics { border: 0; padding: 0; margin: 0; min-width: 0; display: block; }
.crj-kontakt__topics legend { padding: 0; margin-bottom: 8px; }
.crj-kontakt__topic-list { display: flex; gap: 10px; flex-wrap: wrap; }
.crj-kontakt__topic { position: relative; display: inline-flex; cursor: pointer; }
.crj-kontakt__topic input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.crj-kontakt__topic span { display: inline-flex; align-items: center; font-family: var(--font-mono); font-weight: 700; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 9px 18px; line-height: 1.3; transition: background var(--t-fast), color var(--t-fast), border-color var(--t-fast); }
.crj-kontakt__topic:hover span { border-color: var(--terakota-ciemna); color: var(--terakota-ciemna); }
.crj-kontakt__topic input:checked + span { background: var(--atrament); color: var(--kremowy); border-color: var(--atrament); }
.crj-kontakt__topic input:focus-visible + span { outline: 3px solid var(--terakota); outline-offset: 3px; }
.crj-kontakt__form .crj-kontakt__consent label.crj-check { font-family: var(--font-text); font-weight: 400; font-size: 13.5px; letter-spacing: 0; text-transform: none; line-height: 1.5; opacity: .85; }
.crj-kontakt__consent .crj-check input { width: 18px; height: 18px; margin-top: 1px; accent-color: var(--terakota-ciemna); }
.crj-kontakt__submit { align-self: flex-start; }
.crj-kontakt__form .crj-form-msg { margin-top: -6px; }
.crj-kontakt__form .crj-form-msg:empty { display: none; }
.crj-kontakt__success { display: none; }
.crj-kontakt__form.is-sent .crj-kontakt__fields { display: none; }
.crj-kontakt__form.is-sent .crj-kontakt__success { display: flex; flex-direction: column; align-items: center; gap: 18px; text-align: center; padding: 48px 24px; }
.crj-kontakt__success-title { font-family: var(--font-display); font-weight: 900; font-size: 44px; line-height: 1; color: var(--terakota-ciemna); }
.crj-kontakt__success p { font-size: 17px; line-height: 1.6; max-width: 40ch; }

/* Dane kontaktowe */
.crj-kontakt__side { display: flex; flex-direction: column; gap: 20px; }
.crj-kontakt__card { border-radius: var(--r-card); padding: 30px; display: flex; flex-direction: column; gap: 14px; }
.crj-kontakt__card--terra { background: var(--terakota-ciemna); color: var(--kremowy); border: 2px solid var(--atrament); gap: 18px; }
.crj-kontakt__card--white { background: var(--biel); border: 2px solid var(--atrament); }
.crj-kontakt__card--ink { background: var(--atrament); color: var(--kremowy); flex-direction: row; align-items: center; gap: 16px; padding: 24px 30px; }
.crj-kontakt__card-title { font-family: var(--font-display); font-weight: 850; font-size: 26px; line-height: 1.1; }
.crj-kontakt__card-text { font-size: 15.5px; line-height: 1.6; }
.crj-kontakt__item { display: flex; flex-direction: column; gap: 6px; }
.crj-kontakt__item-label { font-family: var(--font-mono); font-weight: 700; font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; opacity: .75; }
.crj-kontakt__item-value { font-family: var(--font-mono); font-weight: 700; font-size: 17px; color: inherit; text-decoration: none; word-break: break-word; }
.crj-kontakt__item-value:hover { text-decoration: underline; color: inherit; }
.crj-kontakt__item-hint { font-size: 14px; opacity: .85; line-height: 1.5; }
.crj-kontakt__social { display: flex; gap: 12px; flex-wrap: wrap; border-top: 1.5px dashed var(--cream-40); padding-top: 18px; }
.crj-kontakt__social a { color: inherit; text-decoration: none; font-family: var(--font-mono); font-size: 13px; letter-spacing: .1em; border: 1.5px solid var(--cream-50); border-radius: var(--r-pill); padding: 8px 16px; transition: border-color var(--t-fast), background var(--t-fast); }
.crj-kontakt__social a:hover { border-color: var(--kremowy); background: rgba(251, 233, 231, .12); color: inherit; }
.crj-kontakt__chip { align-self: flex-start; font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; padding: 6px 14px; }
.crj-kontakt__big { font-family: var(--font-display); font-weight: 900; font-size: 30px; line-height: 1; flex: none; }
.crj-kontakt__big-text { font-size: 14.5px; line-height: 1.5; opacity: .9; }

/* Mapa */
.crj-kontakt-map { padding: 0 0 88px; }
.crj-kontakt-map__inner { display: flex; flex-direction: column; gap: 24px; }
.crj-kontakt-map__inner .crj-eyebrow-line { font-weight: 700; }
.crj-kontakt-map__frame { position: relative; border: 2px solid var(--atrament); border-radius: var(--r-card); overflow: hidden; background: var(--biel); }
.crj-kontakt-map__frame iframe { display: block; width: 100%; height: 460px; border: 0; }
.crj-kontakt-map__badge { position: absolute; top: 18px; left: 18px; background: var(--kremowy); border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 9px 18px; font-family: var(--font-mono); font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; pointer-events: none; }

@media (max-width: 1023px) {
  .crj-kontakt__grid { grid-template-columns: 1fr; gap: 24px; }
  .crj-kontakt__side { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .crj-kontakt__card--ink { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .crj-kontakt { padding: 36px 0 52px; }
  .crj-kontakt__form-card { padding: 22px 18px; border-radius: 22px; }
  .crj-kontakt__fields { gap: 18px; }
  .crj-kontakt__form-title { font-size: 26px; }
  .crj-kontakt__submit { width: 100%; }
  .crj-kontakt__side { grid-template-columns: 1fr; gap: 14px; }
  .crj-kontakt__card { padding: 22px 20px; border-radius: 22px; }
  .crj-kontakt__card--ink { padding: 18px 20px; }
  .crj-kontakt__card-title { font-size: 22px; }
  .crj-kontakt__success-title { font-size: 36px; }
  .crj-kontakt-map { padding-bottom: 56px; }
  .crj-kontakt-map__inner { gap: 16px; }
  .crj-kontakt-map__frame { border-radius: 20px; }
  .crj-kontakt-map__frame iframe { height: 300px; }
  .crj-kontakt-map__badge { top: 12px; left: 12px; font-size: 10.5px; padding: 7px 12px; }
}
@media (max-width: 599px) {
  .crj-kontakt__row { grid-template-columns: 1fr; }
  .crj-kontakt__topic span { font-size: 11px; padding: 8px 14px; }
}
