
:root{
  --bg:#E5E7EB;
  --surface:#FCFBF8;
  --tint-red:#F6E3E0;
  --tint-steel:#E9E7E2;

  --ink:#26282E;
  --ink-dark:#17181C;
  --muted:#5D5F66;       /* AA secondary on bg */
  --red:#D7282F;         /* brand red — tylko wypełnienia/tła */
  --red-d:#A81E24;       /* AA red text on light */
  --steel:#343B47;
  --steel-d:#3E4652;

  --gray:#8A8F98;
  --gray-d:#5C616A;      /* wariant do TEKSTU na jasnym (6.1:1) */
  --gray-l:#FCFBF8;      /* jaśniejszy odcień do przeplatania */
  --tint-gray:#FCFBF8;   /* najjaśniejszy tint — tła sekcji */

  /* clay shadows (warm gray dark + white light) */
  --sd:rgba(122,114,104,.30);
  --sl:rgba(255,255,255,0);
  --sh:9px 9px 20px var(--sd), -8px -8px 18px var(--sl);
  --sh-lg:16px 16px 36px rgba(122,114,104,.28), -13px -13px 28px var(--sl);
  --sh-in:inset 4px 4px 10px rgba(122,114,104,.18), inset -4px -4px 8px rgba(255,255,255,.3);
  --puff:inset 2px 2px 3px rgba(255,255,255,.55), inset -3px -3px 7px rgba(122,114,104,.14);

  --disp:"Outfit", sans-serif;
  --body:"Manrope", system-ui, sans-serif;
  --pad:clamp(1.15rem,4.5vw,5.5rem);
  --sec:clamp(4.5rem,11vw,10rem);
  --ls-caps:.05em;
  --ls-brand:.06em;
  --wrap:1500px;
  --head-gap:2.6rem;
  --e:cubic-bezier(.2,.7,.2,1);
  --e2:cubic-bezier(.6,0,.2,1);
  --r:clamp(1.6rem,2.6vw,2.4rem);
  --r-lg:clamp(2rem,3.4vw,3rem);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip}
body{font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.6;font-weight:500;overflow-x:clip;-webkit-font-smoothing:antialiased}
body.is-loading{overflow:hidden;height:100vh}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::selection{background:var(--red);color:#fff}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--steel);outline-offset:3px}
.ctaband :focus-visible,.pcard--feat :focus-visible{outline-color:#FCFBF8}
.cta__form :focus-visible{outline-color:var(--steel)}

.nav__links>:focus-visible,.nav__drop-btn:focus-visible{outline-color:var(--ink-dark)}
.nav__panel :focus-visible{outline-color:var(--steel)}
[id]{scroll-margin-top:6.5rem}
:where(a[href],button,summary,input,select,textarea,[tabindex]):not(.skip){scroll-margin-top:6.5rem;scroll-margin-bottom:1.5rem}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;top:.8rem;left:.8rem;z-index:1200;background:var(--ink-dark);color:#fff;font-family:var(--disp);font-weight:600;padding:.75rem 1.3rem;border-radius:999px;transform:translateY(-250%);transition:transform .3s var(--e)}
.skip:focus{transform:none}

/* type */
.h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.85rem,5.4vw,4.4rem);line-height:1.04;letter-spacing:-.01em}
.ac{color:var(--red-d)}
.tag{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--disp);font-size:.82rem;font-weight:600;letter-spacing:.01em;padding:.55rem 1.1rem;border-radius:999px;background:var(--surface);color:var(--ink);box-shadow:var(--sh),var(--puff)}
.tag--ghost{background:var(--tint-gray);color:var(--gray-d)}

/* buttons — puffy clay */
.btn{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--disp);font-weight:600;font-size:1rem;padding:.95rem 1.7rem;border-radius:999px;white-space:nowrap;transition:transform .35s var(--e),box-shadow .35s var(--e),background .3s var(--e),color .3s var(--e)}
.btn__ico{width:1.9rem;height:1.9rem;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .4s var(--e)}
.btn__ico svg{width:1rem;height:1rem}
.btn--solid{background:var(--red);color:#fff;box-shadow:8px 8px 18px rgba(168,30,36,.34),-7px -7px 16px var(--sl),var(--puff)}
.btn--solid .btn__ico{background:rgba(255,255,255,.22)}
.btn--solid:hover{transform:translateY(-3px);box-shadow:11px 13px 24px rgba(168,30,36,.4),-8px -8px 18px var(--sl),var(--puff)}
.btn--solid:hover .btn__ico{transform:rotate(45deg)}
.btn--solid:active{transform:translateY(0);box-shadow:inset 5px 5px 11px rgba(120,18,23,.45)}
.btn--line{background:var(--surface);color:var(--gray-d);border:1.5px solid rgba(92,97,106,.42);box-shadow:var(--sh),var(--puff)}
.btn--line:hover{border-color:rgba(92,97,106,.75)}
.btn--line:hover{transform:translateY(-3px);box-shadow:var(--sh-lg),var(--puff)}
.btn--line:active{box-shadow:var(--sh-in)}
.btn--full{width:100%;justify-content:center}
.btn--pill{background:var(--gray-l);color:var(--ink-dark);justify-content:center;padding:.85rem 1.7rem;box-shadow:8px 8px 18px rgba(92,97,106,.34),-7px -7px 16px var(--sl),var(--puff)}
.btn--pill:hover{transform:translateY(-3px);box-shadow:11px 13px 24px rgba(92,97,106,.4),-8px -8px 18px var(--sl),var(--puff)}
.btn--pill:active{transform:translateY(0);box-shadow:inset 5px 5px 11px rgba(9,29,50,.5)}

.gchip{font-family:var(--disp);font-size:.85rem;font-weight:600;padding:.6rem 1.2rem;border-radius:999px;color:var(--ink);background:var(--surface);box-shadow:var(--sh),var(--puff)}

.prog{position:fixed;top:0;left:0;height:5px;width:0;z-index:850;background:var(--red);border-radius:0 4px 4px 0}

/* ============ PRELOADER ============ */
.pre{position:fixed;inset:0;z-index:1000;background:var(--bg);display:grid;place-items:center;overflow:hidden}
.pre__center{text-align:center;background:var(--surface);padding:clamp(2rem,5vw,3.5rem) clamp(2.5rem,6vw,4.5rem);border-radius:var(--r-lg);box-shadow:var(--sh-lg),var(--puff)}
.pre__dot{display:block;width:clamp(14px,2vw,18px);height:clamp(14px,2vw,18px);border-radius:50%;background:var(--red);margin:0 auto .9rem;box-shadow:var(--sh),var(--puff)}
.pre__word{display:flex;gap:.02em;justify-content:center;font-family:var(--disp);font-weight:700;font-size:clamp(1.6rem,5vw,2.6rem);color:var(--ink);overflow:hidden;padding-bottom:.06em;letter-spacing:var(--ls-brand)}
.pre__word span{display:inline-block;transform:translateY(110%);opacity:0}
.pre__count{position:absolute;right:clamp(1.2rem,4vw,3rem);bottom:clamp(1.2rem,4vw,3rem);font-family:var(--disp);font-weight:600;font-size:clamp(2.4rem,7vw,4.4rem);color:var(--red-d);display:flex;align-items:baseline;font-variant-numeric:tabular-nums}
.pre__count i{font-size:.4em;font-style:normal;margin-left:.1em}
.pre__curtain{position:absolute;inset:0;background:var(--bg);transform:scaleY(0);transform-origin:bottom;z-index:3}

/* ============ NAV ============ */
.nav{position:fixed;top:0;left:0;right:0;z-index:700;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem var(--pad);padding-left:max(var(--pad),env(safe-area-inset-left));padding-right:max(var(--pad),env(safe-area-inset-right));will-change:transform;transition:transform .5s cubic-bezier(.22,.61,.36,1),opacity .35s var(--e),padding .4s var(--e)}
.nav.scrolled{padding-top:.7rem;padding-bottom:.7rem}
/* chowanie paska przy scrollu w dół */
.nav.hide{transform:translateY(-112%);opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.nav{transition:none}}
.nav.scrolled .brand,.nav.scrolled .nav__links{box-shadow:var(--sh-lg),var(--puff)}
.brand{display:flex;align-items:center;gap:.55rem;font-family:var(--disp);font-weight:700;font-size:1.2rem;padding:.55rem 1.9rem;border-radius:999px;background:var(--gray-l);box-shadow:var(--sh),var(--puff);border:1px solid rgba(122,114,104,.1);transition:box-shadow .4s var(--e);letter-spacing:var(--ls-brand)}
.brand__logo{height:clamp(2.6rem,4.4vw,3.8rem);width:auto;display:block}
.brand__mark{width:2.2rem;height:2.2rem;color:#fff;display:grid;place-items:center;background:var(--red);border-radius:.8rem;box-shadow:var(--sh),var(--puff);font-family:var(--disp);font-weight:700;font-size:1.15rem;line-height:1}

.nav__links{display:flex;align-items:center;gap:.15rem;padding:.35rem;border-radius:999px;background:var(--gray-l);border:1px solid rgba(255,255,255,.35);box-shadow:8px 10px 24px rgba(92,97,106,.3),-6px -6px 16px var(--sl);transition:box-shadow .4s var(--e)}
.nav__link{font-family:var(--disp);font-size:.94rem;font-weight:500;color:rgba(23,24,28,.82);padding:.5rem 1rem;border-radius:999px;transition:color .3s var(--e),background .3s var(--e),box-shadow .3s var(--e);white-space:nowrap}
.nav__link:hover{color:var(--ink-dark);background:rgba(255,255,255,.42);box-shadow:none}
.nav__link.active{color:var(--ink-dark);background:rgba(255,255,255,.85);font-weight:600}
.nav.scrolled .nav__links{box-shadow:10px 14px 30px rgba(92,97,106,.34),-6px -6px 16px var(--sl)}

/* nav dropdown — oferta */
.nav__drop{position:relative}
.nav__drop-btn{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer}
.nav__caret{width:.8rem;height:.8rem;transition:transform .3s var(--e)}
.nav__drop-btn[aria-expanded="true"]{color:var(--ink-dark);background:rgba(255,255,255,.42);box-shadow:none}
.nav__drop-btn[aria-expanded="true"] .nav__caret{transform:rotate(180deg)}
.nav__panel{position:absolute;top:calc(100% + .7rem);left:50%;transform:translateX(-50%) translateY(8px);width:min(92vw,360px);background:var(--surface);border-radius:var(--r);padding:.6rem;box-shadow:var(--sh-lg),var(--puff);display:flex;flex-direction:column;gap:.15rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s var(--e),transform .3s var(--e),visibility .3s var(--e);z-index:60}
.nav__panel::before{content:"";position:absolute;top:-.7rem;left:0;right:0;height:.7rem}
.nav__panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav__offer{display:flex;flex-direction:column;gap:.1rem;padding:.7rem .9rem;border-radius:calc(var(--r) - .6rem);transition:background .25s var(--e),transform .25s var(--e)}
.nav__offer:hover{background:var(--bg);transform:translateX(3px)}
.nav__offer-t{font-family:var(--disp);font-weight:600;font-size:.95rem;color:var(--ink-dark)}
.nav__offer-d{font-size:.78rem;color:var(--muted);font-weight:500}
.burger{display:none;width:48px;height:48px;border-radius:50%;background:var(--gray-l);position:relative;box-shadow:6px 8px 18px rgba(92,97,106,.3),-5px -5px 14px var(--sl)}
.burger span{position:absolute;left:50%;width:18px;height:2.5px;border-radius:2px;background:var(--ink-dark);transform:translateX(-50%);transition:transform .4s var(--e),opacity .3s}
.burger span:first-child{top:20px}.burger span:last-child{bottom:20px}
body.menu-open .burger span:first-child{top:23px;transform:translateX(-50%) rotate(45deg)}
body.menu-open .burger span:last-child{bottom:22px;transform:translateX(-50%) rotate(-45deg)}

/* ============ MENU ============ */
.menu{position:fixed;inset:0;z-index:650;padding-top:clamp(6.5rem,14vh,9rem);background:var(--bg);color:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:clamp(5rem,12vh,8rem) max(var(--pad),env(safe-area-inset-left)) 3rem;clip-path:inset(0 0 100% 0);pointer-events:none;overflow-y:auto;transition:clip-path .7s var(--e2)}
body.menu-open .menu{clip-path:inset(0 0 0 0);pointer-events:auto}
/* marka zostaje widoczna nad rozwinietym menu */
body.menu-open .brand{position:relative;z-index:760;background:var(--surface)}
.menu__links{display:flex;flex-direction:column;gap:.6rem}
.menu__link{font-family:var(--disp);font-weight:600;font-size:clamp(1.5rem,6.5vw,4rem);line-height:1.05;display:flex;align-items:center;gap:1rem;padding:.5rem 1.4rem;border-radius:var(--r);width:auto;max-width:100%;color:var(--ink);overflow:hidden;transition:transform .3s var(--e),box-shadow .3s var(--e),color .3s var(--e)}
.menu__link i{font-family:var(--body);font-style:normal;font-size:.8rem;font-weight:700;color:var(--red-d);flex:none}
.menu__link:hover{color:var(--ink-dark);background:var(--surface);box-shadow:var(--sh),var(--puff);transform:translateX(8px)}
.menu__link span[data-mtext]{display:inline-block}
.menu__offer{margin-top:2rem;padding-top:1.5rem;border-top:1px dashed rgba(122,114,104,.3)}
.menu__link.active{color:var(--ink-dark);background:var(--surface);box-shadow:inset 0 -2px 0 var(--red)}
.menu__offer-l.active{box-shadow:var(--sh-in),inset 0 -2px 0 var(--red)}
.menu__offer-t{display:block;font-family:var(--disp);font-size:.78rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d);margin-bottom:.9rem}
.menu__offer-list{display:flex;flex-wrap:wrap;gap:.5rem}
.menu__offer-l{font-family:var(--disp);font-weight:600;font-size:.92rem;color:var(--ink);background:var(--surface);padding:.5rem .9rem;border-radius:999px;box-shadow:var(--sh),var(--puff);min-height:44px;display:inline-flex;align-items:center}
.menu__offer-l:active{box-shadow:var(--sh-in)}
.menu__foot{margin-top:2rem;padding-top:1.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;color:var(--muted);font-size:1rem;font-weight:600}
.menu__foot a{color:var(--red-d)}

/* ============ HERO ============ */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:6.5rem var(--pad) 4.5rem;overflow:hidden}
.hero::before{content:"";position:absolute;width:32vw;height:32vw;max-width:400px;max-height:400px;right:-6vw;top:9%;border-radius:50%;background:radial-gradient(circle at 35% 35%,#C6CAD1 0%,#8A8F98 72%,rgba(138,143,152,0) 100%);opacity:.42;z-index:0}
.hero::after{content:"";position:absolute;width:22vw;height:22vw;max-width:260px;max-height:260px;left:-6vw;bottom:8%;border-radius:50%;background:radial-gradient(circle at 35% 35%,#EDEFF2 0%,#B9BDC4 72%,rgba(185,189,196,0) 100%);opacity:.5;z-index:0}
.hero__inner{position:relative;z-index:3;max-width:var(--wrap);margin:0 auto;width:100%}

.hero__media{position:relative;z-index:3;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(150deg,var(--tint-gray),var(--gray-l));box-shadow:var(--sh-lg),var(--puff);aspect-ratio:4/5;display:grid;place-items:center;isolation:isolate}
.hero__media img{width:100%;height:100%;object-fit:cover;display:block}
.hero__ph{display:grid;place-items:center;gap:.7rem;text-align:center;padding:1.5rem;color:var(--gray-d)}
.hero__ph svg{width:2.6rem;height:2.6rem;opacity:.75}
.hero__ph b{font-family:var(--disp);font-weight:600;font-size:.95rem;letter-spacing:var(--ls-caps);text-transform:uppercase}
.hero__ph span{font-size:.85rem;font-weight:500;max-width:24ch;line-height:1.4}
.hero__badge2{position:absolute;left:clamp(.8rem,2vw,1.4rem);bottom:clamp(.8rem,2vw,1.4rem);z-index:2;display:flex;align-items:center;gap:.5rem;background:var(--surface);padding:.6rem 1rem;border-radius:999px;box-shadow:var(--sh),var(--puff);font-family:var(--disp);font-weight:600;font-size:.82rem;color:var(--ink-dark)}
.hero__badge2 i{width:.6rem;height:.6rem;border-radius:50%;background:var(--red);font-style:normal}
@media(min-width:1025px){
  .hero__inner{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,4vw,4rem);align-items:center}
  .hero__copy{min-width:0}
  .hero__media{max-height:min(62vh,560px)}
}
@media(max-width:1024px){.hero__media{aspect-ratio:16/10;margin-top:2rem;max-height:340px}}
.hero__top{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:clamp(1.2rem,3vw,2rem)}
.hero__title{font-family:var(--disp);font-weight:600;font-size:clamp(2.6rem,5.35vw,5.4rem);line-height:1.04;letter-spacing:-.022em;max-width:15ch}
.hero__title .l{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em;padding-right:.06em;margin-right:-.06em}
.hero__title [data-hw]{display:inline-block}
.hero__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:clamp(1.5rem,4vw,2.6rem)}
.hero__lead{max-width:48ch;font-size:clamp(1.06rem,1.45vw,1.38rem);color:var(--muted);font-weight:500}
.hero__cta{display:flex;flex-wrap:wrap;gap:.8rem}
.hero__proof{margin-top:1.1rem;font-family:var(--disp);font-size:.86rem;font-weight:600;color:var(--muted)}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.7);opacity:.4}}

/* ============ MARQUEE ============ */
.mq{background:var(--tint-gray);color:var(--ink);padding:1rem 0;overflow:hidden;margin:clamp(1.5rem,3vw,2.5rem) var(--pad);border-radius:999px;box-shadow:var(--sh-in)}
.mq__track{display:flex;align-items:center;width:max-content;will-change:transform}
.mq__track span{font-family:var(--disp);font-weight:600;font-size:clamp(1.1rem,2.4vw,1.9rem);white-space:nowrap;margin-right:1.6rem}
.mq__track i{color:var(--red-d);font-style:normal;font-size:1rem;margin-right:1.6rem}

/* ============ MANIFEST ============ */

