@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400..700;1,400..700&display=swap');
/* Instrument Sans w wersji ZMIENNEJ, ten sam zakres co w makiecie.
   Kadence wczytuje tylko statyczne 400 i 600, wiec zadana w menu waga 500 nie istniala
   i przegladarka schodzila do 400 - litery byly szersze i jasniejsze niz w makiecie. */

/* ==========================================================================
   Revelium - style strony, przeniesione z makiety (wersja B).
   Kolejnosc sekcji ta sama co na stronie. Klasy dopinamy w Kadence
   w polu "Dodatkowa klasa CSS" bloku.
   ========================================================================== */

:root{
  --rev-papier:#F6F7F8;
  --rev-papier-2:#F1F3F4;
  --rev-biel:#FFFFFF;
  --rev-atrament:#15181A;
  --rev-czern:#0F1214;
  --rev-grafit:#2A3134;
  --rev-szary:#4A5256;
  --rev-szary-jasny:#7A8286;
  --rev-linia:#E0E4E6;
  --rev-linia-mocna:#C6CCD0;
  --rev-linia-ciemna:#2E3538;
  --rev-ruch:220ms ease;
}

/* --- etykieta nad naglowkiem: kreska + kursywa ---
   ⚠ Kreska jest pseudoelementem LINIOWYM, nie elementem siatki flex. Powod:
   przy `display:flex` wyrownanie robi `justify-content`, wiec ustawienie WYROWNANIA
   w panelu bloku (`text-align`) nie mialo zadnego skutku - w edytorze pisalo
   „do lewej”, a na stronie tekst byl wysrodkowany. Zglosil Michal 13.09.
   Teraz `text-align` z bloku steruje calym wierszem, wiec panel mowi prawde. */
.rev-et{font-style:italic;font-weight:500}
.rev-et::before{
  content:"";
  display:inline-block;
  width:34px;
  height:1px;
  vertical-align:middle;
  margin-right:14px;
  background:var(--rev-linia-mocna);
}
.rev-hero .rev-et::before{background:#8E9699}

/* --- hero --- */
.rev-hero{position:relative}
.rev-hero .kb-buttons-wrap{gap:12px}

/* --- pasek faktow ---
   Uklad, odstepy, tlo, kreska, z-index i ujemny margines siedza w USTAWIENIACH bloku
   (wiersz + kolumna w trybie poziomym + naglowki z ikona). Tutaj zostaje jedna rzecz,
   na ktora Kadence nie ma opcji: rozmycie tla pod polprzezroczystym paskiem. */
.rev-pasek-faktow{backdrop-filter:blur(4px)}


/* === pasek gorny: telefon i przycisk 1:1 z makieta === */
.rev-tel{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;
  white-space:nowrap;
  line-height:1;text-decoration:none;color:#15181A}
#main-header .rev-tel,
#main-header .rev-tel:hover{text-decoration:none}
.rev-tel:hover{color:#4A5256}
.rev-tel svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round}
/* Kadence nie ma opcji ikony w przycisku naglowka - wstawiamy ja tlem pseudoelementu,
   zeby nie ruszac markupu motywu. Rysunek ten sam co symbol #ic-kalendarz w makiecie. */
#main-header .header-button{display:inline-flex;align-items:center;gap:10px;
  font-size:13.5px;font-weight:600;letter-spacing:.02em;padding:12px 20px;border-radius:2px;
  line-height:1.2}
#main-header .header-button::before{content:"";width:18px;height:18px;flex:none;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223.2%22%20y%3D%225%22%20width%3D%2217.6%22%20height%3D%2215.8%22%20rx%3D%221.8%22%2F%3E%3Cpath%20d%3D%22M3.2%209.6h17.6M8.2%203.2v3.6M15.8%203.2v3.6%22%2F%3E%3Cpath%20d%3D%22M7.6%2013.4h2M11%2013.4h2M14.4%2013.4h2M7.6%2016.8h2M11%2016.8h2%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain}

/* === naglowek: odstepy i grubosc kreski ikon 1:1 z makieta === */
/* makieta ma gap:22px miedzy pozycjami menu; Kadence robi to paddingiem linku */
/* Kadence daje juz 10px miedzy elementami paska, dokladamy 18 - razem 28 jak w makiecie */
#main-header .header-button{margin-left:18px}

/* Kadence rysuje ikony kreska 2px, nasz zestaw ma 1.6. Grubsza kreska czyta sie jako
   cieplejsza i bardziej biala, wiec ikony w ciemnej sekcji wygladaly na inny kolor
   niz w makiecie, mimo ze jedne i drugie sa #FFFFFF. Regula jest globalna, bo w makiecie
   `.ic` ma 1.6 wszedzie - wczesniej byla zawezona do hero i kafle jej nie lapaly.
   Blok naglowka nie ma ustawienia grubosci kreski ikony (sprawdzone w atrybutach). */
.kb-svg-icon-wrap svg{stroke-width:1.6}

/* === przyciski: najechanie jak w makiecie - podnosza sie o 1px i lekko gasna ===
   Makieta daje to WSZYSTKIM przyciskom (`.btn`, `.btn2`, `.btn-obrys`), wiec regula
   tez obejmuje wszystkie. Wczesniej byla zawezona do hero i reszta przyciskow na stronie
   stala w miejscu - zgloszone przez Michala 13.09.
   Kadence NIE MA na to ustawienia: w atrybutach przycisku sa tylko kolory, obramowanie
   i cien przy najechaniu, a w arkuszach wtyczki nie ma ani jednego `translateY`.
   To samo dotyczy odstepu ikona-tekst: makieta ma 10 px, Kadence daje 7. */
.kb-button,
#main-header .header-button{
  transition:opacity 220ms ease,background 220ms ease,color 220ms ease,transform 220ms ease}
