/*
 * nabilet biznes (/biznes) — warstwa marki nad CSS szablonu (szablon.css). Kolory WYŁĄCZNIE ze zmiennych `--nb-*`, które strona
 * wylicza z PALETA_AKCENTU (src/lib/ui/tokeny.ts) i neutralnych kolorów szablonu (src/lib/biznes/strona-biznes.ts). Zero literałów
 * kolorów w tym pliku (pilnuje test `biznes-landing.test.ts`). Ilustracje i animacje są własne (src/lib/biznes/ilustracje-biznes.ts).
 */

/* ---------- fonty (SIL OFL 1.1, pliki w ./fonty, licencje obok) ---------- */
@font-face { font-family: "Instrument Sans"; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/biznes-zasoby/fonty/instrument-sans-latin-ext-wght-normal.woff2) format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Instrument Sans"; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/biznes-zasoby/fonty/instrument-sans-latin-wght-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/biznes-zasoby/fonty/lora-latin-ext-wght-normal.woff2) format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/biznes-zasoby/fonty/lora-latin-wght-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ---------- kurtyna startowa (redn #kr-curtain) + bezpiecznik bez JS ---------- */
html.kr-curtain body { opacity: 0; animation: nb-pokaz 0s 2.5s forwards; }
html.kr-curtain::before { content: ""; position: fixed; inset: 0; z-index: 2147483647; animation: kr-splash 1.4s ease-in-out infinite alternate, nb-schowaj 0s 2.5s forwards; }
@keyframes kr-splash { from { opacity: 1; } to { opacity: .55; } }
@keyframes nb-pokaz { to { opacity: 1; } }
@keyframes nb-schowaj { to { visibility: hidden; } }

/* ---------- podstawy ---------- */
html, body { background: var(--nb-bialy); }
.nb-pomin { position: absolute; left: 1.6rem; top: -10rem; z-index: 100; padding: 1rem 1.6rem; border-radius: 10rem; background: var(--nb-tusz); color: var(--nb-bialy); font-size: 1.6rem; }
.nb-pomin:focus { top: 1.6rem; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--nb-fokus); outline-offset: 3px; }
.services_root__Ch_WM a:focus-visible, .features_root__CCic6 a:focus-visible, .outro_root__stMHm a:focus-visible, .footer_wrapper__9GQwi a:focus-visible { outline-color: var(--nb-akcent-ciemny); }
.arrows-section_arrows__BPayV, .nb-lista-krokow, .stats-widget, .features_items__oPgtQ, .latest-posts_items__LcqgW { list-style: none; margin-top: 0; margin-bottom: 0; padding: 0; }
html.nb-bez-przewijania { overflow: hidden; }

/* ---------- kontrast drugiego tonu tekstu (WCAG AA; szablon miał 2,1:1) ---------- */
.em, .stats-hook .dim, .stats-tile .tile-sub { color: var(--nb-szary-tekst); }
.nb-statystyki .stats-hook .dim { color: var(--nb-szary-tekst) !important; }
.footer_wrapper__9GQwi .footer_contact-label__gYKsP, .footer_wrapper__9GQwi .footer_copyright-container__yt1ht, .footer_wrapper__9GQwi .footer_sublinks__Pj_ed a { color: var(--nb-szary-tekst-ciemny); }
.services_root__Ch_WM .em, .features_root__CCic6 .em, .outro_root__stMHm .em, .footer_wrapper__9GQwi .em { color: var(--nb-szary-tekst-ciemny); }

/* ---------- akcent marki na przyciskach ---------- */
.button_color-primary__JJ7Hh { background-color: var(--nb-akcent); color: var(--nb-na-akcencie); }
.button_color-primary__JJ7Hh.button_inversed__slQcI { background-color: var(--nb-bialy); color: var(--nb-akcent-tekst); }
.button_icon-after__vljdM svg { width: 100%; height: 100%; }

