/* ==========================================================================
   Fullsite: system wizualny (docelowo style.css motywu potomnego)
   Klasy fs-* podpinane są pod kontenery i widżety Elementora.
   ========================================================================== */

:root{
  /* tła i tekst */
  --fs-paper:#F6F5FA; --fs-surface:#FFFFFF; --fs-ink:#17122A; --fs-muted:#625B74;
  --fs-line:#E6E1F0; --fs-tint:#F2EDFB;
  /* ciemne sekcje */
  --fs-deep:#110A22; --fs-deep-2:#0B0617; --fs-deep-ink:#F3EFFB; --fs-deep-muted:#A99FC2;
  --fs-deep-line:rgba(255,255,255,.09); --fs-deep-card:rgba(255,255,255,.04);
  /* marki */
  --fs-full:#6B21C8; --fs-full2:#9150E6; --fs-full-l:#B79BDB;
  --fs-calm:#2A7FC0; --fs-calm2:#1BA8F5; --fs-calm-l:#9FB3C4;
  --fs-custom:#EC6710; --fs-custom2:#FBA15B; --fs-custom-l:#BFB4A6;
  --fs-ok:#1F9D63; --fs-warn:#E5484D; --fs-star:#F5A623;
  /* kształt */
  --fs-r-sm:10px; --fs-r:16px; --fs-r-lg:22px;
  --fs-shadow:0 1px 2px rgba(40,20,80,.05),0 14px 40px -16px rgba(60,20,120,.20);
  --fs-wrap:1200px;
  /* typografia */
  --fs-display:"Poppins","Segoe UI",system-ui,sans-serif;
  --fs-body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --fs-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
}

/* ---------- baza ----------
   Reguły elementów mają specyficzność 0 dzięki :where(), żeby wygrywały z resetem
   motywu Hello tylko kolejnością, a każda klasa komponentu wygrywała z nimi. */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.fs{margin:0;background:var(--fs-paper);color:var(--fs-ink);font:16px/1.65 var(--fs-body);overflow-x:clip;-webkit-font-smoothing:antialiased}
