@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:opsz,wght@6..12,400;6..12,500;6..12,600;6..12,700&display=swap');
/* Motyw jasny — styl wg kierunek-a-strona-glowna/index-jasny.html.
   Kolory i kroje całej strony pochodzą ze zmiennych poniżej. Wersja ciemna: theme-dark.css */
:root{
  --bg:#F3F5F8; --bg2:#E9EDF3; --field:#FFFFFF;
  --card:#FFFFFF; --card-h:#F8FAFC; --card-sel:#FDEEF0;
  --line:rgba(14,19,27,.10); --line2:rgba(14,19,27,.20); --line3:rgba(14,19,27,.38);
  --ink:#0E131B; --ink2:#1B2430; --muted:#4A5568; --muted2:#5B6578;
  --red:#E11D33; --red-d:#C4152A; --red-t:#C4152A;
  --blue:#2457C5; --blue-t:#2457C5; --ok:#0E7A4A;
  --glass:rgba(243,245,248,.86); --glow-b:rgba(64,124,246,.07); --glow-r:rgba(225,29,51,.09);
  --font:'Nunito Sans',system-ui,sans-serif; --display:'Baloo 2',system-ui,sans-serif; --mono:'JetBrains Mono',monospace;
  --r:28px; --r-big:36px; --r-field:12px; --gut:clamp(20px,4vw,72px);
  --ease:cubic-bezier(.16,1,.3,1); --amber:#8A6500;
}
html{scroll-snap-type:none !important;scroll-padding-top:96px;}
body{font-family:var(--font);color:var(--ink2);background:var(--bg);-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:var(--display);font-weight:400 !important;letter-spacing:-.02em !important;text-wrap:balance;color:var(--ink);}
h1{font-size:clamp(42px,5.8vw,86px) !important;line-height:1 !important;}
h2{font-size:clamp(32px,3.8vw,56px);line-height:1.05;max-width:20ch;}
h2.one-line,.one-line{max-width:none;}
@media (min-width:760px){h2.one-line{white-space:nowrap;font-size:clamp(26px,3.4vw,50px) !important;}}
h3{line-height:1.1;}
.lead{color:var(--muted);font-size:20px;max-width:46ch;}
.kicker,[class*="kicker"]{font-family:var(--mono);font-size:12px !important;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--red-t) !important;margin-bottom:16px;}
.wrap{max-width:1560px !important;padding-left:var(--gut) !important;padding-right:var(--gut) !important;}
section,main>section{padding-left:0;padding-right:0;}
main section{padding-top:clamp(64px,8vw,112px) !important;padding-bottom:clamp(64px,8vw,112px) !important;border-bottom:1px solid var(--line) !important;}
main section.last,main section#kontakt{border-bottom:0 !important;}
main>section:first-of-type,.hero{padding-top:clamp(40px,5vw,72px) !important;padding-bottom:clamp(56px,6vw,88px) !important;}
main>section>div[style*="max-width:1280px"]{max-width:1560px !important;}
main>section[style]{padding-left:var(--gut) !important;padding-right:var(--gut) !important;}
section.alt{background:var(--bg2);}

/* nagłówek: płaski, lepki, szkło */
#siteHeader{position:sticky !important;top:0 !important;left:0 !important;transform:none !important;width:100% !important;max-width:none !important;
  background:var(--glass) !important;backdrop-filter:blur(14px) saturate(140%);border:0 !important;border-bottom:1px solid var(--line) !important;border-radius:0 !important;box-shadow:none !important;z-index:50;}
#siteHeader>div:first-child{max-width:1560px !important;margin:0 auto !important;padding:0 var(--gut) !important;min-height:80px;display:flex;align-items:center;gap:24px;}
#siteHeader img{height:26px !important;width:auto;}
.nav-desktop{justify-content:flex-start !important;gap:4px !important;margin-left:12px;}
.nav-desktop a,.h-nav{font:500 12.5px var(--mono) !important;padding:10px 14px !important;border-radius:999px;color:var(--muted) !important;box-shadow:none !important;transition:color .3s,background .3s;}
.nav-desktop a:hover,.h-nav:hover{color:var(--ink) !important;background:rgba(14,19,27,.06);}
.nav-desktop a[aria-current="page"]{color:var(--ink) !important;background:rgba(14,19,27,.06);}
#mobileMenu{background:var(--bg);border-top:1px solid var(--line);}
#mobileMenu a.nl,#mobileMenu a[style*="padding:12px"]{color:var(--ink2) !important;border-bottom:1px solid var(--line) !important;}
.menu-btn{border-radius:999px !important;background:var(--card) !important;border-color:var(--line2) !important;}