.manifest{padding:var(--sec) var(--pad);max-width:calc(var(--wrap) + var(--pad) * 2);margin:0 auto}
.manifest__ey{font-family:var(--disp);font-size:.9rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d);margin-bottom:1.5rem;display:inline-block;background:var(--surface);padding:.5rem 1.1rem;border-radius:999px;box-shadow:var(--sh),var(--puff)}
.manifest__text{font-family:var(--disp);font-weight:500;font-size:clamp(1.35rem,3.2vw,2.5rem);line-height:1.3;letter-spacing:-.005em;color:var(--ink)}
.manifest__text .w{opacity:1}

/* ============ SERVICES ============ */
.svc__head{max-width:var(--wrap);margin:0 auto var(--head-gap);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem}
.svc__intro{max-width:34ch;color:var(--muted);font-weight:500}

.mq__pause{position:absolute;right:.8rem;top:50%;transform:translateY(-50%);z-index:6;width:2.3rem;height:2.3rem;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--gray-d);box-shadow:var(--sh),var(--puff);opacity:.55;transition:opacity .25s var(--e),transform .25s var(--e)}
.mq__pause:hover,.mq__pause:focus-visible{opacity:1;transform:translateY(-50%) scale(1.06)}
.mq__pause svg{width:1.05rem;height:1.05rem;fill:currentColor}

/* ============ O NAS / PRACOWNIA ============ */
.cases{background:transparent;padding:0 0 var(--sec)}
.cases__intro{max-width:var(--wrap);margin-inline:auto}
.cases__pin{max-width:none;margin:0 auto;height:auto!important;overflow:visible}
.cases__track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;width:auto!important;transform:none!important;padding:0 .7rem}
.cases__intro{grid-column:1/-1;margin-bottom:.5rem;padding:0 calc(var(--pad) - .7rem);width:100%;max-width:none;margin-inline:0;justify-self:stretch}
.cases__drag{display:none!important}
.cases__drag{display:none}
.case{width:auto!important}
@media(max-width:1100px){.cases__track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.cases__track{grid-template-columns:1fr 1fr}}
.cases__intro .h2{font-size:clamp(2rem,4.4vw,3.4rem)}
.cases__intro p{color:var(--steel-d);margin-top:1rem;font-weight:600}
.cases__drag{display:inline-grid;place-items:center;margin-top:1.5rem;width:3.4rem;height:3.4rem;border-radius:50%;background:var(--red);color:#fff;font-size:1.6rem;box-shadow:var(--sh),var(--puff)}
.case__img{border-radius:var(--r);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--sh-lg)}
.case__img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--e)}
.case:hover .case__img img{transform:scale(1.06)}
.case__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .7rem;margin-top:.9rem;padding:0 .25rem}
.case__cat{order:1;font-family:var(--disp);font-size:.78rem;font-weight:600;color:var(--ink-dark);background:var(--surface);padding:.4rem .8rem;border-radius:999px;box-shadow:var(--sh),var(--puff)}
.case__meta h3{order:3;flex:1 0 100%;font-family:var(--disp);font-weight:600;font-size:clamp(1rem,1.25vw,1.3rem);line-height:1.2}
.case__no{order:2;margin-left:auto;font-family:var(--disp);color:var(--red-d);font-weight:600}

/* ============ KREATOR ZAPYTANIA ============ */
.builder{padding:var(--sec) var(--pad)}
.builder--page{padding-top:clamp(7rem,14vh,10rem)}
.kpage__ey{font-family:var(--disp);font-size:.9rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d);margin-bottom:.9rem}

.cta__inner .kpage__ey{color:var(--red-d)}
.builder__group-t em{font-style:normal;text-transform:none;letter-spacing:0;color:var(--red-d);font-weight:600;margin-left:.3rem}
.chipset[data-multi] .chip{padding-left:2.3rem;position:relative}
.chipset[data-multi] .chip::before{content:"";position:absolute;left:.85rem;top:50%;transform:translateY(-50%);width:1.1rem;height:1.1rem;border-radius:.35rem;background:var(--bg);box-shadow:var(--sh-in);transition:background .2s var(--e)}
.chipset[data-multi] .chip.is-on::before{background:#fff}
.chipset[data-multi] .chip.is-eg::before{background:transparent;box-shadow:none;border:1.5px dashed var(--red-d);opacity:.65}
.chipset[data-multi] .chip.is-on::after{content:"";position:absolute;left:1.2rem;top:calc(50% - 1px);width:.42rem;height:.7rem;border:solid var(--gray-d);border-width:0 2.5px 2.5px 0;transform:translateY(-50%) rotate(45deg)}
.builder__head p{max-width:38ch;color:var(--muted);font-weight:500}
.builder__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.5rem,3vw,2.5rem);align-items:start}
.builder__preview{align-self:start;display:flex;flex-direction:column;gap:1.1rem}

@media(min-width:1025px){
  .builder__grid .builder__preview{display:contents}
  .builder__grid .stage{grid-column:1;grid-row:1/3;align-self:start;position:sticky;top:6.5rem}
  .builder__grid .builder__controls{grid-column:2;grid-row:1}
  .builder__grid .ticket{grid-column:2;grid-row:2;margin-top:1.4rem}
}

.stage{background:var(--surface);border-radius:var(--r-lg);padding:clamp(1.4rem,2.6vw,2.1rem);box-shadow:var(--sh-lg),var(--puff);position:relative;overflow:hidden;text-align:center}
.stage::after{content:"";position:absolute;inset:0;background:radial-gradient(58% 44% at 50% 8%,rgba(92,97,106,.06),transparent 72%);pointer-events:none;z-index:0}
.stage__artwrap{position:relative;width:100%;max-width:290px;margin:0 auto;z-index:1}
.stage__art{position:relative;z-index:2;width:100%;aspect-ratio:1;display:grid;place-items:center}
.stage__art .stage-svg{width:100%;height:100%;filter:drop-shadow(0 14px 22px rgba(92,97,106,.28))}
.stage-mark{animation:pop .45s var(--e)}
@keyframes pop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
.stage__cap{position:relative;z-index:1;font-family:var(--disp);font-weight:600;font-size:1.08rem;color:var(--ink-dark);margin-top:.6rem}
.stage__cap[hidden]{display:none}
.stage__chips{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:.85rem;min-height:1.9rem}
.stage-chip{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--disp);font-size:.76rem;font-weight:600;color:var(--ink-dark);background:var(--bg);border:1px solid rgba(92,97,106,.18);padding:.35rem .7rem;border-radius:999px;animation:pop .35s var(--e)}
.stage-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:16ch}
.stage-chip--more{background:var(--gray-l);color:var(--ink-dark);font-weight:700}
.stage-chip--mark{color:var(--muted);background:transparent;border-color:rgba(92,97,106,.22)}
.stage-cat{width:1.05rem;height:1rem;color:var(--red-d);flex:none}

@media(max-width:1024px){
  .builder__grid{grid-template-columns:1fr}
  .builder__preview{display:contents}
  .stage{display:none}
  .stage--off{order:0;position:sticky;top:4.5rem;z-index:20;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.35rem .9rem;text-align:left;padding:.8rem 1rem}
  .stage::after{display:none}
  .stage__artwrap{max-width:80px;margin:0;flex:none}
  .stage__cap{margin:0;flex:1;min-width:0;font-size:.98rem}

  .stage__chips{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;justify-content:flex-start;margin-top:0;min-height:0}
  .stage__chips:empty{display:none}
  .stage-chip{padding:.3rem .6rem;font-size:.72rem}
  .stage-chip>span{max-width:11ch}
  .stage__chips::-webkit-scrollbar{display:none}
  .stage-chip{flex:none}
  .builder__controls{order:1}
  .ticket{order:2}
}

/* premium paragon zamówienia */
.ticket{background:var(--tint-gray);border-radius:var(--r-lg);padding:clamp(1.4rem,2.6vw,2.1rem);box-shadow:var(--sh-lg),var(--puff);display:flex;flex-direction:column;gap:1.3rem;position:relative;overflow:hidden}
.ticket::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(var(--gray-l),var(--gray))}
.ticket__head{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.ticket__badge{font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:var(--ls-brand);color:var(--ink-dark);background:var(--gray);padding:.35rem .7rem;border-radius:.6rem;box-shadow:var(--puff)}
.ticket__title{font-family:var(--disp);font-weight:600;font-size:1.15rem;color:var(--ink)}
.ticket__hint{font-size:.76rem;font-weight:600;color:var(--muted);margin-left:auto}
.ticket__rows{list-style:none;display:flex;flex-direction:column}
.ticket__rows li{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.72rem .2rem;border-bottom:1px dashed rgba(122,114,104,.25)}
.ticket__rows li[hidden]{display:none}
.ticket__rows li:last-child{border-bottom:0}
.ticket__k{font-family:var(--disp);font-size:.78rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);flex:none}
.ticket__v{font-family:var(--disp);font-weight:600;font-size:1rem;color:var(--muted);text-align:right;min-width:0;overflow-wrap:anywhere;transition:color .3s var(--e)}
.ticket__rows li.is-set .ticket__k{color:var(--ink)}
.ticket__rows li.is-set .ticket__v{color:var(--ink-dark)}
.ticket__rows.is-example li.is-set .ticket__v{color:var(--muted);font-weight:500}
.ticket__rows li.flash{animation:rowflash .6s var(--e)}
@keyframes rowflash{0%{background:rgba(215,40,47,.14)}100%{background:transparent}}
.ticket__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.3rem}
.ticket__prog{display:flex;flex-direction:column;gap:.5rem;flex:1}
.ticket__prog-bar{display:block;height:8px;border-radius:999px;background:var(--bg);box-shadow:var(--sh-in);overflow:hidden}
.ticket__prog-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gray-l),var(--gray));transition:width .5s var(--e)}
.ticket__prog-lbl{font-size:.8rem;font-weight:700;color:var(--muted)}
.ticket__prog-lbl b{color:var(--gray-d);font-variant-numeric:tabular-nums}
.ticket__eta{text-align:right;flex:none;display:flex;flex-direction:column}
.ticket__eta b{font-family:var(--disp);font-weight:600;font-size:1.5rem;color:var(--gray-d);line-height:1}
.ticket__eta span{font-size:.72rem;font-weight:700;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted)}
.builder__controls{display:flex;flex-direction:column;gap:1.6rem}
.builder__group-t{display:block;font-family:var(--disp);font-size:.85rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);margin-bottom:.8rem}
.chipset{display:flex;gap:.6rem}
.chipset--wrap{flex-wrap:wrap}
.chip{font-family:var(--disp);font-size:.95rem;font-weight:500;padding:.65rem 1.2rem;min-height:44px;display:inline-flex;align-items:center;border-radius:999px;background:var(--surface);border:1px solid rgba(92,97,106,.16);color:var(--ink);box-shadow:var(--sh),var(--puff);transition:transform .2s var(--e),box-shadow .25s var(--e),color .25s var(--e),background .25s var(--e)}
.chip:hover{transform:translateY(-2px)}
.chip:active{transform:translateY(0);box-shadow:var(--sh-in)}
.chip.is-on{background:var(--gray);color:var(--ink-dark);box-shadow:inset 4px 4px 9px rgba(70,74,82,.5)}
.chip.is-eg{background:var(--tint-red);color:var(--red-d);box-shadow:var(--puff)}
.builder__contact{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.builder__contact .f input{background:var(--surface)}
.builder__note{font-size:.8rem;color:var(--muted);font-weight:600}
.builder__msg{border-radius:var(--r);padding:1rem 1.3rem;font-weight:600;background:var(--surface);box-shadow:var(--sh-in);font-size:.95rem}
.builder__msg.err{color:var(--red-d)}
.builder__msg.ok{color:var(--ink)}
.builder__msg a{color:var(--red-d);text-decoration:underline;text-underline-offset:2px}
.builder__copy{display:inline-block;margin-top:.6rem;font-family:var(--disp);font-weight:600;font-size:.88rem;background:var(--bg);padding:.55rem 1.1rem;border-radius:999px;box-shadow:var(--sh),var(--puff)}
.builder__copy:active{box-shadow:var(--sh-in)}

/* ============ PROCESS ============ */
.proc{padding:var(--sec) var(--pad);background:transparent}
.proc__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.proc__sticky{position:sticky;top:16vh;align-self:start}
.proc__ey{font-family:var(--disp);font-size:.9rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d);margin-bottom:1.2rem;display:inline-block;background:var(--surface);padding:.5rem 1.1rem;border-radius:999px;box-shadow:var(--sh),var(--puff)}
.proc__note{color:var(--muted);margin-top:1.5rem;max-width:36ch;font-weight:500}
.proc__steps{display:flex;flex-direction:column;gap:1rem}
.pstep{padding:clamp(1.3rem,2.6vw,2rem);background:var(--surface);border-radius:var(--r);box-shadow:var(--sh),var(--puff);transition:transform .4s var(--e)}
.pstep:hover{transform:translateY(-4px)}
.pstep__n{font-family:var(--disp);font-weight:600;font-size:clamp(1.4rem,3vw,1.9rem);color:var(--ink-dark);background:var(--gray);width:3.2rem;height:3.2rem;border-radius:50%;display:grid;place-items:center;box-shadow:var(--sh),var(--puff)}
.pstep h3{font-family:var(--disp);font-weight:600;font-size:clamp(1.3rem,2.4vw,1.8rem);margin:1rem 0 .5rem}
.pstep p{color:var(--muted);max-width:44ch;font-weight:500}

/* ============ STATS ============ */
.stats{max-width:var(--wrap);margin:0 auto;padding:var(--sec) var(--pad);display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,1.6rem)}
.stat{padding:1.8rem 1.4rem;text-align:center;background:var(--tint-gray);border-radius:var(--r);box-shadow:var(--sh),var(--puff)}
.stat__n{font-family:var(--disp);font-weight:600;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1;color:var(--gray-d);display:block;font-variant-numeric:tabular-nums}
.stat__n em{font-style:normal;color:var(--muted);font-size:.5em}
.stat__l{color:var(--muted);font-size:.92rem;font-weight:600;margin-top:.6rem;display:block}