/* ---------- logo „nabilet biznes” ---------- */
.nb-logo { display: inline-flex; align-items: center; gap: .8rem; color: var(--nb-tusz); text-decoration: none; }
.header_logo__LO_Jk .nb-logo svg.wordmark { width: auto; height: 2.8rem; display: block; overflow: visible; }
.wordmark__bilet { fill: var(--kolor-akcent); }
.wordmark__perforacja { stroke: var(--kolor-na-akcencie); }
.wordmark__napis { fill: currentColor; font-family: var(--font-primary), system-ui, sans-serif; font-size: 22px; font-weight: 700; letter-spacing: -0.02em; }
.wordmark__na { fill: var(--kolor-akcent); }
.nb-logo__biznes { font-size: 2rem; font-weight: 500; letter-spacing: -.01em; line-height: 1; color: var(--nb-akcent-tekst); transform: translateY(.1rem); }
.footer_logo__5ncK8 .nb-logo { display: flex; width: 100%; color: var(--nb-bialy); gap: 3%; align-items: flex-end; }
.footer_logo__5ncK8 .nb-logo svg.wordmark { flex: 0 0 auto; width: 64%; height: auto; }
.footer_logo__5ncK8 .nb-logo__biznes { font-size: 9vw; line-height: .8; letter-spacing: -.04em; color: var(--nb-akcent-ciemny-tekst); transform: none; padding-bottom: 1.5%; }
@media (min-width: 1400px) { .footer_logo__5ncK8 .nb-logo__biznes { font-size: 12.6rem; } }
.footer_logo__5ncK8 .wordmark__na { fill: var(--nb-akcent-ciemny); }
.footer_logo__5ncK8 .wordmark__bilet { fill: var(--nb-akcent-ciemny); }
.footer_logo__5ncK8 .wordmark__perforacja { stroke: var(--nb-tusz); }

/* ---------- menu mobilne ---------- */
.burger-menu_wrapper__gKR7D { transition: opacity .3s ease; }
.burger-menu_wrapper__gKR7D.nb-menu-otwarte { opacity: 1; pointer-events: auto; }
.burger-menu_wrapper__gKR7D .burger-menu_nav__dAhwA { padding-top: 10rem; }
.burger-menu_nav-item__mCA9u a { color: inherit; text-decoration: none; }
.burger-menu_wrapper__gKR7D:not(.nb-menu-otwarte) { visibility: hidden; transition: opacity .3s ease, visibility 0s .3s; }
.header_burger-control__YR_x_ { z-index: 60; color: var(--nb-tusz); }

/* ---------- hero: niebo, chmury, mgła, makieta (zamiast zdjęć szablonu) ---------- */
.nb-niebo { position: absolute; inset: 0;
	background:
		radial-gradient(60% 55% at 12% 88%, color-mix(in srgb, var(--nb-akcent) 30%, transparent) 0%, transparent 70%),
		radial-gradient(55% 50% at 88% 30%, color-mix(in srgb, var(--nb-akcent) 18%, transparent) 0%, transparent 70%),
		linear-gradient(180deg, color-mix(in srgb, var(--nb-akcent) 32%, var(--nb-bialy)) 0%, var(--nb-akcent-tlo) 48%, var(--nb-bialy) 100%);
	transform-origin: center; }
.nb-chmura { width: 100%; height: 100%;
	background:
		radial-gradient(32% 42% at 30% 60%, var(--nb-bialy) 0%, color-mix(in srgb, var(--nb-bialy) 70%, transparent) 45%, transparent 72%),
		radial-gradient(28% 36% at 55% 48%, var(--nb-bialy) 0%, color-mix(in srgb, var(--nb-bialy) 60%, transparent) 50%, transparent 74%),
		radial-gradient(26% 34% at 74% 64%, var(--nb-bialy) 0%, color-mix(in srgb, var(--nb-bialy) 55%, transparent) 50%, transparent 76%);
	filter: blur(18px); }
.nb-mgla { width: 100%; height: 100%;
	background: linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--nb-bialy) 75%, transparent) 38%, var(--nb-bialy) 62%),
		radial-gradient(50% 60% at 25% 30%, color-mix(in srgb, var(--nb-bialy) 90%, transparent) 0%, transparent 70%),
		radial-gradient(50% 60% at 75% 25%, color-mix(in srgb, var(--nb-bialy) 90%, transparent) 0%, transparent 70%); }