:where(body.fs) :is(h1,h2,h3,h4){font-family:var(--fs-display);margin:0;letter-spacing:-.025em;text-wrap:balance;color:inherit}
:where(body.fs) h1{font-size:clamp(2.35rem,5vw,4rem);line-height:1.06;font-weight:600}
:where(body.fs) h2{font-size:clamp(1.8rem,3.4vw,2.65rem);line-height:1.12;font-weight:600}
:where(body.fs) h3{font-size:1.18rem;line-height:1.3;font-weight:600}
:where(body.fs) p{margin:0}
:where(body.fs) a,:where(body.fs) a:hover,:where(body.fs) a:active{color:inherit;text-decoration:none}
:where(body.fs) img{max-width:100%;height:auto;display:block}
:where(body.fs) :focus-visible{outline:2.5px solid var(--fs-full2);outline-offset:3px;border-radius:6px}
:where(body.fs) [id]{scroll-margin-top:84px}
.fs-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.fs-wrap{width:100%;max-width:var(--fs-wrap);margin-inline:auto;padding-inline:20px}
.fs-section{padding-block:clamp(72px,9vw,120px)}
.fs-section--tight{padding-top:0}
.fs-lt{font-weight:300}
.fs-grad{background:linear-gradient(90deg,var(--fs-full2),#C9A4FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.fs-dot{color:var(--fs-full2)}
.fs-lede{font-size:1.1rem;color:var(--fs-muted);max-width:60ch}

/* etykieta nad nagłówkiem: mono, wersaliki */
.fs-eyebrow{display:inline-flex;align-items:center;gap:10px;font:500 .72rem/1 var(--fs-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fs-full)}

/* nagłówek sekcji: tytuł po lewej, lead po prawej */
.fs-head{display:grid;grid-template-columns:1.1fr .9fr;gap:20px 64px;align-items:end;margin-bottom:52px}
.fs-head h2{margin-top:16px}
@media (max-width:880px){.fs-head{grid-template-columns:1fr}}

/* ---------- logotypy ---------- */
.fs-logo{display:inline-flex;align-items:baseline;font-family:var(--fs-display);letter-spacing:-.03em;text-decoration:none;line-height:1;white-space:nowrap}
.fs-logo b{font-weight:700;background:linear-gradient(90deg,var(--g1),var(--g2));-webkit-background-clip:text;background-clip:text;color:transparent}
.fs-logo i{font-style:normal;font-weight:300;color:var(--gl)}
.fs-logo s{text-decoration:none;color:var(--g2);font-weight:700}
.fs-lg-full{--g1:var(--fs-full2);--g2:#B57BFF;--gl:var(--fs-full-l)}
.fs-lg-calm{--g1:var(--fs-calm);--g2:var(--fs-calm2);--gl:var(--fs-calm-l)}
.fs-lg-custom{--g1:var(--fs-custom);--g2:var(--fs-custom2);--gl:var(--fs-custom-l)}
.fs-on-light .fs-lg-full,.fs-lg-full.fs-on-light{--g1:var(--fs-full);--g2:var(--fs-full2)}

/* ---------- przyciski ---------- */
.fs-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:12px;font:600 .96rem/1.2 var(--fs-display);letter-spacing:-.01em;text-decoration:none;border:0;cursor:pointer;color:#fff;transition:transform .15s,box-shadow .2s,background .2s}
.fs-btn:hover{transform:translateY(-2px)}
.fs-btn .fs-ar{transition:transform .15s}
.fs-btn:hover .fs-ar{transform:translateX(3px)}
.fs-btn--full{background:linear-gradient(95deg,var(--fs-full),var(--fs-full2));box-shadow:0 10px 26px -10px var(--fs-full2)}
.fs-btn--calm{background:linear-gradient(95deg,var(--fs-calm),var(--fs-calm2));box-shadow:0 10px 26px -10px var(--fs-calm2)}
.fs-btn--custom{background:linear-gradient(95deg,var(--fs-custom),var(--fs-custom2));box-shadow:0 10px 26px -10px var(--fs-custom)}
.fs .fs-btn{color:#fff}
.fs .fs-btn--ghost{color:var(--fs-ink);background:var(--fs-surface);border:1px solid var(--fs-line)}
.fs .fs-btn--ghost-dark{color:var(--fs-deep-ink);background:rgba(255,255,255,.06);border:1px solid var(--fs-deep-line)}
.fs-btn--sm{padding:10px 16px;font-size:.88rem;border-radius:10px}
.fs-btn--block{width:100%}

/* ---------- pasek ogłoszeń + nagłówek ---------- */
/* pasek ogłoszeń ma stałą wysokość 38px: cały nagłówek jest sticky z top:-38px,
   więc pasek chowa się przy przewijaniu, a menu zostaje */
.fs-topwrap{position:sticky;top:-38px;z-index:60}
.elementor-location-header{position:sticky;top:-38px;z-index:60}
.admin-bar .elementor-location-header{top:-6px}
.fs-announce{background:var(--fs-deep-2);color:var(--fs-deep-muted);font-size:.84rem;text-align:center;height:38px;line-height:20px;padding:9px 20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--fs-deep-line)}
.fs-announce a{color:var(--fs-deep-ink);font-weight:600;text-decoration:none}
.fs-announce a:hover{text-decoration:underline}
.fs-announce .fs-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#B57BFF;margin-right:8px;vertical-align:1px;box-shadow:0 0 0 4px rgba(181,123,255,.18)}
@media (max-width:760px){.fs-announce .long{display:none}}

.fs-header{background:rgba(17,10,34,.82);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--fs-deep-line);color:var(--fs-deep-ink)}
.fs-nav{display:flex;align-items:center;gap:28px;min-height:72px}
.fs-nav .fs-logo{font-size:1.55rem}
.fs-menu{display:flex;gap:4px;margin:0 0 0 auto;padding:0;list-style:none}
.fs-menu a{display:block;padding:8px 12px;border-radius:8px;text-decoration:none;font-size:.93rem;font-weight:500;color:var(--fs-deep-muted);transition:color .15s,background .15s}
.fs-menu a:hover,.fs-menu a[aria-current]{color:#fff;background:rgba(255,255,255,.06)}
.fs-navcta{display:flex;align-items:center;gap:12px}
.fs-tel{display:inline-flex;align-items:center;gap:8px;font:600 .9rem var(--fs-body);text-decoration:none;color:var(--fs-deep-ink);white-space:nowrap}
.fs-tel::before{content:"";width:8px;height:8px;border-radius:50%;background:#3CCB8A;box-shadow:0 0 0 4px rgba(60,203,138,.18)}
.fs-burger{display:none;width:42px;height:42px;border-radius:10px;border:1px solid var(--fs-deep-line);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;place-items:center}
@media (max-width:1040px){.fs-menu,.fs-tel{display:none}.fs-burger{display:grid}.fs-navcta{margin-left:auto}}
.fs-mobile{display:none;border-top:1px solid var(--fs-deep-line);padding:12px 20px 20px}
.fs-mobile.is-open{display:block}
.fs-mobile a{display:block;padding:12px 4px;color:var(--fs-deep-ink);text-decoration:none;font-weight:500;border-bottom:1px solid var(--fs-deep-line)}

/* ---------- ciemne sekcje (hero, agencje, stopka) ---------- */
.fs-dark{background:var(--fs-deep);color:var(--fs-deep-ink);position:relative;isolation:isolate;overflow:hidden}
.fs-dark .fs-lede{color:var(--fs-deep-muted)}
.fs-dark .fs-eyebrow{color:#B57BFF}
.fs-dark .fs-lt{color:var(--fs-deep-muted)}
/* siatka w tle jak na calmsite */
.fs-gridbg::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:56px 56px;mask-image:radial-gradient(ellipse 90% 80% at 60% 30%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 90% 80% at 60% 30%,#000 30%,transparent 80%)}
.fs-glow::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:1000px;height:760px;right:-260px;top:-260px;
  background:radial-gradient(closest-side,rgba(145,80,230,.36),transparent),radial-gradient(closest-side at 30% 80%,rgba(27,168,245,.14),transparent),radial-gradient(closest-side at 70% 95%,rgba(236,103,16,.12),transparent)}

/* ---------- HERO ---------- */
.fs-hero{padding-block:clamp(56px,7vw,96px) 0}
.fs-hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:clamp(36px,5vw,72px);align-items:center}
.fs-hero-grid>*{min-width:0}
@media (max-width:980px){.fs-hero-grid{grid-template-columns:1fr}}
.fs-badge{display:inline-flex;align-items:center;gap:10px;padding:7px 14px 7px 8px;border-radius:999px;border:1px solid var(--fs-deep-line);background:rgba(255,255,255,.04);font-size:.82rem;color:var(--fs-deep-muted)}
.fs-badge b{font:600 .7rem var(--fs-mono);letter-spacing:.06em;color:#fff;background:linear-gradient(95deg,var(--fs-full),var(--fs-full2));padding:4px 8px;border-radius:999px}
.fs-hero h1{margin-top:22px}
.fs-hero .fs-lede{margin-top:22px}
.fs-paths{display:grid;gap:12px;margin-top:34px}
.fs-path{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:16px 18px;border-radius:var(--fs-r);background:rgba(255,255,255,.045);border:1px solid var(--fs-deep-line);text-decoration:none;color:var(--fs-deep-ink);transition:transform .15s,border-color .2s,background .2s}
.fs-path:hover{transform:translateY(-2px);background:rgba(255,255,255,.07)}
.fs-path--custom:hover{border-color:var(--fs-custom)}
.fs-path--calm:hover{border-color:var(--fs-calm2)}
.fs-path .fs-ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;color:#fff}
.fs-path--custom .fs-ic{background:linear-gradient(135deg,var(--fs-custom),var(--fs-custom2))}
.fs-path--calm .fs-ic{background:linear-gradient(135deg,var(--fs-calm),var(--fs-calm2))}
.fs-path strong{display:block;font:600 1.02rem/1.3 var(--fs-display);letter-spacing:-.01em}
.fs-path small{display:block;color:var(--fs-deep-muted);font-size:.88rem;margin-top:2px}
.fs-path .fs-go{font:600 .84rem var(--fs-display);white-space:nowrap}
.fs-path--custom .fs-go{color:var(--fs-custom2)}
.fs-path--calm .fs-go{color:var(--fs-calm2)}
@media (max-width:480px){.fs-path{grid-template-columns:auto 1fr}.fs-path .fs-go{display:none}}
.fs-agency-link{margin-top:20px;font-size:.94rem;color:var(--fs-deep-muted)}
.fs-agency-link a{color:#fff;font-weight:600;text-decoration:none;border-bottom:1.5px solid rgba(181,123,255,.6)}

/* okno przeglądarki z zakładkami */
.fs-stage{position:relative}
.fs-tabs{display:flex;gap:4px;padding:5px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--fs-deep-line);width:max-content;max-width:100%;margin:0 auto 16px;overflow-x:auto}
.fs-tab{font:600 .85rem var(--fs-display);padding:9px 14px;border-radius:10px;border:0;background:transparent;color:var(--fs-deep-muted);cursor:pointer;white-space:nowrap;display:inline-flex;gap:8px;align-items:center}
.fs-tab::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c)}
.fs-tab[aria-selected="true"]{background:rgba(255,255,255,.1);color:#fff}
.fs-tab[data-k="build"]{--c:var(--fs-custom)}.fs-tab[data-k="care"]{--c:var(--fs-calm2)}.fs-tab[data-k="link"]{--c:#B57BFF}
.fs-browser{border-radius:18px;background:var(--fs-surface);color:var(--fs-ink);box-shadow:0 40px 90px -30px color-mix(in srgb,var(--acc,var(--fs-full2)) 70%,transparent),0 0 0 1px rgba(255,255,255,.08);overflow:hidden;transition:box-shadow .5s}
.fs-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--fs-line)}
.fs-lights{display:flex;gap:6px}
.fs-lights i{width:10px;height:10px;border-radius:50%;background:var(--fs-line)}
.fs-url{flex:1;font:500 .76rem var(--fs-mono);color:var(--fs-muted);background:var(--fs-tint);border-radius:8px;padding:6px 12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fs-url b{color:var(--acc);font-weight:600}
.fs-screen{position:relative;min-height:340px;padding:22px}
.fs-pane{display:none;animation:fs-rise .45s ease both}
.fs-pane.is-on{display:block}
@keyframes fs-rise{from{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}
.fs-wf{display:grid;gap:12px}
.fs-wf .r{display:flex;gap:12px}
.fs-blk{border-radius:9px;background:var(--fs-tint);position:relative;overflow:hidden}
.fs-blk.acc{background:color-mix(in srgb,var(--fs-custom) 18%,var(--fs-surface))}
.fs-blk::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);transform:translateX(-100%);animation:fs-shine 2.4s infinite}
@keyframes fs-shine{to{transform:translateX(100%)}}
.fs-score{position:absolute;right:20px;bottom:20px;display:flex;gap:14px;align-items:center;background:var(--fs-surface);border:1px solid var(--fs-line);border-radius:14px;padding:12px 16px;box-shadow:var(--fs-shadow)}
.fs-ring{--p:98;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--fs-ok) calc(var(--p)*1%),var(--fs-line) 0);font:700 .95rem var(--fs-display);position:relative}
.fs-ring::before{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--fs-surface)}
.fs-ring span{position:relative;color:var(--fs-ok)}
.fs-score small{display:block;color:var(--fs-muted);font:500 .7rem var(--fs-mono);letter-spacing:.04em;text-transform:uppercase}
.fs-score strong{font:600 .92rem var(--fs-display)}
.fs-status-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.fs-pill{display:inline-flex;gap:8px;align-items:center;font:600 .76rem var(--fs-display);padding:6px 12px;border-radius:999px;background:color-mix(in srgb,var(--fs-ok) 13%,transparent);color:var(--fs-ok)}
.fs-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;animation:fs-pulse 2s infinite}
@keyframes fs-pulse{50%{opacity:.35}}
.fs-checks{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:8px}
.fs-checks li{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--fs-tint);font-size:.9rem}
.fs-checks li::before{content:"✓";width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--fs-ok);color:#fff;font-size:.72rem;font-weight:700}
.fs-checks li span:last-child{font:500 .74rem var(--fs-mono);color:var(--fs-muted)}
.fs-uptime{margin-top:14px;display:flex;align-items:end;gap:3px;height:34px}
.fs-uptime i{flex:1;background:color-mix(in srgb,var(--fs-calm2) 75%,transparent);border-radius:2px}
.fs-uptime-l{display:flex;justify-content:space-between;font:500 .72rem var(--fs-mono);color:var(--fs-muted);margin-top:6px}
.fs-flow svg{width:100%;height:auto;display:block}
.fs-flow .node{fill:var(--fs-surface);stroke:var(--fs-line)}
.fs-flow .hub{fill:var(--fs-tint);stroke:var(--fs-full2)}
.fs-flow text{font-family:var(--fs-display);fill:var(--fs-ink)}
.fs-flow .sub{fill:var(--fs-muted);font-family:var(--fs-mono)}
.fs-flow .wire{stroke:var(--fs-line);stroke-width:2;fill:none}
.fs-flow .pkt{fill:var(--fs-full2)}
.fs-orders{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.fs-orders span{font:500 .74rem var(--fs-mono);padding:6px 10px;border-radius:8px;background:var(--fs-tint);color:var(--fs-muted)}
.fs-orders b{color:var(--fs-ink);font-weight:500}

/* liczby w hero */
.fs-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(56px,7vw,88px);border-top:1px solid var(--fs-deep-line)}
.fs-stat{padding:28px 24px 34px 0}
.fs-stat+.fs-stat{padding-left:24px;border-left:1px solid var(--fs-deep-line)}
.fs-stat .n{font:600 clamp(2rem,3.4vw,2.7rem)/1 var(--fs-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:#fff}
.fs-stat .n sup{position:static;font-size:.5em;line-height:1;color:#B57BFF;vertical-align:top;margin-left:2px}
.fs-stat .l{margin-top:8px;color:var(--fs-deep-muted);font-size:.88rem;line-height:1.4}
.fs-stat .g{display:inline-flex;align-items:center;gap:8px}
.fs-stat .stars{color:var(--fs-star);font-size:.9rem;letter-spacing:1px}
@media (max-width:760px){.fs-stats{grid-template-columns:1fr 1fr}.fs-stat:nth-child(3){padding-left:0;border-left:0}.fs-stat:nth-child(-n+2){border-bottom:1px solid var(--fs-deep-line)}}

/* pasek klientów */
.fs-clients{background:var(--fs-surface);border-bottom:1px solid var(--fs-line);overflow:hidden}
.fs-clients .fs-wrap{display:flex;align-items:center;gap:40px;min-height:92px}
.fs-clients p{flex:none;font:500 .7rem/1.4 var(--fs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fs-muted);max-width:130px}
.fs-marquee{flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.fs-marquee ul{display:flex;gap:56px;width:max-content;margin:0;padding:0;list-style:none;animation:fs-scroll 32s linear infinite}
.fs-marquee li{font:600 1.12rem var(--fs-display);color:#8C859E;letter-spacing:-.01em;white-space:nowrap}
@keyframes fs-scroll{to{transform:translateX(-50%)}}
@media (max-width:640px){.fs-clients p{display:none}}

/* ---------- karty marek (cykl życia) ---------- */
.fs-life{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:980px){.fs-life{grid-template-columns:1fr}}
.fs-stagec{position:relative;display:flex;flex-direction:column;gap:18px;padding:30px;border-radius:var(--fs-r-lg);background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow);overflow:hidden;transition:transform .2s,border-color .2s}
.fs-stagec:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--g1) 45%,var(--fs-line))}
.fs-stagec::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--g1),var(--g2))}
.fs-stagec .step{display:flex;justify-content:space-between;align-items:center}
.fs-stagec .step span{font:500 .7rem var(--fs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fs-muted)}
.fs-stagec .num{font:700 3rem/1 var(--fs-display);letter-spacing:-.04em;color:color-mix(in srgb,var(--g1) 22%,transparent)!important}
.fs-stagec .fs-logo{font-size:1.75rem}
.fs-stagec ul{list-style:none;padding:0;margin:0;display:grid;gap:10px;font-size:.94rem}
.fs-stagec li{display:flex;gap:10px;align-items:flex-start}
.fs-stagec li::before{content:"";flex:none;width:18px;height:18px;margin-top:3px;border-radius:6px;background:color-mix(in srgb,var(--g1) 14%,transparent) no-repeat center/11px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23625B74' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E")}
.fs-stagec .price{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:18px;border-top:1px dashed var(--fs-line);margin-top:auto}
.fs-stagec .price small{color:var(--fs-muted);font:500 .7rem var(--fs-mono);letter-spacing:.08em;text-transform:uppercase}
.fs-stagec .price strong{font:600 1.08rem var(--fs-display)}
.fs-stagec--custom{--g1:var(--fs-custom);--g2:var(--fs-custom2)}
.fs-stagec--calm{--g1:var(--fs-calm);--g2:var(--fs-calm2)}
.fs-stagec--full{--g1:var(--fs-full);--g2:var(--fs-full2)}
.fs-stagec--full .fs-lg-full{--g1:var(--fs-full);--g2:var(--fs-full2)}

/* ---------- problemy (jak "Brzmi znajomo?" na calmsite) ---------- */
.fs-pains{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:980px){.fs-pains{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.fs-pains{grid-template-columns:1fr}}
.fs-card{padding:24px;border-radius:var(--fs-r);background:var(--fs-surface);border:1px solid var(--fs-line)}
.fs-card .k{font:500 .7rem var(--fs-mono);color:var(--fs-muted);letter-spacing:.08em}
.fs-card h3{margin-top:12px;font-size:1.06rem}
.fs-card h3 em{font-style:normal;color:var(--fs-full)}
.fs-card p{margin-top:8px;color:var(--fs-muted);font-size:.92rem;line-height:1.55}
.fs-card .ans{margin-top:16px;padding-top:14px;border-top:1px dashed var(--fs-line);font-size:.88rem;font-weight:600;display:flex;gap:8px;align-items:center}
.fs-card .ans i{width:8px;height:8px;border-radius:50%;background:var(--c,var(--fs-full2));flex:none}

/* ---------- agencje ---------- */
.fs-ag-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,5vw,80px);align-items:start}
@media (max-width:980px){.fs-ag-grid{grid-template-columns:1fr}}
.fs-ag-grid h2{margin-top:16px}
.fs-perks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:34px 0}
@media (max-width:520px){.fs-perks{grid-template-columns:1fr}}
.fs-perk{padding:18px;border-radius:14px;border:1px solid var(--fs-deep-line);background:var(--fs-deep-card)}
.fs-perk strong{display:block;font:600 1rem var(--fs-display);color:#fff}
.fs-perk span{color:var(--fs-deep-muted);font-size:.88rem}
.fs-flowsteps{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font:500 .78rem var(--fs-mono);color:var(--fs-deep-muted)}
.fs-flowsteps b{color:var(--fs-deep-ink);font-weight:500;padding:8px 12px;border-radius:8px;border:1px solid var(--fs-deep-line);background:var(--fs-deep-card)}
.fs-calc{border-radius:var(--fs-r-lg);padding:30px;background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.025));border:1px solid var(--fs-deep-line);backdrop-filter:blur(8px)}
.fs-calc h3{font-size:1.15rem;color:#fff}
.fs-calc .s{color:var(--fs-deep-muted);font-size:.9rem;margin-top:4px}
.fs-field{margin-top:24px}
.fs-field>label,.fs-field>.lbl{display:flex;justify-content:space-between;font-weight:600;font-size:.9rem}
.fs-field output{font:600 .95rem var(--fs-display);color:#C9A4FF}
.fs-calc input[type=range]{width:100%;margin-top:12px;accent-color:#B57BFF}
.fs-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
.fs-seg input{position:absolute;opacity:0;pointer-events:none}
.fs-seg label{display:block;text-align:center;padding:10px 6px;border-radius:10px;border:1px solid var(--fs-deep-line);font:600 .85rem var(--fs-display);cursor:pointer}
.fs-seg input:checked+label{background:#B57BFF;border-color:#B57BFF;color:var(--fs-deep)}
.fs-seg input:focus-visible+label{outline:2.5px solid #B57BFF;outline-offset:2px}
.fs-result{margin-top:26px;padding-top:22px;border-top:1px solid var(--fs-deep-line)}
.fs-result small{color:var(--fs-deep-muted);font:500 .7rem var(--fs-mono);letter-spacing:.08em;text-transform:uppercase}
.fs-result .big{font:600 clamp(2.2rem,4vw,3rem)/1.1 var(--fs-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:6px;color:#fff}
.fs-result .big span{font-weight:300;color:var(--fs-deep-muted);font-size:.5em;letter-spacing:0}
.fs-calc .fs-btn{margin-top:20px}
.fs-calc .fine{font-size:.76rem;color:var(--fs-deep-muted);margin-top:12px}

/* ---------- integracje ---------- */
.fs-int-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,5vw,80px);align-items:center}
@media (max-width:980px){.fs-int-grid{grid-template-columns:1fr}}
.fs-int-grid h2{margin-top:16px}
.fs-int-grid .fs-lede{margin-top:18px}
.fs-int-grid .fs-btn{margin-top:30px}
.fs-checklist{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
.fs-checklist li{display:flex;gap:10px;align-items:flex-start;font-size:.97rem}
.fs-checklist li::before{content:"✓";flex:none;width:20px;height:20px;margin-top:3px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--fs-ok) 14%,transparent);color:var(--fs-ok);font-size:.7rem;font-weight:700}
.fs-stack{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width:480px){.fs-stack{grid-template-columns:1fr}}
.fs-tool{display:flex;gap:14px;align-items:center;padding:16px;border-radius:var(--fs-r);background:var(--fs-surface);border:1px solid var(--fs-line);transition:border-color .2s,transform .2s}
.fs-tool:hover{border-color:var(--fs-full-l);transform:translateY(-2px)}
.fs-tool .sq{width:42px;height:42px;border-radius:11px;flex:none;display:grid;place-items:center;font:700 .82rem var(--fs-mono);color:var(--fs-full);background:var(--fs-tint)}
.fs-tool strong{display:block;font:600 .95rem var(--fs-display)}
.fs-tool small{color:var(--fs-muted);font-size:.82rem}
.fs-tool--hub{grid-column:1/-1;background:linear-gradient(110deg,var(--fs-tint),var(--fs-surface));border-color:var(--fs-full-l)}
.fs-tool--hub .sq{background:linear-gradient(135deg,var(--fs-full),var(--fs-full2));color:#fff}

/* ---------- zespół ---------- */
/* w układach dwukolumnowych nagłówek ma mniej miejsca */
.fs-int-grid h2,.fs-team-grid h2,.fs-faq-grid h2,.fs-contact h2,.fs-ag-grid h2{font-size:clamp(1.8rem,3vw,2.35rem)}
.fs-team-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,72px)}
@media (max-width:880px){.fs-team-grid{grid-template-columns:1fr}}
.fs-team-grid h2{margin-top:16px}
.fs-story{margin-top:18px;color:var(--fs-muted)}
.fs-place{margin-top:24px;display:inline-flex;gap:10px;align-items:center;font:500 .78rem var(--fs-mono);color:var(--fs-muted);padding:8px 12px;border-radius:10px;border:1px solid var(--fs-line);background:var(--fs-surface)}
.fs-people{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media (max-width:520px){.fs-people{grid-template-columns:1fr}}
.fs-person{display:flex;gap:16px;align-items:center;padding:18px;border-radius:18px;background:var(--fs-surface);border:1px solid var(--fs-line)}
.fs-ph{width:64px;height:64px;border-radius:18px;flex:none;display:grid;place-items:center;font:600 1.15rem var(--fs-display);color:#fff;background:linear-gradient(135deg,var(--fs-full),var(--fs-full2));overflow:hidden}
.fs-ph img{width:100%;height:100%;object-fit:cover}
.fs-person:nth-child(2) .fs-ph{background:linear-gradient(135deg,var(--fs-calm),var(--fs-calm2))}
.fs-person:nth-child(3) .fs-ph{background:linear-gradient(135deg,var(--fs-custom),var(--fs-custom2))}
.fs-person:nth-child(4) .fs-ph{background:var(--fs-tint);color:var(--fs-muted)}
.fs-person strong{display:block;font:600 1rem var(--fs-display)}
.fs-person small{color:var(--fs-muted);font-size:.86rem}
.fs-reviews{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;padding:22px;border-radius:18px;background:var(--fs-surface);border:1px solid var(--fs-line)}
.fs-reviews .score{text-align:center;padding-right:20px;border-right:1px solid var(--fs-line)}
.fs-reviews .score b{display:block;font:600 2rem/1 var(--fs-display)}
.fs-reviews .stars{color:var(--fs-star);letter-spacing:2px}
.fs-reviews .score small{display:block;font:500 .68rem var(--fs-mono);color:var(--fs-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:4px}
.fs-reviews blockquote{margin:0;font-size:.95rem;color:var(--fs-ink)}
.fs-reviews cite{display:block;margin-top:6px;font-style:normal;font-size:.84rem;color:var(--fs-muted)}
.fs-todo{font:500 .72rem var(--fs-mono);padding:2px 7px;border-radius:5px;background:#FFF3E6;color:#B0500C;white-space:nowrap}

/* ---------- FAQ ---------- */
.fs-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,5vw,80px);align-items:start}
@media (max-width:880px){.fs-faq-grid{grid-template-columns:1fr}}
.fs-faq-grid h2{margin-top:16px}
.fs-faq{display:grid;gap:10px}
.fs-faq details{border-radius:14px;background:var(--fs-surface);border:1px solid var(--fs-line);transition:border-color .2s}
.fs-faq details[open]{border-color:var(--fs-full-l)}
.fs-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 20px;font:600 1rem var(--fs-display);letter-spacing:-.01em}
.fs-faq summary::-webkit-details-marker{display:none}
.fs-faq summary::after{content:"+";flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--fs-tint);color:var(--fs-full);font:500 1.1rem var(--fs-mono);transition:transform .2s}
.fs-faq details[open] summary::after{transform:rotate(45deg)}
.fs-faq details p{padding:0 20px 20px;color:var(--fs-muted);font-size:.95rem}

/* ---------- kariera ---------- */
.fs-career{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center;padding:clamp(26px,4vw,40px);border-radius:24px;background:linear-gradient(110deg,var(--fs-tint),var(--fs-surface));border:1px solid var(--fs-line)}
.fs-career h3{font-size:clamp(1.25rem,2.4vw,1.55rem);margin-top:12px}
.fs-career p{color:var(--fs-muted);margin-top:6px;max-width:62ch}
.fs-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.fs-tag{font:500 .72rem var(--fs-mono);padding:5px 10px;border-radius:6px;background:var(--fs-surface);border:1px solid var(--fs-line);color:var(--fs-muted)}

/* ---------- kontakt ---------- */
.fs-contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,5vw,80px)}
@media (max-width:920px){.fs-contact{grid-template-columns:1fr}}
.fs-contact h2{margin-top:16px}
.fs-cinfo{display:grid;gap:12px;margin-top:32px}
.fs-cinfo a{display:block;padding:16px 18px;border-radius:14px;background:var(--fs-surface);border:1px solid var(--fs-line);text-decoration:none;transition:border-color .2s}
.fs-cinfo a:hover{border-color:var(--fs-full-l)}
.fs-cinfo span{display:block;font:500 .68rem var(--fs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fs-muted)}
.fs-cinfo strong{font:600 1.08rem var(--fs-display)}
.fs-sla{display:flex;gap:10px;align-items:center;margin-top:20px;color:var(--fs-muted);font-size:.9rem}
.fs-sla::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--fs-ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--fs-ok) 18%,transparent)}
.fs-form{display:grid;gap:18px;padding:clamp(22px,3.5vw,34px);border-radius:24px;background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow)}
.fs-form fieldset{border:0;padding:0;margin:0}
.fs-form legend{font-weight:600;font-size:.92rem;margin-bottom:10px}
.fs-topics{display:flex;flex-wrap:wrap;gap:8px}
.fs-topics input{position:absolute;opacity:0;pointer-events:none}
.fs-topics label{display:inline-flex;gap:8px;align-items:center;padding:9px 14px;border-radius:999px;border:1px solid var(--fs-line);font:500 .88rem var(--fs-body);cursor:pointer;transition:all .15s;background:var(--fs-paper)}
.fs-topics label::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c,var(--fs-full2))}
.fs-topics input:checked+label{border-color:var(--c,var(--fs-full2));background:color-mix(in srgb,var(--c,var(--fs-full2)) 11%,var(--fs-surface));font-weight:600}
.fs-topics input:focus-visible+label{outline:2.5px solid var(--fs-full2);outline-offset:2px}
.fs-t-custom{--c:var(--fs-custom)}.fs-t-calm{--c:var(--fs-calm)}
.fs-route{font:500 .76rem var(--fs-mono);color:var(--fs-muted);margin-top:10px}
.fs-frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.fs-frow{grid-template-columns:1fr}}
.fs-fl{display:grid;gap:6px;font-weight:600;font-size:.9rem}
.fs-fl input,.fs-fl textarea{font:inherit;font-weight:400;color:var(--fs-ink);background:var(--fs-paper);border:1px solid var(--fs-line);border-radius:12px;padding:13px 14px;width:100%;transition:border-color .15s,box-shadow .15s}
.fs-fl input:focus,.fs-fl textarea:focus{outline:none;border-color:var(--fs-full2);box-shadow:0 0 0 4px color-mix(in srgb,var(--fs-full2) 16%,transparent)}
.fs-fl textarea{min-height:120px;resize:vertical}
.fs-consent{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;color:var(--fs-muted)}
.fs-consent input{margin-top:3px;accent-color:var(--fs-full)}