.kb-button:hover,
#main-header .header-button:hover{transform:translateY(-1px);opacity:.92}
.kb-button{gap:10px}

/* Styl nawigacji "underline" jest ustawiony w motywie. Kadence rysuje kreske
   na sztywno 2px i nie ma na to opcji - makieta ma 1px, wiec grubosc podkreslenia
   zbijamy tutaj. Szerokosc i animacje zostawiamy motywowi. */
#main-header .header-navigation[class*="header-navigation-style-underline"] .header-menu-container>ul>li>a:after{height:1px}

/* WordPress owija wlasny HTML w nagloweku w <p> o wysokosci linii 25,6 px, a nasz link
   jest inline-flex i siada na LINII BAZOWEJ tego akapitu - przez to telefon stal
   o ~3 px wyzej niz menu i przycisk. Ustawienia na to nie ma, wiec akapit dostaje
   wlasne centrowanie. Zmierzone: srodek tekstu telefonu rowna sie srodkowi menu. */
#main-header .header-html-inner,
#main-header .header-html-inner p{display:flex;align-items:center;margin:0}

/* === belka marki ===
   Uklad, kolumny, kreski pionowe, tlo, odstepy i typografia siedza w USTAWIENIACH blokow.
   Tutaj zostaja dwie rzeczy, na ktore nie ma opcji: kolor wyroznionego slowa wewnatrz
   akapitu i wyprostowanie nazwy marki w kursywie haslowej. */