.nb-dom { width: 100%; height: 100%; display: flex; justify-content: center; }
.nb-dom svg { width: 100%; height: 100%; }
/* maska złożenia: kształt biletu ze znaku marki zamiast liter z szablonu */
.hero_composite__3blHB {
	-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M5 7H27A3 3 0 0 1 30 10V12.5A3.5 3.5 0 0 0 30 19.5V22A3 3 0 0 1 27 25H5A3 3 0 0 1 2 22V19.5A3.5 3.5 0 0 0 2 12.5V10A3 3 0 0 1 5 7Z"/></svg>');
	mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M5 7H27A3 3 0 0 1 30 10V12.5A3.5 3.5 0 0 0 30 19.5V22A3 3 0 0 1 27 25H5A3 3 0 0 1 2 22V19.5A3.5 3.5 0 0 0 2 12.5V10A3 3 0 0 1 5 7Z"/></svg>');
	-webkit-mask-size: 42rem 42rem; mask-size: 42rem 42rem; -webkit-mask-position: center; mask-position: center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; }
.nb-slowo-maska { display: inline-block; overflow: hidden; vertical-align: top; padding: .15em; margin: -.15em; }
.nb-slowo-wnetrze { display: inline-block; }

/* makieta panelu (SVG) */
.nb-i-obudowa { fill: var(--nb-tusz); }
.nb-i-podstawa { fill: color-mix(in srgb, var(--nb-tusz) 70%, var(--nb-bialy)); }
.nb-i-ekran { fill: color-mix(in srgb, var(--nb-szary-tlo) 70%, var(--nb-bialy)); }
.nb-i-sidebar { fill: color-mix(in srgb, var(--nb-tusz) 94%, var(--nb-bialy)); }
.nb-i-akcent { fill: var(--nb-akcent); }
.nb-i-logo { fill: var(--nb-bialy); font: 700 13px var(--font-primary), system-ui, sans-serif; letter-spacing: -.02em; }
.nb-i-sekcja { fill: color-mix(in srgb, var(--nb-bialy) 45%, transparent); font: 600 6.5px var(--font-primary), system-ui, sans-serif; letter-spacing: .12em; }
.nb-i-menu-aktywne { fill: color-mix(in srgb, var(--nb-akcent) 30%, var(--nb-tusz)); }
.nb-i-menu-ikona { fill: color-mix(in srgb, var(--nb-bialy) 35%, transparent); }
.nb-i-menu-ikona--aktywna { fill: var(--nb-akcent-ciemny); }
.nb-i-menu-tekst { fill: color-mix(in srgb, var(--nb-bialy) 72%, transparent); font: 500 8.5px var(--font-primary), system-ui, sans-serif; }
.nb-i-menu-tekst--aktywny { fill: var(--nb-bialy); }
.nb-i-separator { fill: color-mix(in srgb, var(--nb-bialy) 12%, transparent); }
.nb-i-belka-ciemna { fill: color-mix(in srgb, var(--nb-bialy) 22%, transparent); }
.nb-i-tytul { fill: var(--nb-tusz); font: 700 14px var(--font-primary), system-ui, sans-serif; letter-spacing: -.01em; }
.nb-i-okruszki { fill: color-mix(in srgb, var(--nb-tusz) 50%, transparent); font: 500 6.5px var(--font-primary), system-ui, sans-serif; }
.nb-i-karta { fill: var(--nb-bialy); stroke: var(--nb-linia); stroke-width: .8; }
.nb-i-etykieta { fill: color-mix(in srgb, var(--nb-tusz) 70%, transparent); font: 600 7px var(--font-primary), system-ui, sans-serif; }
.nb-i-na-akcencie { fill: var(--nb-na-akcencie); font: 600 7px var(--font-primary), system-ui, sans-serif; }
.nb-i-naglowek-karty { fill: var(--nb-tusz); font: 700 8.5px var(--font-primary), system-ui, sans-serif; }
.nb-i-podpis-makiety { opacity: .7; }
.nb-i-liczba { fill: var(--nb-tusz); font: 700 13px var(--font-primary), system-ui, sans-serif; letter-spacing: -.01em; }
.nb-i-liczba--duza { font-size: 14px; }
.nb-i-jednostka { font-size: 7px; font-weight: 600; fill: color-mix(in srgb, var(--nb-tusz) 70%, transparent); }
.nb-i-belka-mocna { fill: color-mix(in srgb, var(--nb-tusz) 80%, transparent); }
.nb-i-siatka { fill: var(--nb-linia); }
.nb-i-slupek { fill: var(--nb-akcent); opacity: .9; }
.nb-i-slupek:nth-child(3n) { opacity: .72; }
.nb-i-tor { fill: color-mix(in srgb, var(--nb-tusz) 9%, transparent); }
.nb-i-miejsce { fill: color-mix(in srgb, var(--nb-akcent) 75%, var(--nb-bialy)); }
.nb-i-miejsce-wolne { fill: color-mix(in srgb, var(--nb-tusz) 12%, transparent); }

