/* ════════════════════════════════════════════
   TOKENY
   ════════════════════════════════════════════ */
:root{
  --t-xs:clamp(.8125rem,.79rem + .1vw,.875rem);
  --t-sm:clamp(.9375rem,.9rem + .15vw,1rem);
  --t-base:clamp(1.0625rem,1rem + .2vw,1.125rem);
  --t-lg:clamp(1.125rem,1rem + .5vw,1.375rem);
  --t-xl:clamp(1.5rem,1.15rem + 1.4vw,2.125rem);
  --t-2xl:clamp(2rem,1.2rem + 3vw,3.75rem);
  --t-hero:clamp(2.9rem,.6rem + 8.2vw,8.5rem);

  --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.25rem;--s6:1.5rem;
  --s8:2rem;--s10:2.5rem;--s12:3rem;--s16:4rem;--s20:5rem;--s24:6rem;--s32:8rem;

  --r-sm:.4rem;--r-md:.625rem;--r-lg:.875rem;--r-xl:1.125rem;
  --r-2xl:1.5rem;--r-3xl:2rem;--r-4xl:2.75rem;--r-full:9999px;

  --ease:cubic-bezier(.16,1,.3,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
  --spring:cubic-bezier(.34,1.56,.64,1);
  --t:280ms;

  --font:'DM Sans','Helvetica Neue',-apple-system,sans-serif;

  /* paleta — ta sama co poprzednio, tylko odrobinę głębsza */
  --bg:#08080f;
  --bg2:#0b0b14;
  --surf:#0e0e18;
  --surf2:#13131f;
  --div:#23233a;
  --border:#2c2c46;

  --text:#e9e9f2;
  --muted:#b0b0c6;
  --faint:#7c7c96;

  --gold:#c8a96e;
  --gold-h:#e2c488;
  --gold-a:#f2d79c;
  --gold-dim:rgba(200,169,110,.14);
  --gold-glow:rgba(200,169,110,.2);

  /* szkło */
  --g-bg:rgba(255,255,255,.038);
  --g-bg2:rgba(255,255,255,.062);
  --g-bg3:rgba(255,255,255,.085);
  --g-line:rgba(255,255,255,.11);
  --blur:22px;
  --blur-lg:40px;

  --sh-sm:0 1px 2px rgba(0,0,0,.4);
  --sh-md:0 8px 30px rgba(0,0,0,.45);
  --sh-lg:0 28px 70px rgba(0,0,0,.6);

  --w:1080px;
  --w-wide:1320px;
  --nav-h:74px;
}

/* ════════════════════════════════════════════
   BAZA
   ════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
/* bez niebieskiego prostokąta przy stuknięciu na telefonie */
html{-webkit-tap-highlight-color:transparent}
:focus:not(:focus-visible){outline:none}
html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{
  min-height:100dvh;font-family:var(--font);font-size:var(--t-base);color:var(--text);
  background:var(--bg);line-height:1.62;overflow-x:hidden;letter-spacing:-.006em;
}
img,video,svg{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
input,textarea,select{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
ul[role=list]{list-style:none}
h1,h2,h3,h4{line-height:1.08;text-wrap:balance;font-weight:600;letter-spacing:-.03em}
p{text-wrap:pretty}
::selection{background:rgba(200,169,110,.24);color:#fff}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:var(--r-sm)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* tło: ziarno + winieta + jedno powolne światło */
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(70vw 70vw at 92% 88%,rgba(88,80,140,.07),transparent 64%);
  transform:translateZ(0);
}
/* złote światło, które płynie za przewijaniem — przesuwane tylko transformem */
.glow{
  position:fixed;left:0;top:0;z-index:0;pointer-events:none;
  width:84vmax;height:84vmax;margin:-42vmax 0 0 -42vmax;
  background:radial-gradient(closest-side,rgba(200,169,110,.12),rgba(200,169,110,.045) 48%,transparent 100%);
  transform:translate3d(22vw,14vh,0);
  will-change:transform;
}
body::after{
  content:'';position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.022;
  transform:translateZ(0);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.vignette{
  position:fixed;inset:0;z-index:1;pointer-events:none;transform:translateZ(0);
  background:radial-gradient(120% 85% at 50% 45%,transparent 40%,rgba(0,0,0,.55) 100%);
}
main,nav,footer{position:relative;z-index:2}

/* pasek postępu scrolla */
.prog{
  position:fixed;top:0;left:0;height:1.5px;z-index:9999;width:100%;
  transform:scaleX(var(--sp,0));transform-origin:0 50%;
  background:linear-gradient(90deg,transparent,var(--gold) 40%,var(--gold-a));
  opacity:.75;pointer-events:none;
}

/* ════════════════════════════════════════════
   LIQUID GLASS — system
   ════════════════════════════════════════════ */
.lg{
  position:relative;
  background:linear-gradient(160deg,rgba(255,255,255,.058),rgba(255,255,255,.022) 62%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -1px 0 rgba(0,0,0,.35),
    inset 1px 0 0 rgba(255,255,255,.05),
    inset -1px 0 0 rgba(255,255,255,.05),
    0 6px 22px rgba(0,0,0,.34);
  z-index:0;
}
.lg-2{background:linear-gradient(160deg,rgba(255,255,255,.075),rgba(255,255,255,.03) 62%)}
.lg-3{background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.045) 62%)}

/* prawdziwe rozmycie tylko nad treścią, która przesuwa się pod szkłem */
.nav,.about__chip,.toast{
  -webkit-backdrop-filter:blur(var(--blur)) saturate(1.7);
  backdrop-filter:blur(var(--blur)) saturate(1.7);
}

/* refrakcyjna krawędź — cienka obwódka z przejściem światła */
.lg::before{
  content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:2;
  background:linear-gradient(
    var(--rim,145deg),
    rgba(255,255,255,.55) 0%,
    rgba(255,255,255,.08) 26%,
    rgba(255,255,255,0) 48%,
    rgba(200,169,110,.14) 72%,
    rgba(255,255,255,.3) 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:.85;transition:opacity var(--t) var(--ease);
}
/* punktowy błysk podążający za kursorem */
.lg::after{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:1;
  background:radial-gradient(22rem 22rem at var(--mx,50%) var(--my,0%),rgba(255,255,255,.11),transparent 62%);
  opacity:0;transition:opacity .45s var(--ease);
}
.lg:hover::after{opacity:1}

/* warstwa zniekształcenia (tylko Chromium — patrz JS) */
.lg-warp{
  position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;
  opacity:0;transition:opacity .5s var(--ease);
}
.has-warp :is(.btn,.dl,.tabs,.arrow):hover > .lg-warp{
  -webkit-backdrop-filter:blur(.5px) url(#liquidWarp);
  backdrop-filter:blur(.5px) url(#liquidWarp);
  opacity:.9;
}
.lg-filters{position:absolute;width:0;height:0;overflow:hidden}

@media (max-width:860px){
  :root{--blur:16px;--blur-lg:22px}
  .lg::after{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .lg-warp{display:none}
}

/* ════════════════════════════════════════════
   LAYOUT
   ════════════════════════════════════════════ */
.c{width:min(100% - 2.5rem,var(--w));margin-inline:auto}
.cw{width:min(100% - 2.5rem,var(--w-wide));margin-inline:auto}
.sec{padding-block:var(--s32);position:relative}
@media (max-width:860px){.sec{padding-block:var(--s20)}}

.hl{
  background:linear-gradient(100deg,var(--gold) 0%,var(--gold-a) 45%,var(--gold-h) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* nagłówek sekcji */
.hl .kin > i{
  background:linear-gradient(100deg,var(--gold) 0%,var(--gold-a) 45%,var(--gold-h) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

.sh{margin-bottom:var(--s12);max-width:56ch}
.sh__label{
  display:inline-flex;align-items:center;gap:.55rem;
  font-size:var(--t-xs);font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin-bottom:var(--s4);
}
.sh__label::before{content:'';width:26px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.sh__title{font-size:var(--t-2xl);font-weight:600}
.sh__desc{margin-top:var(--s4);color:var(--muted);font-size:var(--t-base);max-width:52ch}

/* ════════════════════════════════════════════
   NAWIGACJA — szklany dok
   ════════════════════════════════════════════ */
.nav{
  position:fixed;top:var(--s5);left:50%;transform:translateX(-50%);
  z-index:1000;width:min(100% - 2rem,var(--w-wide));
  display:flex;align-items:center;gap:var(--s6);
  padding:.55rem .55rem .55rem 1.1rem;
  border-radius:var(--r-full);
  transition:top .5s var(--ease),width .5s var(--ease),padding .4s var(--ease),background .4s linear;
}
.nav.shrunk{top:.6rem;width:min(100% - 2rem,1000px);background:rgba(255,255,255,.055)}
.nav__logo{display:flex;align-items:center;gap:.6rem;flex-shrink:0;position:relative;z-index:3}
.nav__logo svg{transition:transform .6s var(--spring)}
.nav__logo:hover svg{transform:rotate(-8deg) scale(1.08)}
.nav__logo-text{font-size:.8rem;font-weight:700;letter-spacing:.13em}
.nav__links{display:flex;gap:.15rem;margin-left:auto;position:relative;z-index:3}
.nav__links a{
  position:relative;display:block;padding:.5rem .72rem;border-radius:var(--r-full);
  font-size:.855rem;font-weight:500;color:var(--muted);
  transition:color .3s var(--ease);
}
.nav__links a:hover{color:var(--text)}
.nav__links a.on{color:var(--text)}
.nav__links a.nav__cs{color:var(--gold-h)}
.nav__links a.nav__cs::before{
  content:'';display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:.45rem;vertical-align:.1em;
  background:var(--gold);box-shadow:0 0 10px var(--gold-glow);
}
.nav__ind{
  position:absolute;top:0;left:0;height:100%;border-radius:var(--r-full);z-index:-1;
  background:rgba(255,255,255,.085);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(0,0,0,.25);
  opacity:0;
  transition:transform .62s var(--ease),width .62s var(--ease),opacity .3s linear;
}
.nav__cta{
  flex-shrink:0;position:relative;z-index:3;
  padding:.58rem 1.15rem;border-radius:var(--r-full);
  font-size:.855rem;font-weight:600;color:#0a0a12;
  background:linear-gradient(140deg,var(--gold-a),var(--gold));
  box-shadow:0 2px 14px rgba(200,169,110,.28),inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .4s var(--spring),box-shadow .4s var(--ease);
}
.nav__cta:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(200,169,110,.4),inset 0 1px 0 rgba(255,255,255,.6)}
.nav__burger{display:none;width:38px;height:38px;border-radius:var(--r-full);position:relative;z-index:3;flex-shrink:0}
.nav__burger span{display:block;width:16px;height:1.5px;background:var(--text);margin:3.5px auto;border-radius:2px;transition:transform .4s var(--ease),opacity .25s linear}
.nav.open .nav__burger span:nth-child(1){transform:translateY(5px) rotate(45deg)}
.nav.open .nav__burger span:nth-child(2){opacity:0}
.nav.open .nav__burger span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}

@media (max-width:940px){
  .nav{padding:.5rem .5rem .5rem 1rem}
  .nav__burger{display:block;margin-left:auto}
  .nav__cta{display:none}
  .nav__links{
    position:absolute;top:calc(100% + .6rem);left:0;right:0;
    flex-direction:column;gap:.2rem;padding:.6rem;
    border-radius:var(--r-2xl);background:rgba(14,14,24,.9);
    -webkit-backdrop-filter:blur(26px) saturate(1.6);backdrop-filter:blur(26px) saturate(1.6);
    border:1px solid var(--g-line);
    opacity:0;visibility:hidden;transform:translateY(-10px) scale(.98);
    transition:opacity .35s var(--ease),transform .45s var(--ease),visibility .35s;
  }
  .nav.open .nav__links{opacity:1;visibility:visible;transform:none}
  .nav__links a{padding:.7rem 1rem;font-size:.95rem}
  .nav__ind{display:none}
}

/* ════════════════════════════════════════════
   PRZYCISKI
   ════════════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.95rem 1.7rem;border-radius:var(--r-full);
  font-size:var(--t-sm);font-weight:600;white-space:nowrap;
  transition:transform .45s var(--spring),box-shadow .4s var(--ease),background .3s linear,color .3s linear;
}
.btn-p{
  color:#0a0a12;background:linear-gradient(140deg,var(--gold-a),var(--gold) 70%);
  box-shadow:0 3px 18px rgba(200,169,110,.3),inset 0 1px 0 rgba(255,255,255,.55);
}
.btn-p:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgba(200,169,110,.42),inset 0 1px 0 rgba(255,255,255,.7)}
.btn-g{color:var(--text);border-radius:var(--r-full)}
.btn-g:hover{transform:translateY(-3px);background:var(--g-bg3)}
.btn:active{transform:translateY(-1px) scale(.985)}

/* ════════════════════════════════════════════
   HERO
   ════════════════════════════════════════════ */
.hero{
  min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;padding:calc(var(--nav-h) + var(--s16)) var(--s5) var(--s16);position:relative;
}
.hero__pill{
  display:inline-flex;align-items:center;gap:.7rem;margin-bottom:var(--s6);
  padding:.35rem .95rem .35rem .35rem;border-radius:var(--r-full);
  font-size:var(--t-xs);color:var(--text);
  transition:transform .45s var(--spring),background .3s linear;
}
.hero__pill:hover{transform:translateY(-2px);background:var(--g-bg3)}
.hero__pill svg{opacity:.7;transition:transform .4s var(--ease)}
.hero__pill:hover svg{transform:translateX(3px)}
.hero__pill-tag{
  padding:.28rem .65rem;border-radius:var(--r-full);font-size:.75rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:#0e0e18;
  background:linear-gradient(140deg,var(--gold-a),var(--gold));
}
.hero__eyebrow{
  font-size:var(--t-xs);font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted);margin-bottom:var(--s6);
}
.hero__title{
  font-size:var(--t-hero);font-weight:600;letter-spacing:-.045em;line-height:.94;
  margin-bottom:var(--s6);max-width:15ch;
}
.hero__sub{
  font-size:var(--t-lg);color:var(--muted);max-width:46ch;margin-bottom:var(--s10);
  font-weight:400;letter-spacing:-.012em;
}
.hero__actions{display:flex;gap:var(--s3);flex-wrap:wrap;justify-content:center;margin-bottom:var(--s16)}
.hero__facts{
  display:flex;gap:var(--s8);flex-wrap:wrap;justify-content:center;
  font-size:var(--t-xs);color:var(--faint);letter-spacing:.05em;
}
.hero__facts b{color:var(--text);font-weight:600;font-size:var(--t-sm);display:block;letter-spacing:-.02em}
.hero__fact{text-align:center}
@media (max-height:780px){
  .hero{padding-block:calc(var(--nav-h) + var(--s10)) var(--s12)}
  .hero__actions{margin-bottom:var(--s8)}
  .hero__sub{margin-bottom:var(--s6)}
  .hero__title{font-size:clamp(2.4rem,.5rem + 5.4vw,5rem)}
}
@media (max-height:620px){
  .hero{min-height:auto}
}

/* kinetyczny reveal tytułu */
.kin{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.22em;margin-bottom:-.14em}
.kin > i{
  display:inline-block;font-style:normal;
  transform:translateY(108%) rotate(3deg);opacity:0;filter:blur(10px);
}
.js .kin.go > i{
  animation:kinIn 1.15s var(--ease) forwards;
  animation-delay:var(--d,0ms);
}
@keyframes kinIn{to{transform:none;opacity:1;filter:none}}
.js .fade-up{opacity:0;transform:translateY(22px);filter:blur(8px)}
.js .fade-up.go{opacity:1;transform:none;filter:none;transition:opacity .9s var(--ease) var(--d,0ms),transform 1s var(--ease) var(--d,0ms),filter .9s var(--ease) var(--d,0ms)}

/* uniwersalny reveal na scroll */
.js .rv{opacity:0;transform:translate3d(0,36px,0) scale(.985);filter:blur(10px)}
.js .rv.go{opacity:1;transform:none;filter:none;transition:opacity .9s var(--ease) var(--d,0ms),transform 1.1s var(--ease) var(--d,0ms),filter .9s var(--ease) var(--d,0ms)}

/* ════════════════════════════════════════════
   O MNIE
   ════════════════════════════════════════════ */
.about{display:grid;grid-template-columns:.85fr 1fr;gap:var(--s16);align-items:center}
@media (max-width:900px){.about{grid-template-columns:1fr;gap:var(--s10)}}
.about__media{position:relative}
.about__img{
  border-radius:var(--r-3xl);overflow:hidden;position:relative;
  aspect-ratio:4/5;box-shadow:var(--sh-lg);
}
.about__img img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.2s var(--ease)}
.about__media:hover .about__img img{transform:scale(1.1)}
.about__img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(8,8,15,.6),transparent 45%);
}
.about__chip{
  position:absolute;left:var(--s4);bottom:var(--s4);padding:var(--s4) var(--s5);
  border-radius:var(--r-xl);max-width:calc(100% - 2rem);
}
.about__chip b{display:block;font-size:var(--t-sm);font-weight:600;margin-bottom:2px}
.about__chip span{font-size:var(--t-xs);color:var(--muted)}

.about__text{color:var(--muted);font-size:var(--t-base);margin-bottom:var(--s5);max-width:54ch}
.about__text strong{color:var(--text);font-weight:500}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3);margin:var(--s8) 0}
.stat{padding:var(--s5);border-radius:var(--r-xl);text-align:left}
.stat b{display:block;font-size:var(--t-xl);font-weight:600;color:var(--gold);line-height:1;letter-spacing:-.04em}
.stat span{font-size:var(--t-xs);color:var(--muted);display:block;margin-top:.4rem}
@media (max-width:520px){.stats{grid-template-columns:1fr}}

.tags{display:flex;flex-wrap:wrap;gap:.4rem}
.tag{
  padding:.42rem .85rem;border-radius:var(--r-full);font-size:var(--t-xs);color:var(--muted);
  border:1px solid var(--g-line);background:var(--g-bg);
  transition:color .3s,border-color .3s,background .3s;
}
.tag:hover{color:var(--text);border-color:rgba(200,169,110,.4);background:var(--gold-dim)}

/* ════════════════════════════════════════════
   ZAKŁADKI (liquid)
   ════════════════════════════════════════════ */
.tabs{
  display:inline-flex;position:relative;padding:.32rem;border-radius:var(--r-full);gap:.15rem;
  max-width:100%;overflow-x:auto;scrollbar-width:none;
}
.tabs::-webkit-scrollbar{display:none}
.tab-btn{
  position:relative;z-index:3;white-space:nowrap;
  padding:.62rem 1.25rem;border-radius:var(--r-full);
  font-size:var(--t-sm);font-weight:500;color:var(--muted);
  transition:color .35s var(--ease);
}
.tab-btn:hover{color:var(--text)}
.tab-btn[aria-selected=true]{color:#0e0e18;font-weight:600}
.tab-ind{
  position:absolute;top:.32rem;left:0;height:calc(100% - .64rem);z-index:2;
  border-radius:var(--r-full);
  background:linear-gradient(140deg,var(--gold-a),var(--gold));
  box-shadow:0 2px 12px rgba(200,169,110,.3),inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .6s var(--ease),width .6s var(--ease);
  will-change:transform,width;
}
.tab-panel{display:none}
.tab-panel.on{display:block;animation:panelIn .7s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(14px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}

/* ════════════════════════════════════════════
   REALIZACJE — slider
   ════════════════════════════════════════════ */
.work__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s6);flex-wrap:wrap;margin-bottom:var(--s8)}
.work__ctrl{display:flex;gap:.5rem}
.arrow{
  width:46px;height:46px;border-radius:var(--r-full);display:grid;place-items:center;color:var(--muted);
  transition:color .3s,transform .45s var(--spring),background .3s;
}
.arrow:hover{color:var(--text);transform:scale(1.08);background:var(--g-bg3)}
.arrow:disabled{opacity:.28;pointer-events:none}
.arrow[hidden],.dots[hidden]{display:none}

.slider-wrap{position:relative;margin-inline:calc(var(--s5) * -1);padding-inline:var(--s5)}

.slider{
  display:flex;gap:var(--s5);overflow-x:auto;scroll-snap-type:x mandatory;
  padding-block:var(--s6) 4.5rem;margin-block:calc(var(--s6) * -1) -3rem;
  scrollbar-width:none;-webkit-overflow-scrolling:touch;
  --fl:3.5rem;--fr:3.5rem;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%);
  cursor:grab;
}
.slider::-webkit-scrollbar{display:none}
.slider.at-start{--fl:0px}
.slider.at-end{--fr:0px}
@media (max-width:700px){.slider{--fl:1.25rem;--fr:1.25rem}}
.slider.drag{cursor:grabbing;scroll-snap-type:none}
.slider > *{scroll-snap-align:start;flex:0 0 auto}

.card{
  width:360px;border-radius:var(--r-2xl);overflow:hidden;
  transition:transform .6s var(--ease),box-shadow .6s var(--ease);
}
.card--short{width:252px}
.card:hover{transform:translateY(-8px);box-shadow:var(--sh-lg)}
.card__thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--surf2)}
.card--short .card__thumb{aspect-ratio:9/16}
.card__thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter .6s var(--ease)}
.card:hover .card__thumb img{transform:scale(1.07)}
.card__grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,15,.75),transparent 55%)}
.card__play{
  position:absolute;left:50%;top:50%;width:58px;height:58px;border-radius:var(--r-full);
  transform:translate(-50%,-50%) scale(.8);opacity:0;
  display:grid;place-items:center;
  background:rgba(20,20,30,.5);
  border:1px solid rgba(255,255,255,.3);
  transition:opacity .4s var(--ease),transform .55s var(--spring);
}
.card:hover .card__play{opacity:1;transform:translate(-50%,-50%) scale(1)}
.card__src{
  position:absolute;top:var(--s5);right:var(--s5);display:inline-flex;align-items:center;gap:.35rem;
  font-size:.75rem;font-weight:600;letter-spacing:.04em;color:var(--faint);
}
.card__body{padding:var(--s5);position:relative}
.card__cat{
  display:block;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);margin-bottom:.45rem;
}
.card__title{font-size:var(--t-sm);font-weight:600;line-height:1.32;margin-bottom:.3rem}
.card__meta{font-size:var(--t-xs);color:var(--faint)}