.rev-belka strong{color:#15181A}
.rev-belka .rev-haslo strong{font-style:normal}

/* === sekcje tekst plus zdjecie ===
   Tylko to, na co bloki nie maja opcji: obramowanie cytatu z jednej strony
   i podzial podpisu na zdjeciu na dwie linie o roznym kroju. */
.rev-podpis{width:fit-content}
.rev-podpis b{display:block;font-size:15px;font-weight:600;color:#15181A}
.rev-podpis span{display:block;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:#4A5256;margin-top:2px}

/* === sekcja o umowach: lista siedmiu narzedzi wylacznosci ===
   Wyrownanie ikony do gornej linii robi USTAWIENIE bloku `iconAlign: top` - dodaje ono
   klase `kt-list-icon-aligntop`, dla ktorej Kadence ma wlasna regule. Moj wlasny
   `align-items` byl tu przez chwile i zostal USUNIETY jako dublujacy ustawienie.
   ⚠ Uwaga przy recznym pisaniu markupu: te klase dodaje funkcja save() w JS, wiec
   greps po plikach PHP wtyczki jej NIE POKAZE. Bez niej edytor oznacza blok jako zly.

   Zostaje jedno, czego blok NIE UMIE: arkusz Kadence trzyma na ikonie `padding:4px 0`
   na sztywno i zadne ustawienie tego nie rusza (atrybut `padding` punktu dotyczy tla
   ikony w stylu "stacked"). Przy ikonie 20 px te 8 px podnosily punkt z 24,8 na 29.
   Selektor powtarza lancuch Kadence (4 klasy + typ), bo krotszy przegrywal. */
.rev-wylacznosc .wp-block-kadence-iconlist ul.kt-svg-icon-list .kt-svg-icon-list-item-wrap .kt-svg-icon-list-single{padding:0;margin-top:1px}

/* Kolumna ze zdjeciem: podpis docisniety do dolu.
   Pelna wysokosc daje USTAWIENIE wiersza `columnsInnerHeight` (klasa Kadence
   `kt-inner-column-height-full`) - tego tu juz nie ma.
   Kadence ma tez gotowe docisniecie do dolu, ale TYLKO jako ustawienie CALEGO WIERSZA
   (`verticalAlignment: bottom`). Sprawdzone i odrzucone: robi wtedy kontener flex
   z KAZDEJ kolumny wiersza, a w kontenerze flex marginesy przestaja sie sklejac -
   kolumna z tekstem duetu urosla z 709,5 na 741,5 px. Dlatego docisniecie zostaje
   tutaj, zalozone tylko na kolumne ze zdjeciem. */
.rev-foto > .kt-inside-inner-col{display:flex;flex-direction:column;justify-content:flex-end}

/* === formularz wyceny: odstep nad zgoda ===
   Ptaszek zgody dotykal kreski ostatniego pola - zglosil Michal 13.09.
   ⚠ Blok pola zgody NIE MA ustawienia marginesu: w `supports` nie ma `spacing`,
   w atrybutach nie ma zadnego `margin` ani `padding` (sprawdzone w rejestrze blokow).
   Odstepu formularza (`_kad_form_style.gap`) tez nie moge uzyc, bo dziala na WSZYSTKIE
   pola, a makieta ma trzy pola tekstowe scisle jedno pod drugim.
   Zaczepienie po `data-type="accept"`, bo to jedyna stabilna cecha tego pola. */
.rev-wycena .kb-adv-form-field:has(fieldset[data-type="accept"]){margin-top:18px}

/* === dane kontaktowe: drobna etykieta nad wartoscia ===
   `rev-etk` i `rev-drobny` to znaczniki LINIOWE wewnatrz tekstu pozycji listy.
   Blok listy stylizuje CALY tekst punktu jednym krojem - na wyroznienie fragmentu
   w srodku nie ma ustawienia, tak samo jak przy podpisie na zdjeciu. */
.rev-kontakt .rev-etk{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:#4A5256;margin-bottom:3px}
.rev-kontakt .rev-drobny{font-size:13.5px;color:#4A5256;font-weight:400}
.rev-kontakt .kt-svg-icon-list-text a{font-weight:600;color:#15181A;text-decoration:none}
.rev-kontakt .kt-svg-icon-list-text a:hover{color:#4A5256}

/* === FAQ: cienszy plus i minus przy pytaniach ===
   Kadence rysuje ikone `basic` dwiema belkami 20 x 4 px. Makieta ma zwykly znak "+"
   pisany krojem, czyli kreske okolo 1,5 px. Grubosci belki blok NIE MA w ustawieniach
   (`iconStyle` wybiera tylko ksztalt, nie grubosc), wiec zadne ustawienie w edytorze
   nie staje sie przez to nieprawda. Pudelko ikony zostaje 24 x 24, zmieniamy sama kreske.
   Nazwa klasy Kadence ma literowke: `accodion`, bez "r". */
.rev-faq .kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger:before,
.rev-faq .kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger:after{
  width:12px;height:1.5px;left:6px;top:11.25px}

/* === stopka: oddech przed nazwa wykonawcy ===
   Spacja w Instrument Sans przy 13,5 px ma tylko 2,72 px (zmierzone), a nazwa jest
   pogrubiona - dwukropek i "Storm Cube" zlewaly sie w jedno. Zglosil Michal 13.09.
   Blok nie ma ustawienia odstepu przed odnosnikiem w SRODKU tekstu, wiec zadne
   ustawienie w edytorze nie staje sie przez to nieprawda. */
.site-footer-bottom-section-3 p a{margin-left:3px}

/* === kafle zestawien (rev-kafel) ===
   Ten sam problem co przy .rev-podpis: jeden akapit ma niesc naglowek kafla
   i zdanie pod nim. Blok nie ma ustawienia "pierwsza linia innym krojem",
   wiec zadne ustawienie w edytorze nie staje sie przez to nieprawda.
   Wariant --mocny to kafel wyrozniony grubsza kreska, bez zmiany koloru. */
.rev-kafel b{display:block;font-size:17px;font-weight:600;color:#15181A;margin-bottom:4px}
.rev-kafel span{display:block;color:#4A5256}

/* === listy z ikonami: naglowek pozycji i opis pod nim === */
.rev-narzedzia .kt-svg-icon-list-text b{display:block;font-weight:600;color:#15181A;margin-bottom:2px}
.rev-narzedzia .kt-svg-icon-list-text span{display:block;font-size:15px;color:#4A5256}

/* === trzy typy nieruchomosci: odnosnik ma byc etykieta, nie linkiem w zdaniu === */
.rev-typy .kt-svg-icon-list-text a{text-decoration:none;color:#15181A;border-bottom:1px solid #C6CCD0;padding-bottom:2px}
.rev-typy .kt-svg-icon-list-text a:hover,
.rev-typy .kt-svg-icon-list-text a:focus-visible{border-bottom-color:#15181A}


/* === kroki wspolpracy (rev-krok) - sekcja wstepna podstron ===
   Ten sam powod co przy .rev-kafel: jeden akapit ma niesc numer, tytul i zdanie pod nim,
   a blok nie ma ustawienia "pierwsza linia innym krojem". Kreska pod krokiem jest
   USTAWIENIEM bloku (borderStyle, dol), nie regula tutaj - w edytorze zostaje prawda.
   Kadence nie ma listy numerowanej: iconlist zna tylko ikony, numeracja istnieje
   wylacznie w spisie tresci. Stad ten uklad. */
.rev-krok{display:grid;grid-template-columns:44px 1fr;column-gap:18px;row-gap:2px;align-items:start}
.rev-krok i{grid-column:1;grid-row:1 / span 2}
.rev-krok b{grid-column:2;grid-row:1}
.rev-krok span{grid-column:2;grid-row:2}
.rev-krok i{font-style:normal;font-size:13px;font-weight:600;letter-spacing:.1em;color:#7A8286;padding-top:3px}
.rev-krok b{display:block;font-size:16.5px;font-weight:600;color:#15181A;margin-bottom:2px}
.rev-krok span{display:block;color:#4A5256;font-size:15px;line-height:1.5}

/* === zdjecie w bialej ramce (rev-foto-ramka) ===
   Biala ramka to USTAWIENIE kolumny (borderStyle 14 px #FFFFFF). Kadence nie ma drugiej,
   cienkiej obwodki wokol tej pierwszej - i tylko to jest tutaj. */
.rev-foto-ramka{outline:1px solid #E0E4E6;outline-offset:0}


/* === dokumenty tekstowe (rev-dokument): polityka prywatnosci itp. ===
   Naglowki w tych stronach to bloki PODSTAWOWE (core/heading), wiec biora globalna
   skale motywu, ustawiona pod sekcje strony glownej - H2 mialo 46 px, czyli wiecej
   niz H1 dokumentu. Kadence nie ma osobnej skali dla stron tekstowych, stad te reguly. */
.rev-dokument h2{font-size:26px;line-height:1.25;margin-top:46px;margin-bottom:12px}
.rev-dokument h3{font-size:18.5px;line-height:1.3;margin-top:30px;margin-bottom:8px}
.rev-dokument p,.rev-dokument li{font-size:16.5px;line-height:1.7;color:#2A3134}
.rev-dokument li{margin-bottom:9px}
.rev-dokument ul{padding-left:22px}


/* === odstep nad zgoda w formularzach (advanced-form-accept) ===
   Blok zgody NIE MA wlasnego ustawienia marginesu - w rejestrze bloku nie ma ani
   margin, ani padding, a arkusz Kadence wprost ustawia .kb-radio-check-item{margin:0}.
   Odstepy miedzy polami robi ustawienie "gap" formularza, ale jest wspolne dla WSZYSTKICH
   pol i wynosi 0 - podniesienie go rozsunieloby caly formularz, a on ma byc zwarty.
   Bez tego pole zgody stalo 2 px pod kreska pola wyzej i wygladalo, jakby jej dotykalo.
   Dotyczy obu formularzy: wyceny (792 - strona glowna i /sprzedaj/) i kontaktu (837).
   UWAGA na selektor: sama klasa bloku PRZEGRYWA. Ustawienie gap formularza emituje
   regule o specyficznosci dwoch klas na .kb-adv-form-field, wiec tutaj musza byc dwie
   klasy. Zmierzone w przegladarce: 1 klasa = 0 px, 2 klasy = 16 px. Bez !important. */
.kb-adv-form-field.wp-block-kadence-advanced-form-accept{margin-top:16px}


/* === menu wysrodkowane miedzy logo a telefonem ===
   Kadence trzyma rzad naglowka na siatce i ustawia ja na sztywno w header.min.css:
   .site-header-row-center-column{grid-template-columns:1fr auto 1fr}. Boki sa wiec
   zawsze rowne, a u nas nie sa: lewa to samo logo (112 px), prawa to telefon
   i przycisk (310 px). Menu dostawalo przez to 197 px luzu z lewej i 0 z prawej.
   W Customizerze nie ma na to zadnej opcji - sprawdzone 16.09.2026 - stad ta regula.
   auto 1fr auto: skrajne kolumny na szerokosc tresci, menu centruje sie w tym,
   co zostalo. Wlaczone od 1100 px, bo ponizej kontener jest wezszy niz
   122 + 628 + 298 i menu nie zmiesciloby sie w srodkowej kolumnie. */
@media (min-width: 1100px){
  #main-header .site-header-row.site-header-row-center-column{grid-template-columns:auto 1fr auto}
}