/* ============ BRANŻE ============ */
.pkg{padding:var(--sec) var(--pad) calc(var(--sec)/2)}
.pkg__head{max-width:var(--wrap);margin:0 auto 1.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem}
.pkg__head p{max-width:40ch;color:var(--muted);font-weight:500}
.pkg__chips{max-width:var(--wrap);margin:0 auto 2.5rem;display:flex;flex-wrap:wrap;gap:.7rem}
.pkg__grid{max-width:var(--wrap);margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem}
.pcard{flex:0 1 calc(33.333% - .8rem);position:relative;background:var(--surface);border-radius:var(--r-lg);padding:1.9rem 1.6rem;display:flex;flex-direction:column;gap:1.1rem;box-shadow:var(--sh),var(--puff);transition:transform .4s var(--e)}
.pcard:hover{transform:translateY(-5px)}
.pcard--feat{background:var(--red);color:#fff}
@media(min-width:1025px){.pcard--feat{box-shadow:16px 20px 40px rgba(168,30,36,.4),-12px -12px 26px var(--sl),var(--puff)}}
.pcard__badge{align-self:flex-start;font-family:var(--disp);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--red-d);background:#fff;padding:.4rem .8rem;border-radius:999px;box-shadow:3px 3px 8px rgba(122,114,104,.28),-2px -2px 6px rgba(255,255,255,.7);margin-bottom:-.3rem}
.pcard__top h3{font-family:var(--disp);font-weight:600;font-size:1.7rem}
.pcard__top p{font-size:.95rem;color:var(--muted);font-weight:600;margin-top:.2rem}
.pcard--feat .pcard__top p{color:#fff}
.pcard ul{list-style:none;display:flex;flex-direction:column;gap:.6rem;flex:1}
.pcard li{font-size:.94rem;font-weight:500;padding-left:1.6rem;position:relative;color:var(--ink)}
.pcard--feat li{color:#fff}
.pcard li::before{content:"";position:absolute;left:0;top:.35em;width:1rem;height:1rem;border-radius:50%;background:var(--red);box-shadow:inset -1px -1px 2px rgba(120,18,23,.5),inset 1px 1px 2px rgba(255,255,255,.5)}
.pcard--feat li::before{background:#fff}
.pcard--feat .btn--solid{background:#fff;color:var(--red-d);box-shadow:8px 8px 18px rgba(120,18,23,.35),var(--puff)}
.pcard--feat .btn--solid .btn__ico{background:var(--tint-red)}

/* ============ MARKI ODZIEŻY ============ */
.brands{padding:calc(var(--sec)/2) 0}
.brands__label{text-align:center;font-family:var(--disp);font-size:.9rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);margin:0 var(--pad) 1.2rem}
.clients{padding:1.4rem 0;overflow:hidden;margin:0 var(--pad);background:var(--tint-gray);border-radius:999px;box-shadow:var(--sh-in)}
.clients__track{display:flex;align-items:center;width:max-content;will-change:transform}
.clients__track span{font-family:var(--disp);font-weight:600;font-size:clamp(1.3rem,3vw,2.2rem);letter-spacing:.07em;color:var(--muted);white-space:nowrap;margin-right:3rem}

/* ============ TESTIMONIALS ============ */
.tst{padding:var(--sec) var(--pad)}
.tst__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.tst__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.tcard{background:var(--surface);border-radius:var(--r-lg);padding:2rem;display:flex;flex-direction:column;gap:1.4rem;box-shadow:var(--sh),var(--puff)}
.tcard__q{font-family:var(--disp);font-weight:500;font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.4}
.tcard footer{margin-top:auto;display:flex;flex-direction:column;gap:.1rem}
.tcard footer span{font-family:var(--disp);font-weight:600}
.tcard footer em{font-style:normal;font-size:.88rem;color:var(--muted);font-weight:600}

/* ============ FAQ ============ */
.faq{padding:var(--sec) var(--pad)}
.faq__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.faq__list{max-width:var(--wrap);margin:0 auto;display:grid;gap:.9rem}
.faq__i{background:var(--surface);border-radius:var(--r);box-shadow:var(--sh),var(--puff);overflow:hidden}

.faq__i summary:focus-visible{outline-offset:-4px}
.faq__i summary{list-style:none;cursor:pointer;padding:1.4rem clamp(1.3rem,2.4vw,2rem);display:flex;justify-content:space-between;align-items:center;gap:1.5rem;font-family:var(--disp);font-weight:600;font-size:clamp(1.05rem,2vw,1.45rem);transition:color .3s}
.faq__i summary::-webkit-details-marker{display:none}
.faq__i summary:hover{color:var(--red-d)}
.faq__p{position:relative;width:26px;height:26px;flex:none;border-radius:50%;background:var(--bg);box-shadow:var(--sh-in)}
.faq__p::before,.faq__p::after{content:"";position:absolute;top:50%;left:50%;background:var(--red);border-radius:2px;transition:transform .4s var(--e),opacity .3s}
.faq__p::before{width:12px;height:2.5px;transform:translate(-50%,-50%)}
.faq__p::after{width:2.5px;height:12px;transform:translate(-50%,-50%)}
.faq__i.is-open .faq__p::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--e)}
.faq__i.is-open .faq__a{grid-template-rows:1fr}
.faq__a>p{overflow:hidden;color:var(--muted);font-weight:500;max-width:64ch;padding:0 clamp(1.3rem,2.4vw,2rem);transition:padding .5s var(--e)}
.faq__i.is-open .faq__a>p{padding-bottom:1.5rem}

/* ============ CTA / CONTACT ============ */
.cta{padding:var(--sec) var(--pad)}
.cta__inner{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:stretch;background:var(--tint-gray);border-radius:var(--r-lg);padding:clamp(2rem,5vw,4rem);box-shadow:var(--sh),var(--puff)}
.cta__title{font-family:var(--disp);font-weight:600;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.04;color:var(--ink-dark)}
.cta__title .ac{color:var(--red-d)}
.cta__lead{color:var(--muted);margin:1.3rem 0 2.2rem;max-width:36ch;font-weight:500}
.cta__rows{display:flex;flex-direction:column;gap:.8rem}
.cta__row{display:flex;flex-direction:column;gap:.15rem;padding:1rem 1.3rem;border-radius:var(--r);background:var(--surface);box-shadow:var(--sh),var(--puff);transition:transform .3s var(--e)}
a.cta__row:hover{transform:translateY(-3px)}
.cta__row span{font-family:var(--disp);font-size:.74rem;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--gray-d);font-weight:600}
.cta__row em{font-style:normal;font-family:var(--disp);font-weight:600;font-size:clamp(1rem,1.6vw,1.3rem);color:var(--ink-dark)}
.cta__form{display:grid;grid-template-columns:1fr;gap:1.7rem;align-items:start;background:var(--surface);border-radius:var(--r-lg);padding:clamp(1.5rem,3vw,2.4rem);box-shadow:var(--sh-lg),var(--puff)}
.freq{grid-column:1/-1;margin:.1rem 0 -.2rem;font-size:.76rem;font-weight:600;color:var(--muted)}
.freq b{color:var(--red-d)}
.cta__form-head{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem;padding-bottom:1.2rem;margin-bottom:.3rem;border-bottom:1px dashed rgba(122,114,104,.28)}
.cta__form-t{font-family:var(--disp);font-weight:600;font-size:1.15rem;color:var(--gray-d)}
.cta__form-trust{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}
.cta__form-trust li{font-family:var(--disp);font-size:.72rem;font-weight:600;color:var(--gray-d);background:var(--tint-gray);padding:.35rem .7rem;border-radius:999px}
.f{position:relative}
.f--full{grid-column:1/-1}
.f input,.f select,.f textarea{width:100%;background:var(--tint-gray);border:none;border-radius:999px;padding:1rem 1.3rem;color:var(--ink);font-size:1rem;font-family:var(--body);font-weight:600;box-shadow:var(--sh-in);transition:box-shadow .3s var(--e)}
.f textarea{resize:none;border-radius:var(--r)}
.f select{cursor:pointer;appearance:none;-webkit-appearance:none;padding-right:2.8rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' stroke='%23A81E24' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.2rem center;background-size:.9rem}
.f select option{background:var(--surface);color:var(--ink)}
.f input:focus,.f select:focus,.f textarea:focus{box-shadow:var(--sh-in),0 0 0 2px var(--gray-d)}
.f input[aria-invalid="true"],.f textarea[aria-invalid="true"]{box-shadow:var(--sh-in),0 0 0 2px var(--red-d)}
.f label{position:absolute;left:1.3rem;right:1.3rem;top:1rem;color:var(--muted);font-size:1rem;font-weight:600;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform .3s var(--e),font-size .3s var(--e),color .3s var(--e)}
.f input:focus+label,.f input:not(:placeholder-shown)+label,.f textarea:focus+label,.f textarea:not(:placeholder-shown)+label{transform:translateY(-2.35rem) translateX(-.6rem);font-size:.72rem;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--gray-d);background:var(--surface);padding:.15rem .45rem;border-radius:.5rem}
.f__static{position:static;display:block;font-family:var(--disp);font-size:.72rem;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--red-d);font-weight:600}
.req{color:var(--red-d)}
.f--sel{display:flex;flex-direction:column}
.f--sel .f__static{position:static;top:auto;transform:none;background:none;padding:0;margin:0 0 .5rem .4rem}
.cta__form .btn{grid-column:1/-1;margin-top:.3rem}
.fmsg{grid-column:1/-1;font-weight:700;font-size:.9rem;color:var(--red-d);text-align:center}
.fmsg.ok{color:var(--ink)}
.cta__note{grid-column:1/-1;font-size:.78rem;color:var(--muted);text-align:center;font-weight:600}
.cta--page{padding-top:clamp(7rem,14vh,10rem)}
.cta--page .cta__inner{align-items:start}
.cta__lead a{color:var(--red-d);text-decoration:underline;text-underline-offset:2px}

/* ============ CTA BAND (podstrony) ============ */
.ctaband{max-width:var(--wrap);margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;background:var(--tint-gray);border-radius:var(--r-lg);padding:clamp(2rem,5vw,3.6rem);box-shadow:var(--sh),var(--puff)}
.ctaband>div{max-width:52ch}
.ctaband .cta__title{margin:0}
.ctaband__p{color:var(--muted);font-weight:500;max-width:44ch;margin-top:1.1rem}
.btn--light{background:#fff;color:var(--red-d);box-shadow:8px 8px 18px rgba(120,18,23,.35),var(--puff)}
.btn--light .btn__ico{background:var(--tint-red)}
.btn--light:hover{transform:translateY(-3px);box-shadow:11px 13px 24px rgba(120,18,23,.4),var(--puff)}
.btn--light:hover .btn__ico{transform:rotate(45deg)}
.btn--light:active{transform:translateY(0);box-shadow:var(--sh-in)}

.opage{padding:clamp(6.8rem,12vh,9rem) var(--pad) clamp(.6rem,1.5vw,1.4rem)}
.opage__head{max-width:var(--wrap);margin:0 auto;display:grid;gap:1.1rem}

.opage__head h1,.svc__head h1,.builder__head h1,.kw__head h1,.cta--page h1{font-size:clamp(2.5rem,6.8vw,5.8rem);line-height:1.02;letter-spacing:-.022em}
.opage__lead{max-width:58ch;color:var(--muted);font-weight:500;font-size:clamp(1.06rem,1.35vw,1.28rem)}

.opage+.manifest{padding-top:clamp(.8rem,2vw,1.6rem)}
.opage+.manifest+.cases{margin-top:clamp(.5rem,2vw,1.5rem)}
.svc--page{padding-top:clamp(7.5rem,15vh,11rem)}
.oteaser{padding:var(--sec) var(--pad)}
.oteaser__head{max-width:var(--wrap);margin:0 auto var(--head-gap);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem}
.oteaser__head p{max-width:40ch;color:var(--muted);font-weight:500}
.oteaser__grid{max-width:var(--wrap);margin:0 auto 2.4rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.ocard{display:flex;flex-direction:column;gap:.35rem;background:var(--surface);border-radius:var(--r);padding:1.7rem;box-shadow:var(--sh),var(--puff);transition:transform .3s var(--e),box-shadow .3s var(--e);position:relative;min-height:200px;color:inherit}
.ocard:hover{transform:translateY(-5px);box-shadow:var(--sh-lg),var(--puff)}
.ocard__no{font-family:var(--disp);font-weight:600;font-size:.82rem;color:var(--red-d)}
.ocard h3{font-family:var(--disp);font-weight:600;font-size:1.28rem;color:var(--ink-dark);margin-top:.2rem;line-height:1.15}
.ocard p{color:var(--muted);font-weight:500;font-size:.92rem;margin-top:auto;padding-top:.8rem}
.ocard__go{position:absolute;top:1.5rem;right:1.5rem;width:2.1rem;height:2.1rem;border-radius:50%;display:grid;place-items:center;background:var(--bg);box-shadow:var(--sh-in);color:var(--red-d);transition:transform .3s var(--e)}
.ocard__go svg{width:1rem;height:1rem}
.ocard:hover .ocard__go{transform:rotate(45deg)}
.oteaser__cta{max-width:var(--wrap);margin:0 auto;display:flex;justify-content:center}
@media(max-width:900px){.oteaser__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.oteaser__grid{grid-template-columns:1fr}}

.ogrid{max-width:none;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.otile{display:flex;flex-direction:column;gap:.55rem;background:var(--tint-gray);border-radius:var(--r-lg);padding:clamp(1.7rem,3vw,2.4rem);box-shadow:var(--sh),var(--puff);transition:transform .3s var(--e),box-shadow .3s var(--e);color:inherit;min-height:320px}
.otile:hover{transform:translateY(-6px);box-shadow:var(--sh-lg),var(--puff)}
.otile__ico{width:3.4rem;height:3.4rem;display:grid;place-items:center;margin-bottom:.9rem}
.otile__ico svg{width:100%;height:100%;display:block}
.otile__no{font-family:var(--disp);font-weight:600;font-size:.78rem;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted)}
.otile h3{font-family:var(--disp);font-weight:600;font-size:1.32rem;color:var(--ink-dark);line-height:1.15}
.otile p{color:var(--muted);font-weight:500;font-size:.95rem;line-height:1.45;flex:1}
.otile__go{font-family:var(--disp);font-weight:600;font-size:.92rem;color:var(--red-d);display:inline-flex;align-items:center;gap:.45rem;margin-top:.6rem}
.otile__go svg{width:1rem;height:1rem;transition:transform .3s var(--e)}
.otile:hover .otile__go svg{transform:translateX(4px)}

@media(max-width:900px){.ogrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ogrid{grid-template-columns:1fr}}

.phgrid{max-width:none;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem}
.ph{position:relative;border-radius:var(--r);overflow:hidden;background:linear-gradient(150deg,var(--tint-gray),var(--gray-l));box-shadow:var(--sh),var(--puff);aspect-ratio:4/3;display:grid;place-items:center;text-align:center;padding:1.2rem}

.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph__in{display:grid;place-items:center;gap:.5rem;color:var(--gray-d)}
.ph__in svg{width:2.1rem;height:2.1rem;opacity:.75}
.ph__in b{font-family:var(--disp);font-weight:600;font-size:.9rem}
.ph__in span{font-size:.8rem;font-weight:500;max-width:26ch;line-height:1.35}

@media(max-width:560px){.phgrid{grid-template-columns:1fr 1fr}}

/* zdjęcie realizacji na podstronie usługi */
.umedia{margin-top:1.8rem;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh),var(--puff);background:var(--tint-gray)}
.umedia img{width:100%;height:auto;max-height:440px;object-fit:cover;object-position:center 40%;display:block}
.umedia figcaption{padding:.7rem 1rem;font-size:.8rem;font-weight:600;color:var(--gray-d);background:var(--surface)}

/* ============ PODSTRONA USŁUGI ============ */
.udetail{padding:clamp(.6rem,2vw,1.6rem) var(--pad) var(--sec)}
.udetail__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.udetail__lead{font-family:var(--body);font-size:clamp(1.06rem,1.6vw,1.28rem);color:var(--ink);font-weight:500;line-height:1.5}
.udetail__lead+p{color:var(--muted);font-weight:500;margin-top:1.1rem;line-height:1.55}
.udetail__chips{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.7rem}
.ucard{background:var(--tint-gray);border-radius:var(--r-lg);padding:clamp(1.6rem,3vw,2.2rem);box-shadow:var(--sh-lg),var(--puff)}
.ucard__t{display:block;font-family:var(--disp);font-size:.82rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--gray-d);margin-bottom:1.2rem}
.ulist{list-style:none;display:flex;flex-direction:column;gap:.9rem}
.ulist li{position:relative;padding-left:2rem;font-weight:500;color:var(--ink);line-height:1.4}
.ulist li::before{content:"";position:absolute;left:0;top:.05em;width:1.25rem;height:1.25rem;border-radius:.42rem;background:var(--tint-red);box-shadow:var(--puff)}
.ulist li::after{content:"";position:absolute;left:.44rem;top:.28em;width:.36rem;height:.64rem;border:solid var(--red);border-width:0 2.2px 2.2px 0;transform:rotate(45deg)}
@media(max-width:900px){.udetail__grid{grid-template-columns:1fr}}

/* ============ FOOTER ============ */
.footer{background:var(--surface);margin:0 var(--pad) var(--pad);border-radius:var(--r-lg);padding:clamp(2.5rem,5vw,4rem);box-shadow:var(--sh),var(--puff);overflow:hidden}
.footer__cols{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:1.5rem;padding:0 0 2.2rem}
.footer__col{display:flex;flex-direction:column;gap:.6rem}
.footer__t{font-family:var(--disp);font-size:.78rem;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--gray-d);margin-bottom:.3rem;font-weight:600}
.footer__col a,.footer__col span{color:var(--muted);font-size:1rem;font-weight:600;width:max-content;transition:color .3s}

.footer__col span.footer__t{color:var(--gray-d);font-size:.78rem}
.footer__col a{display:inline-flex;align-items:center;min-height:40px;padding:.2rem 0}
.footer__col a:hover{color:var(--red-d)}
.footer__bar{max-width:var(--wrap);margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.5rem;border-top:2px solid rgba(92,97,106,.3);font-size:.85rem;color:var(--muted);font-weight:600}
.footer__bar a{display:inline-flex;align-items:center;min-height:44px}
.footer__bar a:hover{color:var(--red-d)}
.footer__made{display:inline-flex;align-items:center;gap:.35rem}
.footer__made a{color:var(--gray-d);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.footer__made a:hover{color:var(--red-d)}

.totop{position:fixed;right:clamp(1rem,3vw,2rem);bottom:calc(clamp(1rem,3vw,2rem) + env(safe-area-inset-bottom));z-index:600;width:54px;height:54px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(20px) scale(.8);pointer-events:none;box-shadow:var(--sh),var(--puff);transition:opacity .4s var(--e),transform .4s var(--e),visibility .4s var(--e)}
.totop svg{width:1.3rem;height:1.3rem}
.totop.show{opacity:1;visibility:visible;transform:none;pointer-events:auto}

/* sticky mobilny CTA (Ads) — tylko <=1024 */
.mcta{display:none}
@media(max-width:1024px){
  .mcta{position:fixed;left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));bottom:calc(.9rem + env(safe-area-inset-bottom));z-index:640;display:flex;align-items:center;gap:.2rem;padding:.85rem 1.4rem;border-radius:999px;background:var(--red);color:#fff;box-shadow:10px 12px 26px rgba(168,30,36,.4),-6px -6px 16px rgba(255,255,255,.35),var(--puff);opacity:0;visibility:hidden;transform:translateY(120%);transition:opacity .4s var(--e),transform .45s var(--e),visibility .4s var(--e)}
  .mcta.is-away{opacity:0;pointer-events:none;transform:translateY(130%)}
.mcta.show{opacity:1;visibility:visible;transform:none}
  .mcta__t{font-family:var(--disp);font-weight:600;font-size:1.02rem;white-space:nowrap}
  .mcta__s{font-size:.72rem;font-weight:600;color:#fff;margin-left:.55rem;white-space:nowrap}
  .mcta__ico{margin-left:auto;width:2rem;height:2rem;flex:none;border-radius:50%;background:rgba(255,255,255,.2);display:grid;place-items:center}
  .mcta__ico svg{width:1.05rem;height:1.05rem}
  .totop{width:46px;height:46px;bottom:calc(4.6rem + env(safe-area-inset-bottom))}
  .totop svg{width:1.15rem;height:1.15rem}
  body.menu-open .mcta{display:none}
}
@media(max-width:360px){
  .mcta{padding:.75rem 1.1rem}
  .mcta__t{font-size:.92rem}
  .mcta__s{margin-left:.4rem;font-size:.68rem}
}

.pop-in{opacity:0;translate:0 26px;filter:blur(6px)}
.pop-in.pop-run{opacity:1;translate:none;filter:none;transition:opacity .7s var(--e),translate .7s var(--e),filter .7s var(--e)}
@media(prefers-reduced-motion:reduce){.pop-in,.pop-in.pop-run{opacity:1;translate:none;filter:none;transition:none}}

/* ============ REVEAL ============ */
[data-reveal]{opacity:0;translate:0 38px;transition:opacity .9s var(--e),translate .9s var(--e)}
[data-reveal].in{opacity:1;translate:none}

/* ============ RESPONSIVE ============ */
@media(max-width:1024px){
  .nav__links{display:none}.btn--pill{display:none}.burger{display:block}
  .nav.scrolled{background:rgba(252,251,248,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .proc__grid,.cta__inner{grid-template-columns:1fr}
  .proc__sticky{position:static}
  .stats{grid-template-columns:repeat(2,1fr)}
  .pcard{flex-basis:calc(50% - .6rem)}
  .tst__grid{grid-template-columns:repeat(2,1fr)}
  .tst__grid .tcard:last-child{grid-column:1/-1;max-width:70ch;margin-inline:auto}
}
@media(max-width:380px){.ticket__rows li{flex-wrap:wrap}.ticket__v{width:100%;text-align:left}}
@media(max-width:720px){
  :root{--sec:clamp(3.5rem,12vw,5.5rem)}
  .hero{padding-top:6rem}
  .hero__title{font-size:clamp(2.3rem,9.6vw,4rem);line-height:1.06;overflow-wrap:break-word}
  .h2,.opage__head h1,.svc__head h1,.builder__head h1,.cta--page h1{line-height:1.1}
  .cta__title{line-height:1.08}
  .manifest__text{line-height:1.3}
  .hero::before{opacity:.3}
  .hero__bottom{flex-direction:column;align-items:flex-start}
  .cases__pin{min-height:auto;overflow:visible;padding:5rem 0 3rem}
  .cases__track{flex-direction:column;transform:none!important}
  .cases__intro,.case{width:100%}
  .case__img{aspect-ratio:4/3}
  .cases__track{gap:1.4rem}
  .stats,.footer__cols,.tst__grid{grid-template-columns:1fr}
  .tst__grid .tcard:last-child{max-width:none}
  .pcard{flex-basis:100%}
  .cta__form,.builder__contact{grid-template-columns:1fr}
  .footer__col{gap:.15rem}
  .footer__col a{padding:.6rem 0;display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:360px){
  .btn{padding:.85rem 1.25rem;font-size:.9rem}
  .btn__ico{width:1.6rem;height:1.6rem}
}
@media(max-height:560px){
  .hero{padding:5rem var(--pad) 2.5rem;min-height:auto}
  }

/* ============ PRINT ============ */
@media print{
  .nav,.prog,.totop,.pre,.menu,.skip,.mcta{display:none!important}
  [data-reveal]{opacity:1!important;translate:none!important}
  .cases__track{transform:none!important;flex-direction:column}
  .cases__pin{min-height:auto}
}

/* ============ REDUCED MOTION ============ */
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  [data-reveal]{opacity:1;translate:none}
  .manifest__text .w{opacity:1}
  .hero__title [data-hw]{transform:none}
  .cases__pin{min-height:auto;overflow:visible;padding:5rem 0 3rem}
  .cases__track{flex-direction:column;transform:none!important}
  .cases__intro,.case{width:100%}
}

.hero{position:relative;min-height:auto;padding:clamp(7rem,13vh,9.5rem) 0 0;display:block;overflow:visible}
.hero::before,.hero::after{display:none}
.hero__inner{display:grid;grid-template-columns:1fr;gap:0;max-width:none;padding:0 var(--pad)}
.hero__copy{max-width:var(--wrap);margin:0 auto;width:100%}
.hero__ey{display:flex;align-items:center;gap:.7rem;font-family:var(--disp);font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gray-d);margin-bottom:1.4rem}
.hero__ey::before{content:"";width:2.2rem;height:2px;background:var(--red);border-radius:2px}
.hero__lead{max-width:46ch;font-size:clamp(1rem,1.3vw,1.18rem);color:var(--muted);font-weight:500;line-height:1.6}
.hero__cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.hero__media{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--tint-gray);box-shadow:var(--sh-lg);aspect-ratio:16/10}
.hero__media img{width:100%;height:100%;object-fit:cover;display:block}
.hero__badge2{position:absolute;left:clamp(.9rem,2vw,1.5rem);bottom:clamp(.9rem,2vw,1.5rem);z-index:2;display:flex;align-items:center;gap:.5rem;background:var(--surface);padding:.65rem 1.1rem;border-radius:999px;box-shadow:var(--sh);font-family:var(--disp);font-weight:600;font-size:.85rem;color:var(--ink-dark)}
.hero__badge2 i{width:.6rem;height:.6rem;border-radius:50%;background:var(--red);font-style:normal}
@media(min-width:1025px){

  .hero__inner{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,4vw,4.5rem);align-items:stretch;max-width:var(--wrap);margin:0 auto;padding-top:clamp(2rem,4.4vw,4.4rem)}
  .hero__copy{max-width:none}
  .hero__media{aspect-ratio:auto;min-height:min(64vh,600px);max-height:none}
  .hero__media img{height:100%}
}
@media(max-width:1024px){.hero__media{margin-top:2.2rem;aspect-ratio:16/11}}