/* przyciski: pigułki */
.btn,.nav-cta,.cta-desktop,.h-red,.h-ghost,[style*="border-radius:4px"]{border-radius:999px !important;}
.btn,.nav-cta,.cta-desktop,.h-red,.h-ghost{font-family:var(--display) !important;font-weight:500 !important;font-size:16px !important;min-height:52px;padding:0 28px !important;box-shadow:none !important;transition:transform .5s var(--ease),background .5s var(--ease),border-color .3s !important;}
.btn:hover,.nav-cta:hover,.cta-desktop:hover,.h-red:hover,.h-ghost:hover{transform:translateY(-2px);}
.nav-cta,.cta-desktop{background:var(--red);color:#fff !important;display:inline-flex;align-items:center;justify-content:center;}
.btn-ghost,.h-ghost{border:1px solid var(--line2) !important;color:var(--ink) !important;background:transparent !important;}
.btn-ghost:hover,.h-ghost:hover{background:rgba(14,19,27,.06) !important;}
.btn-red:hover,.h-red:hover,.nav-cta:hover,.cta-desktop:hover{background:var(--red-d) !important;color:#fff !important;}

/* karty */
.card,.pkg,.calc,.callout,.phone-card,.pf,.tz,.h-card,.quote,.tier{background:var(--card);border:1px solid var(--line) !important;border-radius:var(--r);}
.card:hover,.pf:hover,.tz:hover,.h-card:hover{background:var(--card-h);border-color:var(--line2) !important;}
.pkg{padding:32px 30px;}
.pkg.feat{background:linear-gradient(160deg,#FDEEF0,var(--card));border-color:rgba(225,29,51,.4) !important;}
.pkg .tag{border-radius:999px;padding:5px 12px;}
.pkg .price{font-family:var(--display);font-weight:400;font-size:42px;letter-spacing:-.03em;}
.pkg .name,.pkg .eta{font-family:var(--mono);}
.rows,.stats{border-radius:var(--r);overflow:hidden;border-color:var(--line) !important;background:var(--line) !important;}
.rows .row,.stats div{background:var(--card) !important;}
.chip{border-radius:999px;background:var(--card);border:1px solid var(--line2);color:var(--muted);}
.checks li{color:var(--ink2);}
.win{border-radius:20px;}
.port .shot,.shot{border-radius:var(--r);border:1px solid var(--line);}

/* kroki: góra linia, bez ramek */
.steps{border:0 !important;background:none !important;border-radius:0;gap:16px !important;overflow:visible;}
.steps li{background:none !important;border-radius:0;border-top:1px solid var(--line2) !important;padding:28px 8px 0 0 !important;}
.steps li::before{display:none;}
.steps li:hover{background:none !important;transform:none !important;}
.steps li h3{font-size:28px;margin-bottom:10px;}
.steps li p{max-width:36ch;color:var(--muted);}
.num{font-family:var(--mono);color:var(--red-t) !important;}

/* formularze */
.contact-form{background:var(--card) !important;border-radius:var(--r-big) !important;padding:clamp(24px,3.4vw,44px) !important;border:1px solid var(--line) !important;}
.field label,.fgrid label{font:700 11.5px var(--mono) !important;letter-spacing:.12em;text-transform:uppercase;color:var(--muted2) !important;}
.field input,.field textarea,.fgrid input,.fgrid textarea{background:#fff !important;border:1px solid var(--line2) !important;border-radius:var(--r-field) !important;min-height:52px;padding:12px 16px !important;color:var(--ink) !important;font:400 16px var(--font) !important;}
.field textarea{min-height:110px;}
.field input:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:transparent !important;}
.svc-chip span{border-radius:999px !important;background:transparent !important;color:var(--muted) !important;padding:0 18px !important;font:500 12.5px var(--mono) !important;border-color:var(--line2) !important;}
.svc-chip span::before{display:none;}
.svc-chip input:checked + span{background:rgba(225,29,51,.09) !important;border-color:var(--red) !important;color:var(--ink) !important;}
.phone-card{background:none !important;border:0 !important;border-radius:0;padding:0 !important;}
.phone-card .lab{font:700 12px var(--mono);letter-spacing:.16em;color:var(--muted2);}
.phone-card a{font:500 clamp(34px,4vw,56px)/1 var(--display) !important;letter-spacing:-.02em;color:var(--ink) !important;margin-top:14px;}
.phone-card a:hover{color:var(--red-t) !important;}
.phone-note{color:var(--muted);}
.field-error,#formStatus{font-family:var(--mono);}

/* FAQ */
details{border-bottom:1px solid var(--line) !important;}
summary{color:var(--ink);}

/* stopka */
.site-footer,footer{background:var(--bg2) !important;border-top:1px solid var(--line) !important;}
.site-footer a,.site-footer button,footer a{color:var(--muted2);}
.site-footer a:hover,footer a:hover{color:var(--ink);}

/* baner cookies */
#cookieBar{background:var(--card) !important;border-radius:24px !important;box-shadow:0 24px 60px -28px rgba(14,19,27,.4) !important;}
#cookieBar p{color:var(--muted) !important;}

/* linki */
a{color:var(--blue-t);}
.link-arrow{color:var(--ink) !important;}
::selection{background:var(--red);color:#fff;}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;}

/* poprawki układu (strona główna i podstrony) */
main h2:not(.one-line){font-size:clamp(32px,3.8vw,56px) !important;line-height:1.05 !important;}
main p[style*="text-transform:uppercase"]{color:var(--red-t) !important;font-size:12px !important;}
#kontakt h2{font-size:clamp(30px,3.4vw,48px) !important;}
.h-card{border-radius:var(--r) !important;padding:32px !important;}
.h-card p{font-size:17px !important;line-height:1.55;}
.dk[style*="border-radius"]{border-radius:24px !important;}

/* jasne makiety (okna, terminal) */
.dk[style*="box-shadow"]{box-shadow:0 30px 60px -38px rgba(14,19,27,.28) !important;}
.win{box-shadow:0 30px 60px -38px rgba(14,19,27,.2);}
.win .top{background:var(--bg2);}

  /* infografiki w kafelkach usług */
  .ig{display:block;width:100%;height:100%;}
  .ig .bg{fill:var(--bg2);}
  .ig .card{fill:var(--card);stroke:var(--line2);stroke-width:1.2;}
  .ig .card.hi{stroke:var(--red);stroke-opacity:.45;fill:#FFF7F8;}
  .ig .card2{fill:var(--card-h);stroke:var(--line2);stroke-width:1;}
  .ig .soft{fill:var(--bg2);}
  .ig .soft2{fill:var(--line2);}
  .ig .ln{stroke:var(--muted2);stroke-width:1.6;stroke-linecap:round;fill:none;}
  .ig .flow{stroke:var(--red);stroke-width:2;stroke-dasharray:5 5;fill:none;stroke-linecap:round;}
  .ig .head{fill:var(--red);}
  .ig .red{fill:var(--red);}
  .ig .ok{fill:var(--ok);}
  .ig .okc{fill:var(--ok);}
  .ig .chk{stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .ig .cloud{fill:var(--bg2);stroke:var(--line3);stroke-width:1.4;}
  .ig .lock{fill:var(--red);}
  .ig .lockb{stroke:var(--red);stroke-width:2;}
  .ig .bar{fill:var(--line3);}
  .ig .bar.hot{fill:var(--red);}
  .ig .bar0{stroke:var(--line2);}
  .ig .line1{fill:var(--ink);opacity:.82;}
  .ig .line2{fill:var(--line2);}
  .ig .whiteb{fill:#fff;}
  .ig .cursor{fill:var(--ink);stroke:#fff;stroke-width:1.2;stroke-linejoin:round;}
  .ig .hs{stroke:var(--ink);stroke-width:3;stroke-linecap:round;fill:none;}
  .ig .hsb{fill:var(--ink);}
  .ig .chassis{fill:#1B2430;stroke:#0E131B;stroke-width:1.2;}
  .ig .bay{fill:#2A3441;stroke:#3B4757;stroke-width:1;}
  .ig .bayl{stroke:#566176;stroke-width:1.6;stroke-linecap:round;}
  .ig .ledg{fill:#22D07A;}
  .ig .ledr{fill:#FF4D5F;}
  .ig .pill{fill:var(--card);stroke:var(--line2);stroke-width:1.2;}
  .ig .pill.hi2{fill:#FDEEF0;stroke:rgba(225,29,51,.45);}
  .ig .gr{fill:#2A3441;}
  .ig .bl{fill:var(--blue);}
  .ig .ty{font:400 28px var(--display);fill:var(--ink);}
  .ig .guide{stroke:var(--blue);stroke-opacity:.45;stroke-width:1;stroke-dasharray:4 4;}
  .ig .sel{fill:none;stroke:var(--blue);stroke-width:1.5;stroke-dasharray:5 4;}
  .ig .hnd{fill:#fff;stroke:var(--blue);stroke-width:1.5;}
  .ig .door{fill:#222B37;stroke:#3B4757;stroke-width:1;}
  .ig .unit{fill:#2F3947;stroke:#434F60;stroke-width:.8;}
  .ig .floor{fill:var(--line);}
  .ig .lightb{fill:#fff;stroke:var(--line2);stroke-width:1;}
  .ig .cable{stroke:var(--blue);stroke-width:3;stroke-linecap:round;}
  .ig .shadow{fill:rgba(14,19,27,.14);}
  .ig text{font-family:var(--mono);}
  .ig .t{font-size:10px;font-weight:700;letter-spacing:.08em;fill:var(--muted);}
  .ig .t.red2{fill:var(--red-t);}
  .ig .t2{font-size:13px;font-weight:600;fill:var(--ink);font-family:var(--font);}
  .ig .t3{font-size:12px;font-weight:600;fill:var(--ink2);font-family:var(--font);}

.ig-wrap{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;background:var(--bg2);}

/* telefon: przycisk w pasku górnym się nie mieści — zostaje w rozwijanym menu */
@media (max-width:860px){
  #siteHeader>div:first-child>div .cta-desktop,#siteHeader>div:first-child>div .nav-cta{display:none !important;}
  #siteHeader>div:first-child{min-height:68px;}
}

.ig .inkf{fill:var(--ink);}
.ig .markw{fill:#fff;}
.ig .guidec{fill:none;stroke:var(--blue);stroke-opacity:.4;stroke-width:1;stroke-dasharray:3 4;}
.ig .bez{stroke:var(--blue);stroke-width:1.2;}
.ig .anch{fill:#fff;stroke:var(--blue);stroke-width:1.6;}
.ig .paper{fill:#fff;stroke:var(--line2);stroke-width:1;}

/* animacje infografik i małych makiet */
@keyframes igDash{to{stroke-dashoffset:-20;}}
@keyframes igBlink{0%,100%{opacity:1;}50%{opacity:.25;}}
@keyframes igPulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(1.5);}}
@keyframes igBars{0%,100%{transform:scaleY(1);}50%{transform:scaleY(.62);}}
@keyframes igNudge{0%,100%{transform:translateX(0);}50%{transform:translateX(4px);}}
@keyframes igCursor{0%,100%{transform:translate(0,0);}30%{transform:translate(-46px,-22px);}60%{transform:translate(-18px,16px);}80%{transform:translate(10px,-8px);}}
@keyframes igPop{0%,100%{transform:scale(1);}50%{transform:scale(1.18);}}
@keyframes toastCycle{0%{opacity:0;transform:translateY(14px);}5%,30%{opacity:1;transform:translateY(0);}36%,100%{opacity:0;transform:translateY(-10px);}}
@media (prefers-reduced-motion:no-preference){
  .ig .flow,.ig .sel,.ig .guide,.ig .guidec{animation:igDash 1.1s linear infinite;}
  .ig .ledg{animation:igBlink 2.4s ease-in-out infinite;}
  .ig .ledg:nth-of-type(2n){animation-delay:-.8s;}
  .ig .ledg:nth-of-type(3n){animation-delay:-1.5s;animation-duration:3.1s;}
  .ig .ledg:nth-of-type(5n){animation-delay:-.3s;animation-duration:1.9s;}
  .ig .ledr{transform-box:fill-box;transform-origin:center;animation:igPulse 1.3s ease-in-out infinite;}
  .ig .bar{transform-box:fill-box;transform-origin:50% 100%;animation:igBars 3.2s ease-in-out infinite;}
  .ig .bar:nth-of-type(2n){animation-delay:-1.1s;}
  .ig .bar:nth-of-type(3n){animation-delay:-2.1s;}
  .ig .bar.hot{animation-delay:-.4s;}
  .ig .head{animation:igNudge 1.1s ease-in-out infinite;}
  .ig .cursor{animation:igCursor 6s ease-in-out infinite;}
  .ig .okc{transform-box:fill-box;transform-origin:center;animation:igPop 2.8s ease-in-out infinite;}
  .ig .okc:nth-of-type(2n){animation-delay:-1.2s;}
  .ig .anch{transform-box:fill-box;transform-origin:center;animation:igPop 2s ease-in-out infinite;}
}


/* stopka na stronie głównej: ta sama szerokość co reszta strony */
footer[style]{padding-left:var(--gut) !important;padding-right:var(--gut) !important;}
footer>div[style*="max-width:1280px"]{max-width:1560px !important;}

.ig .phn{fill:#fff;}
.ig .whl{stroke:#fff;stroke-width:1.4;}

.callout{flex-wrap:wrap;}
.ssl-ill{flex:1 0 100%;margin-top:18px;border-radius:18px;overflow:hidden;background:var(--bg2);border:1px solid var(--line);}
.ssl-ill .ig{width:100%;height:auto;}