.dots{display:flex;gap:.4rem;justify-content:center;margin-top:var(--s2)}
.dot{width:6px;height:6px;border-radius:var(--r-full);background:var(--div);transition:all .45s var(--ease)}
.dot.on{width:22px;background:var(--gold)}

/* ════════════════════════════════════════════
   APLIKACJA — sekcja przypięta (scrollytelling)
   ════════════════════════════════════════════ */
.app-pin{position:relative;height:360vh}
.app-sticky{
  position:sticky;top:0;height:100svh;display:flex;align-items:center;overflow:hidden;
  padding-top:var(--nav-h);
}
.app-inner{
  width:min(100% - 2.5rem,var(--w-wide));margin-inline:auto;
  display:grid;grid-template-columns:1fr 1.15fr;gap:var(--s16);align-items:center;
}
.app-copy{--pw:1}
.app-h{font-size:var(--t-2xl);font-weight:600;margin-bottom:var(--s5);letter-spacing:-.035em}
.app-lead{color:var(--muted);margin-bottom:var(--s8);max-width:42ch}

.app-feats{display:flex;flex-direction:column;gap:var(--s4);margin-bottom:var(--s8);list-style:none}
.app-feat{
  display:flex;gap:var(--s4);align-items:flex-start;
  opacity:var(--o,1);transform:translateY(calc((1 - var(--o,1)) * 16px));
}
.app-feat i{
  flex-shrink:0;width:34px;height:34px;border-radius:var(--r-md);display:grid;place-items:center;
  background:var(--gold-dim);border:1px solid rgba(200,169,110,.24);color:var(--gold);
}
.app-feat b{display:block;font-size:var(--t-sm);font-weight:600;margin-bottom:.1rem}
.app-feat span{font-size:var(--t-xs);color:var(--muted);line-height:1.5}