/* makieta telefonu (SVG) */
.nb-tlo-telefonu { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; overflow: hidden;
	background: radial-gradient(70% 80% at 30% 20%, color-mix(in srgb, var(--nb-akcent) 45%, var(--nb-bialy)) 0%, transparent 70%), linear-gradient(160deg, var(--nb-akcent-tlo) 0%, color-mix(in srgb, var(--nb-akcent) 60%, var(--nb-tusz)) 100%); }
.nb-makieta-telefonu { height: 88%; width: auto; filter: drop-shadow(0 30px 40px color-mix(in srgb, var(--nb-tusz) 35%, transparent)); }
.nb-i-ekran-tel { fill: var(--nb-szary-tlo); }
.nb-i-tel-tytul { fill: var(--nb-tusz); font: 700 22px var(--font-primary), system-ui, sans-serif; letter-spacing: -.02em; }
.nb-i-bilet { fill: var(--nb-bialy); }
.nb-i-belka-jasna { fill: var(--nb-na-akcencie); }
.nb-i-belka-jasna--slaba { opacity: .6; }
.nb-i-perforacja { stroke: color-mix(in srgb, var(--nb-tusz) 22%, transparent); stroke-width: 2; stroke-dasharray: 5 6; fill: none; }
.nb-i-qr { fill: var(--nb-tusz); }
.nb-i-pasek-qr { fill: var(--nb-akcent); transform-box: fill-box; transform-origin: left center; animation: nb-odswiezanie-qr 20s linear infinite; }
@keyframes nb-odswiezanie-qr { from { transform: scaleX(1); } to { transform: scaleX(0); } }
.nb-i-zakladki { fill: var(--nb-bialy); }

/* ---------- przesłona linii (ScrubbedText szablonu) ---------- */
.nb-linia { position: relative; display: block; width: fit-content; }
[data-nb-wipe].arrows-section_title__a4gyt .nb-linia { margin: 0 auto; }
.nb-zaslona { position: absolute; top: 10%; right: -1%; bottom: -10%; left: 0; z-index: 1; opacity: .9; transform-origin: right center; pointer-events: none; }
.nb-zaslona--jasny { background: color-mix(in srgb, var(--nb-bialy) 80%, transparent); }
.nb-zaslona--szary { background: color-mix(in srgb, var(--nb-szary-tlo) 80%, transparent); }
.nb-zaslona--ciemny { background: color-mix(in srgb, var(--nb-tusz) 80%, transparent); }

