/* Wnętrza z Pasją — moduł etapów 1.3.2. Premium ikony SVG 64x64 i responsywność. */
.wzp-process,.wzp-process *,.wzp-process *::before,.wzp-process *::after {box-sizing:border-box}
.wzp-process {
  --wzp-ink:#302e2b;--wzp-muted:#817970;--wzp-line:#e8e1d8;--wzp-paper:#f7f4ee;
  --wzp-accent:#aa8d71;--wzp-white:#fffefd;--wzp-dark:#383a35;--wzp-panel:#ebe5dc;
  box-sizing:border-box;container-type:inline-size;width:100%;max-width:var(--wzp-maxwidth,1300px);
  margin:0 auto;padding:20px 26px 17px;background:var(--wzp-paper);
  border:1px solid #e9e2d8;border-radius:var(--wzp-radius,18px);
  color:var(--wzp-ink);font-family:inherit;overflow:hidden;
}
.wzp-process button {font:inherit;text-transform:none;letter-spacing:normal;-webkit-appearance:none;appearance:none}
.wzp-process .wzp-head {display:flex;justify-content:space-between;align-items:end;gap:26px;margin:0 0 12px}
.wzp-process .wzp-overline {display:flex;gap:9px;align-items:center;margin:0 0 8px;color:var(--wzp-accent);font-size:10px;font-weight:700;line-height:1.2;letter-spacing:.17em;text-transform:uppercase}
.wzp-process .wzp-overline::before {content:"";width:26px;height:1px;background:currentColor}
.wzp-process .wzp-title {margin:0;color:var(--wzp-ink);font-family:var(--wzp-font,Georgia,serif);font-size:clamp(25px,2.8vw,var(--wzp-headsize,36px));line-height:1.05;font-weight:400;letter-spacing:-.026em;text-align:left}
.wzp-process .wzp-head-aside {max-width:350px;margin:0 0 2px;color:#807971;font-size:12px;line-height:1.52;text-align:left}
.wzp-process .wzp-head-aside b {display:block;margin-top:6px;color:var(--wzp-accent);font-size:10px;font-weight:650;letter-spacing:.11em}
.wzp-process .wzp-stage-layout {display:grid;grid-template-columns:minmax(0,1.55fr) minmax(285px,.92fr);align-items:stretch;gap:12px;min-width:0}
.wzp-process.wzp-no-photo .wzp-stage-layout {grid-template-columns:minmax(0,1fr)}
.wzp-process .wzp-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(128px,1fr);gap:10px;min-width:0}
.wzp-process .wzp-step {
  display:flex;align-items:center;position:relative;width:100%;min-width:0;min-height:128px;
  margin:0;padding:13px 12px;gap:10px;text-align:left;cursor:pointer;
  color:var(--wzp-ink);background:var(--wzp-white);border:1px solid var(--wzp-line);border-radius:9px;
  line-height:normal;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s;
}
.wzp-process .wzp-step:hover {transform:translateY(-2px);border-color:#bca994;box-shadow:0 7px 18px #3830260d}
.wzp-process .wzp-step.is-active {background:var(--wzp-dark);border-color:var(--wzp-dark);color:#fff;box-shadow:0 6px 16px #2525201a}
.wzp-process .wzp-step:focus-visible,.wzp-process .wzp-nav:focus-visible {outline:3px solid var(--wzp-accent);outline-offset:2px}
.wzp-process .wzp-image {display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;overflow:hidden;background:#f4f0ea;border:1px solid #e8e0d6;color:#77716a;border-radius:8px;transition:background .25s,border-color .25s,color .25s}
.wzp-process .wzp-image svg {display:block;width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:2.65;stroke-linecap:round;stroke-linejoin:round;flex:none}
.wzp-process .wzp-image img {display:block;width:100%;height:100%;object-fit:contain}
.wzp-process .wzp-step.is-active .wzp-image {background:#4d4e46;border-color:#646458;color:#ebd6b8}
.wzp-process .wzp-main {display:flex;flex-direction:column;gap:5px;min-width:0;padding-right:2px}
.wzp-process .wzp-num {color:#a28a74;font-size:9px;font-weight:750;line-height:1.2;letter-spacing:.14em}
.wzp-process .is-active .wzp-num {color:#ead0b1}
.wzp-process .wzp-card-title {font-family:var(--wzp-font,Georgia,serif);font-weight:400;font-size:clamp(16px,1.55vw,20px);letter-spacing:-.018em;line-height:1.14;overflow-wrap:anywhere}
.wzp-process .wzp-card-copy {color:#827b74;font-size:10.7px;line-height:1.42;overflow-wrap:anywhere}
.wzp-process .is-active .wzp-card-copy {color:#dfd9cf}
.wzp-process .wzp-corner {display:flex;position:absolute;right:9px;top:9px;opacity:.35;transition:opacity .2s,transform .2s}
.wzp-process .wzp-corner svg {width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.wzp-process .wzp-step:hover .wzp-corner,.wzp-process .is-active .wzp-corner {opacity:.88;transform:translate(1px,-1px)}
.wzp-process .wzp-photo-panel {min-width:0;min-height:0}
.wzp-process .wzp-photo-frame {position:relative;width:100%;height:100%;min-height:266px;overflow:hidden;background:#dfd3c6;border-radius:5px;isolation:isolate}
.wzp-process .wzp-photo {display:block;position:absolute;inset:0;width:100%;height:100%;margin:0;object-fit:cover;object-position:center;opacity:0;border-radius:5px;transition:opacity .34s ease;pointer-events:none}
.wzp-process .wzp-photo.is-current {opacity:1;z-index:1}
.wzp-process .wzp-photo[data-position="top"]{object-position:50% 15%}
.wzp-process .wzp-photo[data-position="bottom"]{object-position:50% 85%}
.wzp-process .wzp-photo[data-position="left"]{object-position:15% 50%}
.wzp-process .wzp-photo[data-position="right"]{object-position:85% 50%}
.wzp-process .wzp-photo-overlay {position:absolute;inset:auto 0 0;z-index:2;padding:45px 16px 13px;color:#fff;pointer-events:none;background:linear-gradient(0deg,rgba(21,19,16,.75),rgba(21,19,16,0))}
.wzp-process .wzp-photo-kicker {display:block;margin:0 0 5px;font-size:10px;font-weight:700;letter-spacing:.16em;color:#ead2af}
.wzp-process .wzp-photo-overlay strong {display:block;margin:0;font-family:var(--wzp-font,Georgia,serif);font-size:22px;font-weight:400;line-height:1.16;color:inherit;overflow-wrap:anywhere}
.wzp-process .wzp-bottom {display:grid;grid-template-columns:80px minmax(0,1.55fr) minmax(180px,.9fr) 42px;gap:13px;align-items:center;min-width:0;min-height:122px;margin-top:12px;padding:15px 18px;background:var(--wzp-panel);border:1px solid #e3d9ca;border-radius:9px}
.wzp-process .wzp-detail-num {font-family:var(--wzp-font,Georgia,serif);font-size:39px;font-weight:400;line-height:1;letter-spacing:-.04em;color:var(--wzp-accent);white-space:nowrap}
.wzp-process .wzp-detail-num small {font-size:15px;letter-spacing:0;color:#bfb3a4}
.wzp-process .wzp-detail-body {min-width:0}
.wzp-process .wzp-detail-kicker {display:block;margin-bottom:6px;color:var(--wzp-accent);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.wzp-process .wzp-detail-description {margin:0;color:#4e4942;font-size:11.5px;line-height:1.54;overflow-wrap:anywhere}
.wzp-process .wzp-deliverable {padding-left:13px;border-left:1px solid #ccc1b4;min-width:0}
.wzp-process .wzp-deliverable strong {display:block;margin:0 0 6px;color:var(--wzp-accent);font-size:9px;font-weight:750;letter-spacing:.13em;text-transform:uppercase}
.wzp-process .wzp-deliverable p {margin:0;color:#514a42;font-size:11.5px;line-height:1.48;overflow-wrap:anywhere}
.wzp-process .wzp-controls {display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.wzp-process .wzp-nav {display:grid;place-items:center;width:33px;height:33px;margin:0;padding:0;cursor:pointer;border:1px solid #cabba9;border-radius:50%;color:#5c5247;background:transparent;transition:background .2s,color .2s,border-color .2s}
.wzp-process .wzp-nav:hover {background:var(--wzp-dark);border-color:var(--wzp-dark);color:#fff}
.wzp-process .wzp-nav svg {width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.wzp-process .wzp-footnote {display:flex;justify-content:flex-end;align-items:center;gap:7px;margin:6px 2px 0;color:#938a81;font-size:10px;line-height:1.3}
.wzp-process .wzp-footnote svg {flex:0 0 12px;width:12px;height:12px;stroke:#ad967a;stroke-width:2;fill:none}
.wzp-process.wzp-no-result .wzp-bottom {grid-template-columns:80px minmax(0,1fr) 42px}
.wzp-process.wzp-compact {padding-top:17px;padding-bottom:15px}
.wzp-process.wzp-compact .wzp-step {min-height:113px}
.wzp-process.wzp-compact .wzp-grid {grid-auto-rows:minmax(113px,1fr)}
.wzp-process.wzp-compact .wzp-photo-frame {min-height:236px}
.wzp-process .wzp-head :is(p,h2,h3,div.wzp-title){text-align:left}
@media(min-width:1000px){
 .wzp-process{max-height:none}
 .wzp-process .wzp-card-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
 .wzp-process .wzp-detail-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden}
 .wzp-process .wzp-deliverable p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
}
/* W PC zdjęcie pozostaje z prawej także w węższej kolumnie Gridbox. */
@container (max-width:1160px) {
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image{display:grid;width:40px;height:40px;flex-basis:40px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image svg{width:34px;height:34px}
 .wzp-process .wzp-stage-layout .wzp-step{padding:10px 12px}
 .wzp-process .wzp-stage-layout .wzp-card-title{font-size:17px}
 .wzp-process .wzp-stage-layout .wzp-card-copy{font-size:10.5px}
}
@container (max-width:980px) {
 .wzp-process .wzp-stage-layout{grid-template-columns:minmax(0,1.5fr) minmax(200px,.8fr);gap:10px}
 .wzp-process .wzp-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(94px,auto);gap:8px}
 .wzp-process .wzp-step{min-height:94px}
 .wzp-process .wzp-photo-frame{min-height:0}
 .wzp-process .wzp-bottom{grid-template-columns:65px minmax(0,1fr) minmax(145px,.65fr) 35px;gap:10px;padding:13px}
}
@container (max-width:700px) {
 .wzp-process .wzp-head{display:block;margin-bottom:13px}
 .wzp-process .wzp-head-aside{max-width:none;margin-top:9px}
 .wzp-process .wzp-head-aside b{display:inline;margin-left:7px}
 .wzp-process .wzp-stage-layout{grid-template-columns:minmax(0,1.45fr) minmax(170px,.78fr);gap:9px}
 .wzp-process .wzp-grid{grid-auto-rows:minmax(91px,auto);gap:7px}
 .wzp-process .wzp-step{min-height:91px;padding:8px 9px}
 .wzp-process .wzp-card-title{font-size:15px}
 .wzp-process .wzp-card-copy{font-size:10px}
 .wzp-process .wzp-bottom{grid-template-columns:58px minmax(0,1fr) 35px;gap:8px}
 .wzp-process .wzp-deliverable{grid-column:2;grid-row:2;border-left:0;border-top:1px solid #ccc1b4;padding:9px 0 0}
 .wzp-process .wzp-controls{grid-column:3;grid-row:1 / 3;align-self:center}
}
@container (max-width:550px) {
 .wzp-process .wzp-stage-layout{grid-template-columns:minmax(0,1fr);gap:10px}
 .wzp-process .wzp-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(98px,auto);gap:8px}
 .wzp-process .wzp-step{min-height:98px;padding:10px}
 .wzp-process .wzp-photo-panel{height:220px}
 .wzp-process .wzp-photo-frame{min-height:0}
 .wzp-process .wzp-bottom{grid-template-columns:minmax(0,1fr) auto;gap:11px;padding:14px}
 .wzp-process .wzp-detail-num{grid-column:1;grid-row:1;font-size:31px}
 .wzp-process .wzp-controls{grid-column:2;grid-row:1;flex-direction:row;gap:8px}
 .wzp-process .wzp-nav{min-width:40px;min-height:40px}
 .wzp-process .wzp-detail-body{grid-column:1/-1;grid-row:2}
 .wzp-process .wzp-deliverable{grid-column:1/-1;grid-row:3;border-left:0;border-top:1px solid #ccc1b4;padding:11px 0 0}
}
@container (max-width:430px) {
 .wzp-process .wzp-title{font-size:28px}
 .wzp-process .wzp-card-title{font-size:15px}
 .wzp-process .wzp-photo-panel{height:205px}
 .wzp-process .wzp-photo-overlay strong{font-size:19px}
}
@media(max-width:900px){.wzp-process{max-height:none;padding:21px 19px 17px}}
@media(max-width:480px){
 .wzp-process{padding:18px 13px 15px;border-radius:12px}
 .wzp-process .wzp-head-aside{font-size:11.5px}
 .wzp-process .wzp-head-aside b{margin-top:6px;display:block;margin-left:0}
 .wzp-process .wzp-footnote{justify-content:flex-start}
}

/* Wyjątkowo wąska kolumna artykułu NA KOMPUTERZE: nadal zachowaj zdjęcie po prawej. */
@media (min-width:901px) {
 @container (max-width:550px) {
  .wzp-process .wzp-stage-layout{grid-template-columns:minmax(0,1.3fr) minmax(130px,.72fr);gap:8px}
  .wzp-process .wzp-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(52px,1fr);gap:6px}
  .wzp-process .wzp-step{min-height:52px;padding:7px 10px}
  .wzp-process .wzp-card-title{font-size:15px}
  .wzp-process .wzp-card-copy{font-size:10px}
  .wzp-process .wzp-photo-panel{height:auto}
  .wzp-process .wzp-photo-frame{height:100%;min-height:0}
 }
}
@media(prefers-reduced-motion:reduce){.wzp-process *{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.wzp-process.wzp-no-motion *{animation:none!important;transition:none!important}

/* 1.3.1 — wyśrodkowany nagłówek oraz dyskretna stopka zamiast opisu w nagłówku. */
.wzp-process .wzp-head {
    display:block;
    text-align:center;
    margin:0 0 13px;
}
.wzp-process .wzp-heading {width:100%; min-width:0; text-align:center;}
.wzp-process .wzp-head .wzp-title {text-align:center !important; margin-inline:auto;}
.wzp-process .wzp-head .wzp-overline {justify-content:center; text-align:center;}
.wzp-process .wzp-footer {
    display:flex; align-items:center; justify-content:space-between; gap:8px 24px;
    margin:10px 2px 0; min-width:0; color:#91877c;
}
.wzp-process .wzp-footer-meta {display:flex; align-items:baseline; gap:9px; min-width:0; flex-wrap:wrap;}
.wzp-process .wzp-footer-counter {
    display:inline-block; font-size:10px; font-weight:700; letter-spacing:.115em;
    line-height:1.4; color:var(--wzp-accent); text-transform:uppercase;
}
.wzp-process .wzp-footer-intro {color:#847c73; font-size:10.5px; line-height:1.35;}
.wzp-process .wzp-footer .wzp-footnote {margin:0; flex:0 1 auto; min-width:0; white-space:normal; text-align:right;}
.wzp-process .wzp-footer .wzp-footnote svg {flex-shrink:0;}
@container (max-width:700px) {
    .wzp-process .wzp-head {margin-bottom:12px;}
    .wzp-process .wzp-footer {justify-content:center; text-align:center; flex-wrap:wrap; gap:6px 16px;}
    .wzp-process .wzp-footer-meta {justify-content:center;}
    .wzp-process .wzp-footer .wzp-footnote {text-align:center; justify-content:center;}
}
@container (max-width:550px) {
    .wzp-process .wzp-head .wzp-title {font-size:clamp(23px,7vw,30px); line-height:1.1;}
    .wzp-process .wzp-footer {flex-direction:column; align-items:center; margin-top:10px;}
    .wzp-process .wzp-footer-intro {max-width:42ch;}
}

/* 1.3.3 — dopracowana, lekka ikonografia 64x64, czytelna w małych rozmiarach. */
.wzp-process .wzp-image .wzp-icon-detail:not(circle){stroke:var(--wzp-icon-accent,#aa8d71)}
.wzp-process .wzp-image circle.wzp-icon-detail{fill:var(--wzp-icon-accent,#aa8d71);stroke:none}
.wzp-process .wzp-step.is-active .wzp-image .wzp-icon-detail:not(circle){stroke:var(--wzp-icon-active-accent,#e9cfae)}
.wzp-process .wzp-step.is-active .wzp-image circle.wzp-icon-detail{fill:var(--wzp-icon-active-accent,#e9cfae)}
.wzp-process .wzp-image img {object-fit:contain;padding:3px}
@container (max-width:980px) {
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image{width:37px;height:37px;flex-basis:37px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image svg{width:32px;height:32px}
 .wzp-process .wzp-stage-layout .wzp-step{gap:8px}
}
@container (max-width:700px) {
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image{width:34px;height:34px;flex-basis:34px;border-radius:7px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image svg{width:30px;height:30px}
 .wzp-process .wzp-stage-layout .wzp-step{gap:7px}
}
@container (max-width:550px) {
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image{width:33px;height:33px;flex-basis:33px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image svg{width:29px;height:29px}
 .wzp-process .wzp-stage-layout .wzp-step{align-items:center;gap:7px}
 .wzp-process .wzp-card-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
}
@container (max-width:340px){
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image{width:29px;height:29px;flex-basis:29px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image svg{width:26px;height:26px}
 .wzp-process .wzp-stage-layout .wzp-step{gap:5px;padding:8px 7px}
}

/* Bardzo małe ekrany: jedna kolumna zapobiega łamaniu nazw etapów w połowie słowa. */
@container (max-width:290px) {
 .wzp-process .wzp-grid{grid-template-columns:minmax(0,1fr)}
 .wzp-process .wzp-step{min-height:76px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image{width:35px;height:35px;flex-basis:35px}
 .wzp-process .wzp-stage-layout .wzp-step .wzp-image svg{width:31px;height:31px}
 .wzp-process .wzp-card-title{overflow-wrap:normal;word-break:normal}
 .wzp-process .wzp-card-copy{-webkit-line-clamp:1;line-clamp:1}
}

/* 1.3.3 — konfigurowalne kolory ikon SVG i pól ikon (również dla aktywnego etapu).
   Kolory dotyczą wbudowanych SVG; własne JPG/PNG/WebP pozostają bez przebarwiania. */
.wzp-process .wzp-image {
  color:var(--wzp-icon-color,#77716a);
  background-color:var(--wzp-icon-background,#f4f0ea);
  border-color:color-mix(in srgb,var(--wzp-icon-background,#f4f0ea) 82%,var(--wzp-icon-color,#77716a) 18%);
}
.wzp-process .wzp-step.is-active .wzp-image {
  color:var(--wzp-icon-active-color,#ebd6b8);
  background-color:var(--wzp-icon-active-background,#4d4e46);
  border-color:color-mix(in srgb,var(--wzp-icon-active-background,#4d4e46) 82%,var(--wzp-icon-active-color,#ebd6b8) 18%);
}


/* 1.3.4 — jeden regulowany odstęp między elementami głównego układu.
   Stosowany również w zapytaniach kontenerowych i na ekranach mobilnych.
   Wewnątrz kart i panelu informacji pozostają osobne, drobniejsze odstępy typograficzne. */
.wzp-process .wzp-stage-layout {
    column-gap:var(--wzp-layout-gap,25px);
    row-gap:var(--wzp-layout-gap,25px);
}
.wzp-process .wzp-grid {
    column-gap:var(--wzp-layout-gap,25px);
    row-gap:var(--wzp-layout-gap,25px);
}
.wzp-process .wzp-bottom {
    margin-top:var(--wzp-layout-gap,25px);
}

/* Przy domyślnym odstępie 25 px trzy rzędy kart nie muszą sztucznie
   wydłużać panelu na typowym ekranie laptopa. Dotyczy tylko PC. */
@media (min-width:1000px) {
  @container (min-width:701px) and (max-width:980px) {
    .wzp-process .wzp-grid {grid-auto-rows:minmax(82px,auto)}
    .wzp-process .wzp-step {min-height:82px;padding:7px 10px}
  }
}

/* 1.3.5 — wejście kafelków po przewinięciu. Ukrywanie tylko po inicjalizacji JS,
   dzięki czemu przy niedostępnym skrypcie cała treść pozostaje widoczna. */
@keyframes wzp-entry-rise {
    from { opacity:0; translate:0 17px; }
    to { opacity:1; translate:0 0; }
}
.wzp-process.wzp-entry-ready:not(.wzp-entry-visible) .wzp-step,
.wzp-process.wzp-entry-ready:not(.wzp-entry-visible) .wzp-photo-panel,
.wzp-process.wzp-entry-ready:not(.wzp-entry-visible) .wzp-bottom {
    opacity:0;
    translate:0 17px;
}
.wzp-process.wzp-entry-ready.wzp-entry-visible .wzp-step,
.wzp-process.wzp-entry-ready.wzp-entry-visible .wzp-photo-panel,
.wzp-process.wzp-entry-ready.wzp-entry-visible .wzp-bottom {
    animation-name:wzp-entry-rise;
    animation-duration:620ms;
    animation-timing-function:cubic-bezier(.2,.75,.2,1);
    animation-delay:calc(var(--wzp-entry-i,0) * var(--wzp-reveal-stagger,75ms));
    animation-fill-mode:both;
}
@media (prefers-reduced-motion:reduce) {
    .wzp-process.wzp-entry-ready .wzp-step,
    .wzp-process.wzp-entry-ready .wzp-photo-panel,
    .wzp-process.wzp-entry-ready .wzp-bottom {
        opacity:1!important;
        translate:none!important;
        animation:none!important;
    }
}
/* Długie opisy powinny mieć możliwość rozwinąć panel — bez nagłego obcięcia. */
.wzp-process .wzp-detail-description,
.wzp-process .wzp-deliverable p {
    -webkit-line-clamp:unset;
    line-clamp:unset;
}
/* Animacja wysokości odtwarza wymiar docelowy — overflow ustawiany
   jest chwilowo przez JS, bez ograniczania normalnego przepływu treści. */