/* pasek cech pod hero */
.hfeat{max-width:var(--wrap);margin:clamp(3rem,6.4vw,5.2rem) auto 0;padding:0 var(--pad);display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2.4vw,2.2rem)}
.hfeat__i{display:flex;flex-direction:column;gap:.5rem;padding-right:clamp(1rem,2vw,2rem);border-right:1px solid rgba(92,97,106,.22)}
.hfeat__i:last-child{border-right:0}
.hfeat__ico{width:2.2rem;height:2.2rem;color:var(--gray-d)}
.hfeat__ico svg{width:100%;height:100%}
.hfeat__t{font-family:var(--disp);font-size:.82rem;font-weight:700;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-dark)}
.hfeat__d{font-size:.88rem;color:var(--muted);font-weight:500;line-height:1.45}
@media(max-width:900px){.hfeat{grid-template-columns:1fr 1fr;gap:1.4rem}.hfeat__i:nth-child(2n){border-right:0}}
@media(max-width:520px){.hfeat{grid-template-columns:1fr}.hfeat__i{border-right:0;border-bottom:1px solid rgba(92,97,106,.18);padding-bottom:1rem}.hfeat__i:last-child{border-bottom:0}}

/* pasek statystyk — biała karta na szarym tle */
.hstats{max-width:var(--wrap);margin:clamp(2.4rem,5vw,4rem) auto 0;padding:clamp(1.6rem,3vw,2.4rem) clamp(1.4rem,3vw,2.6rem);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh);display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,2rem)}
.hstat{display:flex;align-items:center;gap:.9rem;padding-right:clamp(.8rem,2vw,1.6rem);border-right:1px solid rgba(92,97,106,.18)}
.hstat:last-child{border-right:0}
.hstat__ico{width:2.4rem;height:2.4rem;flex:none;color:var(--red);display:grid;place-items:center}
.hstat__ico svg{width:100%;height:100%}
.hstat__n{font-family:var(--disp);font-weight:700;font-size:clamp(1.35rem,2.4vw,1.85rem);color:var(--ink-dark);line-height:1;font-variant-numeric:tabular-nums;display:block}
.hstat__l{font-family:var(--disp);font-size:.72rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);margin-top:.28rem;display:block}
@media(max-width:900px){.hstats{grid-template-columns:1fr 1fr;row-gap:1.4rem}.hstat:nth-child(2n){border-right:0}}
@media(max-width:520px){.hstats{grid-template-columns:1fr}.hstat{border-right:0}}

/* stopka — układ firmowy */
.footer{padding:clamp(2.8rem,5vw,4rem) clamp(2rem,4vw,3.5rem)}
.footer__cols{grid-template-columns:1.5fr 1fr 1.15fr .85fr;gap:clamp(1.5rem,3vw,3rem)}
.footer__col--brand{gap:1.15rem;padding-right:clamp(1rem,3vw,3rem)}
.fcol__brand{display:block;margin:0}
.fcol__brand img{height:clamp(3.4rem,5.2vw,4.6rem);width:auto;display:block}
.footer__t{margin-bottom:.5rem!important}
.footer__col address{font-style:normal;color:var(--muted);font-weight:500;font-size:.95rem;line-height:1.6}
.footer__nip{font-size:.85rem;color:var(--gray-d);font-weight:600;margin-top:.7rem;display:block}
.fsoc{display:flex;gap:.55rem;margin-top:.35rem}
.cta__row .fsoc{margin-top:.5rem}
.fsoc a,.fsoc span{width:2.4rem;height:2.4rem;min-height:0;border-radius:50%;background:rgba(92,97,106,.12);display:grid!important;place-items:center;color:var(--ink-dark);padding:0;transition:background .25s var(--e),color .25s var(--e)}
.fsoc a:hover,.fsoc span:hover{background:var(--red);color:#fff}
.fsoc svg{width:1.05rem;height:1.05rem}
@media(max-width:900px){.footer__cols{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer__cols{grid-template-columns:1fr}}

/* logo w navie — większe */
.brand__logo{height:clamp(3.1rem,4.9vw,4.4rem)}

.hero__media--mos{background:none;box-shadow:none;overflow:visible;border-radius:0;padding:0}
.hero__media--mos .hero__badge2{top:clamp(.8rem,1.6vw,1.2rem);bottom:auto}

.hmos{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1.55fr 1fr;gap:.55rem}
.hmos__i{position:relative;overflow:hidden;border-radius:var(--r);box-shadow:var(--sh-lg),var(--puff);background:var(--tint-gray)}
.hmos__i img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s var(--e)}
.hmos__i:hover img{transform:scale(1.05)}
.hmos__i--big{grid-column:1/-1}
@media(max-width:1024px){.hmos{grid-template-rows:1.35fr 1fr;gap:.45rem}}

/* --- WOW: pinowany warsztat 01–04 --- */

.do{padding:var(--sec) var(--pad)}
.do__head{max-width:var(--wrap);margin:0 auto var(--head-gap);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,4rem);align-items:end}
.do__intro{color:var(--muted);font-weight:500;max-width:52ch}
.do__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.dotile{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:.5rem;min-height:clamp(19rem,26vw,23rem);padding:clamp(1.5rem,2.4vw,2.1rem);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh),var(--puff);color:inherit;transition:transform .4s var(--e),box-shadow .4s var(--e)}
.dotile:hover{transform:translateY(-6px);box-shadow:var(--sh-lg),var(--puff)}
.dotile__ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;clip-path:inset(100% 0 0 0);transition:clip-path .65s var(--e),transform 1.2s var(--e);transform:scale(1.08)}
.dotile:hover .dotile__ph,.dotile:focus-visible .dotile__ph{clip-path:inset(0 0 0 0);transform:scale(1)}
.dotile__sh{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(12,13,16,.2) 0%,rgba(12,13,16,.82) 62%,rgba(12,13,16,.93) 100%);opacity:0;transition:opacity .55s var(--e)}
.dotile__ico,.dotile h3,.dotile p,.dotile__go,.dotile__t{position:relative;z-index:2}
.dotile__ico{width:3.2rem;height:3.2rem;margin-bottom:.7rem;display:grid;place-items:center;transition:filter .45s var(--e)}
.dotile__ico svg{width:100%;height:100%;display:block}
.dotile h3{font-family:var(--disp);font-weight:600;font-size:1.3rem;color:var(--ink-dark);transition:color .45s var(--e)}
.dotile p{color:var(--muted);font-weight:500;font-size:.94rem;line-height:1.45;flex:1;transition:color .45s var(--e)}
.dotile__go{font-family:var(--disp);font-weight:600;font-size:.92rem;color:var(--red-d);display:inline-flex;align-items:center;gap:.45rem;margin-top:.5rem;transition:color .45s var(--e)}
.dotile__go svg{width:1rem;height:1rem;transition:transform .3s var(--e)}
.dotile:hover .dotile__go svg{transform:translateX(4px)}
.dotile--season{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;justify-content:space-between;gap:1.2rem;flex-wrap:wrap;background:var(--tint-gray)}
.dotile--season .dotile__t{display:flex;flex-direction:column;gap:.25rem;flex:1 1 30rem;min-width:0}
.dotile--season h3{font-size:1.25rem}
.dotile--season p{flex:0 0 auto;max-width:78ch;margin:0}
.dotile--season .dotile__go{margin-top:0;flex:none}

@media(hover:none),(max-width:1024px){
  .dotile__ph{clip-path:inset(0 0 0 0);transform:scale(1)}
  .dotile__sh{opacity:0}
  .dotile h3{color:var(--ink-dark)}.dotile p{color:var(--muted)}.dotile__go{color:var(--red-d)}
  .dotile__ico{filter:none}
}
@media(max-width:1100px){.do__grid{grid-template-columns:1fr 1fr}.do__head{grid-template-columns:1fr}}
@media(max-width:560px){.do__grid{grid-template-columns:1fr}.dotile{min-height:15rem}.dotile--season{flex-direction:column;align-items:flex-start}}