/* ---------- CTA przed stopką ---------- */
.fs-cta{border-radius:28px;padding:clamp(32px,5vw,56px);display:grid;grid-template-columns:1.2fr auto;gap:28px;align-items:center}
.fs-cta h2{font-size:clamp(1.6rem,3vw,2.3rem)}
.fs-cta .fs-lede{margin-top:12px}
.fs-cta .acts{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:880px){.fs-cta{grid-template-columns:1fr}}

/* ---------- stopka ---------- */
.fs-footer{background:var(--fs-deep-2);color:var(--fs-deep-muted);font-size:.9rem;padding-block:72px 40px}
.fs-foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
@media (max-width:880px){.fs-foot{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.fs-foot{grid-template-columns:1fr}}
.fs-foot h4{font:500 .72rem var(--fs-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fs-deep-ink);margin:0 0 16px}
.fs-foot ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.fs-foot a{text-decoration:none;transition:color .15s}
.fs-foot a:hover{color:#fff}
.fs-foot .fs-logo{font-size:1.6rem;margin-bottom:16px}
.fs-social{display:flex;gap:8px;margin-top:20px}
.fs-social a{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--fs-deep-line);background:rgba(255,255,255,.03)}
.fs-legal{margin-top:56px;padding-top:24px;border-top:1px solid var(--fs-deep-line);display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;font-size:.82rem}
.fs-legal nav{display:flex;gap:20px}
.fs-fill{font-family:var(--fs-mono);font-size:.8em;padding:1px 6px;border-radius:4px;background:rgba(255,255,255,.07);color:#C9A4FF}

/* ---------- hero: trzecia ścieżka i makieta CRM ---------- */
.fs-path--full:hover{border-color:#B57BFF}
.fs-path--full .fs-ic{background:linear-gradient(135deg,var(--fs-full),var(--fs-full2))}
.fs-path--full .fs-go{color:#C9A4FF}
.fs-tab[data-k="apps"]{--c:#B57BFF}
.fs-tab[data-k="link"]{--c:#3CCB8A}
.fs-crm-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.fs-crm-head strong{font:600 1rem var(--fs-display)}
.fs-crm-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fs-crm-col{background:var(--fs-tint);border-radius:12px;padding:10px;display:grid;gap:8px;align-content:start}
.fs-crm-col>span{display:flex;justify-content:space-between;font:500 .68rem var(--fs-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fs-muted)}
.fs-crm-card{background:var(--fs-surface);border:1px solid var(--fs-line);border-radius:9px;padding:8px 10px;display:grid;gap:2px}
.fs-crm-card b{font:600 .8rem var(--fs-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fs-crm-card small{font:500 .7rem var(--fs-mono);color:var(--fs-muted)}
.fs-crm-card i{height:4px;border-radius:2px;background:var(--fs-line);margin-top:4px;overflow:hidden}
.fs-crm-card i::before{content:"";display:block;height:100%;width:var(--w,50%);background:linear-gradient(90deg,var(--fs-full),var(--fs-full2))}
.fs-crm-col--won .fs-crm-card{border-color:color-mix(in srgb,var(--fs-ok) 40%,var(--fs-line))}
.fs-crm-col--won .fs-crm-card small{color:var(--fs-ok)}

/* ---------- aplikacje ---------- */
.fs-apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:980px){.fs-apps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.fs-apps{grid-template-columns:minmax(0,1fr)}}
.fs-app{display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:var(--fs-r-lg);background:var(--fs-surface);border:1px solid var(--fs-line);transition:transform .2s,border-color .2s}
.fs-app:hover{transform:translateY(-3px);border-color:var(--fs-full-l)}
.fs-app--wide{grid-column:span 2}
@media (max-width:640px){.fs-app--wide{grid-column:auto}}
.fs-app .tag{align-self:flex-start;font:500 .68rem var(--fs-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fs-full);background:var(--fs-tint);padding:5px 9px;border-radius:6px}
.fs-app h3{font-size:1.15rem}
.fs-app p{color:var(--fs-muted);font-size:.93rem;line-height:1.55}
.fs-app .viz{margin-top:auto;border-radius:14px;background:var(--fs-paper);border:1px solid var(--fs-line);padding:14px}
.fs-app--wide .viz{padding:12px}
.fs-viz-bars{display:flex;align-items:flex-end;gap:6px;height:64px}
.fs-viz-bars i{flex:1;border-radius:5px 5px 2px 2px;background:color-mix(in srgb,var(--fs-full2) 30%,var(--fs-tint));height:var(--h)}
.fs-viz-bars i.on{background:linear-gradient(180deg,var(--fs-full2),var(--fs-full))}
.fs-viz-cap{display:flex;justify-content:space-between;margin-top:8px;font:500 .68rem var(--fs-mono);color:var(--fs-muted)}
.fs-viz-rows{display:grid;gap:10px}
.fs-viz-rows div{display:grid;gap:5px;font:500 .74rem var(--fs-body)}
.fs-viz-rows div span{display:flex;justify-content:space-between}
.fs-viz-rows div span b{font:500 .7rem var(--fs-mono);color:var(--fs-muted)}
.fs-viz-rows i{height:6px;border-radius:3px;background:var(--fs-line);overflow:hidden}
.fs-viz-rows i::before{content:"";display:block;height:100%;width:var(--w);background:var(--c,var(--fs-full2));border-radius:3px}
.fs-viz-donut{display:flex;gap:16px;align-items:center}
.fs-donut{flex:none;width:66px;height:66px;border-radius:50%;background:conic-gradient(var(--fs-full) 0 38%,var(--fs-calm2) 0 62%,var(--fs-custom2) 0 80%,var(--fs-line) 0);position:relative}
.fs-donut::after{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--fs-paper)}
.fs-viz-donut ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;font:500 .74rem var(--fs-body)}
.fs-viz-donut li{display:flex;gap:8px;align-items:center}
.fs-viz-donut li::before{content:"";width:8px;height:8px;border-radius:3px;background:var(--c)}
.fs-app--ai{background:linear-gradient(150deg,var(--fs-deep),#24124A);border-color:transparent;color:var(--fs-deep-ink)}
.fs-app--ai .tag{background:rgba(181,123,255,.16);color:#C9A4FF}
.fs-app--ai p{color:var(--fs-deep-muted)}
.fs-app--ai .chips{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}
.fs-app--ai .chips span{font:500 .74rem var(--fs-mono);padding:6px 10px;border-radius:8px;border:1px solid var(--fs-deep-line);background:rgba(255,255,255,.04)}
.fs-apps-cta{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between;margin-top:28px;padding:22px 26px;border-radius:var(--fs-r-lg);border:1px dashed var(--fs-full-l);background:var(--fs-tint)}
.fs-apps-cta p{font:600 1.05rem var(--fs-display);letter-spacing:-.01em}
.fs-apps-cta p span{display:block;font:400 .92rem var(--fs-body);color:var(--fs-muted);letter-spacing:0;margin-top:2px}

/* ---------- kalkulator partnerski ---------- */
.fs-calc-rows{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:8px}
.fs-calc-rows li{display:grid;grid-template-columns:1fr auto 92px;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid var(--fs-deep-line);background:rgba(255,255,255,.03)}
.fs-calc-rows strong{display:block;font:600 .92rem var(--fs-display);color:#fff}
.fs-calc-rows small{color:var(--fs-deep-muted);font-size:.8rem}
.fs-calc-rows .amt{text-align:right;font:600 .92rem var(--fs-display);color:#C9A4FF;font-variant-numeric:tabular-nums}
.fs-calc-rows li.is-zero .amt{color:var(--fs-deep-muted);font-weight:400}
.fs-step{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--fs-deep-line);border-radius:10px;padding:3px}
.fs-step output{min-width:22px;text-align:center;font:600 .95rem var(--fs-display);color:#fff;font-variant-numeric:tabular-nums}
body.fs button.fs-stepbtn{width:28px;height:28px;padding:0;border:0;border-radius:7px;background:rgba(255,255,255,.08);color:#fff;font:600 1rem/1 var(--fs-display);cursor:pointer;display:grid;place-items:center}
body.fs button.fs-stepbtn:hover,body.fs button.fs-stepbtn:focus{background:rgba(181,123,255,.35);color:#fff}
@media (max-width:420px){.fs-calc-rows li{grid-template-columns:1fr auto}.fs-calc-rows .amt{grid-column:1/-1;text-align:left}}
.fs-recur{margin-top:8px;font-size:.9rem;color:var(--fs-deep-ink)}
.fs-recur b{color:#C9A4FF;font-weight:600}
.fs-calc-acts{display:grid;gap:10px;margin-top:20px}
.fs-calc .fine a{color:#C9A4FF}
.fs-ceo-mini{display:flex;gap:14px;align-items:center;margin-top:28px;padding:14px 16px;border-radius:14px;border:1px solid var(--fs-deep-line);background:var(--fs-deep-card);max-width:460px}
.fs-ceo-mini img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:none}
.fs-ceo-mini strong{display:block;font:600 .95rem var(--fs-display);color:#fff}
.fs-ceo-mini span{font-size:.86rem;color:var(--fs-deep-muted)}

/* ---------- O firmie: karta CEO ---------- */
.fs-founder{grid-column:1/-1;display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center;padding:16px;border-radius:var(--fs-r-lg);background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow)}
.fs-founder img{width:200px;height:250px;object-fit:cover;border-radius:14px}
.fs-founder .role{font:500 .7rem var(--fs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fs-full)}
.fs-founder h3{font-size:1.4rem;margin-top:6px}
.fs-founder p{margin-top:10px;color:var(--fs-muted);font-size:.95rem}
.fs-founder .brands{display:flex;gap:16px;margin-top:14px;font-size:1.05rem}
@media (max-width:560px){.fs-founder{grid-template-columns:1fr}.fs-founder img{width:100%;height:300px;object-position:50% 20%}}
.fs-people--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:760px){.fs-people--3{grid-template-columns:1fr}}
.fs-people--3 .fs-person{flex-direction:column;align-items:flex-start;gap:12px}
.fs-people--3 .fs-ph{width:48px;height:48px;border-radius:14px;font-size:1rem}
.fs-people--3 .fs-person:nth-child(1) .fs-ph{background:linear-gradient(135deg,var(--fs-calm),var(--fs-calm2))}
.fs-people--3 .fs-person:nth-child(2) .fs-ph{background:linear-gradient(135deg,var(--fs-custom),var(--fs-custom2))}
.fs-people--3 .fs-person:nth-child(3) .fs-ph{background:var(--fs-tint);color:var(--fs-muted)}

/* ---------- opinie z Google: dwie marki obok siebie ---------- */
.fs-revs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:880px){.fs-revs{grid-template-columns:1fr}}
.fs-rev-col{padding:24px;border-radius:var(--fs-r-lg);background:var(--fs-surface);border:1px solid var(--fs-line);display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden}
.fs-rev-col::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--g1),var(--g2))}
.fs-rev-col--calm{--g1:var(--fs-calm);--g2:var(--fs-calm2)}
.fs-rev-col--custom{--g1:var(--fs-custom);--g2:var(--fs-custom2)}
.fs-rev-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:6px}
.fs-rev-head .fs-logo{font-size:1.5rem}
.fs-rev-score{display:flex;align-items:center;gap:10px}
.fs-rev-score b{font:600 1.6rem/1 var(--fs-display)}
.fs-rev-score span{display:grid;line-height:1.2}
.fs-rev-score .stars{color:var(--fs-star);letter-spacing:1px;font-size:.9rem}
.fs-rev-score small{font:500 .68rem var(--fs-mono);color:var(--fs-muted);text-transform:uppercase;letter-spacing:.06em}
.fs-rev{margin:0;padding:16px;border-radius:14px;background:var(--fs-paper);border:1px solid var(--fs-line)}
.fs-rev .stars{color:var(--fs-star);letter-spacing:1px;font-size:.8rem}
.fs-rev blockquote{margin:6px 0 0;font-size:.93rem;line-height:1.55;color:var(--fs-ink)}
.fs-rev figcaption{font-style:normal;margin-top:10px;display:flex;align-items:center;gap:8px;font-size:.84rem;color:var(--fs-muted)}
.fs-rev figcaption b{color:var(--fs-ink);font-weight:600}
.fs-rev figcaption i{font-style:normal;font:500 .66rem var(--fs-mono);padding:2px 6px;border-radius:5px;background:var(--fs-tint);color:var(--fs-muted)}
.fs-rev-col>a{margin-top:auto;align-self:flex-start;font:600 .88rem var(--fs-display);color:var(--g1)!important}

/* ---------- kontakt: kto odpowiada ---------- */
.fs-who{display:flex;gap:14px;align-items:center;margin-top:24px}
.fs-who img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 3px var(--fs-surface),0 0 0 4px var(--fs-line)}
.fs-who strong{display:block;font:600 .98rem var(--fs-display)}
.fs-who span{font-size:.88rem;color:var(--fs-muted)}

/* ---------- animacje wejścia (tylko gdy działa JS) ---------- */
.fs-js .fs-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.fs-js .fs-reveal.is-in{opacity:1;transform:none}

/* ---------- Elementor: przejściówka ----------
   Każda sekcja to kontener .fs-el z jednym widżetem HTML; kontener nie dokłada odstępów. */
body.fs .fs-el.e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--widgets-spacing:0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px}
body.fs .fs-el .elementor-widget{margin-block-end:0}
body.fs .fs-el .elementor-widget-html{width:100%}
/* przyciski <button> nadpisują reset Hello (button:hover na różowo) */
body.fs button.fs-tab{border:0;border-radius:10px;padding:9px 14px;font:600 .85rem var(--fs-display);background:transparent;color:var(--fs-deep-muted);transition:none}
body.fs button.fs-tab:hover,body.fs button.fs-tab:focus{background:rgba(255,255,255,.06);color:#fff}
body.fs button.fs-tab[aria-selected="true"]{background:rgba(255,255,255,.1);color:#fff}
body.fs button.fs-burger{padding:0;border:1px solid var(--fs-deep-line);border-radius:10px;background:rgba(255,255,255,.04);color:#fff}
body.fs button.fs-burger:hover,body.fs button.fs-burger:focus{background:rgba(255,255,255,.1);color:#fff}
/* sekcja kontaktu: kontener z siatką, po lewej HTML, po prawej formularz Elementor Pro */
body.fs .fs-contact-sec.e-con{--padding-bottom:clamp(72px,9vw,120px)}
body.fs .fs-contact.e-con{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,5vw,80px);width:100%;max-width:var(--fs-wrap);margin-inline:auto;--padding-left:20px;--padding-right:20px;--padding-top:0px;--padding-bottom:0px}
body.fs .fs-contact.e-con>.elementor-widget{margin:0;width:auto;min-width:0}
@media (max-width:920px){body.fs .fs-contact.e-con{grid-template-columns:1fr}}

/* formularz Elementor Pro w stylu .fs-form */
body.fs .fs-form-w{padding:clamp(22px,3.5vw,34px);border-radius:24px;background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow)}
body.fs .fs-form-w .elementor-field-label{display:block;font:600 .9rem/1.4 var(--fs-body);color:var(--fs-ink);margin-bottom:6px}
body.fs .fs-form-w .elementor-field-group-topic>.elementor-field-label{margin-bottom:10px}
/* !important: style formularza w pliku CSS strony Elementora mają bardzo wysoką specyficzność */
body.fs .fs-form-w .elementor-field-group .elementor-field-textual{font:400 1rem/1.4 var(--fs-body);color:var(--fs-ink);background:var(--fs-paper)!important;border:1px solid var(--fs-line)!important;border-radius:12px;padding:13px 14px;min-height:0;box-shadow:none;transition:border-color .15s,box-shadow .15s}
body.fs .fs-form-w .elementor-field-group .elementor-field-textual:focus{outline:none;border-color:var(--fs-full2)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--fs-full2) 16%,transparent)}
body.fs .fs-form-w textarea.elementor-field-textual{min-height:120px;resize:vertical}
body.fs .fs-form-w .elementor-field-type-radio .elementor-field-subgroup{display:flex;flex-wrap:wrap;gap:8px}
body.fs .fs-form-w .elementor-field-type-radio .elementor-field-option{position:relative;margin:0;padding:0}
body.fs .fs-form-w .elementor-field-type-radio input{position:absolute;opacity:0;pointer-events:none}
body.fs .fs-form-w .elementor-field-type-radio .elementor-field-option label{display:inline-flex;gap:8px;align-items:center;padding:9px 14px;border-radius:999px;border:1px solid var(--fs-line);font:500 .88rem/1.2 var(--fs-body);color:var(--fs-ink);background:var(--fs-paper);cursor:pointer;transition:all .15s}
body.fs .fs-form-w .elementor-field-type-radio .elementor-field-option label::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c,var(--fs-full2))}
body.fs .fs-form-w .elementor-field-type-radio .elementor-field-option:nth-child(1){--c:var(--fs-calm)}
body.fs .fs-form-w .elementor-field-type-radio .elementor-field-option:nth-child(2){--c:var(--fs-custom)}
body.fs .fs-form-w .elementor-field-type-radio input:checked+label{border-color:var(--c,var(--fs-full2));background:color-mix(in srgb,var(--c,var(--fs-full2)) 11%,var(--fs-surface));font-weight:600}
body.fs .fs-form-w .elementor-field-type-radio input:focus-visible+label{outline:2.5px solid var(--fs-full2);outline-offset:2px}
body.fs .fs-form-w .elementor-field-type-acceptance .elementor-field-option{display:flex;gap:10px;align-items:flex-start}
body.fs .fs-form-w .elementor-field-type-acceptance input{margin-top:3px;accent-color:var(--fs-full)}
body.fs .fs-form-w .elementor-field-type-acceptance label{font:400 .8rem/1.5 var(--fs-body);color:var(--fs-muted)}
body.fs .fs-form-w .elementor-field-type-submit .elementor-button{width:100%;display:inline-flex;justify-content:center;padding:14px 22px;border:0;border-radius:12px;font:600 .96rem/1.2 var(--fs-display);color:#fff;background:linear-gradient(95deg,var(--fs-full),var(--fs-full2));box-shadow:0 10px 26px -10px var(--fs-full2);transition:transform .15s}
body.fs .fs-form-w .elementor-field-type-submit .elementor-button:hover{transform:translateY(-2px);color:#fff}
body.fs .fs-form-w .elementor-message{font-size:.92rem;font-weight:600}
body.fs .fs-form-w .elementor-message-success{color:var(--fs-ok)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
  .fs-js .fs-reveal{opacity:1;transform:none}
}