/* ---------- „Czemu nabilet?”: animacja skanera (zamiast wideo) ---------- */
.why-us_preview__OofJt { display: flex; align-items: center; justify-content: center; background: var(--nb-bialy); }
.nb-anim-skaner { --cykl: 9.6s; display: flex; align-items: center; justify-content: center; gap: 4rem; width: 100%; max-width: 90rem; padding: 2rem; }
.nb-anim-skaner__okno { position: relative; flex: 0 0 auto; width: 26rem; aspect-ratio: 1.55; border: 1.5px solid var(--nb-tusz); border-radius: 1.4rem; background: var(--nb-bialy); overflow: hidden; }
.nb-anim-skaner__pasek { display: flex; align-items: center; gap: .5rem; height: 2.8rem; padding: 0 1.2rem; border-bottom: 1.5px solid var(--nb-tusz); }
.nb-anim-skaner__pasek i { width: .6rem; height: .6rem; border-radius: 50%; background: var(--nb-szary); }
.nb-anim-skaner__status { margin-left: auto; position: relative; width: 1.6rem; height: 1.6rem; color: var(--nb-akcent); }
.nb-anim-skaner__status > span { position: absolute; inset: 0; }
.nb-ikona { width: 2.4rem; height: 2.4rem; display: block; }
.nb-ikona--mala { width: 1.6rem; height: 1.6rem; }
.nb-anim-skaner__offline { animation: nb-skaner-offline var(--cykl) infinite; color: var(--nb-tusz); }
.nb-anim-skaner__online { animation: nb-skaner-online var(--cykl) infinite; }
.nb-anim-skaner__ramka { position: absolute; left: 50%; top: 52%; width: 7rem; height: 7rem; transform: translate(-50%, -50%); color: var(--nb-tusz); }
.nb-anim-skaner__celownik { width: 100%; height: 100%; }
.nb-anim-skaner__laser { position: absolute; left: 10%; right: 10%; top: 50%; height: 2px; background: var(--nb-akcent); animation: nb-skaner-laser 1.6s ease-in-out infinite alternate; }
.nb-anim-skaner__postep { position: absolute; left: 1.4rem; right: 1.4rem; bottom: 1.4rem; height: .5rem; border-radius: 1rem; background: color-mix(in srgb, var(--nb-tusz) 12%, transparent); overflow: hidden; }
.nb-anim-skaner__postep span { display: block; height: 100%; width: 100%; border-radius: inherit; background: var(--nb-akcent); transform-origin: left center; animation: nb-skaner-postep var(--cykl) infinite; }
.nb-anim-skaner__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; width: 18rem; }
.nb-anim-skaner__wiersz { display: flex; align-items: center; gap: .8rem; height: 3.2rem; padding: 0 1rem; border: 1.5px solid color-mix(in srgb, var(--nb-tusz) 18%, transparent); border-radius: .6rem; background: var(--nb-bialy); opacity: 0; animation: nb-skaner-wiersz var(--cykl) infinite; }
.nb-anim-skaner__kropka { width: .8rem; height: .8rem; border-radius: 50%; background: var(--nb-szary); flex: none; }
.nb-anim-skaner__belka { flex: 1; height: .6rem; border-radius: 1rem; background: color-mix(in srgb, var(--nb-tusz) 12%, transparent); }
.nb-anim-skaner__ok { color: var(--nb-akcent); opacity: 0; animation: nb-skaner-ok var(--cykl) infinite; }
.nb-anim-skaner__wiersz--2, .nb-anim-skaner__wiersz--2 .nb-anim-skaner__ok { animation-delay: .5s; }
.nb-anim-skaner__wiersz--3, .nb-anim-skaner__wiersz--3 .nb-anim-skaner__ok { animation-delay: 1s; }
.nb-anim-skaner__wiersz--4, .nb-anim-skaner__wiersz--4 .nb-anim-skaner__ok { animation-delay: 1.5s; }
.nb-anim-skaner__wiersz--5, .nb-anim-skaner__wiersz--5 .nb-anim-skaner__ok { animation-delay: 2s; }
@keyframes nb-skaner-laser { from { transform: translateY(-2.2rem); } to { transform: translateY(2.2rem); } }
@keyframes nb-skaner-offline { 0%, 55% { opacity: 1; } 60%, 100% { opacity: 0; } }
@keyframes nb-skaner-online { 0%, 55% { opacity: 0; } 60%, 100% { opacity: 1; } }
@keyframes nb-skaner-postep { 0% { transform: scaleX(0); } 52% { transform: scaleX(.42); } 58% { transform: scaleX(.42); } 78%, 100% { transform: scaleX(1); } }
@keyframes nb-skaner-wiersz { 0%, 4% { opacity: 0; transform: translateY(.6rem); } 10%, 92% { opacity: 1; transform: none; } 100% { opacity: 0; } }
@keyframes nb-skaner-ok { 0%, 58% { opacity: 0; } 64%, 92% { opacity: 1; } 100% { opacity: 0; } }
.nb-anim-skaner__wiersz { border-color: color-mix(in srgb, var(--nb-tusz) 18%, transparent); }
@media (max-width: 767px) {
	.nb-anim-skaner { gap: 2rem; }
	.nb-anim-skaner__okno { width: 15rem; }
	.nb-anim-skaner__ramka { width: 4.6rem; height: 4.6rem; }
	.nb-anim-skaner__lista { width: 13rem; gap: .6rem; }
	.nb-anim-skaner__wiersz { height: 2.6rem; }
}
@media (min-width: 768px) {
	.nb-anim-skaner { gap: 6rem; }
	.nb-anim-skaner__okno { width: 56rem; border-width: 2px; }
	.nb-anim-skaner__pasek { height: 4rem; }
	.nb-anim-skaner__ramka { width: 13rem; height: 13rem; }
	.nb-anim-skaner__lista { width: 34rem; gap: 1.6rem; }
	.nb-anim-skaner__wiersz { height: 5.6rem; padding: 0 1.6rem; gap: 1.2rem; }
	.nb-anim-skaner__status { width: 2rem; height: 2rem; }
	.nb-anim-skaner .nb-ikona--mala { width: 2rem; height: 2rem; }
}