/* --- Standardy KROBI --- */
.std{padding:var(--sec) var(--pad)}
.std__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.std__lead{color:var(--muted);font-weight:500;max-width:62ch;margin-top:1.1rem}
.std__list{max-width:var(--wrap);margin:0 auto;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.stdi{background:var(--surface);border-radius:var(--r);padding:clamp(1.5rem,2.5vw,2rem) clamp(1.5rem,2.5vw,2.1rem);box-shadow:var(--sh);display:grid;grid-template-columns:auto 1fr;column-gap:1.1rem;row-gap:.45rem;transition:transform .35s var(--e),box-shadow .35s var(--e)}
.stdi:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.stdi__no{grid-row:1/3;font-family:var(--disp);font-weight:700;font-size:1.5rem;color:var(--red);line-height:1;padding-top:.15rem;font-variant-numeric:tabular-nums}
.stdi h3{font-family:var(--disp);font-weight:600;font-size:1.15rem;color:var(--ink-dark);line-height:1.2}
.stdi p{color:var(--muted);font-weight:500;font-size:.94rem;line-height:1.5}
@media(max-width:820px){.std__list{grid-template-columns:1fr}}

/* --- stopka na czarno --- */
.footer{background:#14151A;box-shadow:none}
.footer__nip,.footer__col span.footer__nip{color:#787E88}
.fcol__brand{background:#fff;border-radius:16px;padding:.85rem 1.15rem;width:max-content;box-shadow:0 10px 26px rgba(0,0,0,.35)}

/* --- CTA: były białe na białym --- */
.btn--pill{background:var(--red);color:#fff;box-shadow:8px 8px 18px rgba(168,30,36,.32),var(--puff)}
.btn--pill:hover{background:var(--red-d);box-shadow:11px 13px 24px rgba(168,30,36,.4),var(--puff)}
.ctaband .btn--light{background:var(--red);color:#fff;box-shadow:8px 8px 18px rgba(168,30,36,.32),var(--puff)}
.ctaband .btn--light:hover{background:var(--red-d)}
.ctaband .btn--light .btn__ico{background:rgba(255,255,255,.22);color:#fff}
.ctaband :focus-visible{outline-color:var(--red-d)}

.mq__pause{background:var(--bg);color:var(--ink-dark);opacity:.9}

/* --- oddech nagłówków skalowany z sekcjami --- */
:root{--head-gap:clamp(2rem,4vw,4rem)}

.h2,.cta__title,.hero__title{text-wrap:balance;overflow-wrap:break-word}
@media(max-width:560px){.h2 br,.cta__title br{display:none}}

.hstat__n{font-size:clamp(1.85rem,3.2vw,2.7rem)}
.hstat__l{font-size:.76rem}
.hstats{border-radius:30px}

.hmos{gap:.85rem}
.hmos__i{box-shadow:0 10px 26px rgba(122,114,104,.2)}
@media(max-width:1024px){
  .hero__media--mos{max-height:none;min-height:20rem}
  .hmos{grid-template-columns:1fr 1fr;grid-template-rows:1.35fr 1fr;gap:.6rem}
  .hmos__i--big{grid-column:1/-1}
  .hmos__i:nth-child(4){display:none}
}

/* --- kafelki usług --- */

.dotile h3,.dotile p,.dotile__go{transition:color .3s var(--e) .12s}
.dotile__ph{transition:clip-path .5s var(--e),transform 1.1s var(--e)}
.dotile--season p{max-width:60ch}
.dotile--season .dotile__t{flex:1 1 34rem}
@media(hover:none),(max-width:1024px){
  .dotile__ico{filter:none;background:#fff;border-radius:16px;padding:.4rem;box-shadow:0 6px 18px rgba(0,0,0,.28)}
  .dotile--season .dotile__ico{background:none;box-shadow:none;padding:0}
}

.stdi p{font-size:.96rem;line-height:1.55;max-width:56ch}
.stdi__no{color:var(--red-d);font-size:1.7rem;line-height:.95;opacity:.9}
.stdi{border-radius:24px}
@media(min-width:1300px){.std__list{grid-template-columns:repeat(3,minmax(0,1fr))}.stdi p{max-width:44ch}}

.real{padding:var(--sec) var(--pad)}
.real__head{max-width:var(--wrap);margin:0 auto var(--head-gap);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,4rem);align-items:end}
.real__intro{color:var(--muted);font-weight:500;max-width:50ch}
.real__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.rcard{background:var(--surface);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);transition:transform .35s var(--e),box-shadow .35s var(--e)}
.rcard:hover{transform:translateY(-5px);box-shadow:var(--sh-lg)}
.rcard__img{aspect-ratio:4/3;overflow:hidden;background:var(--tint-gray)}
.rcard__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s var(--e)}
.rcard:hover .rcard__img img{transform:scale(1.05)}
.rcard__meta{padding:1.1rem clamp(1.1rem,2vw,1.5rem) 1.3rem;display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.rcard__meta h3{font-family:var(--disp);font-weight:600;font-size:1.05rem;color:var(--ink-dark);flex:1;min-width:0}
.rcard__tag{font-family:var(--disp);font-size:.72rem;font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d);background:var(--tint-red);padding:.35rem .7rem;border-radius:999px}
@media(max-width:900px){.real__grid{grid-template-columns:1fr 1fr}.real__head{grid-template-columns:1fr}}
@media(max-width:520px){.real__grid{grid-template-columns:1fr}}

/* --- marquee nie wisi już w próżni --- */
.do{padding-bottom:calc(var(--sec) * .55)}
.mq{margin-top:0}

.nav,.prog,.totop,.pre,.menu,.skip,.mcta{}
@media print{
  .nav,.prog,.totop,.pre,.menu,.skip,.mcta{display:none!important}
  [data-reveal]{opacity:1!important;translate:none!important}
  .footer{background:none;color:#000}
}

/* --- stopka: godziny miały 4,46:1 --- */
.footer__nip,.footer__col span.footer__nip{color:#8A9099}

/* ETAP 1c — poprawki po audycie technicznym */

.dotile--season .dotile__sh,
.dotile--season:hover .dotile__sh,
.dotile--season:focus-visible .dotile__sh{opacity:0}
.dotile--season:hover h3,.dotile--season:focus-visible h3{color:var(--ink-dark)}
.dotile--season:hover p,.dotile--season:focus-visible p{color:var(--muted)}
.dotile--season:hover .dotile__go,.dotile--season:focus-visible .dotile__go{color:var(--red-d)}
.dotile--season:hover .dotile__ico,.dotile--season:focus-visible .dotile__ico{background:none;box-shadow:none;padding:0}

.dotile__sh{background:linear-gradient(180deg,rgba(12,13,16,.66) 0%,rgba(12,13,16,.88) 55%,rgba(12,13,16,.94) 100%)}

.do__grid .dotile--season{min-height:0}

/* focus na czarnej stopce był 1,62:1 */
.footer :focus-visible{outline-color:#FCFBF8}

.footer__col a,.footer__col span{max-width:100%}

.hstats{max-width:min(var(--wrap),calc(100% - var(--pad) * 2))}

@media(max-width:720px){.hero.hero{padding-top:6rem}}
@media(max-height:560px) and (orientation:landscape){.hero.hero{padding:5rem var(--pad) 2.5rem;min-height:auto}}

/* kotwice chowały nagłówek pod paskiem nawigacji */
[id]{scroll-margin-top:8.5rem}

/* ETAP 1d — poprawki po drugiej rundzie recenzji */

/* ciemny blok stykał się z białą kartą statystyk */
.hero{padding-bottom:clamp(3.5rem,7vw,6rem)}

.hfeat{max-width:min(var(--wrap),calc(100% - var(--pad) * 2));padding:0}

.rcard__img{aspect-ratio:1}
.rcard__img img{object-position:center 45%}
.rcard__meta h3{font-size:1.15rem}
.real__head{display:block}
.real__intro{max-width:56ch;margin-top:1.1rem}
.do__intro{max-width:none}

.hstats,.stdi,.rcard{box-shadow:var(--sh),var(--puff)}
.stdi:hover{box-shadow:var(--sh-lg),var(--puff)}
.rcard:hover{box-shadow:var(--sh-lg),var(--puff)}
.hstats,.stdi{border-radius:var(--r)}

/* kafel sezonowy odróżnia się od kafli usług */
.dotile--season{background:var(--tint-red)}

.btn--pill:active{box-shadow:inset 5px 5px 11px rgba(120,18,23,.45)}
.btn--solid:hover{background:var(--red-d)}

@media(max-width:1100px){.real__head{display:block}}

/* siatki wchodzą kaskadą, nie jednym blokiem */
.real__grid .rcard:nth-child(2),.do__grid .dotile:nth-child(2){transition-delay:.08s}
.real__grid .rcard:nth-child(3),.do__grid .dotile:nth-child(3){transition-delay:.16s}
.real__grid .rcard:nth-child(4),.do__grid .dotile:nth-child(4){transition-delay:.24s}
.real__grid .rcard:nth-child(5),.do__grid .dotile:nth-child(5){transition-delay:.32s}
.real__grid .rcard:nth-child(6){transition-delay:.4s}

.do{padding-bottom:var(--sec)}

@media(max-width:640px){.footer{margin:0;border-radius:0}}

.dotile[data-reveal],.rcard[data-reveal],.stdi[data-reveal]{
  transition:opacity .9s var(--e) var(--rd,0s),
             translate .9s var(--e) var(--rd,0s),
             transform .35s var(--e),
             box-shadow .35s var(--e);
}
.real__grid .rcard:nth-child(2),.do__grid .dotile:nth-child(2){--rd:.08s;transition-delay:unset}
.real__grid .rcard:nth-child(3),.do__grid .dotile:nth-child(3){--rd:.16s;transition-delay:unset}
.real__grid .rcard:nth-child(4),.do__grid .dotile:nth-child(4){--rd:.24s;transition-delay:unset}
.real__grid .rcard:nth-child(5),.do__grid .dotile:nth-child(5){--rd:.32s;transition-delay:unset}
.real__grid .rcard:nth-child(6){--rd:.4s;transition-delay:unset}

@media(max-width:560px){.dotile--season .dotile__t{flex:0 0 auto}}

.hero__inner{max-width:min(var(--wrap),calc(100% - var(--pad) * 2));margin-inline:auto;padding-left:0;padding-right:0}

@media(max-height:560px) and (orientation:landscape){.hero.hero{padding:5rem 0 2.5rem;min-height:auto}}

.rcard__meta h3{flex:1 1 0}
.rcard__tag{flex:none}

@media(max-width:1100px){.real__grid{grid-template-columns:1fr 1fr}}

@media print{
.footer,.footer *{color:#000!important;background:none!important;box-shadow:none!important}
}

.do__head{display:block}
.do__intro{max-width:56ch;margin-top:1.1rem}

/* równiejszy rytm pionowy między sekcjami */
.do,.std{padding-bottom:calc(var(--sec) * .55)}

.std__list .stdi:nth-child(2){--rd:.08s}
.std__list .stdi:nth-child(3){--rd:.16s}
.std__list .stdi:nth-child(4){--rd:.24s}
.std__list .stdi:nth-child(5){--rd:.32s}
.std__list .stdi:nth-child(6){--rd:.4s}

@media(max-width:520px){
  .hstat{border-bottom:1px solid rgba(92,97,106,.18);padding-bottom:1rem}
  .hstat:last-child{border-bottom:0;padding-bottom:0}
}

.dotile:hover .dotile__ico,.dotile:focus-visible .dotile__ico{background:var(--surface)}
@media(hover:none),(max-width:1024px){.dotile__ico{background:var(--surface)}}

.hfeat__i{border-right:0}

.hero__cta{margin-top:.6rem}

.mq{margin-top:clamp(1.5rem,3vw,2.5rem)}

.hmos{grid-template-rows:2.1fr 1fr}

/* leady sekcji jedną miarą */
.std__lead{max-width:56ch}

/* ETAP 1h — poprawki po piątej rundzie recenzji */

.dotile__ico{width:4rem;height:4rem;padding:.4rem;margin:0 0 .3rem -.4rem;border-radius:16px;background:transparent;box-shadow:none;
  transition:background .35s var(--e),box-shadow .35s var(--e)}
.dotile:hover .dotile__ico,.dotile:focus-visible .dotile__ico{padding:.4rem;border-radius:16px}
@media(hover:none),(max-width:1024px){.dotile__ico{padding:.4rem;border-radius:16px}}

@media(max-width:1024px){.hmos{grid-template-rows:1.35fr 1fr}}

.hero__title{font-size:clamp(2.6rem,6.5vw,5.6rem)}

.ctaband{padding:clamp(2rem,4vw,3.5rem)}
.hstats{padding:clamp(1.6rem,3vw,2.4rem) clamp(2rem,4vw,3.5rem)}

.hfeat__i{padding-right:0}
@media(min-width:901px){.hfeat{gap:clamp(1.5rem,3.6vw,3.2rem)}}

.dotile--season p{max-width:76ch}
.dotile--season h3{font-size:1.6rem}

.do{padding-top:calc(var(--sec) * .6)}

/* ETAP 1i — poprawki po szóstej rundzie recenzji */

@media(hover:none),(max-width:1024px){
  .dotile__ico{background:var(--surface);box-shadow:0 6px 18px rgba(0,0,0,.28)}
  .dotile--season .dotile__ico{background:none;box-shadow:none}
}

@media(max-width:520px){.real__grid{grid-template-columns:1fr}}

.real,.cta{padding-top:calc(var(--sec) * .45)}

.hero__bottom{gap:.8rem 2rem}

@media(max-width:720px){.hero.hero{padding-top:7.5rem}}

.btn--pill{transition:box-shadow .35s var(--e),background .3s var(--e),color .3s var(--e)}

.std{padding-top:calc(var(--sec) * .75)}

/* ETAP 1j — poprawki po siódmej rundzie recenzji */

.ctaband{background:var(--red)}
.ctaband .cta__title,.ctaband__p{color:#fff}
.ctaband .cta__title .ac{color:#FFE0DE}
.ctaband>div{max-width:64ch}
.ctaband__p{max-width:56ch}
.ctaband .btn--light{background:#fff;color:var(--red-d);box-shadow:8px 8px 18px rgba(120,18,23,.35),var(--puff)}
.ctaband .btn--light:hover{background:var(--tint-red)}
.ctaband .btn--light .btn__ico{background:var(--tint-red);color:var(--red-d)}
.ctaband :focus-visible{outline-color:#FCFBF8}
.cta__title{font-size:clamp(1.85rem,5.4vw,4.4rem)}

.real{padding-bottom:calc(var(--sec) * .75)}

@media(max-width:560px){.real__grid{grid-template-columns:1fr}}

.totop:hover{transition:opacity .4s var(--e),visibility .4s var(--e)}

.mq__pause{opacity:1}

.std{padding-top:calc(var(--sec) * .5)}

/* ETAP 1k — poprawki po ósmej rundzie recenzji */

.do__intro,.real__intro,.std__lead,.ctaband__p{font-size:clamp(1.06rem,1.25vw,1.2rem);line-height:1.55}

@media(min-width:901px){.hfeat{padding:0 clamp(2rem,4vw,3.5rem);gap:clamp(1rem,2vw,2rem)}}

.ctaband .btn--light:hover{box-shadow:11px 13px 24px rgba(120,18,23,.4),var(--puff)}

/* jedna miara kopii w kartach */
.dotile p,.stdi p{font-size:.95rem;line-height:1.5}

/* ETAP 2 — kreator krok po kroku */
.kw{padding:clamp(7.5rem,15vh,11rem) var(--pad) var(--sec)}
.kw__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.kw__lead{color:var(--muted);font-weight:500;font-size:clamp(1.06rem,1.25vw,1.2rem);line-height:1.55;max-width:56ch;margin-top:1.1rem}
.kw__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.5rem,3vw,2.6rem);align-items:start}
.kw__side{position:sticky;top:calc(var(--navh,7rem) + 1rem);display:grid;gap:1rem}
.kw__main{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh),var(--puff);padding:clamp(1.6rem,3vw,2.6rem);min-height:34rem;display:flex;flex-direction:column}

/* pasek postępu kroków */
.kw__prog{display:flex;align-items:center;gap:1rem;margin-bottom:clamp(1.4rem,2.6vw,2.2rem)}
.kw__prog-bar{flex:1;height:5px;border-radius:3px;background:rgba(92,97,106,.18);overflow:hidden}
.kw__prog-bar i{display:block;height:100%;width:0;background:var(--red);border-radius:3px;transition:width .45s var(--e)}
.kw__prog-lbl{font-family:var(--disp);font-weight:600;font-size:.82rem;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);white-space:nowrap}
.kw__prog-lbl b{color:var(--ink-dark)}

/* pojedynczy krok */
.kwstep{display:none;flex:1;animation:kwin .45s var(--e) both}
.kwstep.is-on{display:block}
@keyframes kwin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.kwstep{animation:none}}
.kwstep__t{font-family:var(--disp);font-weight:600;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--ink-dark);line-height:1.15}
.kwstep__d{color:var(--muted);font-weight:500;margin-top:.6rem;max-width:52ch}
.kwstep__note{color:var(--muted);font-weight:500;font-size:.9rem;margin-top:1rem;max-width:52ch}
.kwstep .chipset,.kwstep .kwcards,.kwstep .f,.kwstep .kwfile{margin-top:1.6rem}
.kwstep__err{margin-top:1.2rem;color:var(--red-d);font-weight:600;font-size:.95rem}

/* karty wyboru w kroku 1 */
.kwcards{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.kwcard{text-align:left;display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.2rem;border-radius:var(--r);background:var(--bg);box-shadow:var(--sh-in);color:var(--ink-dark);transition:background .3s var(--e),box-shadow .3s var(--e),transform .3s var(--e)}
.kwcard b{font-family:var(--disp);font-weight:600;font-size:1.05rem;line-height:1.2}
.kwcard span{color:var(--muted);font-weight:500;font-size:.88rem;line-height:1.4}
.kwcard:hover{transform:translateY(-3px)}
.kwcard.is-on{background:var(--red);color:#fff;box-shadow:8px 8px 18px rgba(168,30,36,.3),var(--puff)}
.kwcard.is-on span{color:rgba(255,255,255,.88)}
@media(max-width:560px){.kwcards{grid-template-columns:1fr}}

/* podgrupy zależne od kroku 1 */
.kwsub{display:none}
.kwsub.is-on{display:block}

/* pola */
.kw .f{position:relative}
.kw .f input,.kw .f textarea{width:100%;padding:1.1rem 1.2rem;border-radius:var(--r);background:var(--bg);box-shadow:var(--sh-in);border:0;font:inherit;color:var(--ink-dark);font-weight:600}
.kw .f textarea{resize:vertical;min-height:7rem;line-height:1.5}
.kw .f label{position:absolute;left:1.2rem;top:1.15rem;color:var(--muted);font-weight:500;pointer-events:none;transition:transform .25s var(--e),font-size .25s var(--e),color .25s var(--e);transform-origin:left top}
.kw .f input:focus+label,.kw .f input:not(:placeholder-shown)+label,
.kw .f textarea:focus+label,.kw .f textarea:not(:placeholder-shown)+label{transform:translateY(-.75rem) scale(.78);color:var(--gray-d)}
.kw .f input:focus,.kw .f textarea:focus{outline:3px solid var(--red);outline-offset:2px}
.kw .f--num input{padding-right:3.6rem}
.kw .f__suffix{position:absolute;right:1.2rem;top:1.15rem;color:var(--muted);font-weight:600}
.kw .f--other{margin-top:1.2rem}
.kw__contact{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1.6rem}
@media(max-width:640px){.kw__contact{grid-template-columns:1fr}}
.kw__contact+.btn{margin-top:1.4rem}

/* wybór pliku */
.kwfile{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;padding:2rem 1.4rem;border-radius:var(--r);background:var(--bg);box-shadow:var(--sh-in);cursor:pointer;transition:box-shadow .3s var(--e)}
.kwfile:hover{box-shadow:var(--sh-in),0 0 0 2px var(--red) inset}
.kwfile__ico{width:2.4rem;height:2.4rem;color:var(--red-d)}
.kwfile__ico svg{width:100%;height:100%}
.kwfile__t{font-family:var(--disp);font-weight:600;color:var(--ink-dark)}
.kwfile__d{color:var(--muted);font-weight:500;font-size:.88rem}
.kw input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.kw input[type=file]:focus-visible+.kwstep__note,.kw input[type=file]:focus-visible~.kwstep__note{outline:none}
.kwfile.has-file{box-shadow:var(--sh-in),0 0 0 2px var(--red-d) inset}

/* nawigacja kroków */
.kw__nav{display:flex;gap:.8rem;margin-top:clamp(1.6rem,3vw,2.4rem);padding-top:clamp(1.2rem,2.4vw,1.8rem);border-top:1px solid rgba(92,97,106,.16)}
.kw__nav .btn{flex:0 0 auto}
.kw__nav #kwNext{margin-left:auto}
.kw__nav .btn:disabled{opacity:.4;cursor:not-allowed}
.kw__skip{align-self:center;margin-top:.9rem;background:none;box-shadow:none;color:var(--muted);font-family:var(--disp);font-weight:600;font-size:.9rem;text-decoration:underline;text-underline-offset:3px;padding:.5rem .8rem;min-height:44px}
.kw__skip:hover{color:var(--red-d)}
.kw__skip[hidden]{display:none}

@media(max-width:1024px){
  .kw__grid{grid-template-columns:1fr}
  .kw__side{position:static;order:2}
  .kw__main{order:1;min-height:0}
}
@media(max-width:640px){
  .kw__nav{flex-wrap:wrap}
  .kw__nav .btn{flex:1 1 auto;justify-content:center}
}

.kw__nav .btn[hidden]{display:none}

/* ETAP 3 — podstrony oferty */

/* wspólny nagłówek sekcji na podstronach */
.sblock{padding:var(--sec) var(--pad)}
.sblock--tight{padding-top:calc(var(--sec) * .55)}
.sblock__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.sblock__lead{color:var(--muted);font-weight:500;font-size:clamp(1.06rem,1.25vw,1.2rem);line-height:1.55;max-width:60ch;margin-top:1.1rem}
.sblock__wrap{max-width:var(--wrap);margin:0 auto}

/* lead pogrubiony pod H1 */
.slead{max-width:var(--wrap);margin:0 auto;font-family:var(--disp);font-weight:600;font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.35;color:var(--ink-dark);max-width:44ch}
.sbody{color:var(--muted);font-weight:500;font-size:clamp(1rem,1.15vw,1.12rem);line-height:1.6;max-width:62ch;margin-top:1.2rem}

/* karty „kiedy wybrać / dlaczego warto" */
.qgrid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.qcard{background:var(--surface);border-radius:var(--r);padding:clamp(1.5rem,2.5vw,2rem);box-shadow:var(--sh),var(--puff);display:flex;flex-direction:column;gap:.55rem;transition:transform .35s var(--e),box-shadow .35s var(--e)}
.qcard:hover{transform:translateY(-4px);box-shadow:var(--sh-lg),var(--puff)}
.qcard h3{font-family:var(--disp);font-weight:600;font-size:1.12rem;color:var(--ink-dark);line-height:1.25;display:flex;align-items:flex-start;gap:.6rem}
.qcard h3::before{content:"";flex:none;width:.7rem;height:.7rem;border-radius:50%;background:var(--red);margin-top:.42rem}
.qcard p{color:var(--muted);font-weight:500;font-size:.95rem;line-height:1.5}
@media(max-width:1100px){.qgrid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.qgrid{grid-template-columns:1fr}}

/* proces 01–05 */
.proc5{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;counter-reset:p5;position:relative}
.p5{background:var(--surface);border-radius:var(--r);padding:clamp(1.3rem,2.2vw,1.8rem);box-shadow:var(--sh),var(--puff);display:flex;flex-direction:column;gap:.5rem}
.p5__no{font-family:var(--disp);font-weight:700;font-size:1.5rem;line-height:1;color:var(--red-d);font-variant-numeric:tabular-nums}
.p5 h3{font-family:var(--disp);font-weight:600;font-size:1.05rem;color:var(--ink-dark);line-height:1.2}
.p5 p{color:var(--muted);font-weight:500;font-size:.92rem;line-height:1.5}
@media(max-width:1100px){.proc5{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.proc5{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.proc5{grid-template-columns:1fr}}

/* lista „co możemy" — dwie kolumny znaczników */
.tlist{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem 1.6rem;list-style:none}
.tlist li{position:relative;padding-left:1.8rem;color:var(--ink);font-weight:600;font-size:1rem;line-height:1.5}
.tlist li::before{content:"";position:absolute;left:0;top:.42em;width:.85rem;height:.85rem;border-radius:50%;background:var(--tint-red);box-shadow:inset 0 0 0 3px var(--red)}

/* kafelki materiałów */
.matgrid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.8rem}
.mat{background:var(--surface);border-radius:var(--r);padding:1.1rem .9rem 1.2rem;box-shadow:var(--sh),var(--puff);display:flex;flex-direction:column;align-items:center;gap:.7rem;text-align:center;transition:transform .35s var(--e)}
.mat:hover{transform:translateY(-4px)}
.mat__sw{width:100%;aspect-ratio:1;border-radius:calc(var(--r) - .6rem);box-shadow:var(--sh-in)}
.mat b{font-family:var(--disp);font-weight:600;font-size:.95rem;color:var(--ink-dark)}
@media(max-width:1100px){.matgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.matgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:420px){.matgrid{grid-template-columns:1fr 1fr}}

/* zawartość boxu */
.boxlist{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.boxitem{background:var(--surface);border-radius:var(--r);padding:1.1rem 1.3rem;box-shadow:var(--sh),var(--puff);font-family:var(--disp);font-weight:600;color:var(--ink-dark);display:flex;align-items:center;gap:.7rem}
.boxitem::before{content:"";flex:none;width:.8rem;height:.8rem;border-radius:50%;background:var(--red)}
@media(max-width:900px){.boxlist{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.boxlist{grid-template-columns:1fr}}

/* pasek zastosowań / branż */
.chiprow{max-width:var(--wrap);margin:0 auto;display:flex;flex-wrap:wrap;gap:.6rem}

/* sekcja sezonowa — pusta na razie */
.soon{max-width:var(--wrap);margin:0 auto;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh),var(--puff);padding:clamp(2rem,4vw,3.5rem);display:grid;gap:1rem;text-align:center;justify-items:center}
.soon h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--ink-dark)}
.soon p{color:var(--muted);font-weight:500;max-width:56ch}

.otile--season{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;justify-content:space-between;gap:1.2rem;flex-wrap:wrap;background:var(--tint-red)}
.otile--season h3{font-size:1.6rem}
.otile--season p{flex:1 1 34rem;margin:0}
.otile--season .otile__go{margin-top:0}
@media(max-width:640px){.otile--season{flex-direction:column;align-items:flex-start}}

/* blok założyciela */
.founder{padding:var(--sec) var(--pad)}
.founder__wrap{max-width:var(--wrap);margin:0 auto;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh),var(--puff);padding:clamp(2rem,4vw,3.5rem);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.6rem,4vw,3.5rem);align-items:start}
.founder__side{display:flex;flex-direction:column;gap:1rem}
.founder__mark{width:clamp(5rem,8vw,7rem);height:clamp(5rem,8vw,7rem);border-radius:50%;background:var(--tint-red);display:grid;place-items:center;font-family:var(--disp);font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);color:var(--red-d)}
.founder__name{font-family:var(--disp);font-weight:600;font-size:clamp(1.3rem,2.2vw,1.8rem);color:var(--ink-dark);line-height:1.2}
.founder__role{color:var(--muted);font-weight:600;font-size:.95rem}
.founder__body p{color:var(--muted);font-weight:500;font-size:clamp(1rem,1.15vw,1.1rem);line-height:1.65;max-width:62ch}
.founder__body p+p{margin-top:1.1rem}
.founder__body p:first-child{font-family:var(--disp);font-weight:600;font-size:clamp(1.15rem,1.8vw,1.4rem);color:var(--ink-dark);line-height:1.45}
@media(max-width:900px){.founder__wrap{grid-template-columns:1fr}}

/* sześć zalet */
.adv{padding:var(--sec) var(--pad)}
.adv__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.adv__lead{color:var(--muted);font-weight:500;font-size:clamp(1.06rem,1.25vw,1.2rem);line-height:1.55;max-width:56ch;margin-top:1.1rem}
.adv__grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.advc{background:var(--surface);border-radius:var(--r);padding:clamp(1.5rem,2.5vw,2rem);box-shadow:var(--sh),var(--puff);display:flex;flex-direction:column;gap:.6rem;transition:transform .35s var(--e),box-shadow .35s var(--e)}
.advc:hover{transform:translateY(-4px);box-shadow:var(--sh-lg),var(--puff)}
.advc__top{display:flex;align-items:center;gap:.7rem}
.advc__chk{width:1.7rem;height:1.7rem;flex:none;border-radius:50%;background:var(--tint-red);display:grid;place-items:center}
.advc__chk svg{width:.95rem;height:.95rem;color:var(--red-d);stroke-width:3}
.advc h3{font-family:var(--disp);font-weight:600;font-size:1.12rem;color:var(--ink-dark);line-height:1.2}
.advc p{color:var(--muted);font-weight:500;font-size:.95rem;line-height:1.5}
@media(max-width:1100px){.adv__grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.adv__grid{grid-template-columns:1fr}}

.sblock{padding-bottom:calc(var(--sec) * .5)}
.sblock+.sblock,.sblock+.real{padding-top:calc(var(--sec) * .5)}
.real+.sblock{padding-top:calc(var(--sec) * .5)}

/* ETAP 2b — poprawki kreatora po audycie */

.kw .f input[aria-invalid="true"],.kw .f textarea[aria-invalid="true"]{box-shadow:var(--sh-in),0 0 0 2px var(--red-d)}

.kw .f label{transition:top .25s var(--e),font-size .25s var(--e),color .25s var(--e)}
.kw .f input:focus+label,.kw .f input:not(:placeholder-shown)+label,
.kw .f textarea:focus+label,.kw .f textarea:not(:placeholder-shown)+label{
  transform:none;top:.4rem;font-size:.68rem;line-height:1;background:none;padding:0;color:var(--gray-d)}
.kw .f input,.kw .f textarea{padding-top:1.5rem;padding-bottom:.75rem}
.kw .f--area textarea{padding-top:1.7rem}
/* ukryty input pliku nie pokazywał focusu */
.kwfile:has(~input[type=file]:focus-visible){outline:3px solid var(--steel);outline-offset:3px}
/* opis na zaznaczonej karcie miał 4,12:1 */
.kwcard.is-on span{color:#fff}

@media(min-width:1025px){
  .kw__side{max-height:calc(100vh - 9rem);overflow-y:auto;overscroll-behavior:contain}
  .kw__side::-webkit-scrollbar{width:6px}
  .kw__side::-webkit-scrollbar-thumb{background:rgba(92,97,106,.3);border-radius:3px}
}

@media(max-width:1024px){.kw__side .stage{display:block}}
/* najdłuższa etykieta obcinała się na 360-390 px */
@media(max-width:430px){.kw .f label{font-size:.9rem}}

.slead{margin-inline:0}

.mat__sw{aspect-ratio:3/2;max-height:6.5rem;border:1px solid rgba(38,40,46,.5)}

@media(max-width:1400px){.proc5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.proc5{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.proc5{grid-template-columns:1fr}}
.p5{padding:clamp(1.3rem,2.2vw,1.8rem) clamp(1.1rem,1.5vw,1.4rem)}

.tlist{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}
.chiprow{list-style:none}

.real+.cta{padding-top:calc(var(--sec) * .25)}
.sblock+.cta{padding-top:calc(var(--sec) * .5)}

.nav__offer[aria-current="page"]{background:var(--bg);box-shadow:inset 3px 0 0 var(--red)}

.opage__head .kpage__ey a{display:inline-block;padding:.35rem .6rem .35rem 0;color:inherit;
  text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.opage__head .kpage__ey a:hover{color:var(--ink-dark)}

.otile--season{outline:1.5px solid rgba(168,30,36,.3);outline-offset:-1.5px}
/* siódmy kafel oferty zostawał sam w rzędzie */
@media(min-width:1301px){.ogrid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* karty bez akcji obiecywały kliknięcie */
.qcard:hover,.p5:hover,.mat:hover,.boxitem:hover{transform:none}
.qcard,.p5,.mat{transition:box-shadow .35s var(--e)}

/* ---- O nas ---- */
/* opis na czerwonej karcie miał 1,29:1 */
.pcard>p{color:var(--muted);font-weight:500;font-size:.95rem;line-height:1.5;max-width:62ch}
.pcard--feat>p{color:#fff}
.pcard__top h3{font-size:clamp(1.35rem,2.1vw,1.7rem)}

.pkg__head{display:block}
.pkg__head .kpage__ey{color:var(--red-d);font-weight:600;max-width:none}
.pkg__head>p:not(.kpage__ey){max-width:60ch;margin-top:1.1rem}

.advc[data-reveal],.pcard[data-reveal]{
  transition:opacity .9s var(--e) var(--rd,0s),translate .9s var(--e) var(--rd,0s),
             transform .35s var(--e),box-shadow .35s var(--e)}
.adv__grid .advc:nth-child(2),.pkg__grid .pcard:nth-child(2){--rd:.08s}
.adv__grid .advc:nth-child(3),.pkg__grid .pcard:nth-child(3){--rd:.16s}
.adv__grid .advc:nth-child(4),.pkg__grid .pcard:nth-child(4){--rd:.24s}
.adv__grid .advc:nth-child(5),.pkg__grid .pcard:nth-child(5){--rd:.32s}
.adv__grid .advc:nth-child(6),.pkg__grid .pcard:nth-child(6){--rd:.4s}
/* ptaszek odjeżdżał od pierwszego wiersza tytułu */
.advc__top{align-items:flex-start}
.advc__chk{margin-top:.15rem}

.founder__body{max-width:62ch}
.founder__body p{max-width:none}

/* ---- Informacje ---- */

.oteaser__grid .ucard__t{font-size:1.35rem;font-weight:600;letter-spacing:-.01em;
  text-transform:none;color:var(--ink-dark);margin-bottom:.75rem}

.faq__i:not(.is-open) .faq__a{visibility:hidden}
.faq__a{transition:grid-template-rows .5s var(--e),visibility 0s linear .5s}
.faq__i.is-open .faq__a{visibility:visible;transition:grid-template-rows .5s var(--e)}
/* dziura przed FAQ po usunięciu sekcji branż */
.udetail+.faq{padding-top:calc(var(--sec) * .45)}

/* ETAP 1l — poprawki po dziewiatej rundzie */

.menu{justify-content:safe center}
/* lead hero byl najmniejszym leadem na stronie */
.hero__lead{font-size:clamp(1.15rem,1.5vw,1.4rem)}
/* jedyne nierowne zlacze: otoczenie marquee */
.std{padding-top:calc(var(--sec) * .75)}

@media(hover:none),(max-width:1024px){.dotile__ico{margin-left:0}}

.hfeat__t{font-size:.76rem;font-weight:600}

.qcard[data-reveal],.p5[data-reveal],.mat[data-reveal],.boxitem[data-reveal]{
  transition:opacity .9s var(--e) var(--rd,0s),translate .9s var(--e) var(--rd,0s),
             box-shadow .35s var(--e)}
.qgrid>:nth-child(2),.proc5>:nth-child(2),.matgrid>:nth-child(2),.boxlist>:nth-child(2){--rd:.08s}
.qgrid>:nth-child(3),.proc5>:nth-child(3),.matgrid>:nth-child(3),.boxlist>:nth-child(3){--rd:.16s}
.qgrid>:nth-child(4),.proc5>:nth-child(4),.matgrid>:nth-child(4),.boxlist>:nth-child(4){--rd:.24s}
.qgrid>:nth-child(5),.proc5>:nth-child(5),.matgrid>:nth-child(5),.boxlist>:nth-child(5){--rd:.32s}
.matgrid>:nth-child(n+6),.boxlist>:nth-child(n+6){--rd:.4s}

.qcard:hover{box-shadow:var(--sh),var(--puff)}

.sblock__head .h2,.real__head .h2{font-size:clamp(1.75rem,3.6vw,3.05rem);line-height:1.08}

.sbody{font-size:clamp(1.06rem,1.25vw,1.2rem)}

.svc__head{display:block}
.svc__intro{max-width:56ch;margin-top:1.1rem}
/* siatka kafli była jedyną bez limitu --wrap */
.ogrid{max-width:var(--wrap)}
@media(min-width:1101px){.ogrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:561px) and (max-width:1100px){.ogrid{grid-template-columns:1fr 1fr}}
/* marquee na hubie stał 240 px nad i 152 px pod */
.svc--page{padding:clamp(7.5rem,15vh,11rem) var(--pad) calc(var(--sec) * .45)}

/* jedyny wyśrodkowany blok w systemie podstron */
.soon{text-align:left;justify-items:start}

.nav__link.active{background:var(--bg);box-shadow:inset 0 -2px 0 var(--red)}

@media(min-width:1101px){.qgrid:has(>*:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}}

.boxlist,.matgrid{list-style:none}

@media(max-width:1024px){
  .kw__side .stage__artwrap{max-width:200px;margin:0 auto}
  .kw__side .stage__cap{margin-top:.6rem}
  .kw__side .stage__chips{flex-wrap:wrap;justify-content:center;margin-top:.85rem;min-height:1.9rem;overflow:visible}
}

.kwstep{flex:0 0 auto}
.kw__nav{margin-top:auto}

.kw .f input:focus,.kw .f textarea:focus{outline:none}
.kw .f input:focus-visible,.kw .f textarea:focus-visible{outline:3px solid var(--red);outline-offset:2px}

.chipset[data-multi] .chip::before{border:1.5px solid rgba(92,97,106,.7)}

.pkg__head{margin-bottom:var(--head-gap)}

.pkg+.cta{padding-top:calc(var(--sec) * 1.5)}

.opage__head .kpage__ey{margin-bottom:0}

#naklady .ucard__t{font-size:1.35rem;font-weight:600;letter-spacing:-.01em;
  text-transform:none;color:var(--ink-dark);margin-bottom:.75rem}

@media(max-width:720px){.cases__track{grid-template-columns:1fr 1fr}}
/* nagłówek galerii łamał oś powyżej ~1676 px */
.cases__intro{max-width:min(var(--wrap),calc(100% - (var(--pad) - .7rem) * 2));margin-inline:auto;padding:0}

/* ~200 px pustki w kolumnie tekstu założyciela */
.founder__wrap{max-width:1160px}

@media(max-width:640px){.otile--season p{flex:0 0 auto}}

.otile[data-reveal]{transition:opacity .9s var(--e) var(--rd,0s),translate .9s var(--e) var(--rd,0s),
  transform .3s var(--e),box-shadow .3s var(--e)}
.ogrid>:nth-child(2){--rd:.08s}.ogrid>:nth-child(3){--rd:.16s}.ogrid>:nth-child(4){--rd:.24s}
.ogrid>:nth-child(5){--rd:.32s}.ogrid>:nth-child(n+6){--rd:.4s}

.svc__intro{font-size:clamp(1.15rem,1.5vw,1.4rem);max-width:58ch;margin-top:1.1rem}
.opage__lead{font-size:clamp(1.15rem,1.5vw,1.4rem)}

.opage{padding:clamp(7.5rem,15vh,11rem) var(--pad) clamp(.6rem,1.5vw,1.4rem)}

.ctaband .cta__title{font-size:clamp(1.85rem,4.2vw,3.6rem)}

@media(min-width:1401px){.qgrid:has(>*:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1101px) and (max-width:1400px){.qgrid:has(>*:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* kopia kart procesu wypadła z ujednolicenia */
.p5 p{font-size:.95rem}
/* ostatni inline-style layoutowy na podstronach */
.sblock__cta{margin-top:2.2rem}

/* ETAP 2d / 5d — poprawki po trzeciej rundzie */

.ticket__prog-bar i{background:linear-gradient(90deg,var(--gray-d),var(--steel))}
.ticket__prog-bar{background:linear-gradient(var(--gray),var(--gray-d))}

.kw__side{overscroll-behavior:auto}
@media(min-width:1025px){.kw__side .stage__artwrap{max-width:230px;margin:0 auto}}

.kw .f label,.kw .f__suffix{top:1.5rem}
.kw .f--area label{top:1.7rem}
.kw .f--num input::-webkit-outer-spin-button,.kw .f--num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.kw .f--num input{-moz-appearance:textfield}
/* nadkreślnik kreatora został na starym odstępie */
.kw__head .kpage__ey{margin-bottom:0}

.opage+.manifest+.cases{margin-top:0}
.cases{padding-bottom:calc(var(--sec) * .5)}
.adv,.founder,.proc,.stats,.tst,.pkg{padding-top:calc(var(--sec) * .5);padding-bottom:calc(var(--sec) * .5)}
.pkg+.cta{padding-top:calc(var(--sec) * .5)}
/* i na Informacjach */
.oteaser+.udetail,.udetail+.faq,.faq+.cta{padding-top:calc(var(--sec) * .5)}

/* nagłówki sekcji były równe tytułowi pasa CTA */
.oteaser__head .h2,.adv__head .h2,.faq__head .h2,.pkg__head .h2,.tst__head .h2,
.proc__sticky .h2,.cases__intro .h2,.udetail .h2{font-size:clamp(1.75rem,3.6vw,3.05rem);line-height:1.08}

.founder__wrap{max-width:min(var(--wrap),calc(100% - var(--pad) * 2));grid-template-columns:minmax(0,1fr) minmax(0,64ch)}

@media(max-width:720px){.cases__pin{padding:0}}
@media(prefers-reduced-motion:reduce){.cases__pin{padding:0}}

#realizacje .real__head .h2{font-size:clamp(1.85rem,5.4vw,4.4rem)}

.ucard__t{display:block;font-family:var(--disp);font-size:1.35rem;font-weight:600;letter-spacing:-.01em;
  text-transform:none;color:var(--ink-dark);margin-bottom:.75rem}

.oteaser,.udetail,.faq{padding-bottom:calc(var(--sec) * .5)}
.udetail+.cta{padding-top:calc(var(--sec) * .5)}
.opage+.oteaser{padding-top:clamp(.8rem,2vw,1.6rem)}

.oteaser__head{display:block}
.oteaser__head p{max-width:56ch;margin-top:1.1rem}

.cta--page{padding-top:clamp(7.5rem,15vh,11rem)}

.ticket__prog-bar{background:var(--bg)}

/* ETAP 6b — poprawki po piatej rundzie */

.pcard--feat .btn--solid:hover{background:var(--tint-red);color:var(--red-d)}
/* nadkreslnik kreatora stykal sie z H1 */
.kw__head .kpage__ey{margin-bottom:1.1rem}
@media(max-width:720px){.kw__head h1{line-height:1.1}}

.sblock__head:only-child{margin-bottom:0}

.ctaband .cta__title{font-size:clamp(1.75rem,3.6vw,3.05rem)}
/* martwa regula rozmiaru H1 hero na telefonie */
@media(max-width:720px){.hero__title.hero__title{font-size:clamp(2.3rem,9.6vw,4rem)}}
/* cel dotykowy 23,55 px na linkach technik */
.ucard .otile__go{min-height:44px}
/* resztki inline-styli z Informacji */
.ucard .ulist,.ucard .otile__go{margin-top:1.2rem}
.udetail .h2{margin-bottom:1.4rem}
.slink{color:var(--gray-d);text-decoration:underline;text-underline-offset:3px}
.slink:hover{color:var(--red-d)}

/* ETAP 6c — poprawki po szostej rundzie */

@media(max-width:900px){.founder__wrap{grid-template-columns:minmax(0,1fr)}}

/* przyklejone CTA przykrywalo dolna czesc stopki */
@media(max-width:1024px){.footer{padding-bottom:calc(clamp(2.8rem,5vw,4rem) + 4.4rem)}}

.opage+.sblock--tight{padding-top:clamp(.8rem,2vw,1.6rem)}

/* lead Kontaktu zostal na domyslnych 16 px */
.cta--page .cta__lead{font-size:clamp(1.15rem,1.5vw,1.4rem);max-width:52ch}

.kw__lead{font-size:clamp(1.15rem,1.5vw,1.4rem)}

/* dwa warianty nadkreslnika na jednej stronie */
.manifest__ey,.proc__ey{background:none;box-shadow:none;padding:0;border-radius:0;margin-bottom:.9rem}

/* galeria pracowni byla dwukolumnowa az do 0 px */
@media(max-width:560px){.cases__track{grid-template-columns:1fr}.case__img{aspect-ratio:3/2}}

.usl-rel .slink+.slink{margin-left:.85rem;position:relative}
.usl-rel .slink+.slink::before{content:"";position:absolute;left:-.5rem;top:.15em;bottom:.15em;width:1px;background:rgba(92,97,106,.45)}

/* ETAP 6d — poprawki po siodmej rundzie */

.founder__wrap{max-width:var(--wrap);grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}

.cta__form .f input,.cta__form .f select,.cta__form .f textarea{background:var(--bg)}

@media(min-width:901px){.hfeat{padding:0;gap:clamp(1.5rem,3vw,2.8rem)}}

.f--sel .f__static{color:var(--gray-d)}

.fsoc a,.fsoc span{width:2.75rem;height:2.75rem}

.ucard .ulist li{font-size:1rem}
.usl-rel{margin-top:1.3rem;color:var(--muted);font-weight:500;font-size:.95rem}

/* ETAP 6e — poprawki po osmej rundzie */

.stats{max-width:min(var(--wrap),calc(100% - var(--pad) * 2));padding-inline:0}

.cta__form-trust li{background:var(--bg)}

@media(max-width:1024px){
  .footer{padding-bottom:clamp(2.8rem,5vw,4rem)}
  body:has(.mcta) .footer{padding-bottom:calc(clamp(2.8rem,5vw,4rem) + 4.4rem)}
  body:not(:has(.mcta)) .totop{bottom:calc(clamp(1rem,3vw,2rem) + env(safe-area-inset-bottom))}
}
/* piec leadow sekcji zostalo na domyslnych 16 px */
.oteaser__head p,.pkg__head>p:not(.kpage__ey),.proc__note,.soon p,.cases__intro p{font-size:clamp(1.06rem,1.25vw,1.2rem);line-height:1.55}
.cases__intro p{color:var(--muted);font-weight:500}

.oteaser__grid:last-child{margin-bottom:0}

/* ETAP 6f — poprawki po dziewiatej rundzie */

@media(max-width:900px){.founder__wrap.founder__wrap{grid-template-columns:minmax(0,1fr)}}

.cases__track{max-width:min(var(--wrap),calc(100% - var(--pad) * 2));margin-inline:auto;padding:0}
.cases__intro{max-width:none;margin-inline:0}

.udetail__grid > div > .ucard__t{margin-top:2.2rem}

.udetail__lead+p{font-size:clamp(1.06rem,1.25vw,1.2rem);line-height:1.55}
/* ostatnia kopia w kartach poza ujednoliceniem */
.pstep p{font-size:.95rem;line-height:1.5}

.brands__label{text-align:left;max-width:min(var(--wrap),calc(100% - var(--pad) * 2));margin:0 auto 1.2rem}

.otile--season .otile__t{display:flex;flex-direction:column;gap:.25rem;flex:1 1 34rem;min-width:0}
@media(max-width:640px){.otile--season .otile__t{flex:0 0 auto}}

/* ETAP 6g — poprawki po dziesiatej rundzie */

@media(min-width:1025px){.cta--page .cta__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.cta--page h1{font-size:clamp(2.4rem,4.6vw,5rem)}

.ucard__t,.oteaser__grid .ucard__t,#naklady .ucard__t{font-size:clamp(1.5rem,2.2vw,1.85rem);line-height:1.2}

.kwcard{background:var(--surface);border:1px solid rgba(92,97,106,.16);box-shadow:var(--sh),var(--puff)}
.kwcard:active{box-shadow:inset 5px 5px 11px rgba(120,18,23,.45)}

/* kadr i pasek postępu */

/* ETAP 8 — naprawa mobile */

.hero__inner>*{min-width:0}
@media(max-width:1024px){
  .hero__media--mos{min-height:0;aspect-ratio:5/4}
}

@media(max-width:1024px){
  .hmos__i:nth-child(4){display:block}
  .hmos__i:nth-child(3){display:none}
}

/* ETAP 9 — pełna naprawa widoku mobilnego */

@media(max-width:480px){
  .cta__inner{padding:1.15rem}
  .cta__form{padding:1.15rem}
  .ctaband{padding:1.4rem}
  .founder__wrap{padding:1.3rem}
  .soon{padding:1.4rem}
  .ucard{padding:1.3rem}
  .kw__main{padding:1.15rem}
  .ticket{padding:1.15rem}
  .stdi{padding:1.3rem}
  .dotile,.otile{padding:1.2rem}
  .hstats{padding:1.3rem}
}

@media(max-width:480px){
  .btn{white-space:normal;max-width:100%}
  .ctaband .btn--light,.sblock__cta .btn,.soon .btn,.btn--full{width:100%;justify-content:center}
}
@media(max-width:360px){.mcta__s{display:none}}

@media(max-width:400px){
  .opage__head h1,.svc__head h1,.kw__head h1{font-size:clamp(1.95rem,9.4vw,2.5rem)}
  .cta--page h1{font-size:clamp(1.75rem,8vw,2.4rem)}
  .opage__head h1,.cta--page h1,.svc__head h1{hyphens:auto}
}

.otile--season p{flex:0 0 auto}

@media(max-width:560px){
  .hero__media--mos{aspect-ratio:3/4}
  .hmos{grid-template-columns:1fr 1fr;grid-template-rows:1.15fr 1fr}
}

@media(max-width:1024px){
  .kw__grid{display:flex;flex-direction:column}
  .kw__side{display:contents}
  .kw__side .stage{order:1;position:sticky;top:calc(var(--navh,7rem) + .5rem);z-index:20;
    display:flex;align-items:center;gap:.9rem;text-align:left;padding:.7rem .9rem;margin-bottom:1rem}
  .kw__side .stage .stage__artwrap{max-width:64px;margin:0;flex:none}
  .kw__side .stage .stage__cap{margin:0;flex:1;min-width:0;font-size:.95rem}
  .kw__side .stage .stage__chips{display:none}
  .kw__main{order:2}
  .kw__side .ticket{order:3;margin-top:1rem}
  .kw__side .stage-chip>span{max-width:none;white-space:normal;overflow:visible}
}

/* --- 7. cele dotykowe poniżej 44 px --- */
@media(max-width:1024px){
  .menu__link{min-height:48px}
  .opage__head .kpage__ey a{display:inline-flex;align-items:center;min-height:44px;padding:.6rem .8rem .6rem 0}
  .mq__pause{width:2.75rem;height:2.75rem}
  .footer__col a{min-height:44px}
}

/* --- 8. treść pod 14 px na telefonie --- */
@media(max-width:560px){
  .hstat__l,.hfeat__t,.stage-chip{font-size:.85rem}
  .cta__row span,.cta__form-trust li,.rcard__tag,.ticket__badge,.ticket__eta span,.freq{font-size:.82rem}
  .cta__note,.builder__note,.footer__t,.ticket__k,.umedia figcaption,.case__cat,.otile__no{font-size:.86rem}
  .footer__bar,.footer__nip,.kw__prog-lbl{font-size:.9rem}
}

/* --- 11. rytm i drobiazgi --- */
/* prześwit nagłówek/nav w pasmie 721-1024 px */
@media(max-width:1024px){.hero.hero{padding-top:clamp(7.5rem,15vh,9.5rem)}}

@media(max-height:720px){.menu{padding-top:7rem}}
/* numer 01-06 zjadał 27 px z 320 px szerokości */
@media(max-width:480px){.stdi{grid-template-columns:1fr;row-gap:.35rem}.stdi__no{grid-row:auto}}
/* asymetria w jednokolumnowej karcie statystyk */
@media(max-width:520px){.hstat{padding-right:0}}

@media(max-width:1024px){body:not(:has(.mcta)) .totop{bottom:clamp(1rem,3vw,2rem)}}

@media(max-width:400px){.mq__pause{right:.4rem}}

.f input,.f select,.f textarea,.kw .f input,.kw .f select,.kw .f textarea{min-width:0}

.cta__inner>*,.cta__rows>*,.udetail__grid>*,.founder__wrap>*,.kw__grid>*,.kw__contact>*,.proc__grid>*,.oteaser__grid>*,.do__grid>*,.real__grid>*,.qgrid>*,.std__list>*,.adv__grid>*,.ogrid>*,.matgrid>*,.boxlist>*,.proc5>*,.hmos>*,.hfeat>*,.hstats>*,.footer__cols>*,.pkg__grid>*,.tlist>*,.builder__grid>*{min-width:0}

@media(max-width:1024px){.kw__grid{align-items:stretch}}

.footer{background:var(--surface);box-shadow:var(--sh),var(--puff)}
.footer__col a,.footer__col span,.footer__col address{color:var(--muted)}
.footer__t,.footer__col span.footer__t{color:var(--gray-d)}
.footer__nip,.footer__col span.footer__nip{color:var(--gray-d)}
.footer__col a:hover{color:var(--red-d)}
.footer__bar{border-top:2px solid rgba(92,97,106,.28);color:var(--muted)}
.footer__bar span{color:var(--muted)}
.footer__bar a{color:var(--muted)}
.footer__bar a:hover{color:var(--red-d)}
.footer__made a{color:var(--gray-d)}
.footer__made a:hover{color:var(--red-d)}
.footer .fsoc a,.footer .fsoc span{background:rgba(92,97,106,.12);color:var(--ink-dark)}
/* logo nie potrzebuje już białego kafla */
.fcol__brand{background:none;box-shadow:none;padding:0;border-radius:0}
.footer :focus-visible{outline-color:var(--steel)}
@media print{.footer,.footer *{color:#000!important}}

.menu__link{gap:0}
.menu__links{gap:.35rem}

@media(max-width:720px){
  .footer__col--links{display:none}
  .footer__cols{grid-template-columns:1fr;gap:1.6rem;padding-bottom:1.6rem}
  .footer__col--brand{gap:.9rem;padding-right:0}
  .footer__col address:not(.footer__adr) br{display:none}
  .footer__bar{flex-direction:column;align-items:flex-start;gap:.2rem;font-size:.85rem}
  .footer__bar a{min-height:40px}
}

@media(max-width:1024px){

  .menu{justify-content:flex-start;
        padding-top:clamp(6.2rem,11vh,7.5rem);
        padding-bottom:calc(1.6rem + env(safe-area-inset-bottom));
        padding-inline:max(1.15rem,env(safe-area-inset-left))}

  .menu__links{flex:1 1 auto;min-height:0;max-height:min(46rem,70vh);max-width:34rem;gap:0;
               padding:.5rem;margin-bottom:1rem;
               background:var(--surface);border-radius:var(--r-lg);
               box-shadow:var(--sh),var(--puff)}

  .menu__link{flex:1 1 auto;min-height:60px;width:100%;
              display:grid;grid-template-columns:1fr auto;
              grid-template-rows:auto auto;align-content:center;
              gap:.15rem .7rem;padding:.5rem .95rem;border-radius:1.15rem;
              position:relative;color:var(--ink-dark);
              transition:background .3s var(--e),box-shadow .3s var(--e),color .3s var(--e)}

  .menu__link span[data-mtext]{grid-column:1;grid-row:1;
              font-size:clamp(1.25rem,5.4vw,1.75rem);line-height:1.15}

  .menu__link em{grid-column:1;grid-row:2;font-style:normal;
              font-family:var(--body);font-size:.88rem;font-weight:600;
              line-height:1.3;color:var(--muted);
              overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

  /* strzałka wyśrodkowana względem obu wierszy */
  .menu__link::after{content:"";grid-column:2;grid-row:1 / 3;align-self:center;
              width:.55rem;height:.55rem;
              border-right:2px solid var(--muted);border-top:2px solid var(--muted);
              transform:rotate(45deg);opacity:.5;
              transition:opacity .3s var(--e),border-color .3s var(--e)}

  .menu__link+.menu__link::before{content:"";position:absolute;
              left:.95rem;right:.95rem;top:0;height:1px;
              background:rgba(92,97,106,.16)}

  .menu__link:hover{transform:none;background:transparent;box-shadow:none;color:var(--ink-dark)}
  .menu__link:active,.menu__link.active{background:var(--bg);box-shadow:var(--sh-in);color:var(--red-d)}
  .menu__link:active::after,.menu__link.active::after{border-color:var(--red-d);opacity:1}
  .menu__link.active+.menu__link::before,.menu__link.active::before{background:transparent}

  /* kontakt: druga karta, przy dolnej krawędzi */
  .menu__foot{margin-top:auto;padding:.5rem 1.25rem 1.05rem;max-width:34rem;
              background:var(--surface);border-radius:var(--r-lg);
              box-shadow:var(--sh),var(--puff);
              flex-direction:column;align-items:flex-start;gap:0}
  .menu__foot>a{font-size:1.05rem;min-height:46px;display:inline-flex;align-items:center}
  .menu__h{font-size:.92rem;font-weight:600;color:var(--gray-d)}
  .menu__foot>span:not(.menu__h){font-size:.88rem;line-height:1.45;font-weight:500;
              color:var(--muted);margin-top:.3rem}
  .menu .fsoc{margin-top:.85rem}
  .menu .fsoc a{min-height:0}

  .menu :focus-visible{outline-offset:-3px}
}

@media(max-width:1024px) and (min-height:1100px){
  .menu{justify-content:center}
  .menu__foot{margin-top:1rem}
}

@media(max-width:1024px) and (max-height:700px){
  .menu{padding-top:5.6rem}
  .menu__link{min-height:52px;padding:.4rem .95rem}
  .menu__link span[data-mtext]{font-size:clamp(1.15rem,4.8vw,1.5rem)}
  .menu__link em{font-size:.82rem}
  .menu__links{margin-bottom:.7rem}
  .menu__foot{padding:.35rem 1.15rem .8rem}
  .menu__foot>a{min-height:42px;font-size:1rem}
  .menu__foot>span:not(.menu__h){display:none}
  .menu .fsoc{margin-top:.6rem}
  .menu .fsoc a{width:2.4rem;height:2.4rem}
}

/* ETAP 12 — uwagi klienta z dokumentu „strona1" */

.hero__title.hero__title{font-size:clamp(2.45rem,5.9vw,4.8rem)}
.h2{font-size:clamp(1.75rem,4.6vw,3.7rem)}
#realizacje .real__head .h2{font-size:clamp(1.75rem,4.6vw,3.7rem)}
.opage__head h1,.svc__head h1,.builder__head h1,.kw__head h1,.cta--page h1{font-size:clamp(2.35rem,6vw,4.9rem)}
@media(max-width:720px){.hero__title.hero__title{font-size:clamp(2.2rem,9vw,3.7rem)}}

/* --- 2. pasek atutów: większa czcionka --- */
.hfeat__t{font-size:.92rem;letter-spacing:.04em}
.hfeat__d{font-size:.96rem;line-height:1.5}
@media(max-width:1024px){.hfeat__t{font-size:.86rem}}
@media(max-width:560px){.hfeat__t{font-size:.88rem}.hfeat__d{font-size:.9rem}}

.shot{padding:calc(var(--sec) * .45) var(--pad) 0}
.shot__fig{max-width:var(--wrap);margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.shot__fig img{width:100%;height:auto;display:block;border-radius:var(--r-lg);
  box-shadow:var(--sh-lg),var(--puff);background:var(--surface)}
.shot__cap{font-family:var(--disp);font-weight:600;color:var(--gray-d);
  font-size:clamp(.95rem,1.15vw,1.1rem);max-width:62ch}
@media(max-width:720px){.shot__fig img{border-radius:var(--r)}}

/* --- 4. stopka: adres i godziny otwarcia --- */
.footer__adr{font-style:normal;font-size:.92rem;line-height:1.55;margin-top:.7rem;
  color:var(--gray-d);font-weight:600}
.fhours{max-width:var(--wrap);margin:0 auto;padding:1.6rem 0 2rem;
  border-top:2px solid rgba(92,97,106,.2)}
.fhours__list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem clamp(1.5rem,3vw,3rem);margin-top:.9rem}
.fhours__list li{display:flex;flex-direction:column;gap:.15rem;min-width:0}
.fhours__list b{font-family:var(--disp);font-size:.95rem;font-weight:600;color:var(--ink-dark)}
.fhours__list span{font-size:.92rem;line-height:1.5;color:var(--muted);font-weight:500}
@media(max-width:820px){.fhours__list{grid-template-columns:1fr}}
@media(max-width:720px){.fhours{padding:1.2rem 0 1.4rem}}

.do__grid .dotile{--dp:clamp(1.5rem,2.4vw,2.1rem);padding-bottom:0;gap:.45rem}
.do__grid .dotile__ph{position:relative;inset:auto;z-index:0;clip-path:none;transform:none;order:9;
  width:calc(100% + var(--dp) * 2);max-width:none;margin:auto calc(var(--dp) * -1) 0;
  height:clamp(7rem,9.5vw,9.5rem);object-fit:cover;
  transition:transform .5s var(--e)}
.do__grid .dotile:hover .dotile__ph,.do__grid .dotile:focus-visible .dotile__ph{transform:scale(1.05)}
.do__grid .dotile p{flex:0 1 auto}
.do__grid .dotile__go{margin-bottom:1rem}

.do__grid .dotile__sh,.do__grid .dotile:hover .dotile__sh{opacity:0}
.do__grid .dotile:hover h3,.do__grid .dotile:focus-visible h3{color:var(--ink-dark)}
.do__grid .dotile:hover p,.do__grid .dotile:focus-visible p{color:var(--muted)}
.do__grid .dotile:hover .dotile__go,.do__grid .dotile:focus-visible .dotile__go{color:var(--red-d)}
.do__grid .dotile:hover .dotile__ico,.do__grid .dotile:focus-visible .dotile__ico{
  filter:none;background:none;border-radius:0;padding:0;box-shadow:none}
.do__grid .dotile--season{padding-bottom:clamp(1.5rem,2.4vw,2.1rem)}

.zgrid{max-width:var(--wrap);margin:0 auto;display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,1.6vw,1.6rem)}
.zgrid>*{min-width:0}
.zcard{background:var(--surface);border-radius:var(--r-lg);
  padding:clamp(1.4rem,2.2vw,2rem);box-shadow:var(--sh),var(--puff);
  display:flex;flex-direction:column;gap:.55rem}
.zcard__ico{width:2.6rem;height:2.6rem;display:grid;place-items:center;
  border-radius:1rem;background:var(--bg);box-shadow:var(--sh-in);color:var(--red-d);margin-bottom:.35rem}
.zcard__ico svg{width:1.35rem;height:1.35rem}
.zcard h3{font-family:var(--disp);font-weight:600;font-size:1.18rem;color:var(--ink-dark)}
.zcard__list{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-top:.2rem}
.zcard__list li{position:relative;padding-left:1.35rem;color:var(--muted);
  font-weight:500;font-size:.96rem;line-height:1.45}
.zcard__list li::before{content:"";position:absolute;left:0;top:.5em;
  width:.5rem;height:.5rem;border-radius:50%;background:var(--red);opacity:.85}
@media(max-width:960px){.zgrid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.zgrid{grid-template-columns:1fr}}

.mat{align-items:flex-start}
.mat em{display:block;font-style:normal;font-size:.84rem;font-weight:500;
  color:var(--muted);line-height:1.35;margin-top:.15rem}

@media(min-width:1025px){
  .sblock__head:has(.sblock__lead){display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
    column-gap:clamp(2.5rem,5vw,6rem);align-items:center}
  .sblock__head:has(.sblock__lead) .kpage__ey{grid-column:1;grid-row:1}
  .sblock__head:has(.sblock__lead) .h2{grid-column:1;grid-row:2}
  .sblock__head:has(.sblock__lead) .sblock__lead{grid-column:2;grid-row:1 / span 2;
    margin-top:0;max-width:54ch;align-self:center}
}

.cta__row--h{align-items:flex-start}
.cta__row--h em{text-align:left;line-height:1.6;font-weight:600}
.cta__row--h em{margin-top:.25rem;font-size:.95rem;color:var(--muted)}

@media(max-width:480px){.do__grid .dotile{--dp:1.2rem}}

.hero__media--one{position:relative;align-self:center;min-height:0}
.hero__media--one img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover;
  border-radius:var(--r-lg);box-shadow:var(--sh-lg),var(--puff)}
@media(min-width:1025px){.hero__inner{align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,1.32fr)}}
@media(max-width:720px){.hero__media--one img{border-radius:var(--r)}}

/* pasek czterech kadrów nad pasem CTA */
.g4{padding:var(--sec) var(--pad) 0}
.g4__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.g4__grid{max-width:var(--wrap);margin:0 auto;display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.2vw,1.2rem)}
.g4__i{position:relative;border-radius:var(--r);overflow:hidden;
  box-shadow:var(--sh),var(--puff);background:var(--surface)}
.g4__i img{width:100%;height:100%;display:block;aspect-ratio:1/1;object-fit:cover;
  transition:transform .6s var(--e)}
.g4__i:hover img{transform:scale(1.04)}
.g4__i figcaption{position:absolute;left:.7rem;right:.7rem;bottom:.7rem;
  background:rgba(252,251,248,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  border-radius:999px;padding:.45rem .9rem;font-family:var(--disp);font-weight:600;
  font-size:.86rem;color:var(--ink-dark);text-align:center;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.g4__grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.g4__i figcaption{font-size:.8rem;padding:.4rem .7rem;left:.5rem;right:.5rem;bottom:.5rem}}

/* ETAP 14 — blog: lista wpisów i strona artykułu */

/* --- okruszki --- */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-bottom:1.1rem;
  font-size:.88rem;font-weight:600;color:var(--muted)}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--red-d)}
.crumbs span[aria-hidden]{opacity:.5}

/* --- lista wpisów --- */
.blist{padding:0 var(--pad) var(--sec)}
.blist__grid{max-width:var(--wrap);margin:0 auto;display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,1.8vw,1.8rem)}
.blist__grid>*{min-width:0}
.bcard{background:var(--surface);border-radius:var(--r-lg);overflow:hidden;
  box-shadow:var(--sh),var(--puff);display:flex;flex-direction:column;
  transition:transform .4s var(--e),box-shadow .4s var(--e)}
.bcard:hover{transform:translateY(-6px);box-shadow:var(--sh-lg),var(--puff)}
.bcard__img{display:block;overflow:hidden}
.bcard__img img{width:100%;height:100%;display:block;aspect-ratio:16/10;object-fit:cover;
  transition:transform .6s var(--e)}
.bcard:hover .bcard__img img{transform:scale(1.05)}
.bcard__t{padding:clamp(1.2rem,2vw,1.7rem);display:flex;flex-direction:column;gap:.55rem;flex:1}
.bcard__cat{font-family:var(--disp);font-size:.76rem;font-weight:700;letter-spacing:var(--ls-caps);
  text-transform:uppercase;color:var(--red-d)}
.bcard h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.15rem,1.5vw,1.35rem);
  line-height:1.25;color:var(--ink-dark)}
.bcard h2 a{color:inherit}
.bcard h2 a:hover{color:var(--red-d)}
.bcard p{color:var(--muted);font-weight:500;font-size:.95rem;line-height:1.5;flex:1}
.bcard__meta{font-size:.84rem;color:var(--gray-d);font-weight:600;margin-top:.3rem}
@media(max-width:980px){.blist__grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.blist__grid{grid-template-columns:1fr}}

/* --- artykuł --- */
.post{padding:clamp(6.5rem,13vh,9rem) var(--pad) 0}
.post__head{max-width:74ch;margin:0 auto}
.post__head h1{font-family:var(--disp);font-weight:600;
  font-size:clamp(2rem,4.2vw,3.3rem);line-height:1.08;letter-spacing:-.02em;color:var(--ink-dark)}
.post__lead{margin-top:1.1rem;font-size:clamp(1.08rem,1.35vw,1.28rem);line-height:1.55;
  color:var(--gray-d);font-weight:600}
.post__meta{margin-top:1rem;font-size:.9rem;color:var(--muted);font-weight:600}
.post__hero{max-width:min(var(--wrap),68rem);margin:clamp(1.8rem,3.5vw,3rem) auto 0}
.post__hero img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover;
  border-radius:var(--r-lg);box-shadow:var(--sh-lg),var(--puff)}
.post__body{max-width:74ch;margin:clamp(2rem,4vw,3.2rem) auto 0}
.post__body h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.45rem,2.4vw,2rem);
  line-height:1.15;color:var(--ink-dark);margin:2.4rem 0 .9rem}
.post__body h2:first-child{margin-top:0}
.post__body h3{font-family:var(--disp);font-weight:600;font-size:clamp(1.1rem,1.6vw,1.32rem);
  color:var(--ink-dark);margin:1.7rem 0 .5rem}
.post__body p{color:var(--muted);font-weight:500;line-height:1.72;
  font-size:clamp(1rem,1.15vw,1.08rem);margin-bottom:1rem}
.post__body strong{color:var(--ink-dark);font-weight:700}
.post__body a{color:var(--red-d);font-weight:600;text-decoration:underline;
  text-underline-offset:3px;text-decoration-thickness:1.5px}
.post__body a:hover{color:var(--ink-dark)}
.plist{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin:0 0 1.4rem}
.plist li{position:relative;padding-left:1.5rem;color:var(--muted);font-weight:500;
  line-height:1.65;font-size:clamp(1rem,1.15vw,1.06rem)}
.plist li::before{content:"";position:absolute;left:0;top:.62em;width:.5rem;height:.5rem;
  border-radius:50%;background:var(--red);opacity:.85}
.plist li strong{color:var(--ink-dark)}

/* tabela porównawcza */
.ptab{width:100%;border-collapse:collapse;margin:.4rem 0 1.6rem;
  background:var(--surface);border-radius:var(--r);overflow:hidden;
  box-shadow:var(--sh),var(--puff);font-size:.95rem}
.ptab th,.ptab td{padding:.85rem 1rem;text-align:left;vertical-align:top;
  border-bottom:1px solid rgba(92,97,106,.14)}
.ptab thead th{font-family:var(--disp);font-weight:700;font-size:.82rem;
  letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--ink-dark);
  background:var(--bg)}
.ptab tbody td{color:var(--muted);font-weight:500;line-height:1.5}
.ptab tbody td:first-child{color:var(--ink-dark);font-weight:600}
.ptab tr:last-child td{border-bottom:0}

/* blok linków wewnętrznych */
.post__rel{margin-top:2.4rem;padding:1.3rem 1.5rem;background:var(--surface);
  border-radius:var(--r);box-shadow:var(--sh),var(--puff)}
.post__rel-t{display:block;font-family:var(--disp);font-size:.78rem;font-weight:700;
  letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d);margin-bottom:.7rem}
.post__rel ul{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}
.post__rel li a{display:inline-flex;align-items:center;min-height:44px;padding:.45rem 1rem;
  background:var(--bg);border-radius:999px;box-shadow:var(--sh-in);
  font-family:var(--disp);font-weight:600;font-size:.92rem;color:var(--ink-dark)}
.post__rel li a:hover{color:var(--red-d)}

/* następne wpisy */
.pnext{padding:var(--sec) var(--pad) 0}
.pnext__head{max-width:var(--wrap);margin:0 auto var(--head-gap)}
.pnext__grid{max-width:var(--wrap);margin:0 auto;display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,1.4vw,1.4rem)}
.pnext__grid>*{min-width:0}
.pcard{background:var(--surface);border-radius:var(--r-lg);padding:clamp(1.2rem,2vw,1.7rem);
  box-shadow:var(--sh),var(--puff);display:flex;flex-direction:column;gap:.5rem;color:inherit;
  transition:transform .4s var(--e),box-shadow .4s var(--e)}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--sh-lg),var(--puff)}