.dl-row{
  display:flex;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s4);
  opacity:var(--o,1);transform:translateY(calc((1 - var(--o,1)) * 18px));
}
.dl{
  display:inline-flex;align-items:center;gap:.7rem;
  padding:.8rem 1.4rem .8rem 1.15rem;border-radius:var(--r-xl);
  transition:transform .45s var(--spring),box-shadow .45s var(--ease),background .3s linear;
}
.dl:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,0,0,.5)}
.dl.is-soon{opacity:.55;cursor:default}
.dl.is-soon:hover,.dl.is-soon:active{transform:none;box-shadow:none;background:inherit}
.dl-note a{color:var(--gold);text-decoration:underline;text-underline-offset:2px}
.dl svg{flex-shrink:0;opacity:.92}
.dl u{display:block;text-decoration:none;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);line-height:1.3}
.dl b{display:block;font-size:.95rem;font-weight:600;letter-spacing:-.02em;line-height:1.25}
.dl--mac:hover{background:rgba(255,255,255,.1)}
.dl--win:hover{background:rgba(255,255,255,.1)}
.dl-note{font-size:var(--t-xs);color:var(--faint);opacity:var(--o,1)}
.dl-note b{color:var(--muted);font-weight:500}
/* film instalacyjny */
.howto{
  display:flex;align-items:center;gap:var(--s4);width:100%;max-width:440px;margin-top:var(--s5);
  padding:.55rem var(--s5) .55rem .55rem;border-radius:var(--r-xl);text-align:left;
  opacity:var(--o,1);transform:translateY(calc((1 - var(--o,1)) * 18px));
  transition:background .3s linear;
}
.howto:hover{background:var(--g-bg3)}
.howto__thumb{position:relative;flex-shrink:0;width:112px;aspect-ratio:16/9;border-radius:var(--r-md);overflow:hidden;background:var(--surf2)}
.howto__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.howto:hover .howto__thumb img{transform:scale(1.08)}
.howto__thumb i{position:absolute;inset:0;display:grid;place-items:center;background:rgba(8,8,15,.38)}
.howto__txt{display:flex;flex-direction:column;gap:.15rem;min-width:0}
.howto__t{font-size:var(--t-sm);font-weight:600}
.howto__meta{font-size:var(--t-xs);color:var(--muted)}