/* ---------- strzałki procesu (zamiast zdjęć) ---------- */
/* treść w „ciele” szewronu (maska szablonu: wcięcie do 47% szerokości, grot od 53%) */
.nb-strzalka { position: relative; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.2rem; padding-left: 46%; padding-right: 4%; color: var(--nb-na-akcencie); text-align: center; }
.nb-strzalka--1 { background: linear-gradient(160deg, color-mix(in srgb, var(--nb-akcent) 85%, var(--nb-tusz)) 0%, var(--nb-akcent) 100%); }
.nb-strzalka--2 { background: linear-gradient(160deg, var(--nb-akcent) 0%, color-mix(in srgb, var(--nb-akcent) 70%, var(--nb-bialy)) 100%); }
.nb-strzalka--3 { background: linear-gradient(160deg, color-mix(in srgb, var(--nb-akcent) 70%, var(--nb-bialy)) 0%, color-mix(in srgb, var(--nb-akcent) 45%, var(--nb-bialy)) 100%); }
.nb-strzalka--4 { background: linear-gradient(160deg, color-mix(in srgb, var(--nb-akcent) 45%, var(--nb-bialy)) 0%, var(--nb-akcent-tlo) 100%); color: var(--nb-akcent-tekst); }
.nb-strzalka__ikona { width: 2.4rem; height: 2.4rem; }
.nb-strzalka__podpis { display: none; font-size: 1.8rem; font-weight: 500; letter-spacing: -.01em; line-height: 1.1; }
@media (min-width: 768px) { .nb-strzalka__ikona { width: 5.6rem; height: 5.6rem; } .nb-strzalka__podpis { display: block; } }