.pcard__cat{font-family:var(--disp);font-size:.74rem;font-weight:700;
  letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-d)}
.pcard h3{font-family:var(--disp);font-weight:600;font-size:1.08rem;line-height:1.28;
  color:var(--ink-dark);flex:1}
.pcard__go{font-family:var(--disp);font-weight:600;font-size:.9rem;color:var(--red-d);margin-top:.4rem}
@media(max-width:900px){.pnext__grid{grid-template-columns:1fr}}

.post__body .faq__list{margin-top:.6rem}

@media(max-width:720px){
  .post{padding-top:clamp(6rem,12vh,8rem)}
  .post__hero img{border-radius:var(--r)}
  .ptab{display:block;overflow-x:auto;white-space:normal}
}

/* --- blok linków do bloga na podstronach --- */
.sblock--rel{padding-top:calc(var(--sec) * .5);padding-bottom:0}
.post__rel--page{max-width:var(--wrap);margin:0 auto}
.post__rel--page ul{gap:.55rem}

.ctaband .cta__title,.ctaband__t,.ctaband h2{color:#fff}
.ctaband__ey{color:rgba(255,255,255,.86);font-family:var(--disp);font-size:.78rem;font-weight:700;
  letter-spacing:var(--ls-caps);text-transform:uppercase;margin-bottom:.5rem}

.chip[hidden],.kwcard[hidden]{display:none!important}

/* numer telefonu w stopce i w pasie godzin */
.fhours__list a{font-family:var(--disp);font-weight:700;font-size:1.02rem;color:var(--ink-dark);
  display:inline-flex;align-items:center;min-height:32px}
.fhours__list a:hover{color:var(--red-d)}
.footer__tel{font-weight:700!important;color:var(--ink-dark)!important}
.footer__tel:hover{color:var(--red-d)!important}
.menu__foot a[href^="tel:"]{font-size:1.15rem;font-weight:700;color:var(--ink-dark)}
.menu__foot a[href^="tel:"]:hover{color:var(--red-d)}

@media(max-width:480px){
  .opage__head h1,.svc__head h1,.builder__head h1,.kw__head h1,.cta--page h1{
    font-size:clamp(1.85rem,7.4vw,2.6rem);hyphens:auto}
  .post__head h1{font-size:clamp(1.75rem,7vw,2.35rem);hyphens:auto}
  .h2{font-size:clamp(1.5rem,6.4vw,2.2rem)}
}
@media(max-width:360px){
  .opage__head h1,.svc__head h1,.builder__head h1,.kw__head h1,.cta--page h1{
    font-size:clamp(1.5rem,6.8vw,1.9rem)}
  .post__head h1{font-size:clamp(1.45rem,6.6vw,1.8rem)}
  .hero__title.hero__title{font-size:clamp(1.75rem,8vw,2.4rem)}
  .h2{font-size:clamp(1.35rem,6vw,1.8rem)}
}

/* --- karty bloga na stronie głównej --- */
.pcard p{color:var(--muted);font-weight:500;font-size:.94rem;line-height:1.5;flex:1}
.pnext__more{max-width:var(--wrap);margin:1.6rem auto 0;text-align:center}
.pnext__more a{font-family:var(--disp);font-weight:600;font-size:1rem;color:var(--red-d);
  display:inline-flex;align-items:center;min-height:44px;
  text-decoration:underline;text-underline-offset:4px}
.pnext__more a:hover{color:var(--ink-dark)}

.footer__made{order:9;flex-basis:100%;justify-content:flex-end;
  margin-top:.7rem;font-size:.72rem;font-weight:500;letter-spacing:.02em;
  color:#6B7079;transition:color .3s var(--e)}
.footer__made:hover{color:var(--gray-d)}
.footer__made a{color:#6B7079}
.footer__made a:hover{color:var(--red-d)}
.footer__made a{font-weight:500;text-decoration:none;border-bottom:1px solid transparent}
.footer__made a:hover{border-bottom-color:currentColor}
@media(max-width:720px){
  .footer__made{justify-content:flex-start;margin-top:.5rem;font-size:.7rem}
}

.pkg .pcard--feat,.pkg__grid .pcard--feat{background:var(--red)}
.pkg .pcard--feat,.pkg .pcard--feat h3,.pkg .pcard--feat p,.pkg .pcard--feat li,
.pkg .pcard--feat .pcard__top p{color:#fff}
.pkg .pcard--feat .pcard__go{color:#fff}

/* naglowek kontaktu stoi w waskiej kolumnie — skalowanie do szerokosci okna lamalo dlugie slowa */
@media(min-width:1025px){.cta--page h1{font-size:clamp(2.1rem,4.2vw,3.7rem)}}
@media(min-width:481px) and (max-width:1024px){.cta--page h1{font-size:clamp(2rem,6.4vw,3rem)}}

/* pole widoczne wylacznie dla botow */
.pulapka{position:absolute!important;left:-9999px!important;top:auto!important;
  width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;
  pointer-events:none!important}

/* baner zgody na ciasteczka */
.zgoda{position:fixed;right:clamp(1rem,2.5vw,1.6rem);bottom:calc(clamp(1rem,2.5vw,1.6rem) + env(safe-area-inset-bottom));
  z-index:900;width:min(23rem,calc(100vw - 2rem));background:var(--surface);border-radius:var(--r);
  box-shadow:var(--sh-lg),var(--puff);padding:1.15rem 1.25rem 1.1rem;
  opacity:0;transform:translateY(14px);transition:opacity .35s var(--e),transform .35s var(--e)}
.zgoda.is-on{opacity:1;transform:none}
.zgoda__t{font-family:var(--disp);font-weight:700;font-size:.78rem;letter-spacing:var(--ls-caps);
  text-transform:uppercase;color:var(--red-d);margin-bottom:.4rem}
.zgoda__o{font-size:.86rem;line-height:1.5;color:var(--muted);font-weight:500}
.zgoda__o a{color:var(--gray-d);text-decoration:underline;text-underline-offset:3px}
.zgoda__o a:hover{color:var(--red-d)}
.zgoda__akcje{display:flex;gap:.5rem;margin-top:.9rem}
.zgoda__btn{flex:1;min-height:44px;padding:0 .8rem;border:0;border-radius:999px;font-family:var(--disp);
  font-weight:600;font-size:.92rem;cursor:pointer;
  transition:transform .2s var(--e),box-shadow .2s var(--e),background .2s var(--e)}
.zgoda__btn--tak{background:var(--red);color:#fff;box-shadow:6px 6px 14px rgba(168,30,36,.3),var(--puff)}
.zgoda__btn--tak:hover{background:var(--red-d)}
.zgoda__btn--nie{background:var(--bg);color:var(--ink-dark);box-shadow:var(--sh-in)}
.zgoda__btn:hover{transform:translateY(-1px)}
.zgoda__btn:active{transform:none}
.zgoda :focus-visible{outline:3px solid var(--gray-d);outline-offset:2px}

/* przycisk 'do gory' ustepuje banerowi */
body.zgoda-on .totop{bottom:calc(var(--zgoda-b,1.5rem) + var(--zgoda-h,11rem) + .7rem)}

/* nad mobilnym paskiem CTA */
@media(max-width:1024px){
  .zgoda{bottom:calc(5.4rem + env(safe-area-inset-bottom))}
}
/* na telefonie pelna szerokosc — mniejsze pudelko i tak zajelo by caly ekran */
@media(max-width:640px){
  .zgoda{left:1rem;right:1rem;width:auto;padding:1rem 1.05rem}
  .zgoda__o{font-size:.84rem}
}
@media(max-width:380px){
  .zgoda__akcje{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.zgoda{transition:none}}

/* przycisk zmiany decyzji w stopce */
.footer__cookies{background:none;border:0;padding:0;cursor:pointer;font:inherit;
  color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.footer__cookies:hover{color:var(--red-d)}


/* tabela jako kafelki na waskich ekranach */
@media(max-width:560px){
  .ptab--stos{display:block;overflow:visible;border:0}
  .ptab--stos thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .ptab--stos tbody,.ptab--stos tr,.ptab--stos td{display:block;width:auto}
  .ptab--stos tr{background:var(--surface);border-radius:var(--r);box-shadow:var(--sh-in);
    padding:.9rem 1rem;margin-bottom:.7rem}
  .ptab--stos tr:last-child{margin-bottom:1.6rem}
  .ptab--stos td{border:0;padding:.3rem 0}
  .ptab--stos td::before{content:attr(data-e);display:block;font-family:var(--disp);font-weight:700;
    font-size:.7rem;letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--gray-d);margin-bottom:.15rem}
  .ptab--stos td:first-child{padding-top:0}
  .ptab--stos tr td:last-child{padding-bottom:0}
}