/* okno aplikacji — stylizowany TranscribeBB */
.app-stage{perspective:1800px;display:flex;flex-direction:column;align-items:center}
.app-stage .app-plugin{width:100%;max-width:660px}
.app-win{
  --pw:1;
  width:100%;max-width:660px;border-radius:var(--r-2xl);overflow:hidden;
  transform:
    rotateX(calc((1 - var(--pw)) * 26deg))
    rotateZ(calc((1 - var(--pw)) * -4deg))
    scale(calc(.82 + var(--pw) * .18))
    translateY(calc((1 - var(--pw)) * 70px));
  opacity:calc(.15 + var(--pw) * .85);
  background:linear-gradient(160deg,rgba(30,30,46,.92),rgba(16,16,26,.94));
  box-shadow:0 40px 100px rgba(0,0,0,.7),0 0 110px rgba(200,169,110,.1);
  will-change:transform,opacity;
}
.app-win__bar{
  display:flex;align-items:center;gap:.45rem;padding:.7rem var(--s4);
  border-bottom:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03);
}
.app-win__dot{width:9px;height:9px;border-radius:50%}
.app-win__dot:nth-child(1){background:rgba(255,95,86,.65)}
.app-win__dot:nth-child(2){background:rgba(255,189,46,.65)}
.app-win__dot:nth-child(3){background:rgba(39,201,63,.65)}
.app-win__name{margin-inline:auto;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.app-win__body{padding:var(--s6) var(--s6) var(--s5)}

/* pasek marki */
.tbb__top{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--s6)}
.tbb__brand{display:flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:600;letter-spacing:-.01em}
.tbb__brand svg{color:var(--gold);opacity:.9}
.tbb__tools{margin-left:auto;display:flex;gap:.35rem}
.tbb__tool{
  width:24px;height:24px;border-radius:var(--r-sm);display:grid;place-items:center;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07);color:var(--muted);
}

/* zakładki w aplikacji */
.tbb__tabs{display:flex;justify-content:center;gap:.25rem;margin-bottom:var(--s6)}
.tbb__tab{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.4rem .75rem;border-radius:var(--r-full);
  font-size:.68rem;font-weight:500;color:var(--faint);white-space:nowrap;
}
.tbb__tab svg{opacity:.75}
.tbb__tab.on{
  color:var(--gold);background:var(--gold-dim);
  border:1px solid rgba(200,169,110,.3);
}

.tbb__h{text-align:center;font-size:1.32rem;font-weight:600;letter-spacing:-.035em;margin-bottom:.4rem}
.tbb__sub{text-align:center;font-size:.68rem;color:var(--muted);margin-bottom:var(--s5)}

.tbb__chips{display:flex;flex-wrap:wrap;gap:.3rem;justify-content:center;margin-bottom:var(--s5)}
.tbb__chip{
  padding:.26rem .6rem;border-radius:var(--r-full);font-size:.62rem;color:var(--faint);
  border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);
}

.tbb__field{
  display:flex;align-items:center;gap:.5rem;padding:.4rem .4rem .4rem 1rem;
  border-radius:var(--r-full);background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);margin-bottom:var(--s4);
}
.tbb__ph{flex:1;font-size:.7rem;color:var(--faint);overflow:hidden;white-space:nowrap;position:relative}
.tbb__ph::after{
  content:'';position:absolute;top:50%;margin-top:-.45em;height:.9em;width:1px;
  background:var(--gold);margin-left:2px;animation:caret 1.3s steps(1) infinite;
}
@keyframes caret{0%,49%{opacity:1}50%,100%{opacity:0}}
.tbb__go{
  padding:.5rem 1.05rem;border-radius:var(--r-full);font-size:.7rem;font-weight:600;color:#0e0e18;
  background:linear-gradient(140deg,var(--gold-a),var(--gold));
  box-shadow:0 2px 10px rgba(200,169,110,.25),inset 0 1px 0 rgba(255,255,255,.45);
}
.tbb__or{
  display:flex;align-items:center;gap:.7rem;font-size:.6rem;letter-spacing:.22em;
  color:var(--faint);margin-bottom:var(--s4);
}
.tbb__or::before,.tbb__or::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.07)}
.tbb__drop{
  padding:.95rem;border-radius:var(--r-lg);text-align:center;font-size:.66rem;color:var(--faint);
  border:1px dashed rgba(255,255,255,.13);background:rgba(255,255,255,.018);
  position:relative;overflow:hidden;
}
.tbb__drop::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(100deg,transparent 35%,rgba(200,169,110,.09) 50%,transparent 65%);
  transform:translateX(-100%);animation:sheen 6s var(--ease-io) infinite;
}
@keyframes sheen{0%,55%{transform:translateX(-100%)}85%,100%{transform:translateX(100%)}}
.tbb__foot{text-align:center;font-size:.58rem;color:var(--faint);opacity:.6;margin-top:var(--s5)}

@media (max-width:520px){
  .tbb__h{font-size:1.05rem}
  .tbb__tab{padding:.35rem .55rem;font-size:.62rem}
  .tbb__tab svg{display:none}
}

