/* Lekka rama: minimum stylow bazowych, ktore dotad dawal motyw Blocksy — wartosci zmierzone na starej ramie
   (porownanie computed styles ?rama=wp): font 15px/24px, naglowki #3A4F66, label mb .5em, small 80%,
   pola formularzy bez nadpisywania (jak w motywie — style daje silnik). */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:#FAFBFC;color:#2C3E50;font-family:"ct_font_geomanist","Geomanist",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4,h5,h6{margin:0 0 .5em;color:#3A4F66;font-weight:500;line-height:1.2}
p,ul,ol,dl,figure,blockquote{margin:0 0 1em}
label{margin-bottom:.5em}
small{font-size:80%}
img,video,svg{max-width:100%;height:auto}
a{color:#1790E7}
table{border-collapse:collapse}
:focus-visible{outline:2px solid #1790E7;outline-offset:2px}

/* Reguly motywu, z ktorych po cichu korzystaly strony silnika (wyciagniete z CSSOM starej ramy):
   Blocksy main.min.css: label 15px/.5em, pola formularzy margin 0 + wys. 40px/16px; Elementor kit: h2 #3A4F66 */
label{font-size:15px;line-height:inherit;margin-bottom:.5em}
input,select,textarea{margin:0}
select,input:is([type="url"],[type="tel"],[type="text"],[type="time"],[type="date"],[type="datetime-local"],[type="email"],[type="number"],[type="search"],[type="password"]){font-size:16px;height:40px}
textarea{font-size:16px}
.elementor-kit-10 h2{color:#3A4F66}
textarea{min-height:170px}
label:last-child{margin-bottom:0}
.elementor-kit-10 h3{color:#3A4F66}

/* kotwice (#cennik, #zgloszenie, #formularz...) nie chowaja sie pod przyklejonym naglowkiem */
[id]{scroll-margin-top:88px}
@media (max-width:980px){[id]{scroll-margin-top:76px}}

/* NIP: pole + przycisk "Pobierz dane" (nip-autofill.js) — wszystkie formularze */
.edo-nip-wiersz{display:flex;gap:8px;align-items:stretch;width:100%}
.edo-nip-wiersz>input{flex:1 1 auto;min-width:0}
.edo-nip-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:0 16px;border:1.5px solid #1790E7;border-radius:12px;background:#fff;color:#1178C9;font:inherit;font-size:14.5px;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s,opacity .15s}
.edo-nip-btn:hover:not(:disabled){background:#1790E7;color:#fff}
.edo-nip-btn:focus-visible{outline:3px solid #9ACBEF;outline-offset:2px}
.edo-nip-btn:disabled{opacity:.45;cursor:not-allowed}
.edo-nip-btn-trwa{opacity:1!important;cursor:progress!important;background:#E8F4FD;color:#0B5BB5}
.edo-nip-btn-trwa::before{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:edo-nip-kolo .7s linear infinite}
@keyframes edo-nip-kolo{to{transform:rotate(360deg)}}
.edo-nip-info{display:block;margin-top:6px;font-size:13.5px;line-height:1.45;color:#6B7C91;min-height:0}
.edo-nip-info[data-stan="ok"]{color:#1E7F46}
.edo-nip-info[data-stan="blad"]{color:#B42318}
.edo-nip-info[data-stan="szuka"]{color:#0B5BB5}
.edo-nip-wypelnione{animation:edo-nip-blysk 1.6s ease-out}
@keyframes edo-nip-blysk{0%{background-color:#DDF3E6;box-shadow:0 0 0 3px #BFE8CF}100%{background-color:inherit;box-shadow:none}}
@media (prefers-reduced-motion:reduce){.edo-nip-btn-trwa::before,.edo-nip-wypelnione{animation:none}}
@media (max-width:420px){.edo-nip-btn{padding:0 12px;font-size:14px}}

/* ING Pay — wersja podstawowa (jasne tla), bez podkladu */
.edo-ingpay-logo{display:block;height:25px;width:auto;flex-shrink:0}
.edo-ingpay-wybor{margin-left:auto;align-self:center}
.edo-ingpay-info{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px 0 0;font-size:13.5px;color:#6B7C91}