/* ---------- kroki: pasek postępu (redn #rewired-scroll-line) ---------- */
.nb-kolumna-krokow { position: relative; padding-left: 3rem; }
#rewired-scroll-line { position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--nb-linia); pointer-events: none; z-index: 1; overflow: visible; }
.nb-linia-krokow { position: absolute; left: 0; top: 0; width: 100%; height: 0; background: linear-gradient(to top, var(--nb-akcent) 0%, color-mix(in srgb, var(--nb-akcent) 50%, transparent) 55%, transparent 100%); transition: height .5s cubic-bezier(.16, 1, .3, 1); will-change: height; }
@media (max-width: 900px) { #rewired-scroll-line { display: none !important; } .nb-kolumna-krokow { padding-left: 0; } }

/* ---------- „w dniu wydarzenia”: kafelki i kroki skanu ---------- */
.nb-statystyki { visibility: visible; background: var(--nb-bialy); }
.stats-tile { gap: .8rem; }
.nb-kafel-grafika { color: var(--nb-akcent); margin-bottom: 1.2rem; height: 3.2rem; display: flex; align-items: center; }
.nb-kafel-ikona { width: 3.2rem; height: 3.2rem; }
.stats-tile .lbl { color: var(--nb-tusz); }
.stats-tile .tile-sub { color: var(--nb-szary-tekst); }
.stats-steps .icon-badge { color: var(--nb-akcent); border-color: color-mix(in srgb, var(--nb-akcent) 35%, transparent); background: var(--nb-akcent-tlo); }
.stats-steps .icon-badge .nb-ikona { width: 1.8rem; height: 1.8rem; }
.nb-wskaznik { width: 6.4rem; height: 3.8rem; overflow: visible; }
.nb-wskaznik__tor, .nb-wskaznik__luk { fill: none; stroke-width: 7; stroke-linecap: round; }
.nb-wskaznik__tor { stroke: color-mix(in srgb, var(--nb-tusz) 14%, transparent); }
.nb-wskaznik__luk { stroke: var(--nb-akcent); stroke-dasharray: 100; stroke-dashoffset: 100; }
.nb-wskaznik__wskazowka { transform-origin: 60px 62px; transform: rotate(-90deg); }
.nb-wskaznik__wskazowka path { stroke: var(--nb-tusz); stroke-width: 3; stroke-linecap: round; }
.nb-wskaznik__wskazowka circle { fill: var(--nb-tusz); }
.stats-tile.in .nb-wskaznik__luk { animation: nb-wskaznik-luk 4.7s cubic-bezier(.16, 1, .3, 1) infinite; }
.stats-tile.in .nb-wskaznik__wskazowka { animation: nb-wskaznik-igla 4.7s cubic-bezier(.16, 1, .3, 1) infinite; }
@keyframes nb-wskaznik-luk { 0%, 8% { stroke-dashoffset: 100; } 55%, 88% { stroke-dashoffset: 12; } 100% { stroke-dashoffset: 100; } }
@keyframes nb-wskaznik-igla { 0%, 8% { transform: rotate(-90deg); } 55%, 88% { transform: rotate(68deg); } 100% { transform: rotate(-90deg); } }

/* ---------- aplikacja uczestnika: karuzela ---------- */
.testimonials_carousel__EBBTD .swiper { overflow: hidden; }
.testimonials_carousel__EBBTD .swiper-wrapper { transition-property: transform; transition-timing-function: ease; }
.testimonials_carousel__EBBTD .swiper-pagination { counter-reset: item-count; }
.testimonials_carousel__EBBTD button.swiper-pagination-bullet { font: inherit; background: none; padding: 0; margin: 0 .4rem 0 0; }
.testimonials_carousel__EBBTD .swiper-pagination-bullet.swiper-pagination-bullet-active { color: var(--nb-akcent-tekst); border-color: var(--nb-akcent); }
.nb-podpis-slajdu { display: inline-block; vertical-align: middle; font-family: var(--font-secondary), serif; font-weight: 500; font-size: 1.2rem; line-height: 110%; text-transform: uppercase; color: var(--nb-akcent-tekst); }
@media (min-width: 768px) { .nb-podpis-slajdu { font-size: 1.8rem; } }
.testimonials_carousel__EBBTD .swiper-wrapper { touch-action: pan-y; }

/* ---------- usługi (ciemna sekcja) ---------- */
.services_hgrid__9FHyx { grid-template-columns: 1fr !important; justify-items: center; text-align: center; }
.services_caption__Q_j1k { display: none !important; }
.services_items__PESAO { counter-reset: item-num; }
a.services_item__D_u7g { display: block; color: inherit; text-decoration: none; }
.nb-tlo-uslugi { position: absolute; inset: 0; }
.nb-tlo-uslugi--1 { background: radial-gradient(60% 90% at 85% 40%, color-mix(in srgb, var(--nb-akcent) 70%, transparent) 0%, transparent 70%), var(--nb-tusz); }
.nb-tlo-uslugi--2 { background: radial-gradient(60% 90% at 15% 60%, color-mix(in srgb, var(--nb-akcent) 70%, transparent) 0%, transparent 70%), var(--nb-tusz); }
.nb-tlo-uslugi--3 { background: radial-gradient(70% 90% at 50% 100%, color-mix(in srgb, var(--nb-akcent) 70%, transparent) 0%, transparent 70%), var(--nb-tusz); }

/* ---------- funkcje (ciemna sekcja, karty) ---------- */
.nb-tlo-funkcji { position: absolute; inset: 0; display: flex; align-items: flex-end; justify-content: flex-end; padding: 2.4rem; color: color-mix(in srgb, var(--nb-bialy) 22%, transparent); }
.nb-tlo-funkcji--1 { background: linear-gradient(150deg, color-mix(in srgb, var(--nb-akcent) 70%, var(--nb-tusz)) 0%, var(--nb-tusz) 100%); }
.nb-tlo-funkcji--2 { background: linear-gradient(150deg, color-mix(in srgb, var(--nb-akcent) 50%, var(--nb-tusz)) 0%, var(--nb-tusz) 100%); }
.nb-tlo-funkcji--3 { background: linear-gradient(150deg, color-mix(in srgb, var(--nb-akcent) 35%, var(--nb-tusz)) 0%, var(--nb-tusz) 100%); }
.nb-tlo-funkcji__ikona { width: 40%; height: auto; max-width: 16rem; }

/* ---------- pierwsze kroki (miniatury zamiast zdjęć wpisów) ---------- */
.nb-miniatura { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--nb-akcent); background: radial-gradient(70% 90% at 30% 30%, var(--nb-bialy) 0%, var(--nb-akcent-tlo) 75%); }
.nb-miniatura__ikona { width: 6.4rem; height: 6.4rem; }
.post-entry_title__JBO73 { color: inherit; text-decoration: none; }