.app-plugin{
  margin-top:var(--s5);padding:var(--s5);border-radius:var(--r-xl);
  display:flex;gap:var(--s4);align-items:center;flex-wrap:wrap;
  opacity:var(--o,1);
}
.app-plugin__txt{flex:1;min-width:200px}
.app-plugin__txt b{display:block;font-size:var(--t-sm);font-weight:600;margin-bottom:.2rem}
.app-plugin__txt span{font-size:var(--t-xs);color:var(--muted)}
.app-plugin__bar{width:100%;height:3px;border-radius:2px;background:rgba(255,255,255,.08);margin-top:.6rem;overflow:hidden}
.app-plugin__bar i{display:block;height:100%;width:42%;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--gold-a))}
.badge-soon{
  flex-shrink:0;padding:.32rem .7rem;border-radius:var(--r-full);font-size:.75rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--gold);
  background:var(--gold-dim);border:1px solid rgba(200,169,110,.28);
}

/* bez przypinania: telefon, tablet albo gdy sekcja nie mieści się w oknie (klasa is-free z JS) */
.app-pin.is-free{height:auto}
.app-pin.is-free .app-sticky{position:static;height:auto;padding-block:var(--s20)}
.app-pin.is-free .app-win{--pw:1 !important;transform:none;opacity:1}
.app-pin.is-free :is(.app-feat,.dl-row,.dl-note,.app-plugin,.howto){--o:1 !important}
@media (max-width:1000px){
  .app-pin{height:auto}
  .app-sticky{position:static;height:auto;padding-block:var(--s20)}
  .app-win{--pw:1 !important;transform:none;opacity:1}
  .app-feat,.dl-row,.dl-note,.app-plugin,.howto{--o:1 !important}
}
@media (max-width:1000px){
  .app-inner{grid-template-columns:1fr;gap:var(--s10)}
}

/* ════════════════════════════════════════════
   USŁUGI
   ════════════════════════════════════════════ */
.srv{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s5)}
.srv > .srv-card:last-child,.srv-card--lead{grid-column:1/-1}
@media (max-width:860px){.srv{grid-template-columns:1fr}}
.srv-card{
  padding:var(--s8);border-radius:var(--r-2xl);
  transition:transform .6s var(--ease),background .4s linear;
}
.srv-card:hover{transform:translateY(-5px)}
.srv-card__ico{
  width:48px;height:48px;border-radius:var(--r-lg);display:grid;place-items:center;margin-bottom:var(--s5);
  background:var(--gold-dim);border:1px solid rgba(200,169,110,.22);color:var(--gold);
}
.srv-card__t{font-size:var(--t-lg);font-weight:600;margin-bottom:var(--s3)}
.srv-card__d{color:var(--muted);font-size:var(--t-sm);margin-bottom:var(--s5);max-width:44ch}
.srv-card__l{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.srv-card__l li{font-size:var(--t-sm);color:var(--muted);display:flex;gap:.6rem;align-items:flex-start}
.srv-card__l li::before{content:'';flex-shrink:0;width:5px;height:5px;border-radius:50%;background:var(--gold);margin-top:.6rem}
.srv-card--wide{display:grid;grid-template-columns:1fr 1fr;gap:var(--s10);align-items:center}
@media (max-width:860px){.srv-card--wide{grid-template-columns:1fr;gap:var(--s6)}}

/* proces — linia rysowana scrollem */
.proc{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5);margin-top:var(--s10)}
.proc::before{
  content:'';position:absolute;top:34px;left:6%;right:6%;height:1px;background:var(--div);z-index:0;
}
.proc::after{
  content:'';position:absolute;top:34px;left:6%;height:1px;z-index:1;
  width:calc((88%) * var(--pp,0));
  background:linear-gradient(90deg,var(--gold),var(--gold-a));
  box-shadow:0 0 12px var(--gold-glow);
  transition:width .1s linear;
}
.step{position:relative;z-index:2;padding:var(--s5);border-radius:var(--r-xl);background:linear-gradient(160deg,#17171f,#0f0f17 62%)}
.step b{
  display:grid;place-items:center;width:34px;height:34px;border-radius:var(--r-full);
  font-size:.78rem;font-weight:700;color:var(--gold);margin-bottom:var(--s4);
  background:var(--surf);border:1px solid rgba(200,169,110,.3);
}
.step h4{font-size:var(--t-sm);font-weight:600;margin-bottom:.35rem}
.step p{font-size:var(--t-xs);color:var(--muted);line-height:1.55}
@media (max-width:860px){
  .proc{grid-template-columns:1fr 1fr}
  .proc::before,.proc::after{display:none}
}
@media (max-width:480px){.proc{grid-template-columns:1fr}}

/* ════════════════════════════════════════════
   WIĘCEJ — tutoriale / narzędzia / faq
   ════════════════════════════════════════════ */
.tuts{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--s5)}
.tut{border-radius:var(--r-2xl);overflow:hidden;display:block;transition:transform .6s var(--ease)}
.tut:hover{transform:translateY(-6px)}
.tut__thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--surf2)}
.tut__thumb img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.tut:hover .tut__thumb img{transform:scale(1.06)}
.tut__flag{
  position:absolute;top:.7rem;left:.7rem;padding:.26rem .6rem;border-radius:var(--r-full);
  font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  background:rgba(200,169,110,.9);color:#0e0e18;
}
.tut__flag.soon{background:rgba(20,20,30,.75);color:var(--text);border:1px solid rgba(255,255,255,.14)}
.tut__body{padding:var(--s5)}
.tut__cat{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.4rem}
.tut__t{font-size:var(--t-sm);font-weight:600;margin-bottom:.4rem;line-height:1.3}
.tut__d{font-size:var(--t-xs);color:var(--muted);line-height:1.55;margin-bottom:var(--s4)}
.tut__m{display:flex;gap:var(--s3);align-items:center;font-size:var(--t-xs);color:var(--faint)}
.tut__m span:last-child{margin-left:auto;padding:.2rem .55rem;border-radius:var(--r-full);border:1px solid var(--g-line)}

.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--s5)}
.tool{padding:var(--s6);border-radius:var(--r-2xl);display:flex;gap:var(--s5);transition:transform .6s var(--ease)}
.tool:hover{transform:translateY(-5px)}
.tool__ico{flex-shrink:0;width:44px;height:44px;border-radius:var(--r-lg);display:grid;place-items:center;background:var(--gold-dim);border:1px solid rgba(200,169,110,.2);color:var(--gold)}
.tool__t{font-size:var(--t-sm);font-weight:600;margin-bottom:.35rem}
.tool__d{font-size:var(--t-xs);color:var(--muted);margin-bottom:var(--s4);line-height:1.55}
.tool__l{list-style:none;display:flex;flex-direction:column;gap:.4rem}
.tool__l li{font-size:var(--t-xs);color:var(--muted);display:flex;gap:.5rem}
.tool__l li::before{content:'—';color:var(--gold);opacity:.6}

.faq{display:flex;flex-direction:column;gap:.6rem;max-width:760px}
.faq-item{border-radius:var(--r-xl);overflow:hidden}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
  padding:var(--s5) var(--s6);text-align:left;font-size:var(--t-sm);font-weight:500;
  transition:color .3s;
}
.faq-q:hover{color:var(--gold)}
.faq-q svg{flex-shrink:0;transition:transform .5s var(--ease);color:var(--muted)}
.faq-item.on .faq-q svg{transform:rotate(180deg);color:var(--gold)}
.faq-a{height:0;overflow:hidden;transition:height .5s var(--ease)}
.faq-a p{padding:0 var(--s6) var(--s5);font-size:var(--t-sm);color:var(--muted);line-height:1.65}
.faq-a strong{color:var(--gold);font-weight:500}

/* ════════════════════════════════════════════
   EFEKTY U KLIENTÓW
   ════════════════════════════════════════════ */
