.elementor-kit-7{--e-global-color-primary:#0060A7;--e-global-color-secondary:#D55C13;--e-global-color-text:#1A2026;--e-global-color-accent:#0060A7;--e-global-color-termia_akcent:#0060A7;--e-global-color-termia_akcent_2:#D55C13;--e-global-color-termia_naglowek:#1A2026;--e-global-color-termia_tekst_slaby:#636A71;--e-global-color-termia_tlo:#F5F7FA;--e-global-color-termia_tlo_alt:#E7EBEF;--e-global-color-termia_karta:#FFFFFF;--e-global-color-termia_obramowanie:#CCD2D7;--e-global-color-termia_ciemne:#1A2026;--e-global-color-termia_na_ciemnym:#F5F7FA;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Public Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Public Sans";--e-global-typography-accent-font-weight:600;color:#1A2026;font-family:"Public Sans", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#0060A7;font-family:"Archivo", Sans-serif;font-size:15px;font-weight:600;letter-spacing:0.2px;color:#FFFFFF;border-radius:2px 2px 2px 2px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#1A2026;color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#0060A7;}.elementor-kit-7 a:hover{color:#1A2026;}.elementor-kit-7 label{color:#636A71;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Karta katalogowa, wersja 2. Ladowane do Site Settings Elementora.
   Kolory przychodza z globalnych kolorow zestawu. Tutaj tylko to, czego
   kontrolki Elementora nie potrafia: kreski, tabele, wiersze specyfikacji.

   Wersja 1 wygladala jak wygenerowana: mono-etykieta nad kazda sekcja,
   siatki identycznych kart z ikonami, wysrodkowany stos. Te wzorce sa tu
   celowo wycofane, a nie tylko przemalowane. */

:root {
  --t-linia: #CCD2D7;
  --t-linia-2: #AEB6BE;
  --t-tekst: #1A2026;
  --t-slaby: #636A71;
  --t-tlo: #F5F7FA;
  --t-tlo-alt: #E7EBEF;
  --t-akcent: #0060A7;
  --t-cieply: #B24A12;
  --t-gr-cieply: #E38A3F;
  --t-naglowki: Archivo, "Helvetica Neue", Arial, sans-serif;
  --t-tresc: "Public Sans", system-ui, -apple-system, sans-serif;
}

/* --- typografia ---------------------------------------------------------- */
h1, h2, h3, h4,
.elementor-widget-heading .elementor-heading-title {
  font-family: var(--t-naglowki);
  letter-spacing: -0.015em;
  line-height: 1.1;
  font-weight: 700;
}
h2, .elementor-widget-heading h2.elementor-heading-title { font-size: clamp(1.7rem, 3vw, 2.1rem); }
h3, .elementor-widget-heading h3.elementor-heading-title { font-size: 1.15rem; letter-spacing: -0.005em; }
.elementor-widget-text-editor { line-height: 1.62; }
.elementor-widget-text-editor p + p { margin-top: 0.85em; }
.miara .elementor-widget-container > *, .miara p { max-width: 68ch; }
p.lead {
  font-size: clamp(1.1rem, 1.6vw, 1.28rem);
  line-height: 1.5;
  color: var(--t-tekst);
  max-width: 62ch;
}
/* Liczby maja rowna szerokosc, zeby kolumny sie zgadzaly. Bez fontu monospace:
   monospace na stronie instalatora to kostium, nie decyzja. */
.tabela-param, .pasek-danych, .wiersz-nr, .krok-nr, .wielki-numer {
  font-variant-numeric: tabular-nums;
}

/* --- hero ---------------------------------------------------------------- */
.hero h1, .hero .elementor-heading-title {
  font-size: clamp(2.2rem, 4.6vw, 3.4rem);
  max-width: 20ch;
}
.hero .lead { max-width: 54ch; color: #D6DEE6; }
.hero-cta { gap: 12px; margin-top: 12px; }
.hero-cta .elementor-button { padding: 14px 26px; font-size: 1rem; }

/* Pasek danych pod hero: cztery wartosci, ktore klient i tak sprawdzi. */
.pas-dane { border-bottom: 1px solid var(--t-linia); }
.dana-wartosc .elementor-heading-title {
  font-family: var(--t-naglowki);
  font-size: clamp(1.1rem, 2vw, 1.45rem);
  color: var(--t-tekst);
  line-height: 1.15;
}
.dana-etykieta .elementor-heading-title {
  font-family: var(--t-tresc);
  font-size: 0.75rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--t-slaby);
  margin-top: 4px;
}
.dana { border-left: 1px solid var(--t-linia); padding-left: 16px; }
.dana:first-child { border-left: 0; padding-left: 0; }

/* --- wiersze specyfikacji (nastepca siatki kart) ------------------------- */
.wiersze { border-top: 1px solid var(--t-linia); }
.wiersz {
  border-bottom: 1px solid var(--t-linia);
  padding: 22px 0;
  align-items: baseline;
}
.wiersz:hover { background: rgba(0, 96, 167, 0.03); }
.wiersz-nr .elementor-heading-title {
  font-family: var(--t-naglowki);
  font-size: 0.95rem;
  color: var(--t-cieply);
  letter-spacing: 0.02em;
}
.wiersz-nr { width: 52px; flex: 0 0 52px; }
.wiersz-tytul .elementor-heading-title { font-size: 1.12rem; margin-bottom: 4px; }
.wiersz-tresc p { color: var(--t-slaby); font-size: 1rem; max-width: 72ch; margin: 0; }
.wiersz-wartosc .elementor-heading-title {
  font-family: var(--t-naglowki);
  font-size: 0.95rem;
  color: var(--t-tekst);
  text-align: right;
}
.sekcja-ciemna .wiersze { border-top-color: rgba(255,255,255,.16); }
.sekcja-ciemna .wiersz { border-bottom-color: rgba(255,255,255,.16); }
.sekcja-ciemna .wiersz-tresc p { color: #B9C4CE; }
.sekcja-ciemna .wiersz-nr .elementor-heading-title { color: var(--t-gr-cieply); }

/* --- kroki --------------------------------------------------------------- */
.krok { border-top: 2px solid var(--t-tekst); padding-top: 14px; }
.krok-nr .elementor-heading-title {
  font-family: var(--t-naglowki);
  font-size: 2.2rem;
  line-height: 1;
  color: var(--t-cieply);
}
.krok-tytul .elementor-heading-title { font-size: 1.05rem; margin: 10px 0 6px; }
.krok p { color: var(--t-slaby); font-size: 0.97rem; margin: 0; }

/* --- cytat --------------------------------------------------------------- */
.sekcja-cytat { border-top: 1px solid var(--t-linia); border-bottom: 1px solid var(--t-linia); }
.cytat .elementor-heading-title {
  font-size: clamp(1.5rem, 3.2vw, 2.15rem);
  line-height: 1.24;
  max-width: 26ch;
  font-weight: 600;
}
.cytat-podpis p { color: var(--t-slaby); font-size: 0.95rem; margin-top: 12px; }

/* --- listy proste (bez ikon) --------------------------------------------- */
.lista-prosta .elementor-icon-list-item { border-bottom: 1px solid var(--t-linia); padding: 12px 0; }
.lista-prosta .elementor-icon-list-item:last-child { border-bottom: 0; }
.lista-prosta .elementor-icon-list-icon { display: none; }
.lista-prosta .elementor-icon-list-text { padding-left: 0; font-size: 1.02rem; color: var(--t-tekst); }
.lista-prosta .poz-opis { display: block; color: var(--t-slaby); font-size: 0.95rem; margin-top: 3px; }
.lista-prosta .poz-wartosc { color: var(--t-cieply); margin-left: 8px; font-size: 0.93rem; }
.sekcja-ciemna .lista-prosta .elementor-icon-list-item { border-bottom-color: rgba(255,255,255,.14); }
.sekcja-ciemna .lista-prosta .poz-opis { color: #B9C4CE; }
.lista-kontakt .elementor-icon-list-text { font-family: var(--t-naglowki); }

/* --- tabela parametrow --------------------------------------------------- */
.tabela-param table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.98rem;
  background: #fff;
  border: 1px solid var(--t-linia-2);
}
.tabela-param th {
  font-family: var(--t-naglowki);
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: left;
  color: var(--t-tekst);
  background: var(--t-tlo-alt);
  border-bottom: 1px solid var(--t-linia-2);
  padding: 11px 13px;
  white-space: nowrap;
}
.tabela-param td { border-bottom: 1px solid var(--t-linia); padding: 12px 13px; vertical-align: top; }
.tabela-param tr:last-child td { border-bottom: 0; }
.tabela-param tr:hover td { background: var(--t-tlo); }
.tabela-param td:first-child { font-weight: 600; width: 26%; }
.tabela-param .mono { white-space: nowrap; color: var(--t-cieply); font-weight: 600; }
@media (max-width: 767px) {
  .tabela-param { overflow-x: auto; }
  .tabela-param table { min-width: 520px; }
}

/* --- pasy grafitowe ------------------------------------------------------ */
.sekcja-ciemna a { color: #93BDE9; }
.sekcja-ciemna .tabela-param table { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.2); color: #E9EEF3; }
.sekcja-ciemna .tabela-param th { background: rgba(255,255,255,.07); color: #F5F7FA; border-bottom-color: rgba(255,255,255,.22); }
.sekcja-ciemna .tabela-param td { border-bottom-color: rgba(255,255,255,.12); }
.sekcja-ciemna .tabela-param tr:hover td { background: rgba(255,255,255,.05); }

/* --- pas kontaktowy ------------------------------------------------------ */
.wielki-numer .elementor-heading-title {
  font-family: var(--t-naglowki);
  font-size: clamp(2.4rem, 6vw, 4rem);
  line-height: 1;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 8px 0 18px;
}
.pas-cta .miara p { color: #C6D0DA; }

/* --- zdjecia ------------------------------------------------------------- */
.pas-foto img, .kadr img { display: block; width: 100%; border: 1px solid var(--t-linia); }
.podpis p {
  font-size: 0.82rem;
  color: var(--t-slaby);
  margin-top: 8px;
  letter-spacing: 0.01em;
}
.kadr img { aspect-ratio: 4 / 3; object-fit: cover; }

/* --- przyciski ----------------------------------------------------------- */
.elementor-button { border-radius: 2px; font-family: var(--t-naglowki); font-weight: 600; }

/* --- pytania ------------------------------------------------------------- */
.pytania .elementor-accordion-item { border: 0; border-bottom: 1px solid var(--t-linia); }
.pytania .elementor-tab-title { padding: 18px 0; font-family: var(--t-naglowki); font-size: 1.05rem; }
.pytania .elementor-tab-content { padding: 0 0 18px; color: var(--t-slaby); }

/* --- naglowek witryny ---------------------------------------------------- */
.naglowek-glowny { border-bottom: 1px solid var(--t-linia); }
.naglowek-glowny .elementor-nav-menu--main .elementor-nav-menu { flex-wrap: nowrap; }
.naglowek-glowny .elementor-nav-menu--main .elementor-item {
  font-family: var(--t-naglowki);
  font-weight: 600;
  font-size: 0.97rem;
  white-space: nowrap;
  padding-left: 12px;
  padding-right: 12px;
}
.naglowek-glowny .elementor-button { white-space: nowrap; padding: 12px 20px; }
.naglowek-glowny .elementor-widget-image img { max-height: 46px; width: auto; }
.pasek-status { border-bottom: 1px solid rgba(255,255,255,.12); }
.pasek-status .elementor-widget-text-editor p { font-size: 0.82rem; letter-spacing: 0.02em; margin: 0; }

/* --- stopka -------------------------------------------------------------- */
.stopka .elementor-heading-title {
  font-size: 0.78rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: #9AA7B3;
}
.stopka .lista-prosta .elementor-icon-list-text { font-size: 0.97rem; }
.stopka-dol .elementor-widget-text-editor p { font-size: 0.82rem; color: #8F9BA6; }

/* --- telefon ------------------------------------------------------------- */
@media (max-width: 767px) {
  .tylko-desktop { display: none !important; }
  .pasek-status { padding-top: 7px !important; padding-bottom: 7px !important; }
  .naglowek-glowny { padding-top: 10px !important; padding-bottom: 10px !important; }
  .naglowek-glowny .elementor-widget-image img { max-height: 36px; }
  .hero h1, .hero .elementor-heading-title { max-width: none; }
  .hero-cta { flex-direction: column; align-items: stretch; }
  .hero-cta .elementor-button { width: 100%; text-align: center; }
  .dana { border-left: 0; padding-left: 0; }
  .wiersz { flex-wrap: wrap; }
  .wiersz-nr { flex: 0 0 34px; width: 34px; }
  .wiersz-wartosc .elementor-heading-title { text-align: left; }
  .krok { border-top-width: 2px; }
}

/* --- druk ---------------------------------------------------------------- */
@media print {
  .sekcja-ciemna { background: #fff !important; }
  .sekcja-ciemna *, .wielki-numer .elementor-heading-title { color: #000 !important; }
  .naglowek-glowny, .pasek-status, .stopka, .stopka-dol, .hero-cta { display: none; }
  .tabela-param table, .tabela-param th, .tabela-param td { border-color: #000 !important; }
  .wiersz { break-inside: avoid; }
}

/* --- poprawki po kontroli wzrokowej v2 ----------------------------------- */
/* Kolory z zestawu Elementora maja wyzsza specyficznosc (.elementor-kit-N
   .elementor-widget-heading .elementor-heading-title), wiec wlasne kolory
   liczb trzeba podniesc o jeden poziom, nie rzucac !important. */
.dana .dana-wartosc .elementor-heading-title { color: var(--t-tekst); }
.dana .dana-etykieta .elementor-heading-title { color: var(--t-slaby); }
.wiersz .wiersz-nr .elementor-heading-title { color: var(--t-cieply); }
.wiersz .wiersz-tytul .elementor-heading-title { color: var(--t-tekst); }
.wiersz .wiersz-wartosc .elementor-heading-title { color: var(--t-tekst); }
.krok .krok-nr .elementor-heading-title { color: var(--t-cieply); }
.krok .krok-tytul .elementor-heading-title { color: var(--t-tekst); }
.pas-cta .wielki-numer .elementor-heading-title { color: #FFFFFF; }
.sekcja-ciemna .wiersz .wiersz-nr .elementor-heading-title { color: var(--t-gr-cieply); }
.sekcja-ciemna .wiersz .wiersz-tytul .elementor-heading-title,
.sekcja-ciemna .wiersz .wiersz-wartosc .elementor-heading-title { color: #F1F5F8; }

/* Nawigacja nachodzila na hamburger: mniejszy krok pozycji i miejsce po prawej. */
.naglowek-glowny .elementor-nav-menu--main .elementor-item {
  padding-left: 9px;
  padding-right: 9px;
  font-size: 0.94rem;
}
.naglowek-glowny .elementor-widget-nav-menu { flex-shrink: 1; min-width: 0; }
.naglowek-glowny .elementor-menu-toggle { margin-left: 6px; }
@media (max-width: 1200px) {
  .naglowek-glowny .elementor-nav-menu--main .elementor-item { padding-left: 7px; padding-right: 7px; font-size: 0.9rem; }
}

/* Numery wierszy byly za male, zeby prowadzic wzrok w dol kolumny. */
.wiersz .wiersz-nr .elementor-heading-title { font-size: 1.05rem; }
.naglowek-glowny .elementor-widget-nav-menu + .elementor-widget-nav-menu { margin-left: 10px; }

/* Stopka: numer jest wazniejszy od reszty kontaktu. */
.stopka .stopka-numer .elementor-heading-title {
  font-family: var(--t-naglowki);
  font-size: 1.6rem;
  color: #FFFFFF;
  letter-spacing: -0.01em;
  margin: 6px 0 10px;
}
.stopka .elementor-widget-text-editor p { color: #B9C4CE; font-size: 0.95rem; }/* End custom CSS */