/* ---------- zakończenie ---------- */
.nb-tlo-zakonczenia { position: absolute; inset: 0; transform-origin: center;
	background: radial-gradient(50% 70% at 30% 40%, color-mix(in srgb, var(--nb-akcent) 85%, transparent) 0%, transparent 70%), radial-gradient(45% 60% at 75% 70%, color-mix(in srgb, var(--nb-akcent-ciemny) 60%, transparent) 0%, transparent 70%), var(--nb-tusz); }

/* ---------- stopka ---------- */
.nb-stopka-cta { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.2rem 0; border-bottom: 1px solid color-mix(in srgb, var(--nb-bialy) 40%, transparent); color: var(--nb-bialy); text-decoration: none; font-size: 1.6rem; }
.nb-stopka-cta svg { width: 2.4rem; height: 2.4rem; flex: none; transition: transform .4s cubic-bezier(.16, 1, .3, 1); }
.nb-stopka-cta:hover svg { transform: translateX(.6rem); }
.footer_contact-value__e1jbK a, .footer_sublinks__Pj_ed a { color: inherit; }

/* ---------- telefon: skala nagłówków redn (#kr-mobil-typografia-js — tam inline przez JS, tu tymi samymi wartościami w CSS) ---------- */
.nb-pomiar { display: block; }
@media (max-width: 640px) {
	body .hero_title__JpmHS, body .hero_title__JpmHS h1 { font-size: 31px !important; line-height: 1.15 !important; }
	body .hero_text__R6LQ5 { font-size: 19px !important; line-height: 1.45 !important; }
	body .why-us_title__N3aCA, body .why-us_title__N3aCA h2 { font-size: 30px !important; line-height: 1.15 !important; }
	body .why-us_text__rT1u9 { font-size: 16px !important; line-height: 1.4 !important; }
	body .arrows-section_title__a4gyt h2, body .rewired_title__1_3e9, body .services_title__eMyhw, body .testimonials_title__V_61W h2, body .features_title__vVo3d, body .latest-posts_title__BvrE_ h2 { font-size: 28px !important; line-height: 1.2 !important; }
	body .for-agents_above-text__SVOzq { font-size: 28px !important; line-height: 1.2 !important; }
	body .services_items__PESAO .services_item-more__pkhNR { font-size: 34px !important; line-height: 1.25 !important; }
	body .features_item-title__uXmdj { font-size: 22px !important; line-height: 1.25 !important; }
	body .outro_title__Eqbbj { font-size: 24px !important; line-height: 1.25 !important; }
	body .footer_nav-link__LFUNG { font-size: 18px !important; }
	/* treść sekcji „w dniu wydarzenia” nie przy samej krawędzi ekranu */
	.nb-statystyki { padding: 0 2rem; }
	.stats-widget { padding-left: 0 !important; padding-right: 0 !important; }
}

/* ---------- ograniczony ruch ---------- */
@media (prefers-reduced-motion: reduce) {
	html.kr-curtain body { opacity: 1; animation: none; }
	html.kr-curtain::before { display: none; }
	.nb-anim-skaner *, .nb-wskaznik *, .nb-i-pasek-qr { animation: none !important; }
	.nb-anim-skaner__wiersz, .nb-anim-skaner__ok, .nb-anim-skaner__online { opacity: 1; }
	.nb-anim-skaner__offline { opacity: 0; }
	.nb-wskaznik__luk { stroke-dashoffset: 12; }
	.nb-wskaznik__wskazowka { transform: rotate(68deg); }
}