.feat{
  display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s10);align-items:center;
  padding:var(--s10) var(--s10) var(--s10) var(--s12);border-radius:var(--r-3xl);overflow:hidden;
  transition:transform .6s var(--ease);
}
.feat:hover{transform:translateY(-4px)}
.feat__t{font-size:var(--t-2xl);font-weight:600;letter-spacing:-.04em;margin-bottom:var(--s4);max-width:13ch}
.feat__d{color:var(--muted);font-size:var(--t-base);max-width:44ch;margin-bottom:var(--s8)}
.feat__stats{display:flex;flex-wrap:wrap;gap:var(--s4) var(--s10);margin-bottom:var(--s8)}
.feat__stats div{display:flex;flex-direction:column-reverse}
.feat__stats dd{font-size:var(--t-xl);font-weight:600;letter-spacing:-.035em;line-height:1.05}
.feat__stats dt{font-size:var(--t-xs);color:var(--muted);margin-top:.35rem}
.feat__media{position:relative;height:clamp(300px,32vw,420px)}
.feat__card{
  position:absolute;top:50%;left:50%;width:46%;height:auto;aspect-ratio:3/4;object-fit:cover;
  border-radius:var(--r-xl);border:1px solid rgba(255,255,255,.14);
  box-shadow:0 26px 60px rgba(0,0,0,.6);transition:transform .8s var(--ease);
}
.feat__card.c1{transform:translate(-108%,-46%) rotate(-9deg)}
.feat__card.c2{transform:translate(-50%,-54%);z-index:2}
.feat__card.c3{transform:translate(8%,-46%) rotate(9deg)}
.feat:hover .feat__card.c1{transform:translate(-118%,-46%) rotate(-12deg)}
.feat:hover .feat__card.c2{transform:translate(-50%,-58%) scale(1.03)}
.feat:hover .feat__card.c3{transform:translate(18%,-46%) rotate(12deg)}
@media (max-width:900px){
  .feat{grid-template-columns:1fr;gap:var(--s6);padding:var(--s6)}
  .feat__media{order:-1;height:260px}
}
.clients{margin-top:var(--s6);text-align:center;font-size:var(--t-sm);color:var(--muted);text-wrap:balance}
.clients b{color:var(--text);font-weight:500}

/* proces produkcji od A do Z */
.flow{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;margin-top:var(--s6)}
.flow li{
  display:flex;align-items:center;gap:.5rem;
  padding:.45rem .9rem;border-radius:var(--r-full);
  font-size:var(--t-xs);color:var(--muted);
  border:1px solid var(--g-line);background:var(--g-bg);
  transition:color .3s,border-color .3s,background .3s;
}
.flow li:hover{color:var(--text);border-color:rgba(200,169,110,.35);background:var(--gold-dim)}
.flow li i{font-style:normal;font-size:.75rem;font-weight:700;color:var(--gold);opacity:.75}

/* ════════════════════════════════════════════
   TOAST
   ════════════════════════════════════════════ */
.toast{
  position:fixed;left:50%;bottom:var(--s8);z-index:6000;
  display:flex;align-items:center;gap:.65rem;
  padding:.9rem 1.4rem;border-radius:var(--r-full);
  font-size:var(--t-sm);font-weight:500;white-space:nowrap;
  opacity:0;visibility:hidden;transform:translate(-50%,24px) scale(.94);
  transition:opacity .3s var(--ease),transform .55s var(--spring),visibility .3s;
}
.toast.on{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1)}
.toast svg{color:var(--gold);flex-shrink:0}
@media (max-width:520px){.toast{white-space:normal;max-width:calc(100vw - 2.5rem)}}

/* ════════════════════════════════════════════
   KONTAKT
   ════════════════════════════════════════════ */
