/* ================================================================
   STRONA GLOWNA - warstwa "home" na ai-neural.css + chatgpt-ads-neural.css

   <main> ma klasy: neural-page neural-page--gptads neural-page--home,
   wiec dziedziczy cala irydescentna palete i komponenty landingu
   "Reklama w ChatGPT" (gpt-*, ncontact, itmarq, sh-progress). Ten plik
   dodaje tylko to, co swoiste dla strony glownej: nizsze hero, pulpit
   klienta (hmos), orbite, karty uslug, o nas, marquee logotypow,
   portfolio, opinie, dashboard wynikow (rb).
   ================================================================ */

/* ── HERO: nizsze, zeby pod nim bylo widac marquee ─────────────── */
.hm-hero{padding:4.6rem 0 1.6rem}
/* plazma stonowana jak na landingu ChatGPT Ads: ciemny granat/fiolet, nie tecza */
.hm-hero .gpt-hero__plasma{opacity:.34;filter:saturate(.8) brightness(.85)}
.hm-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,transparent 30%,rgba(5,5,8,.55) 100%)}
.neural-page--home .nhero__inner{align-items:center;gap:40px}
.neural-page--home .nhero__title{font-size:clamp(1.7rem,2.7vw,2.4rem);margin-bottom:14px}
.neural-page--home .nhero__subtitle{font-size:.94rem;max-width:560px;margin-bottom:14px}
.neural-page--home .gpt-hero__features{gap:.45rem;margin-bottom:1.4rem;font-size:.9rem}
.neural-page--home .gpt-hero__feature strong{color:#fff;font-weight:700}
.neural-page--home .nhero__trust{margin-top:14px}
.neural-page--home .nhero__eyebrow i{color:#F0ABFC;margin-right:.25rem}
.hm-counters{grid-template-columns:repeat(4,1fr);margin-top:1rem}
.neural-page--home .gpt-hero__counter{padding:.9rem 1rem 1rem}
.neural-page--home .gpt-hero__counter-val{font-size:1.6rem}
.gpt-hero__counter:nth-child(4){--cc:#6EE7B7;--cc2:#A7F3D0}
@media(max-width:900px){.hm-counters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.hm-counters{grid-template-columns:1fr}}

/* orbita neuronowa za pulpitem */
.hm-hero__right{position:relative;min-height:340px;display:flex;align-items:center;justify-content:flex-end}
.hm-orbit{position:absolute;inset:-60px -40px;width:calc(100% + 80px);height:calc(100% + 120px);z-index:0;pointer-events:none;opacity:.95}
@media(max-width:1080px){.hm-hero__right{justify-content:center;min-height:0}}

/* ── PULPIT KLIENTA (hmos) - gwiazda hero ─────────────────────── */
.hmos{
	position:relative;z-index:2;width:100%;max-width:560px;
	background:linear-gradient(180deg,rgba(18,18,22,.985),rgba(8,8,11,.985));
	border:1px solid rgba(255,255,255,.12);border-radius:22px;overflow:hidden;
	box-shadow:0 48px 100px -36px rgba(167,139,250,.45),inset 0 1px 0 rgba(255,255,255,.06);
	font-family:var(--font-body);
}
.hmos>*:not(.gptchat__glow){position:relative;z-index:1}
.hmos__bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.hmos__dots{display:inline-flex;gap:6px}
.hmos__dots i{width:9px;height:9px;border-radius:50%;background:#F0ABFC;opacity:.85}
.hmos__dots i:nth-child(2){background:#A78BFA}.hmos__dots i:nth-child(3){background:#67E8F9}
.hmos__title{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.hmos__live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.56rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#A7F3D0;background:rgba(16,163,127,.16);border:1px solid rgba(16,163,127,.42);border-radius:999px;padding:3px 9px}
.hmos__live i{width:6px;height:6px;border-radius:50%;background:#6EE7B7;box-shadow:0 0 0 0 rgba(110,231,183,.7);animation:rbPulse 1.6s ease-out infinite}
.hmos__tabs{display:flex;gap:6px;padding:10px 12px 0}
.hmos__tab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 6px;border-radius:10px;border:1px solid transparent;background:transparent;color:rgba(255,255,255,.5);font:600 .74rem/1 var(--font-body);cursor:pointer;transition:all .25s}
.hmos__tab i{font-size:.72rem}
.hmos__tab:hover{color:#fff;background:rgba(255,255,255,.05)}
.hmos__tab.is-on{color:#08080A;background:var(--sh-grad);border-color:transparent;box-shadow:0 8px 20px -10px rgba(167,139,250,.8)}
.hmos__body{display:grid;grid-template-columns:1fr 150px;gap:12px;padding:14px 12px 14px}
.hmos__log{display:flex;flex-direction:column;gap:5px;min-height:208px}
.hmos__line{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);
	font-size:.76rem;line-height:1.35;color:rgba(255,255,255,.86);opacity:0;transform:translateY(8px) scale(.98);transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1)}
.hmos__line.is-in{opacity:1;transform:none}
.hmos__line i{font-size:.74rem;color:#C4B5FD;text-align:center}
.hmos__line b{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.06em;padding:2px 7px;border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.55)}
.hmos__line--ok b{background:rgba(110,231,183,.16);color:#6EE7B7}
.hmos__line--run b{background:rgba(103,232,249,.16);color:#67E8F9;animation:hmBlink 1s steps(2) infinite}
.hmos__line--cmd{font-family:var(--font-mono);font-size:.7rem;color:#F5D0FE}
.hmos__line--cmd b{background:rgba(240,171,252,.16);color:#F0ABFC}
.hmos__line--info b{background:rgba(167,139,250,.18);color:#C4B5FD}
@keyframes hmBlink{50%{opacity:.35}}
.hmos__side{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}
.hmos__kpi{display:flex;flex-direction:column}
.hmos__kpi-val{font-family:var(--font-mono);font-weight:800;font-size:2rem;line-height:1;letter-spacing:-.03em;background:var(--sh-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline}
.hmos__kpi-sub{font-family:var(--font-mono);font-weight:700;font-size:.9rem;color:#C4B5FD;margin-left:2px}
.hmos__kpi-lbl{font-size:.68rem;line-height:1.35;color:rgba(255,255,255,.6);margin-top:4px}
.hmos__bar-chart{display:flex;align-items:flex-end;gap:5px;height:54px;margin-top:auto}
.hmos__bar{flex:1;height:100%;border-radius:4px 4px 2px 2px;background:rgba(255,255,255,.05);position:relative;overflow:hidden}
.hmos__bar i{position:absolute;inset:0;transform-origin:bottom;transform:scaleY(.3);background:linear-gradient(180deg,#67E8F9,#A78BFA);transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.hmos__bar:nth-child(2) i{transition-delay:.08s}.hmos__bar:nth-child(3) i{transition-delay:.16s}.hmos__bar:nth-child(4) i{transition-delay:.24s}.hmos__bar:nth-child(5) i{transition-delay:.32s}.hmos__bar:nth-child(6) i{transition-delay:.4s;background:linear-gradient(180deg,#F0ABFC,#A78BFA)}
.hmos__status{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.45);line-height:1.4}
@media(max-width:560px){.hmos__body{grid-template-columns:1fr}.hmos__side{flex-direction:row;align-items:center}.hmos__bar-chart{width:90px}.hmos__status{display:none}.hmos__log{min-height:0}}

/* ── Dryfujace pigulki: ikonografia uslug ───────────────────────── */
.neural-page--home .gpt-drifter{font-family:var(--font-body);font-weight:600;letter-spacing:0;font-size:.72rem}

/* ── Naglowki wysrodkowane (Technologie) ────────────────────────── */
.sec-head--center{margin-left:auto;margin-right:auto;text-align:center}

/* ── Blok definicyjny (GEO/AEO) ─────────────────────────────────── */
.hm-def{max-width:900px;margin:-24px 0 44px;padding:24px 28px;border-radius:18px;background:#fff;border:1px solid var(--line-l);position:relative;overflow:hidden;box-shadow:0 24px 54px -34px rgba(167,139,250,.35)}
.hm-def::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--sh-grad)}
.hm-def__k{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6D28D9;margin-bottom:10px}
.hm-def__k i{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--sh-grad);color:#08080A;font-size:.6rem}
.hm-def p{font-size:1rem;line-height:1.72;color:var(--muted-l);margin:0}
.hm-def strong{color:var(--ink)}
.hm-def a{color:#6D28D9;font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* ── USLUGI - 12 kart (11 + CTA) ────────────────────────────────── */
.hm-svcs{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:1100px){.hm-svcs{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.hm-svcs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.hm-svcs{grid-template-columns:1fr}}
.hm-svc{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line-l);border-radius:18px;padding:24px 22px 20px;text-decoration:none;color:inherit;overflow:hidden;isolation:isolate;
	transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,border-color .35s}
.hm-svc::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--sh-grad);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.hm-svc::after{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .35s;pointer-events:none;background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(167,139,250,.14),rgba(103,232,249,.07) 40%,transparent 65%)}
.hm-svc:hover{transform:translateY(-6px);border-color:rgba(167,139,250,.5);box-shadow:0 28px 56px -28px rgba(167,139,250,.45)}
.hm-svc:hover::before{transform:scaleX(1)}
.hm-svc:hover::after{opacity:1}
.hm-svc__n{position:absolute;top:14px;right:16px;font-family:var(--font-mono);font-size:.62rem;font-weight:700;color:var(--dim-l)}
.hm-svc__new{position:absolute;top:12px;right:44px;font-family:var(--font-mono);font-size:.52rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#08080A;background:var(--sh-grad);padding:3px 8px;border-radius:999px}
.hm-svc__ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#08080A;font-size:1.05rem;background:var(--sh-grad);margin-bottom:14px;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.hm-svc:hover .hm-svc__ic{transform:rotate(-6deg) scale(1.06)}
.hm-svc h3{font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:var(--ink);margin:0 0 8px;line-height:1.3}
.hm-svc p{font-size:.86rem;line-height:1.6;color:var(--muted-l);margin:0 0 14px}
.hm-svc__tags{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.hm-svc__tags li{font-family:var(--font-mono);font-size:.58rem;font-weight:600;letter-spacing:.04em;padding:4px 9px;border-radius:999px;background:#F1F5F9;color:#64748B;border:1px solid #E2E8F0}
.hm-svc__foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;border-top:1px dashed var(--line-l)}
.hm-svc__price{font-family:var(--font-display);font-weight:700;font-size:.9rem;background:linear-gradient(120deg,#C026D3,#7C3AED 45%,#0891B2 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hm-svc__go{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#6D28D9}
.hm-svc__go i{transition:transform .3s}
.hm-svc:hover .hm-svc__go i{transform:translateX(4px)}
.hm-svc--cta{background:linear-gradient(160deg,#0C0C12,#1A1030);border-color:rgba(167,139,250,.35);color:#fff}
.hm-svc--cta h3{color:#fff}.hm-svc--cta p{color:rgba(255,255,255,.7)}
.hm-svc--cta .hm-svc__foot{border-top-color:rgba(255,255,255,.12)}
.hm-svc--cta .hm-svc__go{color:#C4B5FD}

/* ── DLACZEGO - numeracja na kartach gpt-trust ──────────────────── */
.hm-why{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.hm-why{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hm-why{grid-template-columns:1fr}}
.hm-why__n{position:absolute;top:14px;right:18px;font-family:var(--font-mono);font-size:.62rem;font-weight:700;color:transparent;background:var(--sh-grad);-webkit-background-clip:text;background-clip:text}

/* ── O NAS + dotacje ────────────────────────────────────────────── */
.hm-about{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;margin-top:48px;align-items:stretch}
@media(max-width:900px){.hm-about{grid-template-columns:1fr}}
.hm-about__text{background:#fff;border:1px solid var(--line-l);border-radius:20px;padding:30px 30px}
.hm-about__text h3{font-family:var(--font-display);font-weight:700;font-size:1.3rem;color:var(--ink);margin:0 0 14px}
.hm-about__text p{font-size:.96rem;line-height:1.75;color:var(--muted-l);margin:0 0 14px}
.hm-about__text p:last-child{margin:0}
.hm-about__text a{color:#6D28D9;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.hm-about__dot{position:relative;overflow:hidden;border-radius:20px;padding:30px 28px;color:#fff;background:linear-gradient(160deg,#0C0C12,#160F2A 60%,#0C1A22);border:1px solid rgba(167,139,250,.35);display:flex;flex-direction:column;gap:12px}
.hm-about__dot::after{content:"";position:absolute;width:260px;height:260px;right:-90px;bottom:-110px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.35),transparent 70%);filter:blur(30px)}
.hm-about__dot-ic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--sh-grad);color:#08080A;font-size:1.1rem}
.hm-about__dot h4{font-family:var(--font-display);font-weight:700;font-size:1.25rem;margin:0;line-height:1.3;color:#fff}
.hm-about__dot p{font-size:.9rem;line-height:1.6;color:rgba(255,255,255,.7);margin:0 0 6px}
.hm-about__dot .btn-outline{align-self:flex-start;position:relative;z-index:1}

/* ── TECHNOLOGIE - marquee logotypow ────────────────────────────── */
.hm-logos{padding-bottom:90px}
.hm-logos .sec-head{margin-bottom:40px}
.hm-logos__row{position:relative;overflow:hidden;padding:12px 0;z-index:2;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.hm-logos__track{display:flex;gap:18px;width:max-content;animation:hmMarq 46s linear infinite}
.hm-logos__row--rev .hm-logos__track{animation-direction:reverse;animation-duration:54s}
.hm-logos__row:hover .hm-logos__track{animation-play-state:paused}
@keyframes hmMarq{to{transform:translateX(-50%)}}
.hm-logo{display:flex;align-items:center;gap:12px;padding:14px 22px;border-radius:14px;flex-shrink:0;background:rgba(255,255,255,.04);border:1px solid rgba(167,139,250,.2);transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,background .35s,box-shadow .35s}
.hm-logo img{width:28px;height:28px;display:block;filter:invert(1);opacity:.65;transition:opacity .35s,filter .35s,transform .35s}
.hm-logo span{font-family:var(--font-display);font-weight:600;font-size:.92rem;color:rgba(255,255,255,.72);white-space:nowrap;transition:color .35s}
.hm-logo:hover{transform:translateY(-4px);border-color:rgba(103,232,249,.6);background:rgba(255,255,255,.07);box-shadow:0 20px 44px -22px rgba(103,232,249,.6)}
.hm-logo:hover img{opacity:1;filter:invert(1) drop-shadow(0 0 10px rgba(103,232,249,.9));transform:scale(1.08)}
.hm-logo:hover span{color:#fff}

/* ── PROCES - czas kroku ────────────────────────────────────────── */
.neural-page--home .neural-section--light .gpt-flow__node{box-shadow:0 14px 30px -12px rgba(167,139,250,.65),0 0 0 5px #F6F7FB}
.neural-page--home .neural-section--light .gpt-flow__num{box-shadow:0 0 0 3px #F6F7FB}
.neural-page--home .neural-section--light .gpt-flow__step h3{color:var(--ink)}
.neural-page--home .neural-section--light .gpt-flow__step p{color:var(--muted-l)}
.hm-flow__time{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6D28D9;background:rgba(167,139,250,.12);border:1px solid rgba(167,139,250,.3);padding:4px 10px;border-radius:999px}

/* ── PORTFOLIO ──────────────────────────────────────────────────── */
.hm-pfs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:1000px){.hm-pfs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hm-pfs{grid-template-columns:1fr}}
.hm-pf{position:relative;display:flex;flex-direction:column;padding:24px 22px;border-radius:18px;text-decoration:none;color:inherit;overflow:hidden;isolation:isolate;
	background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid rgba(167,139,250,.2);
	transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s}
.hm-pf::after{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .35s;pointer-events:none;background:radial-gradient(380px circle at var(--mx,50%) var(--my,50%),rgba(167,139,250,.22),rgba(103,232,249,.08) 40%,transparent 65%)}
.hm-pf:hover{transform:translateY(-5px);border-color:rgba(167,139,250,.55);box-shadow:0 26px 54px -28px rgba(167,139,250,.5)}
.hm-pf:hover::after{opacity:1}
.hm-pf__badge{align-self:flex-start;font-family:var(--font-mono);font-size:.56rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#08080A;background:var(--sh-grad);padding:4px 10px;border-radius:999px;margin-bottom:14px}
.hm-pf__ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:1rem;color:#C4B5FD;background:rgba(167,139,250,.14);border:1px solid rgba(167,139,250,.3);margin-bottom:14px}
.hm-pf h3{font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:#fff;margin:0 0 8px;line-height:1.3}
.hm-pf p{font-size:.86rem;line-height:1.6;color:var(--muted-d);margin:0 0 16px}
.hm-pf__res{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.hm-pf__res span{font-size:.74rem;color:rgba(255,255,255,.7);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:6px 10px;border-radius:9px}
.hm-pf__res b{font-family:var(--font-display);color:#67E8F9;font-weight:700;margin-right:3px}
.hm-center{text-align:center;margin-top:40px}

/* karty z CPT portfolio (pf-card) - styl pod ciemna sekcje */
.hm-pfimg{margin-top:36px}
.hm-pfimg__h{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:#fff;margin:26px 0 14px}
.hm-pfimg__h i{color:#67E8F9}
.pf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(max-width:700px){.pf-grid{grid-template-columns:1fr}}
.pf-card{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid rgba(167,139,250,.2);transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s}
.pf-card:hover{transform:translateY(-5px);border-color:rgba(167,139,250,.55);box-shadow:0 26px 54px -28px rgba(167,139,250,.5)}
.pf-card__image{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0C0C12}
.pf-card__image img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.pf-card:hover .pf-card__image img{transform:scale(1.04)}
.pf-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(8,8,12,.75));display:flex;align-items:flex-end;padding:14px;color:#fff;font-size:.8rem;opacity:0;transition:opacity .35s}
.pf-card:hover .pf-card__overlay{opacity:1}
.pf-card__body{padding:20px 22px;display:flex;flex-direction:column;gap:8px}
.pf-card__header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pf-card__title{font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:#fff;margin:0}
.pf-card__client{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:#C4B5FD}
.pf-card__desc{font-size:.85rem;line-height:1.6;color:var(--muted-d);margin:0}
.pf-card__stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.pf-card__stat{font-size:.74rem;color:rgba(255,255,255,.7);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:6px 10px;border-radius:9px;display:flex;gap:5px;align-items:baseline}
.pf-card__stat-val{font-family:var(--font-display);color:#67E8F9;font-weight:700}
.pf-card__techs{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.pf-card__tech{font-family:var(--font-mono);font-size:.56rem;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:rgba(167,139,250,.14);color:#C4B5FD;border:1px solid rgba(167,139,250,.3)}
.pf-card__icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--sh-grad);color:#08080A}

/* ── OPINIE + Google ────────────────────────────────────────────── */
.hm-testis{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.hm-testis{grid-template-columns:1fr}}
.hm-testi{position:relative;background:#fff;border:1px solid var(--line-l);border-radius:20px;padding:28px 26px;display:flex;flex-direction:column;isolation:isolate;overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,border-color .35s}
.hm-testi::before{content:"\201E";position:absolute;top:-10px;right:18px;font-family:var(--font-display);font-size:7rem;line-height:1;color:transparent;background:var(--sh-grad);-webkit-background-clip:text;background-clip:text;opacity:.25;pointer-events:none}
.hm-testi::after{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .35s;pointer-events:none;background:radial-gradient(380px circle at var(--mx,50%) var(--my,50%),rgba(167,139,250,.12),transparent 60%)}
.hm-testi:hover{transform:translateY(-5px);border-color:rgba(167,139,250,.45);box-shadow:0 26px 54px -28px rgba(167,139,250,.4)}
.hm-testi:hover::after{opacity:1}
.hm-testi__stars{color:#FBBF24;font-size:.8rem;display:flex;gap:3px;margin-bottom:14px}
.hm-testi blockquote{margin:0 0 20px;font-size:.96rem;line-height:1.7;color:var(--ink-soft);font-style:italic}
.hm-testi__author{margin-top:auto;display:flex;align-items:center;gap:12px}
.hm-testi__av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--sh-grad);color:#08080A;font-size:.95rem;flex-shrink:0}
.hm-testi__author strong{display:block;font-size:.92rem;color:var(--ink)}
.hm-testi__author span{font-size:.78rem;color:var(--muted-l)}
.hm-google{margin-top:28px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--line-l);border-radius:16px;padding:18px 24px}
.hm-google__logo{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#F1F5F9;border:1px solid #E2E8F0}
.hm-google__logo svg{width:22px;height:22px}
.hm-google__stars{color:#FBBF24;display:flex;gap:3px;font-size:.9rem}
.hm-google__txt{font-size:.92rem;color:var(--muted-l)}
.hm-google__txt strong{font-family:var(--font-display);font-size:1.4rem;color:var(--ink);margin-right:8px;vertical-align:middle}
.hm-google .btn-outline{margin-left:auto}
@media(max-width:600px){.hm-google .btn-outline{margin-left:0;width:100%;justify-content:center}}

/* ── Kontakt: trzecia odznaka ───────────────────────────────────── */
.neural-page--home .ncontact__badges{gap:8px}

/* ── FAQ - akcent ───────────────────────────────────────────────── */
.neural-page--home .neural-section--faq .nfaq__item[open] .nfaq__q{color:#6D28D9}

/* ================================================================
   WYNIKI - dashboard bento ("rb")
   ================================================================ */
.rb{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:auto;gap:18px}
.rb__tile{position:relative;overflow:hidden;border-radius:22px;padding:26px 26px 22px;
	background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(167,139,250,.22);
	box-shadow:0 30px 70px -40px rgba(0,0,0,.9);transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .45s,box-shadow .45s;isolation:isolate}
.rb__tile::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .4s;pointer-events:none;
	background:radial-gradient(520px circle at var(--mx,50%) var(--my,50%),rgba(167,139,250,.22),rgba(103,232,249,.10) 35%,transparent 62%)}
.rb__tile:hover{transform:translateY(-5px);border-color:rgba(167,139,250,.55);box-shadow:0 40px 80px -36px rgba(167,139,250,.55)}
.rb__tile:hover::before{opacity:1}
.rb__tile--wide{grid-column:span 2;grid-row:span 2;display:flex;flex-direction:column}
.rb__head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.rb__k{font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55);display:inline-flex;align-items:center;gap:8px}
.rb__k i{color:#67E8F9}
.rb__pill{font-size:.66rem;font-weight:600;color:#C4B5FD;background:rgba(167,139,250,.14);border:1px solid rgba(167,139,250,.3);padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.rb__pill--live i{width:6px;height:6px;border-radius:50%;background:#67E8F9;box-shadow:0 0 0 0 rgba(103,232,249,.7);animation:rbPulse 1.8s ease-out infinite}
@keyframes rbPulse{70%{box-shadow:0 0 0 8px rgba(103,232,249,0)}100%{box-shadow:0 0 0 0 rgba(103,232,249,0)}}
.rb__big{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.rb__num{font-family:var(--font-mono);font-weight:800;font-size:clamp(1.9rem,3.2vw,2.7rem);line-height:1;letter-spacing:-.03em;background:var(--sh-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.rb__cap{color:rgba(255,255,255,.65);font-size:.88rem}
.rb__foot{margin:14px 0 0;font-size:.78rem;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.rb__chart{position:relative;flex:1 1 auto;display:flex;min-height:200px}
.rb__line{flex:1 1 auto;width:100%;height:auto;min-height:200px;display:block;overflow:visible}
.rb__grid line{stroke:rgba(167,139,250,.14);stroke-dasharray:4 6}
.rb__path{fill:none;stroke:url(#rbStroke);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1200;stroke-dashoffset:1200;filter:drop-shadow(0 0 8px rgba(167,139,250,.6))}
.rb__area{fill:url(#rbArea);opacity:0;transition:opacity 1s .9s}
.rb__dot{position:absolute;right:-6px;top:calc(9% - 6px);width:12px;height:12px;border-radius:50%;background:#67E8F9;box-shadow:0 0 14px #67E8F9,0 0 0 4px rgba(103,232,249,.18);opacity:0}
.is-run .rb__path{animation:rbDraw 2.4s cubic-bezier(.4,0,.2,1) forwards}
.is-run .rb__area{opacity:1}
.is-run .rb__dot{animation:rbDotIn .4s 2.2s forwards,rbDotBeat 1.6s 2.6s ease-in-out infinite}
@keyframes rbDraw{to{stroke-dashoffset:0}}
@keyframes rbDotIn{to{opacity:1}}
@keyframes rbDotBeat{50%{transform:scale(1.45)}}
.rb__axis{list-style:none;display:flex;justify-content:space-between;margin:8px 0 0;padding:0;font-size:.66rem;color:rgba(255,255,255,.4);font-family:var(--font-mono)}
.rb__mini{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(167,139,250,.18)}
.rb__mini div{display:flex;flex-direction:column;gap:2px}
.rb__mini b{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:#fff}
.rb__mini b span{font-size:inherit;color:inherit}
.rb__mini span{font-size:.7rem;color:rgba(255,255,255,.45);line-height:1.3}
.rb__bars{display:flex;align-items:flex-end;gap:6px;height:110px;margin-top:6px}
.rb__bars i{flex:1;height:calc(var(--v)*100%);border-radius:6px 6px 3px 3px;transform-origin:bottom;transform:scaleY(0);background:linear-gradient(180deg,#C4B5FD,#7C3AED);opacity:.8;transition:transform .9s cubic-bezier(.16,1,.3,1),opacity .4s;transition-delay:calc(var(--i,0)*70ms)}
.rb__bars i:last-child{background:linear-gradient(180deg,#67E8F9,#06B6D4);opacity:1;box-shadow:0 0 22px rgba(103,232,249,.5)}
.is-run .rb__bars i{transform:scaleY(1)}
.rb__gauge{--p:0;width:150px;height:150px;margin:6px auto 0;border-radius:50%;display:grid;place-items:center;position:relative;
	background:conic-gradient(from -120deg,#67E8F9 0,#A78BFA calc(var(--p)*240deg),rgba(167,139,250,.14) calc(var(--p)*240deg),rgba(167,139,250,.14) 240deg,transparent 240deg)}
.rb__gauge::after{content:"";position:absolute;inset:12px;border-radius:50%;background:#0B0B12}
.rb__gauge-in{position:relative;z-index:1;text-align:center;font-family:var(--font-mono)}
.rb__gauge-in strong{display:block;font-size:2.3rem;line-height:1;color:#fff;font-weight:800}
.rb__gauge-in small{font-size:.72rem;color:rgba(255,255,255,.45)}
.rb__vs{display:grid;gap:12px;margin-top:8px}
.rb__vs-row{display:grid;grid-template-columns:86px 1fr;align-items:center;gap:10px;font-size:.76rem;color:rgba(255,255,255,.6)}
.rb__vs-row b{position:relative;height:26px;border-radius:8px;background:rgba(167,139,250,.14);overflow:hidden;display:block}
.rb__vs-row b::before{content:"";position:absolute;inset:0;width:var(--w);border-radius:8px;background:linear-gradient(90deg,#7C3AED,#A78BFA);transform:scaleX(0);transform-origin:left;transition:transform 1.2s .2s cubic-bezier(.16,1,.3,1)}
.rb__vs-row--new b::before{background:linear-gradient(90deg,#06B6D4,#67E8F9);box-shadow:0 0 20px rgba(103,232,249,.5);transition-delay:.55s}
.rb__vs-row em{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-style:normal;font-family:var(--font-mono);font-weight:700;font-size:.76rem;color:#fff;z-index:1;opacity:0;transition:opacity .4s 1.2s}
.is-run .rb__vs-row b::before{transform:scaleX(1)}
.is-run .rb__vs-row em{opacity:1}
.rb__matrix{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin-top:6px}
.rb__matrix i{aspect-ratio:1;border-radius:4px;background:rgba(148,163,184,.16);transition:background .35s,box-shadow .35s,transform .35s}
.rb__matrix i.on{background:linear-gradient(135deg,#67E8F9,#A78BFA);box-shadow:0 0 10px rgba(167,139,250,.5);transform:scale(1.08)}
.rb__sw{width:10px;height:10px;border-radius:3px;background:rgba(148,163,184,.25);display:inline-block}
.rb__sw--on{background:linear-gradient(135deg,#67E8F9,#A78BFA)}
@media(max-width:1024px){.rb{grid-template-columns:repeat(2,1fr)}.rb__tile--wide{grid-column:span 2;grid-row:auto}}
@media(max-width:600px){.rb{grid-template-columns:1fr}.rb__tile--wide{grid-column:auto}.rb__mini{grid-template-columns:repeat(2,1fr)}}

@media(prefers-reduced-motion:reduce){
	.hm-logos__track,.hmos__live i,.rb__pill--live i,.hmos__line--run b{animation:none!important}
	.hmos__line{opacity:1;transform:none;transition:none}
	.rb__path{stroke-dashoffset:0;animation:none}.rb__area,.rb__dot{opacity:1}.rb__bars i{transform:none}.rb__vs-row b::before{transform:none}
}
