/* Ręczne uzupełnienia do wyglądu przeniesionego z Elementora (to, co robiły jego skrypty) i poprawki (wzór: stylmetal-strona). */
:root {
  --sm-akcent: #C46B28;        /* pomarańcz przycisków eko-stal.pl */
  --sm-akcent-ciemny: #A6561C; /* ten sam odcień do białego tekstu: kontrast 5,3:1 (jak w przeniesionym CSS) */
  --sm-grafit: #2E2C2C;
  --sm-tekst: #3D3A3A;
  --sm-szary: #616161;
  --sm-linia: #E1E1E1;
  --sm-krój: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
::selection { background: rgb(196 107 40 / .25); }

/* Przyklejony pasek (Elementor „sticky”) */
.sm-przyklejony--aktywny { position: fixed !important; top: 0; z-index: 99; margin-top: 0 !important; }
/* Kolumna zdjęć produktu: zwykłe sticky pod nagłówkiem (bez zaślepki w siatce) */
@media (min-width: 1025px) { .sm-przyklejony[data-przyklej~="desktop"]:not(header *) { position: sticky; top: 110px; align-self: start; } }

/* Animacja wejścia jak w Elementorze, tylko gdy działa JS i użytkownik nie wyłączył ruchu */
@media (prefers-reduced-motion: no-preference) {
  .sm-js .sm-anim:not(.sm-widoczny) { opacity: 0; }
  .sm-js .sm-anim.sm-widoczny { animation: sm-wejscie .9s cubic-bezier(.16, 1, .3, 1) both; }
}
@keyframes sm-wejscie { from { opacity: 0; transform: translate3d(0, 40px, 0); } to { opacity: 1; transform: none; } }

/* Popupy Elementora zastąpiło okno zapytania */
.elementor-location-popup { display: none; }

/* Na telefonie strona przesuwała się w bok; clip (a nie hidden), żeby działało przyklejanie */
html, body { overflow-x: clip; }

/* ---------- Telefon: nagłówek przyklejony, cienki pasek z mailem zastępuje pasek „Zadzwoń” u dołu ---------- */
@media (max-width: 767px) {
  .elementor-location-header { position: sticky; top: 0; z-index: 90; background: #fff; box-shadow: 0 1px 0 var(--sm-linia); }
  .elementor-location-header .elementor-element-c5e28f9 { display: none !important; }
  .elementor-location-header .elementor-element-c5e28f9 + .sm-zaslepka, .sm-zaslepka { display: none; }
  body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
}
.sm-pasek { display: none; }
@media (max-width: 767px) {
  .sm-pasek {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 95; display: grid; grid-template-columns: 1fr 1fr; gap: 8px;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom)); background: rgb(255 255 255 / .96);
    box-shadow: 0 -6px 24px rgb(36 36 36 / .12); backdrop-filter: saturate(1.4) blur(8px);
  }
  .sm-pasek a {
    display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; border-radius: 10px;
    font: 500 16px/1.1 var(--sm-krój); text-decoration: none; text-align: center;
  }
  .sm-pasek__tel { background: var(--sm-akcent-ciemny); color: #fff; }
  .sm-pasek__tel:active { background: var(--sm-grafit); }
  .sm-pasek__wycena { background: #fff; color: var(--sm-grafit); border: 1.5px solid var(--sm-grafit); }
  .sm-menu-otwarte .sm-pasek { display: none; }
}

/* ---------- Baner zgód: „Odrzuć” i „Akceptuję” tej samej wielkości (RODO, Adrian 27.10), ustawienia jako mały link ---------- */
#sm-zgody { position: fixed; z-index: 9999; left: 10px; right: 10px; bottom: calc(78px + env(safe-area-inset-bottom)); font: 400 14px/1.45 var(--sm-krój); color: var(--sm-tekst); }
@media (min-width: 768px) { #sm-zgody { left: 24px; right: auto; bottom: 24px; max-width: 430px; } }
.smz-okno { display: grid; gap: 10px; background: #fff; border-radius: 14px; padding: 18px 18px 8px; box-shadow: 0 16px 48px rgb(36 36 36 / .28), 0 2px 6px rgb(36 36 36 / .1); }
.smz-tytul { margin: 0; font: 500 17px/1.25 var(--sm-krój); color: var(--sm-grafit); }
.smz-tekst { margin: 0; }
.smz-tekst a { color: var(--sm-akcent-ciemny); text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
/* „Odrzuć” obok „Akceptuję”, ta sama wielkość (RODO: odmowa tak łatwa jak zgoda, Adrian 27.10) */
.smz-przyciski { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.smz-odrzuc { width: 100%; min-height: 54px; border: 1.5px solid #111827; border-radius: 10px; background: #fff; color: #111827; font: 500 17px/1 var(--sm-krój); cursor: pointer; box-shadow: none; }
.smz-odrzuc:hover, .smz-odrzuc:focus { background: #F3F4F6; color: #111827; }
.smz-akceptuje, .smz-zapisz { width: 100%; min-height: 54px; border: 0; border-radius: 10px; background: var(--sm-akcent-ciemny); color: #fff; font: 500 17px/1 var(--sm-krój); cursor: pointer; box-shadow: none; }
.smz-akceptuje:hover, .smz-akceptuje:focus, .smz-zapisz:hover, .smz-zapisz:focus { background: var(--sm-grafit); color: #fff; }
.smz-zapisz { min-height: 46px; font-size: 15px; background: #fff; color: var(--sm-grafit); border: 1.5px solid var(--sm-grafit); }
.smz-zapisz:hover, .smz-zapisz:focus { background: #F1F3F5; color: var(--sm-grafit); }
.smz-wiecej { justify-self: center; min-height: 36px; padding: 0 8px; background: none; border: 0; color: var(--sm-szary); font: 400 13px/1 var(--sm-krój); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; box-shadow: none; }
.smz-wiecej:hover, .smz-wiecej:focus { background: none; color: var(--sm-grafit); }
.smz-okno button:focus-visible, .smz-link:focus-visible { outline: 3px solid var(--sm-akcent); outline-offset: 2px; }
.smz-okno [hidden] { display: none !important; }
.smz-ustawienia { display: grid; gap: 10px; padding: 4px 0 6px; }
.smz-kat { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; cursor: pointer; }
.smz-kat b { display: block; font-weight: 500; color: var(--sm-grafit); }
.smz-kat input { width: 20px; height: 20px; margin-top: 1px; accent-color: var(--sm-akcent-ciemny); flex: none; }
.smz-link { display: block; margin: 0 auto; padding: 12px; background: none; border: 0; color: inherit; opacity: .75; font: inherit; font-size: 13px; text-decoration: underline; cursor: pointer; }
.smz-link:hover, .smz-link:focus { background: none; color: inherit; }

/* ---------- Menu na telefonie: wysuwany panel ---------- */
.sm-menu-otwarte, .sm-menu-otwarte body { overflow: hidden; }
.sm-menu { position: fixed; inset: 0; z-index: 10000; font-family: var(--sm-krój); }
.sm-menu[hidden] { display: none; }
.sm-menu__tlo { position: absolute; inset: 0; background: rgb(36 36 36 / .55); opacity: 0; transition: opacity .28s ease; }
.sm-menu__panel {
  position: absolute; top: 0; right: 0; bottom: 0; width: min(400px, 100%); display: flex; flex-direction: column;
  background: #fff; box-shadow: -12px 0 40px rgb(36 36 36 / .18); overflow-y: auto; overscroll-behavior: contain;
  transform: translateX(100%); transition: transform .28s cubic-bezier(.2, .8, .2, 1);
}
.sm-menu--otwarte .sm-menu__tlo { opacity: 1; }
.sm-menu--otwarte .sm-menu__panel { transform: none; }
.sm-menu__gora { display: flex; align-items: center; justify-content: space-between; padding: 12px 12px 12px 20px; border-bottom: 1px solid var(--sm-linia); }
.sm-menu__logo img { display: block; height: 44px; width: auto; }
.sm-menu__zamknij { display: grid; place-items: center; width: 48px; height: 48px; border: 0; border-radius: 50%; background: #F1F3F5; color: var(--sm-grafit); cursor: pointer; padding: 0; }
.sm-menu__zamknij:hover, .sm-menu__zamknij:focus { background: var(--sm-linia); color: var(--sm-grafit); }
.sm-menu__lista { list-style: none; margin: 0; padding: 0; }
.sm-menu__lista > li { border-bottom: 1px solid var(--sm-linia); }
.sm-menu__link { display: flex; align-items: center; min-height: 58px; padding: 0 24px; font: 400 19px/1.3 var(--sm-krój); color: var(--sm-grafit); text-decoration: none; }
.sm-menu__link:hover, .sm-menu__link:focus { background: #F7F8FA; color: var(--sm-grafit); }
.sm-menu__link[aria-current="page"] { color: var(--sm-akcent-ciemny); font-weight: 500; }
.sm-menu__dol { margin-top: auto; display: grid; gap: 10px; padding: 24px 20px calc(24px + env(safe-area-inset-bottom)); }
.sm-menu__cta, .sm-menu__tel { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 54px; border-radius: 10px; font: 500 16px/1.2 var(--sm-krój); text-decoration: none; text-align: center; padding: 0 16px; }
.sm-menu__tel { background: var(--sm-akcent-ciemny); color: #fff; }
.sm-menu__tel:hover, .sm-menu__tel:focus { background: var(--sm-grafit); color: #fff; }
.sm-menu__cta { border: 1.5px solid var(--sm-grafit); color: var(--sm-grafit); }
.sm-menu__cta:hover, .sm-menu__cta:focus { background: var(--sm-grafit); color: #fff; }
.sm-menu__mail { justify-self: center; padding: 8px; font-size: 15px; color: var(--sm-szary); text-decoration: underline; text-underline-offset: 3px; }
.sm-menu a:focus-visible, .sm-menu button:focus-visible { outline: 3px solid var(--sm-akcent); outline-offset: -3px; }
@media (prefers-reduced-motion: reduce) { .sm-menu__panel, .sm-menu__tlo { transition: none; } }

/* ---------- Karuzele (dawniej Swiper): pas przewijany z przyciąganiem ---------- */
.sm-karuzela { overflow: visible !important; }
.sm-karuzela .swiper-wrapper {
  display: flex !important; gap: var(--odstep); overflow-x: auto !important; overflow-y: hidden !important; /* CSS szablonu dawał hidden: palcem nie dało się przesunąć */ scroll-snap-type: x mandatory; scrollbar-width: none;
  transform: none !important; padding-bottom: 4px; overscroll-behavior-x: contain;
}
.sm-karuzela .swiper-wrapper::-webkit-scrollbar { display: none; }
.sm-karuzela .swiper-slide { flex: 0 0 calc((100% - (var(--kol) - 1) * var(--odstep)) / var(--kol)) !important; width: auto !important; margin: 0 !important; scroll-snap-align: start; height: auto; }
@media (max-width: 1024px) { .sm-karuzela { --kol: var(--kol-t) !important; } }
@media (max-width: 767px) { .sm-karuzela { --kol: var(--kol-m) !important; } }
.swiper-pagination, .swiper-pagination-bullets { display: none !important; }
.elementor-swiper-button { cursor: pointer; }

/* ---------- Galeria Elementora: siatka albo mozaika z ustawień widżetu ---------- */
.sm-galeria { display: grid; grid-template-columns: repeat(var(--kol), 1fr); gap: var(--odstep); }
.sm-galeria--mozaika { display: block; columns: var(--kol); column-gap: var(--odstep); }
.sm-galeria--mozaika .e-gallery-item { display: block; break-inside: avoid; margin-bottom: var(--odstep); }
.sm-galeria .e-gallery-item { position: relative; display: block; overflow: hidden; }
.sm-galeria .e-gallery-image { padding-bottom: var(--proporcja, 66.67%); background-size: cover; background-position: center; transition: transform .4s ease; }
.sm-galeria .e-gallery-item:hover .e-gallery-image { transform: scale(1.03); }
/* !important: wartości z ustawień widżetu siedzą w atrybucie style, który inaczej wygrywa z regułami dla telefonu */
@media (max-width: 1024px) { .sm-galeria { --kol: var(--kol-t) !important; --odstep: var(--odstep-t) !important; } }
@media (max-width: 767px) { .sm-galeria { --kol: var(--kol-m) !important; --odstep: var(--odstep-m) !important; } }
.sm-galeria:not(.sm-galeria--mozaika) .e-gallery-image { padding-bottom: var(--proporcja-stala, var(--proporcja, 66.67%)); }

/* Podgląd zdjęcia po kliknięciu */
.sm-podglad { border: 0; padding: 0; background: transparent; max-width: 96vw; max-height: 92vh; }
.sm-podglad::backdrop { background: rgb(0 0 0 / .88); }
.sm-podglad img { display: block; max-width: 96vw; max-height: 88vh; object-fit: contain; margin: auto; }
.sm-podglad button { position: fixed; top: 16px; right: 16px; display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border-radius: 50%; border: 0; background: rgb(255 255 255 / .94); color: #111; cursor: pointer; box-shadow: 0 2px 10px rgb(0 0 0 / .25); transition: background .2s; }
.sm-podglad button:hover { background: #fff; }
.sm-podglad button svg { display: block; }
.sm-podglad .sm-poprz, .sm-podglad .sm-nast { top: 50%; margin-top: -24px; }
.sm-podglad .sm-poprz { left: 16px; right: auto; }
.sm-podglad--jedno .sm-poprz, .sm-podglad--jedno .sm-nast, .sm-podglad--jedno .sm-podglad__licznik { display: none; }
.sm-podglad__licznik { position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); padding: 4px 12px; border-radius: 999px; background: rgb(0 0 0 / .55); color: #fff; font-size: 14px; letter-spacing: .04em; }
@media (max-width: 767px) { .sm-podglad .sm-poprz, .sm-podglad .sm-nast { top: auto; bottom: 12px; margin-top: 0; } .sm-podglad__licznik { bottom: 26px; } }

/* ---------- Okno zapytania o garaż ---------- */
.sm-zapytanie { border: 0; padding: 0; border-radius: 16px; width: min(480px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); background: #fff; color: var(--sm-tekst); box-shadow: 0 24px 64px rgb(36 36 36 / .3); }
.sm-zapytanie::backdrop { background: rgb(36 36 36 / .6); }
.sm-zapytanie__okno { position: relative; display: grid; gap: 14px; padding: 28px 24px 24px; font: 400 15px/1.5 var(--sm-krój); }
.sm-zapytanie__zamknij { position: absolute; top: 10px; right: 10px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: #F1F3F5; color: var(--sm-grafit); cursor: pointer; }
.sm-zapytanie__zamknij:hover, .sm-zapytanie__zamknij:focus { background: var(--sm-linia); color: var(--sm-grafit); }
.sm-zapytanie__tytul { margin: 0; padding-right: 48px; font: 500 24px/1.2 var(--sm-krój); color: var(--sm-grafit); }
.sm-zapytanie__model { margin: -8px 0 0; font-weight: 400; color: var(--sm-akcent-ciemny); }
.sm-zapytanie__wstep, .sm-formularz__rodo { margin: 0; }
.sm-zapytanie__wstep a { color: var(--sm-akcent-ciemny); font-weight: 500; white-space: nowrap; }
.sm-formularz__rodo { font-size: 12px; color: var(--sm-szary); }
.sm-formularz__rodo a { color: inherit; }
.sm-formularz__blad { margin: 0; color: #B42318; font-weight: 400; }
.sm-formularz__blad:empty { display: none; }
.sm-formularz .kf-pyt { margin: 0; padding: 0; border: 0; min-width: 0; }
.sm-formularz .kf-pytanie { padding: 0; margin: 0 0 6px; font-weight: 400; font-size: 14px; color: var(--sm-grafit); }
.sm-formularz .kf-opcj { color: var(--sm-szary); font-weight: 300; }
.sm-formularz input[type=text], .sm-formularz input[type=tel], .sm-formularz input[type=email], .sm-formularz textarea {
  width: 100%; box-sizing: border-box; min-height: 50px; padding: 12px 14px; border: 1.5px solid #C9CDD3; border-radius: 10px;
  font: 400 16px/1.4 var(--sm-krój); color: var(--sm-grafit); background: #fff;
}
.sm-formularz textarea { min-height: 84px; resize: vertical; }
.sm-formularz input:focus, .sm-formularz textarea:focus { outline: none; border-color: var(--sm-akcent); box-shadow: 0 0 0 3px rgb(196 107 40 / .25); }
.sm-formularz .kf-pyt--blad input, .sm-formularz .kf-pyt--blad textarea { border-color: #B42318; }
.sm-formularz .kf-blad { margin: 4px 0 0; font-size: 13px; color: #B42318; }
.sm-formularz .kf-blad:empty { display: none; }
.kf-zgoda { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; cursor: pointer; }
.kf-zgoda input { width: 22px; height: 22px; margin: 1px 0 0; flex: none; accent-color: var(--sm-akcent-ciemny); }
.sm-ukryte, .sm-pulapka { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sm-przycisk {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 24px; border: 0; border-radius: 10px;
  background: var(--sm-akcent-ciemny); color: #fff; font: 500 16px/1.2 var(--sm-krój); text-decoration: none; cursor: pointer;
}
.sm-przycisk:hover, .sm-przycisk:focus { background: var(--sm-grafit); color: #fff; }
.sm-przycisk:disabled { opacity: .6; cursor: wait; }
.sm-przycisk--jasny { background: #fff; color: var(--sm-grafit); border: 1.5px solid var(--sm-grafit); }
.sm-formularz__wyslij { width: 100%; }

/* ---------- Strona 404 ---------- */
.sm-404 { max-width: 640px; margin: 0 auto; padding: 80px 20px; font: 400 17px/1.5 var(--sm-krój); color: var(--sm-tekst); }
.sm-404 h1 { font: 500 clamp(28px, 6vw, 44px)/1.15 var(--sm-krój); color: var(--sm-grafit); margin: 0 0 12px; }
.sm-404 p:last-child { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }

.sm-pasek a { font-size: 15px; padding: 0 8px; }
.sm-zapytanie button { box-shadow: none; }

.sm-formularz { display: grid; gap: 14px; font: 400 15px/1.5 var(--sm-krój); color: var(--sm-tekst); }
/* Telefon: stałe +48 przed polem, wpisuje się 9 cyfr */
.kf-tel { display: flex; }
.kf-tel__kraj { display: grid; place-items: center; padding: 0 12px; border: 1.5px solid #C9CDD3; border-right: 0; border-radius: 10px 0 0 10px; background: #F2F4F7; color: var(--sm-grafit); font-weight: 400; }
.sm-formularz .kf-tel input[type=tel] { flex: 1; min-width: 0; border-radius: 0 10px 10px 0; letter-spacing: .02em; }

/* Cele dotyku na telefonie: przycisk menu i linki stopki co najmniej 44 px */
.sm-menu-przycisk { display: inline-flex !important; align-items: center; justify-content: center; min-width: 48px; min-height: 48px; }
@media (max-width: 767px) {
  .elementor-location-footer .elementor-icon-list-item > a { display: inline-flex; align-items: center; min-height: 44px; }
  .elementor-location-footer .elementor-icon-list-items { row-gap: 0 !important; }
  .elementor-location-footer a[href*="polityka"] { display: inline-flex; align-items: center; min-height: 44px; }
}

/* Linki w treści opisów odróżnione nie tylko kolorem */
.elementor-widget-text-editor p a, .woocommerce-product-details__short-description a { text-decoration: underline; text-underline-offset: 3px; }

/* Produkt: co jest w cenie (to samo, co mówi strona: transport i montaż) */
.sm-oferta { display: grid; gap: 6px; margin: 4px 0 16px; padding: 16px 18px; border-radius: 12px; background: #F5F5F5; font: 400 15px/1.5 var(--sm-krój); color: var(--sm-tekst); }
.sm-oferta p { margin: 0; }
.sm-oferta b { font-weight: 600; color: var(--sm-grafit); }
.sm-oferta--krotka { display: block; background: none; padding: 0; }
@media (max-width: 389px) { .sm-pasek a { font-size: 14px; white-space: nowrap; padding: 0 4px; gap: 6px; } }

/* Strona podziękowania (/typ/) */
.sm-typ { max-width: 680px; margin: 0 auto; padding: 72px 20px 96px; font: 400 17px/1.55 var(--sm-krój); color: var(--sm-tekst); }
.sm-typ h1 { font: 700 clamp(28px, 6vw, 42px)/1.15 var(--sm-krój); color: var(--sm-grafit); margin: 0 0 14px; }
.sm-typ p { margin: 0 0 14px; }
.sm-typ__przyciski { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

/* =================== Telefon: poprawki wyglądu (Adrian i Codex, 02.10; recenzje/telefon-codex.md) =================== */
a[x-apple-data-detectors] { color: inherit !important; text-decoration: none !important; }

/* Zdjęcia sekcji obok tekstu: kadr od środka (był lewy górny róg, garaż „uciekał”) */
:is(.elementor-element-3c66fe58, .elementor-element-c12dc43, .elementor-element-f8766e1, .elementor-element-cc43ade, .elementor-element-9cf94ea) { background-position: 50% 50% !important; }
/* Karty garaży (karuzela i /garaze/): zdjęcie poziome 3:2 (jak zdjęcia z grafika/), cały garaż */
.elementor-element-5d18f01 { aspect-ratio: 3 / 2; min-height: 0 !important; height: auto !important; background-position: 50% 50% !important; background-size: cover !important; }

/* „Jak to działa”: nowe zdjęcie kroku 3 w tych samych proporcjach co kroki 1 i 2 */
img[src*="/tla/jak3-P"] { aspect-ratio: 800 / 501; object-fit: cover; }

/* Produkt: nagłówek na jednolitym tle (zdjęcie szablonu pokazywało inny garaż niż oferta), zapytanie przy cenie, miniatury przełączają główne zdjęcie, bez zdjęcia innego garażu pod opisem (Adrian 02.10) */
.elementor-element-bfcd112 { background-image: none !important; background-color: #F5F5F5 !important; min-height: 0 !important; }
.elementor-element-bfcd112::before { display: none !important; }
.sm-oferta-blok { display: grid; gap: 14px; justify-items: start; margin-top: 6px; position: relative; z-index: 2; align-self: flex-start; max-width: 520px; }
.sm-oferta-blok .sm-oferta { margin: 0; }
.elementor-element-bfcd112 .elementor-widget-woocommerce-product-price, .elementor-element-bfcd112 .price { margin-bottom: 0 !important; }
.elementor-element-bfcd112 > .e-con-inner { gap: 10px !important; }
.elementor-element-199df25 img:focus-visible { outline: 2px solid var(--sm-akcent-ciemny); outline-offset: 3px; }
.elementor-element-199df25 img { cursor: zoom-in; }
.elementor-element-287ee6a .sm-galeria a { border-radius: 8px; transition: opacity .2s; }
.elementor-element-287ee6a .sm-galeria a:not([aria-current]) { opacity: .62; }
.elementor-element-287ee6a .sm-galeria a[aria-current] { outline: 2px solid var(--sm-akcent-ciemny); outline-offset: 2px; }
.elementor-element-287ee6a:not(:has(.e-gallery-item + .e-gallery-item)) { display: none; }
.elementor-element-2fb2193 { display: none !important; }
/* „O nas”: 8 zdjęć i link do wszystkich realizacji */
.sm-galeria-wiecej { margin: 20px 0 0; text-align: center; }
@media (max-width: 767px) { .sm-oferta-blok .sm-przycisk { width: 100%; } }

/* =================== Karuzele: opinie i modele (wszystkie strony, Adrian 03.10) ===================
   Telefon: jedna pełna karta naraz, przyciągana do środka, zawsze o jedną kartę. Komputer: 3 karty, strzałki po bokach,
   kropki pod spodem, przeciąganie myszką (strona.js). Strzałki Elementora zastępuje nasza nawigacja. */
.sm-karuzela { overflow: visible !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
.sm-karuzela .swiper-wrapper { align-items: flex-start; touch-action: pan-x pan-y; transition: height .3s ease-out; }
.sm-karuzela .swiper-slide { scroll-snap-stop: always; min-width: 0 !important; max-width: 100%; }
/* karta nie może być szersza od pasa: przy większej przeglądarka przewija ją swobodnie i pas staje „w połowie” */
.sm-karuzela .swiper-slide > * { min-width: 0 !important; max-width: 100% !important; box-sizing: border-box; }
.sm-karuzela .swiper-wrapper.sm-ciagniety { scroll-snap-type: none !important; cursor: grabbing; user-select: none; }
.sm-karuzela .swiper-wrapper a, .sm-karuzela .swiper-wrapper img { -webkit-user-drag: none; }
.elementor-widget-loop-carousel .elementor-swiper-button, .elementor-widget-n-carousel .elementor-swiper-button { display: none !important; }
.sm-karuzela-nav { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 18px; }
.sm-karuzela-nav button { appearance: none; box-shadow: none !important; }
.sm-karuzela-nav__strzalka {
  flex: none; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border-radius: 50%;
  border: 1.5px solid #D6D6D6; background: #fff; color: var(--sm-grafit); cursor: pointer; transition: border-color .2s, opacity .2s, transform .2s;
}
.sm-karuzela-nav__strzalka:hover:not(:disabled) { border-color: var(--sm-akcent-ciemny); }
.sm-karuzela-nav__strzalka:active:not(:disabled) { transform: scale(.94); }
.sm-karuzela-nav__strzalka:disabled { opacity: .35; cursor: default; }
.sm-karuzela-nav__kropki { display: flex; flex-wrap: wrap; justify-content: center; max-width: 220px; }
.sm-karuzela-nav__kropki button { width: 20px; height: 28px; padding: 0; border: 0 !important; background: transparent !important; cursor: pointer; display: grid; place-items: center; }
.sm-karuzela-nav__kropki button::after { content: ""; width: 16px; height: 7px; border-radius: 4px; background: #CFCFCF; transform: scaleX(.44); transition: transform .25s ease-out, background .25s; }
.sm-karuzela-nav__kropki button[aria-current="true"]::after { transform: none; background: var(--sm-akcent-ciemny); }
/* Opinie: zdjęcie realizacji poziomo nad tekstem (na komputerze było wąską pionową kolumną), mały awatar */
.elementor-widget-n-carousel .swiper-slide > .e-con { padding: 20px !important; }
.elementor-widget-n-carousel .swiper-slide .e-grid { display: flex !important; flex-direction: column; gap: 16px !important; }
.elementor-widget-n-carousel .swiper-slide .e-grid > .e-con:last-child {
  order: -1; width: 100% !important; aspect-ratio: 3 / 2; min-height: 0 !important; height: auto !important;
  background-size: cover !important; background-position: 50% 30% !important; border-radius: 10px;
}
.elementor-widget-n-carousel .swiper-slide .elementor-widget-image img { width: 44px !important; height: 44px !important; }
.elementor-widget-n-carousel .swiper-slide .elementor-widget-text-editor p { color: #4D4D4D; }
@media (max-width: 767px) {
  .sm-karuzela { --odstep: 16px !important; }
  .sm-karuzela .swiper-slide { flex-basis: 100% !important; scroll-snap-align: center; }
}
@media (min-width: 768px) {
  .sm-karuzela .swiper-wrapper { cursor: grab; }
  .elementor-widget-n-carousel .sm-karuzela { --kol: 2 !important; --odstep: 24px !important; }
  /* karty równej wysokości w rzędzie (białe tło jest na wewnętrznej siatce, więc i ona się rozciąga) */
  .elementor-widget-n-carousel .swiper-wrapper { align-items: stretch !important; }
  .elementor-widget-n-carousel .swiper-slide { display: flex; height: auto !important; }
  .elementor-widget-n-carousel .swiper-slide > .e-con { flex: 1; display: flex; }
  .elementor-widget-n-carousel .swiper-slide .e-grid { flex: 1 1 auto; }
}
@media (min-width: 1025px) { .elementor-widget-n-carousel .sm-karuzela { --kol: 3 !important; } }
@media (min-width: 1280px) {  /* strzałki po bokach pasa, kropki pod spodem */
  :has(> .sm-karuzela-nav) { position: relative; }
  .sm-karuzela-nav__strzalka { position: absolute; top: calc(50% - 44px); width: 52px; height: 52px; box-shadow: 0 6px 18px rgb(36 36 36 / .1) !important; }
  .sm-karuzela-nav__strzalka:first-child { left: -70px; }
  .sm-karuzela-nav__strzalka:last-child { right: -70px; }
}

@media (max-width: 767px) {
  /* Nagłówek niższy: więcej miejsca na treść */
  .elementor-location-header .elementor-element-1a9901e { padding-block: 4px !important; min-height: 0 !important; }
  .elementor-location-header .elementor-element-1a9901e img { height: 50px !important; width: auto !important; }
  .sm-pasek { padding-top: 6px; box-shadow: 0 -4px 16px rgb(36 36 36 / .08); }
  .sm-pasek a { min-height: 48px; }

  /* Hero (główna) i wezwanie do działania: zasłona ciemna pod tekstem, jaśniejsza na dole, żeby garaż ze zdjęcia było widać */
  /* Hero główna (Adrian 03.10): tekst niżej, garaż na środku ekranu, przyciski pod garażem; hero = ekran między nagłówkiem a dolnym paskiem */
  /* Hero główna (Adrian 03.10, iPhone): bez przycisków (są w dolnym pasku), u góry większy nagłówek, na środku garaż,
     pod garażem korzyści większe, jedna pod drugą. Wysokość = widoczny ekran między nagłówkiem a dolnym paskiem. */
  .elementor-element-e0b3d79 { min-height: max(calc(100svh - 150px), 470px) !important; padding: 0 !important; background-size: 100% auto !important; background-repeat: no-repeat !important; background-color: #6E9DDF !important; }
  .elementor-element-e0b3d79 > .e-con-inner, .elementor-element-e0b3d79 .elementor-element-1e10773 { flex: 1 1 auto; display: flex !important; flex-direction: column !important; }
  .elementor-element-e0b3d79 > .e-con-inner { padding: 5svh 20px 3svh !important; min-height: inherit; }
  .elementor-element-e0b3d79 .elementor-element-0517b10 { display: none !important; }
  .elementor-element-e0b3d79 .elementor-element-edb080c .elementor-heading-title { font-size: clamp(30px, 8.6vw, 38px) !important; line-height: 1.12 !important; }
  .elementor-element-e0b3d79 .elementor-element-b83b08a .elementor-heading-title { font-size: 17px !important; }
  .elementor-element-e0b3d79 .elementor-element-fcbbd38 { margin-top: auto !important; }
  .elementor-element-e0b3d79 .elementor-element-fcbbd38 .elementor-icon-list-items { gap: 12px !important; }
  .elementor-element-e0b3d79 .elementor-element-fcbbd38 .elementor-icon-list-text { font-size: 19px !important; font-weight: 500 !important; }
  .elementor-element-e0b3d79 .elementor-element-fcbbd38 { --e-icon-list-icon-size: 24px !important; }
  .elementor-element-e0b3d79 .elementor-element-fcbbd38 .elementor-icon-list-icon svg { width: 24px !important; height: 24px !important; }
  .elementor-element-e0b3d79::before { background: linear-gradient(180deg, rgb(24 20 17 / .8) 0%, rgb(24 20 17 / .55) 30%, rgb(24 20 17 / .05) 42%, rgb(24 20 17 / 0) 62%, rgb(24 20 17 / .6) 76%, rgb(24 20 17 / .82) 100%) !important; opacity: 1 !important; }
  .elementor-element-e0b3d79 :is(.elementor-heading-title, .elementor-icon-list-text) { text-shadow: 0 1px 10px rgb(0 0 0 / .45); }
  @media (max-height: 620px) {  /* niskie ekrany (iPhone SE w Safari): hero dłuższe niż ekran, korzyści pod garażem po przewinięciu */
    .elementor-element-e0b3d79 { min-height: 570px !important; }
  }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265)::before {
    background: linear-gradient(180deg, rgb(24 20 17 / .82) 0%, rgb(24 20 17 / .62) 52%, rgb(24 20 17 / .12) 100%) !important; opacity: 1 !important;
  }
  /* CTA: korzyści leżą na jasnej kostce, więc dół ciemniejszy niż w hero */
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265)::before {
    background: linear-gradient(180deg, rgb(24 20 17 / .84) 0%, rgb(24 20 17 / .62) 50%, rgb(24 20 17 / .55) 100%) !important;
  }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-widget-heading:first-child .elementor-heading-title { color: #F3B98F !important; }
  /* Hero „O nas” i nagłówek „Garaże”: jak na głównej — tekst na górze, pod nim pas z całym garażem */
  .elementor-element-4df7d4f { min-height: 0 !important; padding-bottom: 62vw !important; background-size: 100% auto !important; background-repeat: no-repeat !important; background-color: #5F95E6 !important; }
  .elementor-element-4df7d4f::before { background: linear-gradient(180deg, rgb(24 20 17 / .84) 0%, rgb(24 20 17 / .66) 58%, rgb(24 20 17 / .1) 100%) !important; opacity: 1 !important; }
  .elementor-element-0d7ba61 { min-height: 0 !important; padding-bottom: 66vw !important; background-size: 100% auto !important; background-repeat: no-repeat !important; background-color: #9EBDE7 !important; }
  .elementor-element-0d7ba61::before { background: linear-gradient(180deg, #F5F5F5 0%, rgb(245 245 245 / .92) 38%, rgb(245 245 245 / 0) 62%) !important; opacity: 1 !important; }
  /* Pomarańczowe podpisy nad nagłówkiem na ciemnych zdjęciach: jaśniejszy odcień (kontrast) */
  :is(.elementor-element-4df7d4f, .elementor-element-42ea84c, .elementor-element-a1f23a9) .elementor-widget-heading:first-child .elementor-heading-title { color: #F3B98F !important; }
  /* Produkt: nagłówek na jednolitym tle (zdjęcie w tle pokazywało inny garaż pod tytułem), szczegóły z marginesem */
  .elementor-element-b90102a { padding-inline: 20px !important; }
  /* Kontakt: mapa niższa (była ~500 px), link do polityki w formularzu odróżniony */
  .elementor-widget-google_maps iframe { height: 280px !important; }
  .sm-formularz a, .sm-zapytanie a { text-decoration: underline; text-underline-offset: 3px; }
  /* Hero: korzyści jedna pod drugą */
  .elementor-element-fcbbd38 .elementor-icon-list-items { flex-direction: column !important; align-items: flex-start !important; gap: 10px; margin: 0 !important; }
  .elementor-element-fcbbd38 .elementor-icon-list-item { margin: 0 !important; width: 100%; }
  .elementor-element-fcbbd38 .elementor-icon-list-icon { padding-inline-end: 10px !important; }

  /* Zdjęcia sekcji: poziomo 3:2 zamiast wysokiego 390x422 */
  :is(.elementor-element-3c66fe58, .elementor-element-c12dc43, .elementor-element-f8766e1, .elementor-element-cc43ade, .elementor-element-9cf94ea,
      .elementor-element-6b36ef0, .elementor-element-80da96d, .elementor-element-23117dd) {
    aspect-ratio: 3 / 2; min-height: 0 !important; height: auto !important; background-size: cover !important; background-position: 50% 50% !important;
  }

  /* Pytania i odpowiedzi: zwarte wiersze, cały wiersz do dotknięcia */
  .e-n-accordion { gap: 10px; }
  .e-n-accordion-item-title { padding: 16px 18px !important; }
  .e-n-accordion-item { margin: 0 !important; }

  /* Wezwanie do działania (te same sekcje na 6 stronach): korzyści w zwartych wierszach, drugi przycisk biały */
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-widget-icon-box { width: auto !important; margin: 0 !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-icon-box-wrapper { display: flex !important; flex-direction: row !important; align-items: center; gap: 12px; text-align: left !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-icon-box-icon { margin: 0 !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-icon-box-icon .elementor-icon { font-size: 26px !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-icon-box-icon svg { width: 26px !important; height: 26px !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-icon-box-title { font-size: 18px !important; margin: 0 !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-widget-icon-box + .elementor-widget-icon-box { margin-top: 12px !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .e-con:has(> .e-con-inner > .elementor-widget-icon-box) > .e-con-inner { align-items: flex-start !important; width: fit-content; margin-inline: auto; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-widget-button + .elementor-widget-button .elementor-button { color: #fff !important; border-color: rgb(255 255 255 / .85) !important; background: transparent !important; }

  /* Stopka: zwarta, menu w dwóch kolumnach, dane firmy wyrównane do jednej linii tekstu */
  .elementor-location-footer .elementor-element-74fe959 img { height: 56px !important; width: auto !important; }
  .elementor-location-footer .elementor-element-059f07c { padding-block: 32px 8px !important; }
  .elementor-location-footer .elementor-element-059f07c > .e-con-inner { gap: 24px !important; }
  .elementor-location-footer .elementor-element-d6034c6 .elementor-icon-list-items { display: grid !important; grid-template-columns: 1fr 1fr; }
  .elementor-location-footer .elementor-element-d6034c6 .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
  .elementor-location-footer :is(.elementor-element-8d4be45, .elementor-element-d6034c6, .elementor-element-d6034c6 .elementor-icon-list-items) { width: 100% !important; }
  .elementor-location-footer .elementor-element-1e36062 { align-items: flex-start !important; }
  .elementor-location-footer .elementor-element-74fe959, .elementor-location-footer .elementor-element-74fe959 a { text-align: left !important; display: block; }
  .elementor-location-footer .elementor-element-d3499de .elementor-icon-list-item { align-items: flex-start !important; }
  .elementor-location-footer .elementor-element-d3499de .elementor-icon-list-item > a { align-items: flex-start; padding-block: 10px; min-height: 0; }
  .elementor-location-footer .elementor-element-d3499de .elementor-icon-list-icon { width: 22px; flex: none; padding-top: 2px; }
  .elementor-location-footer .elementor-element-d3499de .elementor-icon-list-item:last-child { padding: 10px 0 0 27px !important; color: #5C5C5C; }
  .elementor-location-footer .elementor-element-72fc6fb > .e-con-inner { flex-direction: column !important; align-items: center !important; gap: 4px !important; text-align: center; }
  .elementor-location-footer .elementor-element-72fc6fb .elementor-heading-title { text-align: center !important; font-size: 14px; }
}

/* tla-ai: start (generuje grafika/publikuj.py, nie edytować ręcznie) */
.e-loop-item-641 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/produkt-6x6-P-800.webp?v=7e3e2f26") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-641 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/produkt-6x6-P-1200.webp?v=44c726bf") !important; } }
.e-loop-item-391 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/produkt-premium-P-800.webp?v=937eebb1") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-391 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/produkt-premium-P-1200.webp?v=3c6e52de") !important; } }
.e-loop-item-645 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-645-P-800.webp?v=2c2d4fdb") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-645 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-645-P-1200.webp?v=d885ca11") !important; } }
.e-loop-item-616 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-616-P-800.webp?v=231c6d4d") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-616 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-616-P-1200.webp?v=3270463e") !important; } }
.e-loop-item-606 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-606-P-800.webp?v=a5e14052") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-606 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-606-P-1200.webp?v=84581095") !important; } }
.e-loop-item-393 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-393-P-800.webp?v=e29c77a7") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-393 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-393-P-1200.webp?v=76d0e86b") !important; } }
.e-loop-item-101 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-101-P-800.webp?v=86cb0502") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-101 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-101-P-1200.webp?v=1ea11c8a") !important; } }
.e-loop-item-609 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-609-P-800.webp?v=ace5923c") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-609 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/karta-609-P-1200.webp?v=381196f3") !important; } }
.e-loop-item-618 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/trwala-P-800.webp?v=8b2f89f3") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-618 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/trwala-P-1200.webp?v=503b2cde") !important; } }
.e-loop-item-633 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/o-nas-baner-P-800.webp?v=fc34ef34") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-633 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/o-nas-baner-P-1200.webp?v=77151b12") !important; } }
.e-loop-item-612 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/jak3-P-800.webp?v=b34ee2be") !important; }
@media (min-resolution: 1.5dppx) { .e-loop-item-612 .elementor-element.elementor-element-5d18f01 { background-image: url("/tla/jak3-P-1200.webp?v=bbc2de0a") !important; } }
@media (max-width: 767px) {
  .elementor .elementor-element.elementor-element-e0b3d79 { background-image: url("/tla/hero-M3-941.webp?v=b9e8bce0") !important; background-position: 50% calc(max(225px, 34svh) - 70vw) !important; }
  .elementor .elementor-element.elementor-element-42ea84c { background-image: url("/tla/hero-M2-941.webp?v=9ed333ef") !important; background-position: 50% 100% !important; }
  .elementor .elementor-element.elementor-element-3e327cb1, .elementor .elementor-element.elementor-element-51f55ea, .elementor .elementor-element.elementor-element-ecdb6cb, .elementor .elementor-element.elementor-element-dea459f, .elementor .elementor-element.elementor-element-edbbb8b, .elementor .elementor-element.elementor-element-14c9265 { background-image: url("/tla/cta-M-941.webp?v=f0fc9870") !important; background-position: 50% 100% !important; }
  .elementor .elementor-element.elementor-element-0d7ba61 { background-image: url("/tla/garaze-M-941.webp?v=0270c9d5") !important; background-position: 50% 100% !important; }
  .elementor .elementor-element.elementor-element-4df7d4f { background-image: url("/tla/o-nas-M-941.webp?v=d5c55822") !important; background-position: 50% 100% !important; }
  .elementor .elementor-element.elementor-element-3c66fe58 { background-image: url("/tla/trwala-P-800.webp?v=8b2f89f3") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-3c66fe58 { background-image: url("/tla/trwala-P-1200.webp?v=503b2cde") !important; } }
  .elementor .elementor-element.elementor-element-c12dc43 { background-image: url("/tla/wymiary-P-800.webp?v=bd2f08f6") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-c12dc43 { background-image: url("/tla/wymiary-P-1200.webp?v=b4790b10") !important; } }
  .elementor .elementor-element.elementor-element-f8766e1 { background-image: url("/tla/transport-P-800.webp?v=d3a9e11e") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-f8766e1 { background-image: url("/tla/transport-P-1200.webp?v=d153df4b") !important; } }
  .elementor .elementor-element.elementor-element-6b36ef0 { background-image: url("/tla/o-nas-baner-P-800.webp?v=fc34ef34") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-6b36ef0 { background-image: url("/tla/o-nas-baner-P-1200.webp?v=77151b12") !important; } }
  .elementor .elementor-element.elementor-element-cc43ade { background-image: url("/tla/jakosc-P-800.webp?v=ca9547df") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-cc43ade { background-image: url("/tla/jakosc-P-1200.webp?v=fe8d1403") !important; } }
  .elementor .elementor-element.elementor-element-9cf94ea { background-image: url("/tla/doswiadczenie-P-800.webp?v=140f1521") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-9cf94ea { background-image: url("/tla/doswiadczenie-P-1200.webp?v=32ed7711") !important; } }
  .elementor .elementor-element.elementor-element-80da96d { background-image: url("/tla/przerywnik-P-800.webp?v=225c94a5") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-80da96d { background-image: url("/tla/przerywnik-P-1200.webp?v=b6c1aae7") !important; } }
  .elementor .elementor-element.elementor-element-23117dd { background-image: url("/tla/realizacje-P-800.webp?v=e41ab2ee") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-23117dd { background-image: url("/tla/realizacje-P-1200.webp?v=c1adf737") !important; } }
  .elementor .elementor-element.elementor-element-a1f23a9 { background-image: url("/tla/realizacje-naglowek-D-800.webp?v=98dec683") !important; background-position: 74% 45% !important; }
  @media (min-resolution: 1.5dppx) { .elementor .elementor-element.elementor-element-a1f23a9 { background-image: url("/tla/realizacje-naglowek-D-1200.webp?v=cac31b26") !important; } }
}
@media (min-width: 768px) {
  .elementor .elementor-element.elementor-element-e0b3d79, .elementor .elementor-element.elementor-element-42ea84c { background-image: url("/tla/hero-D-1920.webp?v=36437745") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-e0b3d79, .elementor .elementor-element.elementor-element-42ea84c { background-image: url("/tla/hero-D-3840.webp?v=bfc6ac29") !important; } }
  .elementor .elementor-element.elementor-element-3e327cb1, .elementor .elementor-element.elementor-element-51f55ea, .elementor .elementor-element.elementor-element-ecdb6cb, .elementor .elementor-element.elementor-element-dea459f, .elementor .elementor-element.elementor-element-edbbb8b, .elementor .elementor-element.elementor-element-14c9265 { background-image: url("/tla/cta-D-1920.webp?v=234227c0") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-3e327cb1, .elementor .elementor-element.elementor-element-51f55ea, .elementor .elementor-element.elementor-element-ecdb6cb, .elementor .elementor-element.elementor-element-dea459f, .elementor .elementor-element.elementor-element-edbbb8b, .elementor .elementor-element.elementor-element-14c9265 { background-image: url("/tla/cta-D-3840.webp?v=c78ee2e8") !important; } }
  .elementor .elementor-element.elementor-element-4df7d4f { background-image: url("/tla/o-nas-D-1920.webp?v=94c22eab") !important; background-position: 50% 30% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-4df7d4f { background-image: url("/tla/o-nas-D-3840.webp?v=95acda84") !important; } }
  .elementor .elementor-element.elementor-element-0d7ba61 { background-image: url("/tla/garaze-D-1920.webp?v=824d062b") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-0d7ba61 { background-image: url("/tla/garaze-D-3840.webp?v=fc5f1981") !important; } }
  .elementor .elementor-element.elementor-element-a1f23a9 { background-image: url("/tla/realizacje-naglowek-D-1920.webp?v=15199a4a") !important; background-position: 50% 40% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-a1f23a9 { background-image: url("/tla/realizacje-naglowek-D-3840.webp?v=e4d1af07") !important; } }
  .elementor .elementor-element.elementor-element-6b36ef0 { background-image: url("/tla/o-nas-baner-D-1920.webp?v=ca995c37") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-6b36ef0 { background-image: url("/tla/o-nas-baner-D-3840.webp?v=b81a66b1") !important; } }
  .elementor .elementor-element.elementor-element-80da96d { background-image: url("/tla/przerywnik-D-1920.webp?v=69884e94") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-80da96d { background-image: url("/tla/przerywnik-D-3840.webp?v=c3ed956e") !important; } }
  .elementor .elementor-element.elementor-element-23117dd { background-image: url("/tla/realizacje-D-1920.webp?v=797c8ebb") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-23117dd { background-image: url("/tla/realizacje-D-3840.webp?v=0887c391") !important; } }
  .elementor .elementor-element.elementor-element-3c66fe58 { background-image: url("/tla/trwala-P-1600.webp?v=037b7cd3") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-3c66fe58 { background-image: url("/tla/trwala-P-2400.webp?v=02d54224") !important; } }
  .elementor .elementor-element.elementor-element-c12dc43 { background-image: url("/tla/wymiary-P-1600.webp?v=0c9fa31b") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-c12dc43 { background-image: url("/tla/wymiary-P-2400.webp?v=89571d66") !important; } }
  .elementor .elementor-element.elementor-element-f8766e1 { background-image: url("/tla/transport-P-1600.webp?v=92c6bd55") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-f8766e1 { background-image: url("/tla/transport-P-2400.webp?v=1467cd14") !important; } }
  .elementor .elementor-element.elementor-element-cc43ade { background-image: url("/tla/jakosc-P-1600.webp?v=a11da872") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-cc43ade { background-image: url("/tla/jakosc-P-2400.webp?v=694d2e44") !important; } }
  .elementor .elementor-element.elementor-element-9cf94ea { background-image: url("/tla/doswiadczenie-P-1600.webp?v=e0c626cb") !important; background-position: 50% 50% !important; }
  @media (min-resolution: 1.5dppx), (min-width: 1921px) { .elementor .elementor-element.elementor-element-9cf94ea { background-image: url("/tla/doswiadczenie-P-2400.webp?v=f58621cd") !important; } }
}
/* tla-ai: koniec */

/* =================== Komputer: kadry zdjęć na każdej szerokości (MacBook, 4K przy 100% i 125%; Adrian 03.10) ===================
   Sekcje ze zdjęciem w tle rosną razem z szerokością ekranu, żeby szeroki ekran nie zamieniał zdjęcia w cienki pasek z uciętym garażem. */
@media (min-width: 768px) {
  .elementor-element-e0b3d79 { min-height: max(750px, 36vw) !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) { min-height: max(750px, 36vw) !important; }
  :is(.elementor-element-4df7d4f, .elementor-element-a1f23a9) { min-height: max(520px, 30vw) !important; }
  .elementor-element-0d7ba61 { min-height: max(300px, 22vw) !important; }
  :is(.elementor-element-6b36ef0, .elementor-element-80da96d, .elementor-element-23117dd) { min-height: max(600px, 34vw) !important; }
  /* Hero: tekst po lewej, garaż ze zdjęcia po prawej (wcześniej tekst na środku zasłaniał garaż) */
  .elementor-element-e0b3d79 > .e-con-inner { align-items: flex-start !important; justify-content: center !important; }
  .elementor-element-e0b3d79 .elementor-element-1e10773 { align-items: flex-start !important; width: auto !important; max-width: min(46%, 760px); text-align: left; }
  .elementor-element-e0b3d79 .elementor-element-0517b10 { flex-direction: row !important; flex-wrap: wrap; justify-content: flex-start !important; gap: 14px !important; width: auto !important; }
  .elementor-element-e0b3d79 .elementor-element-0517b10 .elementor-button { white-space: nowrap; }
  .elementor-element-e0b3d79 .elementor-element-ae36846 .elementor-button { color: #fff !important; border-color: rgb(255 255 255 / .85) !important; background: rgb(24 20 17 / .2) !important; }
  .elementor-element-fcbbd38 .elementor-icon-list-items { flex-direction: column !important; align-items: flex-start !important; gap: 10px; margin: 0 !important; }
  .elementor-element-fcbbd38 .elementor-icon-list-item { margin: 0 !important; }
  .elementor-element-fcbbd38 .elementor-icon-list-icon { padding-inline-end: 10px !important; }
  .elementor-element-e0b3d79 .elementor-heading-title { text-align: left !important; }
  .elementor-element-e0b3d79 .elementor-element-fcbbd38 .elementor-icon-list-items { justify-content: flex-start !important; }
  .elementor-element-e0b3d79::before { background: linear-gradient(90deg, rgb(24 20 17 / .84) 0%, rgb(24 20 17 / .62) 36%, rgb(24 20 17 / .12) 60%, rgb(24 20 17 / 0) 100%) !important; opacity: 1 !important; }
  /* CTA: zasłona równa, garaż na środku za tekstem */
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-widget-heading:first-child .elementor-heading-title { color: #F3B98F !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265) .elementor-widget-button + .elementor-widget-button .elementor-button { color: #fff !important; border-color: rgb(255 255 255 / .85) !important; background: transparent !important; }
  :is(.elementor-element-3e327cb1, .elementor-element-51f55ea, .elementor-element-ecdb6cb, .elementor-element-dea459f, .elementor-element-edbbb8b, .elementor-element-14c9265)::before { background: rgb(24 20 17 / .58) !important; opacity: 1 !important; }
}
@media (min-width: 1025px) {
  /* Zdjęcia obok tekstu (pół ekranu): proporcja ok. 3:2 na każdej szerokości */
  :is(.elementor-element-3c66fe58, .elementor-element-c12dc43, .elementor-element-f8766e1) { min-height: 33vw !important; }
  /* „O nas”: 8 zdjęć jako 4 kolumny × 2 rzędy */
  .elementor-element-1f992f7 .sm-galeria { --kol: 4 !important; }
}
/* Pomarańczowe podpisy nad nagłówkami na ciemnych zdjęciach: jaśniejszy odcień także na komputerze */
:is(.elementor-element-4df7d4f, .elementor-element-42ea84c, .elementor-element-a1f23a9) .elementor-widget-heading:first-child .elementor-heading-title { color: #F3B98F !important; }