.contact{display:grid;grid-template-columns:.85fr 1fr;gap:var(--s12);align-items:start}
@media (max-width:900px){.contact{grid-template-columns:1fr;gap:var(--s10)}}
.ci__t{font-size:var(--t-lg);font-weight:600;margin-bottom:var(--s3)}
.ci__d{color:var(--muted);font-size:var(--t-sm);margin-bottom:var(--s8);max-width:38ch}
.clinks{display:flex;flex-direction:column;gap:.5rem;margin-bottom:var(--s6)}
.clink{
  display:flex;align-items:center;gap:.75rem;padding:.85rem var(--s5);border-radius:var(--r-lg);
  font-size:var(--t-sm);color:var(--muted);
  transition:color .3s,transform .45s var(--ease),background .3s;
}
.clink:hover{color:var(--text);transform:translateX(4px);background:var(--g-bg2)}
.clink svg{flex-shrink:0;color:var(--gold)}
.clink .cp{margin-left:auto;opacity:.4;transition:opacity .3s}
.clink:hover .cp{opacity:1}
.avail{
  padding:var(--s5);border-radius:var(--r-xl);position:relative;overflow:hidden;
}
.avail__k{font-size:var(--t-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}
.avail__v{font-size:var(--t-xl);font-weight:700;color:var(--gold);line-height:1;letter-spacing:-.04em}
.avail__s{font-size:var(--t-xs);color:var(--faint);margin-top:.35rem}

.cform{padding:var(--s8);border-radius:var(--r-3xl);display:flex;flex-direction:column;gap:var(--s5)}
@media (max-width:560px){.cform{padding:var(--s5)}}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
@media (max-width:620px){.frow{grid-template-columns:1fr}}
.fg{display:flex;flex-direction:column;gap:.45rem}
.fl{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fi,.fta,.fsel{
  width:100%;padding:.85rem 1rem;border-radius:var(--r-md);
  background:rgba(255,255,255,.04);border:1px solid var(--g-line);
  font-size:var(--t-sm);color:var(--text);
  transition:border-color .3s,background .3s,box-shadow .3s;
}
.fi::placeholder,.fta::placeholder{color:var(--faint)}
.fi:focus,.fta:focus,.fsel:focus{
  outline:none;border-color:rgba(200,169,110,.5);background:rgba(255,255,255,.06);
  box-shadow:0 0 0 3px rgba(200,169,110,.1);
}
.fta{min-height:130px;resize:vertical}
.fsel{appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%238a8aa8' stroke-width='2'%3E%3Cpath d='M3 5l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.fsel:invalid{color:var(--faint)}
.fsel option{background:var(--surf);color:var(--text)}
.ferr{font-size:var(--t-xs);color:#e06a9e;min-height:1em}
.fsub{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  padding:1rem 1.6rem;border-radius:var(--r-full);font-size:var(--t-sm);font-weight:600;
  color:#0a0a12;background:linear-gradient(140deg,var(--gold-a),var(--gold) 70%);
  box-shadow:0 3px 18px rgba(200,169,110,.28),inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .45s var(--spring),box-shadow .4s var(--ease),opacity .3s;
}
.fsub:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(200,169,110,.4),inset 0 1px 0 rgba(255,255,255,.65)}
.fsub:disabled{opacity:.55;pointer-events:none}
.fsub svg{transition:transform .45s var(--ease)}
.fsub:hover svg{transform:translateX(3px)}
.fok{
  display:none;flex-direction:column;align-items:center;text-align:center;
  padding:var(--s12) var(--s8);border-radius:var(--r-3xl);
}
.fbad{
  display:none;padding:.85rem 1.1rem;border-radius:var(--r-md);font-size:var(--t-sm);
  background:rgba(224,106,158,.1);border:1px solid rgba(224,106,158,.25);color:#e06a9e;
}

/* ════════════════════════════════════════════
   MODAL WIDEO
   ════════════════════════════════════════════ */
.vm{position:fixed;inset:0;z-index:5000;display:none;place-items:center;padding:var(--s5)}
.vm.on{display:grid}
.vm__bg{position:absolute;inset:0;background:rgba(4,4,9,.85);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:fadeIn .35s var(--ease)}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.vm__box{position:relative;width:min(100%,1000px);animation:vmIn .55s var(--ease)}
@keyframes vmIn{from{opacity:0;transform:scale(.94) translateY(20px);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}
.vm__player{aspect-ratio:16/9;border-radius:var(--r-2xl);overflow:hidden;background:#000;box-shadow:var(--sh-lg)}
.vm__player.vert{aspect-ratio:9/16;max-height:82svh;margin-inline:auto;width:auto}
.vm__player iframe{width:100%;height:100%;border:0;display:block}
.vm__close{
  position:absolute;top:-50px;right:0;width:40px;height:40px;border-radius:var(--r-full);
  display:grid;place-items:center;color:var(--text);background:rgba(255,255,255,.1);
  border:1px solid var(--g-line);transition:background .3s,transform .4s var(--spring);
}
.vm__close:hover{background:rgba(255,255,255,.2);transform:rotate(90deg)}

/* ════════════════════════════════════════════
   PODSTRONA: CASE STUDY (jedna historia)
   ════════════════════════════════════════════ */
:root{
  --chart-gold:#b28c40;          /* sprawdzony: jasność, nasycenie i kontrast na ciemnym tle */
  --chart-grid:rgba(255,255,255,.07);
}

.page-head{padding-top:calc(var(--nav-h) + var(--s20));padding-bottom:var(--s12)}
.page-head h1{font-size:var(--t-2xl);font-weight:600;margin-bottom:var(--s5);max-width:20ch}
.page-head p{color:var(--muted);max-width:54ch;font-size:var(--t-base)}
.back{
  display:flex;width:fit-content;align-items:center;gap:.5rem;font-size:var(--t-xs);
  color:var(--muted);margin-bottom:var(--s8);transition:color .3s,transform .4s var(--ease);
}
.back:hover{color:var(--gold);transform:translateX(-3px)}

/* miejsce do uzupełnienia — widać je od razu i łatwo wyszukać po klasie "ph" */
.ph{
  display:inline-block;padding:0 .38em;border-radius:.35em;line-height:1.25;
  color:var(--muted);background:rgba(200,169,110,.07);
  outline:1px dashed rgba(200,169,110,.45);outline-offset:-1px;
  font-weight:inherit;
}

/* pasek faktów pod nagłówkiem */
.facts{
  display:grid;grid-template-columns:repeat(4,1fr);margin-top:var(--s10);
  border-top:1px solid var(--div);border-bottom:1px solid var(--div);
}
.fact{padding:var(--s5) var(--s5) var(--s5) 0}
.fact + .fact{padding-left:var(--s5);border-left:1px solid var(--div)}
.fact dt{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:.35rem}
.fact dd{font-size:var(--t-sm);font-weight:500}
@media (max-width:760px){
  .facts{grid-template-columns:1fr 1fr}
  .fact:nth-child(3){padding-left:0;border-left:0}
  .fact:nth-child(n+3){border-top:1px solid var(--div)}
}

/* kluczowe liczby */
.kpis{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:var(--s4)}
@media (max-width:980px){.kpis{grid-template-columns:1fr 1fr}.kpi--hero{grid-column:1/-1}}
@media (max-width:480px){.kpis{grid-template-columns:1fr}}
.kpi{padding:var(--s6);border-radius:var(--r-2xl);display:flex;flex-direction:column;gap:.45rem;min-height:9.5rem}
.kpi__l{font-size:var(--t-xs);color:var(--muted)}
.kpi__v{font-size:var(--t-xl);font-weight:600;letter-spacing:-.035em;line-height:1.05;margin-top:auto}
.kpi--hero .kpi__v{font-size:clamp(3rem,2rem + 3vw,4.5rem);letter-spacing:-.05em}
.kpi__d{font-size:var(--t-xs);color:var(--faint);display:flex;align-items:center;gap:.45rem}
.kpi__d::before{content:'';width:14px;height:2px;border-radius:2px;background:var(--chart-gold)}

/* wykres */
.chart{margin-top:var(--s5);padding:var(--s8);border-radius:var(--r-3xl)}
@media (max-width:620px){.chart{padding:var(--s5)}}
.chart__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s6)}
.chart__t{font-size:var(--t-base);font-weight:600;letter-spacing:-.02em}
.chart__s{font-size:var(--t-xs);color:var(--muted);margin-top:.2rem}
.chart__demo{
  padding:.3rem .7rem;border-radius:var(--r-full);font-size:.75rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--text);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
}
.chart__plot{position:relative;width:100%;height:clamp(240px,34vw,360px);outline:none;border-radius:var(--r-md)}
.chart__plot:focus-visible{box-shadow:0 0 0 2px var(--gold)}
.chart__plot svg{display:block;width:100%;height:100%;overflow:visible}
.chart__plot text{font-family:var(--font);font-size:11px;fill:var(--muted);font-variant-numeric:tabular-nums}
.chart__empty{position:absolute;inset:0;display:grid;place-items:center;font-size:var(--t-sm);color:var(--faint)}
.chart__line{stroke-dasharray:var(--len);stroke-dashoffset:var(--len)}
.chart.go .chart__line{stroke-dashoffset:0;transition:stroke-dashoffset 1.8s var(--ease)}
.chart__area{opacity:0}
.chart.go .chart__area{opacity:1;transition:opacity 1s var(--ease) .6s}

.tip{
  position:absolute;top:0;left:0;pointer-events:none;z-index:5;
  padding:.55rem .8rem;border-radius:var(--r-md);min-width:7.5rem;
  background:rgba(14,14,22,.96);border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 30px rgba(0,0,0,.5);
  opacity:0;transition:opacity .15s linear;
}
.tip.on{opacity:1}
.tip b{display:block;font-size:var(--t-sm);font-weight:600;letter-spacing:-.01em}
.tip span{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted);margin-top:.1rem}
.tip span::before{content:'';width:12px;height:2px;border-radius:2px;background:var(--chart-gold)}

.chart__table{margin-top:var(--s5);font-size:var(--t-xs);color:var(--muted)}
.chart__table summary{cursor:pointer;display:inline-flex;gap:.4rem;align-items:center;transition:color .3s}
.chart__table summary:hover{color:var(--text)}
.chart__table table{margin-top:var(--s4);border-collapse:collapse;width:100%;max-width:420px}
.chart__table th,.chart__table td{padding:.45rem .6rem;border-bottom:1px solid var(--div);text-align:left}
.chart__table td:last-child,.chart__table th:last-child{text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}
.chart__table th{font-weight:500;color:var(--faint)}

.kpi-note{margin-top:var(--s5);font-size:var(--t-sm);color:var(--muted);max-width:70ch}
.kpi-note b{color:var(--text);font-weight:600}


/* historia w rozdziałach */
.chap{display:grid;grid-template-columns:.7fr 1.3fr;gap:var(--s12);padding-block:var(--s12);border-top:1px solid var(--div)}
.chap:first-child{border-top:0;padding-top:0}
@media (max-width:860px){.chap{grid-template-columns:1fr;gap:var(--s5)}}
.chap__side{position:sticky;top:120px;align-self:start}
@media (max-width:860px){.chap__side{position:static}}
.chap__n{font-size:.78rem;font-weight:700;letter-spacing:.14em;color:var(--gold);display:block;margin-bottom:.5rem}
.chap__t{font-size:var(--t-xl);font-weight:600;letter-spacing:-.03em}
.chap__body p{color:var(--muted);font-size:var(--t-base);margin-bottom:var(--s4);max-width:58ch}
.chap__body p:last-child{margin-bottom:0}

.moves{list-style:none;display:flex;flex-direction:column;gap:var(--s3);margin-top:var(--s6)}
.move{padding:var(--s5) var(--s6);border-radius:var(--r-xl);display:grid;grid-template-columns:auto 1fr;gap:var(--s4);align-items:baseline}
.move i{font-style:normal;font-size:.78rem;font-weight:700;color:var(--gold);opacity:.8}
.move b{display:block;font-size:var(--t-sm);font-weight:600;margin-bottom:.25rem}
.move span{font-size:var(--t-sm);color:var(--muted)}

/* liczba wyświetleń na karcie rolki (case study) */
.card__v{font-size:var(--t-lg);font-weight:600;letter-spacing:-.03em;line-height:1.1;margin-bottom:.4rem}

/* zamiast prostokąta — delikatne wciśnięcie pod palcem */
@media (hover:none){
  .card,.tut,.clink,.dl,.howto,.arrow,.srv-card,.tool{transition:transform .25s var(--ease)}
  .tab-btn{transition:transform .25s var(--ease),color .35s var(--ease)}
  .card:active,.tut:active,.clink:active,.dl:active,.howto:active,.srv-card:active,.tool:active{transform:scale(.975)}
  .tab-btn:active,.arrow:active{transform:scale(.94)}
}

/* cytat klienta */
.quote{padding:var(--s12) var(--s10);border-radius:var(--r-3xl);position:relative}
@media (max-width:620px){.quote{padding:var(--s8) var(--s6)}}
.quote svg{color:var(--gold);opacity:.55;margin-bottom:var(--s5)}
.quote p{font-size:var(--t-lg);line-height:1.5;letter-spacing:-.015em;max-width:48ch}
.quote footer{margin-top:var(--s6);font-size:var(--t-sm);color:var(--muted);padding:0;border:0}
.quote footer b{color:var(--text);font-weight:600}

.cta-band{
  margin-top:var(--s20);padding:var(--s12);border-radius:var(--r-3xl);text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:var(--s5);
}
.cta-band h2{font-size:var(--t-xl);font-weight:600}
.cta-band p{color:var(--muted);font-size:var(--t-sm);max-width:44ch}

/* ════════════════════════════════════════════
   STOPKA
   ════════════════════════════════════════════ */
footer{padding-block:var(--s10);border-top:1px solid var(--div);margin-top:var(--s20)}
.foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s5);flex-wrap:wrap;font-size:var(--t-xs);color:var(--faint)}
.foot b{color:var(--muted);font-weight:600;letter-spacing:.12em}
.foot a:hover{color:var(--gold)}
.foot__soc{display:flex;gap:var(--s4)}
/* ── Case study: przełącznik serii, suma, udział platform, szczegóły ── */
.chart__seg{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--div);flex-wrap:wrap}
.chart__seg button{font:inherit;font-size:var(--t-xs);color:var(--muted);background:none;border:0;padding:.45rem .9rem;border-radius:999px;cursor:pointer;transition:color .25s,background .25s}
.chart__seg button:hover{color:var(--text)}
.chart__seg button[aria-pressed="true"]{color:#14110a;background:var(--gold);font-weight:600}
.chart__seg button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.chart__sum{display:block;font-size:var(--t-xl);font-weight:600;letter-spacing:-.035em;line-height:1.1;margin-top:.35rem;font-variant-numeric:tabular-nums}

.split{margin-top:var(--s5);padding:var(--s6) var(--s8);border-radius:var(--r-2xl)}
@media (max-width:620px){.split{padding:var(--s5)}}
.split__t{font-size:var(--t-xs);color:var(--muted);margin-bottom:var(--s4)}
.split__bar{display:flex;height:10px;border-radius:999px;overflow:hidden;gap:3px}
.split__bar i{display:block;height:100%;width:var(--w);background:var(--c,var(--chart-gold))}
.split__leg{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-top:var(--s4)}
@media (max-width:560px){.split__leg{grid-template-columns:1fr}}
.split__leg div{display:flex;flex-direction:column;gap:.15rem;font-size:var(--t-xs);color:var(--muted)}
.split__leg dt{display:flex;align-items:center;gap:.5rem}
.split__leg dt::before{content:'';width:10px;height:10px;border-radius:3px;background:var(--c,var(--chart-gold))}
.split__leg dd{margin:0;font-size:var(--t-base);font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}

.cstats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-top:var(--s5)}
@media (max-width:860px){.cstats{grid-template-columns:1fr 1fr}}
@media (max-width:440px){.cstats{grid-template-columns:1fr}}
.cstat{padding:var(--s5) var(--s6);border-radius:var(--r-xl);display:flex;flex-direction:column;gap:.3rem}
.cstat b{font-size:var(--t-lg);font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.cstat span{font-size:var(--t-xs);color:var(--muted)}
@media (max-width:620px){.chart__seg{display:grid;grid-template-columns:repeat(4,1fr);width:100%}.chart__seg button{padding:.5rem .25rem}}

/* ── Wykres porównawczy platform ── */
.mchart--home{margin-top:var(--s5)}
.mlegs{display:flex;flex-wrap:wrap;gap:var(--s2);margin:calc(var(--s2) * -1) 0 var(--s5)}
.mleg{font:inherit;font-size:var(--t-xs);color:var(--text);display:inline-flex;align-items:center;gap:.55rem;padding:.5rem .9rem;border-radius:999px;cursor:pointer;
  background:rgba(255,255,255,.035);border:1px solid var(--div);transition:opacity .25s,border-color .25s}
.mleg i{width:14px;height:3px;border-radius:2px;background:var(--c)}
.mleg b{font-weight:600;color:var(--c);font-variant-numeric:tabular-nums}
.mleg:hover{border-color:rgba(255,255,255,.2)}
.mleg[aria-pressed="false"]{opacity:.38}
.mleg[aria-pressed="false"] i{background:var(--faint)}
.mleg:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.mtip{min-width:10.5rem}
.mtip .mtip__d{font-size:.78rem;color:var(--muted);margin:0 0 .3rem}
.mtip .mtip__d::before{display:none}
.mtip .mtip__r{display:flex;align-items:center;gap:.45rem;font-size:var(--t-xs);color:var(--muted);margin-top:.15rem}
.mtip .mtip__r::before{background:var(--c);width:10px}
.mtip .mtip__r b{display:inline;margin-left:auto;padding-left:.8rem;font-size:var(--t-xs);color:var(--text);font-variant-numeric:tabular-nums}

.feat__scope{display:flex;flex-wrap:wrap;gap:.45rem;margin:calc(var(--s4) * -1) 0 var(--s8);padding:0;list-style:none}
.feat__scope li{font-size:var(--t-xs);color:var(--muted);padding:.35rem .75rem;border-radius:999px;border:1px solid var(--div);background:rgba(255,255,255,.025)}
@media (max-width:560px){.hero__actions{flex-direction:column;align-items:center}.hero__actions .btn{width:100%;max-width:280px;justify-content:center}}

/* ogonki liter (ą, ę, j) pod złotym gradientem: gradient musi sięgać niżej niż linia */
.hl{padding-bottom:.14em}
.hl .kin > i{padding-bottom:.2em;margin-bottom:-.2em}
/* hero nie musi zajmować całego ekranu, a case study ma być zaraz pod nim */
.hero{min-height:min(100svh,860px)}
#results{padding-top:var(--s10)}

/* portret w O mnie: ciemny panel, głowa wychodzi ponad jego górną krawędź */
.about__img--cut{overflow:visible;box-shadow:none;border-radius:0;clip-path:inset(-40% 0 0 0 round 0 0 var(--r-3xl) var(--r-3xl))}
.about__img--cut::before{
  content:'';position:absolute;inset:16% 0 0 0;z-index:0;border-radius:var(--r-3xl);
  background:radial-gradient(90% 70% at 28% 30%,rgba(200,169,110,.20),transparent 62%),linear-gradient(180deg,#17161e,#0b0b12);
  border:1px solid rgba(255,255,255,.07);
}
.about__img--cut img{
  position:absolute;bottom:0;left:50%;z-index:1;width:auto;height:100%;max-width:none;object-fit:initial;
  transform:translateX(-57%);transform-origin:50% 100%;
}
.about__media:hover .about__img--cut img{transform:translateX(-57%) scale(1.03)}
.about__img--cut::after{z-index:2;background:linear-gradient(to top,rgba(8,8,15,.85),transparent 38%)}

.dl-note span{display:block;margin-top:.55rem}
.dl-note span:first-child{margin-top:0}
.dl-note b{color:var(--text);font-weight:600}
