
/* =====================================================================
   Zasada: zamiast Architects Daughter wszędzie Roboto.
   Nadpisujemy samą rodzinę 'Architects Daughter' (motyw, wtyczki, treści w bazie, style inline)
   lokalnymi plikami Roboto - deklaracja późniejsza wygrywa z @font-face motywu.
   Od 01.10.2026 Roboto w całości z serwera (pliki zmienne 400-700, latin + latin-ext), bez Google Fonts.
   ===================================================================== */
@font-face { font-family: 'Roboto'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/roboto-var-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Roboto'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/roboto-var-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Architects Daughter'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/roboto-var-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Architects Daughter'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/roboto-var-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Architects Daughter Regular'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/roboto-var-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Architects Daughter Regular'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/roboto-var-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Własne poprawki ładowane po style.min.css */

/* Baner strony głównej - przyciemnienie pod tekstem */
body.home .header--slider .header--slider__slide .slider-gradient-bg {
  top: 0;
  left: 0;
  height: 100%;
  background: linear-gradient(90deg, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .35) 40%, rgba(0, 0, 0, 0) 65%);
  pointer-events: none;
}
body.home .header--slider .header--slider__slide .slide--text {
  text-shadow: 0 2px 12px rgba(0, 0, 0, .45);
}
body.home .header--slider .header--slider__slide .slide--text .page--button {
  text-shadow: none;
}
@media screen and (max-width: 767px) {
  body.home .header--slider .header--slider__slide .slider-gradient-bg {
    background: linear-gradient(0deg, rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, .4) 45%, rgba(0, 0, 0, 0) 75%);
  }
}

/* Karta produktu - bez opisu skróconego i bez szarych linii oddzielających */
body li.product .product--block__shortdesc {
  display: none !important;
}
body li.product .woocommerce_loop_product_price {
  border-top: 0 !important;
}

/* Karta produktu - parametry w jednym wierszu (metraż, pokoje, łazienki, garaż) */
body li.product .sejpro-card-specs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 14px;
  margin: 6px 25px 0;
  color: #222;
  font-size: 16px;
  line-height: 1.2;
}
body li.product .sejpro-card-specs__item {
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
body li.product .sejpro-card-specs__item--area {
  margin-right: auto;
  font-size: 16px;
  font-weight: 500;
  color: #222;
}
body li.product .sejpro-card-specs__item img {
  width: 20px !important;
  height: 20px !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: contain;
  filter: grayscale(1) opacity(.65);
}
body li.product .sejpro-card-specs sup {
  font-size: .6em;
  vertical-align: top;
  position: relative;
  top: -.2em;
}

/* Karta produktu - cena */
body li.product .woocommerce_loop_product_price {
  margin: 14px 25px 0;
  padding-top: 0;
}
body li.product .woocommerce_loop_product_price > span {
  margin-left: 0;
}
body li.product .woocommerce_loop_product_price .woocommerce-Price-amount {
  font-size: 24px;
  font-weight: 500;
}
body li.product .woocommerce_loop_product_price .sale-price + span {
  margin-left: 8px;
}
body li.product .woocommerce_loop_product_price .sale-price + span .woocommerce-Price-amount {
  font-size: 16px;
  font-weight: 400;
}

/* Karta produktu - ten sam tytuł wszędzie (katalog, slider na stronie głównej, powiązane) */
body li.product .woocommerce-loop-product__title {
  font-family: 'Roboto', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  line-height: normal !important;
  color: #222!important;
  margin: 0 !important;
  padding: 8px 25px !important;
}

/* Karta produktu - te same odstępy wszędzie: zdjęcie → tytuł oraz pod ceną */
body li.product > a.woocommerce-LoopProduct-link > img {
  margin-bottom: 16px !important;
}
body li.product {
  padding-bottom: 15px !important;
}

/* Popup "Zapytaj o zmiany" (Popup Maker #7606) */
#pum-7606 .pum-container::after { content: none !important; }
#pum-7606 .pum-container { max-height: calc(100vh - 40px); overflow-y: auto; }
.sejpro-askpopup { font-family: 'Roboto', sans-serif; color: #222; }
.sejpro-askpopup__title { font-size: 24px; font-weight: 700; color: #222; margin: 0 0 8px; }
.sejpro-askpopup__lead { font-size: 16px; margin: 0 0 14px; }
.sejpro-askpopup__contact { display: flex; flex-wrap: wrap; gap: 10px 24px; padding: 14px 16px; background: #f5f5f5; margin-bottom: 18px; }
.sejpro-askpopup__contact a { color: #222; font-weight: 500; font-size: 16px; text-decoration: none; white-space: nowrap; }
.sejpro-askpopup__contact a:hover { color: #c9171d; }
.sejpro-askpopup__contact .fa { color: #ec1c23; margin-right: 6px; }
.sejpro-askpopup__or { font-size: 14px; color: #666; margin: 0 0 10px; }
.sejpro-askform label { display: block; font-size: 14px; color: #666; margin-bottom: 8px; }
.sejpro-askform p { margin: 0 !important; padding: 0 !important; }
.sejpro-askform br { display: none; }
.sejpro-askform .wpcf7-form-control-wrap { display: block; }
.sejpro-askform__row { display: flex; gap: 12px; }
.sejpro-askform__row label { flex: 1; }
.sejpro-askform input[type=text], .sejpro-askform input[type=email], .sejpro-askform input[type=tel], .sejpro-askform textarea {
  width: 100%; box-sizing: border-box; margin-top: 4px; padding: 10px 12px; border: 1px solid #ddd; font-size: 16px; font-family: inherit; color: #222; background: #fff;
}
.sejpro-askform textarea { height: 90px; resize: vertical; }
.sejpro-askform__acceptance { font-size: 12px; line-height: 1.4; color: #666; margin: 2px 0 12px; }
.sejpro-askform__acceptance input { margin-right: 6px; }
.sejpro-askform .sejpro-askform__submit { background: #ea1c22; border: 0; color: #fff; font-size: 16px; padding: 12px 28px; cursor: pointer; }
.sejpro-askform .sejpro-askform__submit:hover { background: #c4161c; }
.sejpro-askform .sejpro-askform__submit:disabled { opacity: .6; cursor: not-allowed; }
@media screen and (max-width: 600px) {
  .sejpro-askform__row { flex-direction: column; gap: 0; }
}

/* Przycisk "Zapytaj o zmiany" na stronie projektu - czcionka jak w reszcie strony */
button.popmake-7606 {
  font-family: 'Roboto', sans-serif !important;
  font-size: 16px!important;
  font-weight: 500 !important;
}
button.popmake-7606:hover {
  border-color: #ea1c22 !important;
  color: #c9171d!important;
}

/* Koszyk - popup "Pakiet extra dodatków" (#extrasModal): ten sam układ listy co na stronie projektu */
#extrasModal .extras-modal-content {
  max-height: calc(100vh - 40px);
  overflow-y: auto;
  font-family: 'Roboto', sans-serif;
}
#extrasModal .project--addons__block .addon--title {
  font-size: 20px;
  font-weight: 700;
  color: #222;
  margin: 0 0 16px;
  padding-right: 30px;
}
#extrasModal .project--addons__block .project--addons {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 24px;
}
#extrasModal .project--addons__block .project--addons .addon {
  display: flex !important;
  align-items: center;
  gap: 12px;
  width: auto !important;
  margin: 0 !important;
  float: none !important;
}
#extrasModal .project--addons .addon .img-div {
  flex: 0 0 48px;
  width: 48px !important;
  height: 48px !important;
  float: none !important;
}
#extrasModal .project--addons .addon .img-div img {
  width: 48px !important;
  height: 48px !important;
  max-width: none !important;
  object-fit: contain;
}
#extrasModal .project--addons .addon p {
  margin: 0;
  padding: 0;
  width: auto;
  font-size: 14px;
  line-height: 1.3;
  color: #222;
}
#extrasModal .project--addons .addon .single--addon__title {
  display: block;
  font-weight: 500;
  color: #222;
}
#extrasModal .project--addons .addon .single--addon__priceCrossed {
  text-decoration: line-through;
  color: #ec1c23;
  font-size: 12px;
  margin-right: 6px;
}
#extrasModal .project--addons .addon .single--addon__priceNormal {
  font-size: 12px;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  #extrasModal .project--addons__block .project--addons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media screen and (max-width: 600px) {
  #extrasModal .project--addons__block .project--addons { grid-template-columns: 1fr; }
}

/* Koszyk - nagłówek "Podsumowanie" miał stałe 600px i wychodził poza stronę (poziomy scroll) */
.cart-collaterals .cart_totals h2.section--title {
  width: auto !important;
  max-width: 100%;
}

/* Koszyk - "Pakiet extra dodatków" w koszyku: przycisk "Usuń z koszyka" dopasowany do zaokrąglonego paska */
.woocommerce-cart-extras ul li.in_cart a.page--button.remove-from-cart {
  min-width: 193px;
  margin-right: 10px;
  border-radius: 50px !important;
  background: transparent !important;
  box-shadow: inset 0 0 0 2px #fff !important;
  color: #fff !important;
  transition: background .2s ease, color .2s ease;
}
.woocommerce-cart-extras ul li.in_cart a.page--button.remove-from-cart:hover {
  background: #fff !important;
  color: #c9171d!important;
}
.woocommerce-cart-extras ul li.in_cart a.page--button.remove-from-cart:hover span,
.woocommerce-cart-extras ul li.in_cart a.page--button.remove-from-cart:hover i {
  color: #c9171d!important;
}
@media screen and (max-width: 767px) {
  .woocommerce-cart-extras ul li.in_cart a.page--button.remove-from-cart {
    min-width: 0;
    width: auto;
    flex: 0 0 auto;
    padding: 12px 18px !important;
  }
}

/* Sekcja "Kupując w SEJ-PRO zyskujesz" - pogrubiony tytuł + opis */
.product--startPoints li p strong {
  display: block;
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  color: #222;
}
.product--startPoints li p {
  font-size: 14px;
  line-height: 1.5 !important;
  color: #666;
}
.product--startPoints a.openExtrasModal::after {
  content: none !important;
  display: none !important;
}

/* Sekcja korzyści - ikona w karcie (bez czerwonego koła wystającego nad kartę) */
ul.product--startPoints {
  width: 100%;
  clear: both;
}
.product--startPoints li {
  margin-top: 0 !important;
}
.product--startPoints li a {
  padding: 28px 20px 0 !important;
}
.product--startPoints li img {
  display: block;
  width: 52px !important;
  height: 52px !important;
  max-width: none !important;
  margin: 0 auto 14px;
  transform: none !important;
  position: static !important;
}
.product--startPoints li p {
  top: 0 !important;
  margin: 0 0 24px !important;
}
@media screen and (max-width: 991px) {
  .product--startPoints li {
    border-radius: 12px !important;
    margin-top: 10px !important;
  }
  .product--startPoints li a {
    position: relative;
    padding: 18px 20px 18px 84px !important;
    text-align: left;
  }
  .product--startPoints li img {
    position: absolute !important;
    left: 20px;
    top: 50%;
    width: 44px !important;
    height: 44px !important;
    margin: 0;
    transform: translateY(-50%) !important;
  }
  .product--startPoints li p {
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Blok "Masz pytania?" na stronie projektu - ikona zamiast usuniętego zdjęcia */
body.single-product .product--imgTextBlock.textblock--contact img[src*="kontakt-headset"] {
  width: 110px !important;
  height: 110px !important;
  margin: 10px 50px 0 20px;
  border: 0 !important;
  border-radius: 0 !important;
}
@media screen and (max-width: 767px) {
  body.single-product .product--imgTextBlock.textblock--contact img[src*="kontakt-headset"] {
    width: 80px !important;
    height: 80px !important;
    margin: 0 auto !important;
  }
}

/* Bez czerwonej linii na dole: karty korzyści, karty projektów (katalog) i slider na stronie głównej */
.product--startPoints li::after {
  content: none !important;
  display: none !important;
}
body li.product {
  border-bottom: 0 !important;
}
.bestsellers--slider .slick-slide {
  border-bottom: 0 !important;
}
/* Karty na stronie głównej (i podstronach z tymi sekcjami): kategorie, korzyści, realizacje - bez czerwonej linii */
.categories--block,
.home--realizacje__holder .twta {
  border-bottom: 0 !important;
}
.home--startPoints .startpoint::after {
  content: none !important;
  display: none !important;
}

/* Wszystkie karty: lekko zaokrąglone rogi + szara ramka 1px (zdjęcia przycięte do zaokrąglenia) */
body li.product,
.product--startPoints li,
.categories--block,
.home--startPoints .startpoint,
.home--realizacje__holder .twta {
  border: 1px solid #e6e6e6 !important;
  border-radius: 8px !important;
  overflow: hidden;
}

/* Panel filtrów (Wszystkie projekty, kategorie, wyszukiwarki) - nowy wygląd: duże czarne checkboxy, nagłówki bez CAPS i bez szarych pasów */
.sidebar--shop .sejpro--projects__filters,
#search_advanced_filters {
  border-bottom: 0 !important;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .singleFilter--title,
#search_advanced_filters .singleFilter .singleFilter--title {
  background: none !important;
  padding: 0 0 10px !important;
  margin: 26px 0 0 !important;
  font-size: 20px!important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0;
  color: #222!important;
  border: 0 !important;
}
.sidebar--shop .sejpro--projects__filters .singleFilter:first-child .singleFilter--title {
  margin-top: 0 !important;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .filter--label label,
#search_advanced_filters .singleFilter .filter--label label {
  display: flex !important;
  align-items: center;
  gap: 12px;
  margin: 0 !important;
  padding: 7px 0 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.3;
  color: #222 !important;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .filter--label label .filter--checkboxDiv,
#search_advanced_filters .singleFilter .filter--label label .filter--checkboxDiv {
  flex: 0 0 22px;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  border: 1px solid #222;
  border-radius: 5px;
  background: #fff;
  position: relative;
  box-sizing: border-box;
  transition: background .15s ease;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .filter--label label .filter--checkboxDiv::after,
#search_advanced_filters .singleFilter .filter--label label .filter--checkboxDiv::after {
  content: '' !important;
  font-family: inherit !important;
  position: absolute;
  left: 7px;
  top: 3px;
  width: 6px;
  height: 11px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .filter--label label input[type="checkbox"]:checked + .filter--checkboxDiv,
#search_advanced_filters .singleFilter .filter--label label input[type="checkbox"]:checked + .filter--checkboxDiv {
  background: #111;
  border-color: #111;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .filter--label label input[type="checkbox"]:checked + .filter--checkboxDiv::after,
#search_advanced_filters .singleFilter .filter--label label input[type="checkbox"]:checked + .filter--checkboxDiv::after {
  opacity: 1;
}
.sidebar--shop .sejpro--projects__filters .singleFilter .filter--label label:hover .filter--checkboxDiv {
  border-color: #000;
  background: #f3f3f3;
}

/* Filtry stosowane automatycznie na komputerze - bez przycisku "Zastosuj filtry"; lekkie przygaszenie listy podczas ładowania */
@media screen and (min-width: 992px) {
  .sidebar--shop .sejpro--projects__filters .filters--button {
    display: none !important;
  }
}
body.sejpro-filters-loading ul.products,
body.sejpro-filters-loading .sidebar--shop {
  opacity: .5;
  pointer-events: none;
  transition: opacity .15s ease;
}

/* Zamówienie - ramka z danymi do przelewu tradycyjnego */
.sejpro-bacs-box {
  display: none;
  margin: 20px 0 10px;
  padding: 18px 22px;
  border: 1px solid #e6e6e6;
  border-radius: 8px;
  background: #fafafa;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  line-height: 1.55;
  color: #222;
}
.sejpro-bacs-box p { margin: 0; }
.sejpro-bacs-box__title { font-weight: 700; color: #222; margin-bottom: 10px !important; }
.sejpro-bacs-box__cols { display: flex; flex-wrap: wrap; gap: 8px 48px; margin-bottom: 10px; }
.sejpro-bacs-box__note { font-size: 14px; color: #666; }

/* Strona projektu - 3 kafelki korzyści po równo (komputer; na telefonie zostają jeden pod drugim) */
@media screen and (min-width: 992px) {
  body.single-product ul.product--startPoints {
    gap: 16px;
  }
  body.single-product ul.product--startPoints li {
    flex: 1 1 0;
    width: auto !important;
  }
}

/* Strona projektu - długi pasek "Masz pytania? Zadzwoń" pod kafelkami */
.sejpro-contact-bar {
  display: flex;
  align-items: center;
  gap: 18px 28px;
  margin: 16px 0 0;
  padding: 14px 24px;
  border: 1px solid #e6e6e6;
  border-radius: 8px;
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .04);
  font-family: 'Roboto', sans-serif;
  clear: both;
}
.sejpro-contact-bar__photo {
  flex: 0 0 64px;
  width: 64px !important;
  height: 64px !important;
  border-radius: 8px;
  object-fit: cover;
  margin: 0 !important;
  border: 0 !important;
}
.sejpro-contact-bar p { margin: 0; }
.sejpro-contact-bar__text { flex: 1 1 auto; }
.sejpro-contact-bar__title { font-size: 16px; font-weight: 700; color: #222; }
.sejpro-contact-bar__hours { font-size: 14px; color: #666; margin-top: 2px !important; }
.sejpro-contact-bar__links { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; font-size: 14px; color: #666; white-space: nowrap; }
.sejpro-contact-bar__phone { font-size: 16px; font-weight: 700; color: #222!important; text-decoration: none; }
.sejpro-contact-bar__phone .fa { color: #ec1c23; margin-right: 4px; }
.sejpro-contact-bar a { color: #222; }
.sejpro-contact-bar__links a[href^="mailto"] { font-weight: 500; text-decoration: none; }
.sejpro-contact-bar a:hover { color: #c9171d!important; }
@media screen and (max-width: 767px) {
  .sejpro-contact-bar { flex-wrap: wrap; padding: 16px; }
  .sejpro-contact-bar__photo { flex-basis: 56px; width: 56px !important; height: 56px !important; }
  .sejpro-contact-bar__text { flex: 1 1 calc(100% - 80px); }
  .sejpro-contact-bar__links { align-items: flex-start; flex: 1 1 100%; white-space: normal; }
}

/* Strona projektu - "lub zamów pisząc na..." pod przyciskiem Dodaj do koszyka */
.sejpro-order-by-mail {
  margin: 10px 0 0;
  text-align: center;
  font-size: 14px;
  color: #666;
}
.sejpro-order-by-mail a { color: #222; font-weight: 500; text-decoration: underline; }
.sejpro-order-by-mail a:hover { color: #c9171d; }

/* Strona projektu - zdjęcie główne galerii na pełną szerokość (jak rząd miniatur), bez białych pasów po bokach */
body.single-product .singleprod--images .prod--img .slick-slide img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 0 10px !important;
}

/* Strona projektu - mniejsza ścieżka nawigacji (SEJ-PRO » Wszystkie projekty » …) */
body.single-product #breadcrumbs,
body.single-product #breadcrumbs a,
body.single-product #breadcrumbs span {
  font-size: 14px!important;
}

/* Strona projektu - prawy panel: kompaktowy nagłówek (nazwa + parametry w jednej linii + małe zdjęcie) zamiast dużego zdjęcia */
.single--product__sidebar .sejpro-side-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: #fff;
  border-bottom: 1px solid #e6e6e6;
  font-family: 'Roboto', sans-serif;
}
.single--product__sidebar .sejpro-side-head__text { flex: 1 1 auto; min-width: 0; }
.single--product__sidebar .sejpro-side-head__title {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  color: #222;
}
.single--product__sidebar .sejpro-side-head__specs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  font-size: 14px;
  font-weight: 500;
  color: #222;
}
.single--product__sidebar .sejpro-side-head__specs span { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.single--product__sidebar .sejpro-side-head__specs img {
  width: 16px !important;
  height: 16px !important;
  object-fit: contain;
  filter: grayscale(1) opacity(.65);
  position: static !important;
  margin: 0 !important;
}
.single--product__sidebar .sejpro-side-head__specs sup { font-size: .6em; position: relative; top: -.35em; vertical-align: baseline; }
body.single-product .content--holder .product .single--product__sidebar img.sejpro-side-head__img {
  flex: 0 0 96px;
  width: 96px !important;
  height: 64px !important;
  object-fit: cover;
  border-radius: 8px;
  position: static !important;
  margin: 0 !important;
  display: block;
}
/* stary rząd dużych ikon w panelu - zastąpiony linią w nagłówku */
.single--product__sidebar .product--sidebar__inner > .product--block__info { display: none !important; }
/* skrypt przewijania przesuwał panel o wysokość dużego zdjęcia - teraz zdjęcie jest w nagłówku */
.single--product__sidebar .product--sidebar__inner { top: 0 !important; }

/* Strona projektu - prawy panel jak pozostałe karty: zaokrąglone rogi 8px + szara ramka 1px */
body.single-product .content--holder .product .single--product__sidebar {
  border: 1px solid #e6e6e6 !important;
  border-radius: 8px !important;
  overflow: hidden;
}

/* Strona projektu - "Odbicie lustrzane" w nagłówku panelu; oryginał nad "Dodaj do koszyka" ukryty */
.single--product__sidebar .variations_form .addToCart--odbicieLustrzane { display: none !important; }
/* widoczny tylko gdy panel jest przyklejony przy przewijaniu (.sb--sticky); w normalnym widoku jest przełącznik przy tytule */
.sejpro-side-head__mirror { display: none; align-items: center; gap: 8px; margin-top: 8px; cursor: pointer; }
.single--product__sidebar.sb--sticky .sejpro-side-head__mirror { display: flex; }
.sejpro-side-head__mirror .odbicie--switcher {
  width: 30px; height: 15px; display: inline-block; cursor: pointer;
  border: 2px solid #707070; border-radius: 10px; position: relative; transition: all .3s; box-sizing: content-box;
}
.sejpro-side-head__mirror .odbicie--switcher::after {
  content: ''; width: 9px; height: 9px; background: #707070; position: absolute; left: 2px; top: 3px;
  border-radius: 100%; transition: all .3s;
}
.sejpro-side-head__mirror .odbicie--switcher.odbicie--true { border-color: #c9171d; }
.sejpro-side-head__mirror .odbicie--switcher.odbicie--true::after { width: 22px; background: #c9171d; border-radius: 10px; }
.sejpro-side-head__mirror span { color: #666; font-size: 14px; font-weight: 700; }

/* ZASADA STRONY: nigdzie nie piszemy WIELKIMI LITERAMI - wyłącza text-transform: uppercase z motywu i wtyczek (zapis zdaniowy jak w treści) */
html body, html body *, html body *::before, html body *::after {
  text-transform: none !important;
}

/* Zdjęcie Eweliny z zieloną kropką "dostępni teraz" (widoczna tylko w godzinach pracy - JS dodaje .is-online) */
.sejpro-avatar { position: relative; display: inline-block; flex: 0 0 auto; line-height: 0; }
.sejpro-online-dot {
  display: none;
  position: absolute;
  right: -3px;
  bottom: -3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #22b04b;
  border: 2px solid #fff;
  box-shadow: 0 0 0 0 rgba(34, 176, 75, .5);
  animation: sejpro-online-pulse 2s infinite;
}
.sejpro-online-dot.is-online { display: block; }
@keyframes sejpro-online-pulse {
  0% { box-shadow: 0 0 0 0 rgba(34, 176, 75, .45); }
  70% { box-shadow: 0 0 0 7px rgba(34, 176, 75, 0); }
  100% { box-shadow: 0 0 0 0 rgba(34, 176, 75, 0); }
}
/* blok "Masz pytania?" - kwadratowe zdjęcie z zaokrąglonymi rogami zamiast ikony */
body.single-product .product--imgTextBlock.textblock--contact .sejpro-avatar--block {
  float: left;
  margin: 10px 50px 0 20px;
}
body.single-product .product--imgTextBlock.textblock--contact img.sejpro-avatar__img {
  float: none !important;
  width: 110px !important;
  height: 110px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  object-fit: cover;
}
.sejpro-avatar--block .sejpro-online-dot { width: 18px; height: 18px; right: -4px; bottom: -4px; }
@media screen and (max-width: 767px) {
  body.single-product .product--imgTextBlock.textblock--contact .sejpro-avatar--block { float: none; display: block; width: 90px; margin: 0 auto !important; }
  body.single-product .product--imgTextBlock.textblock--contact img.sejpro-avatar__img { width: 90px !important; height: 90px !important; }
}

/* Slidery kart (strona główna, podobne projekty): cień był na wyższym o ~20px elemencie slick-slide -> widoczny pasek pod kartą. Cień na samej karcie. */
.bestsellers--slider .slick-slide {
  box-shadow: none !important;
}
.bestsellers--slider li.product {
  box-shadow: 0 0 40px rgba(0, 0, 0, .04);
}

/* =====================================================================
   Strona projektu - ujednolicenie z nowym designem:
   karty i bloki: zaokrąglenie 8px + ramka 1px #e6e6e6; linie podziału 1px #e6e6e6;
   zdjęcia i przyciski: zaokrąglenie 8px
   ===================================================================== */
/* karty / bloki treści */
body.single-product .product--imgTextBlock,
body.single-product .project--additional,
body.single-product .singleprod--fbBanner,
body.single-product .product--sidebar__inner {
  border: 1px solid #e6e6e6 !important;
  border-radius: 8px !important;
  box-shadow: 0 0 40px rgba(0, 0, 0, .04) !important;
}
body.single-product .single--product__sidebar .product--sidebar__inner { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
body.single-product .singleprod--fbBanner { overflow: hidden; }

/* zdjęcia w blokach (Pobierz rysunki, zestawienie, Firmy partnerskie): zaokrąglony kwadrat zamiast koła z czerwoną ramką */
body.single-product .content--holder .product .single--product__info .product--imgTextBlock img.product--imgTextBlock__img {
  border: 1px solid #e6e6e6 !important;
  border-radius: 8px !important;
  object-fit: cover;
}
body.single-product .single--product__other .fbicon { border-radius: 8px !important; }

/* galeria, rzuty, przekroje, wykres kosztów */
body.single-product .singleprod--images img,
body.single-product .product--section img.wykres-bg,
body.single-product .product--section img[alt*="koszt"] {
  border-radius: 8px;
}
/* rzuty: bez ramki (prośba 2026-10-01) */

/* przyciski */
body.single-product .page--button,
body.single-product .single_add_to_cart_button,
body.single-product button.popmake-7606,
body.single-product .sidebar-sticky-hidden-info-button {
  border-radius: 8px !important;
}
body.single-product button.popmake-7606 {
  border: 1px solid #e6e6e6 !important;
  background: #fff !important;
}
body.single-product button.popmake-7606:hover { border-color: #ea1c22 !important; }

/* linie podziału: jasne 1px zamiast ciemnych */
body.single-product .techParams--param,
body.single-product .product--section__title,
body.single-product .product--imgTextBlock .block--desc,
body.single-product .project--contents__block,
body.single-product .sejpro-side-head {
  border-bottom: 1px solid #e6e6e6 !important;
}
body.single-product .project--addons__block.addons--paid {
  border-top: 1px solid #e6e6e6 !important;
}

/* Panel boczny projektu - sekcja kontaktu z Eweliną na dole */
body.single-product .single--product__sidebar .sejpro-side-contact {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 20px;
  border-top: 1px solid #e6e6e6;
  background: #fff;
}
body.single-product .sejpro-side-contact__avatar { flex: 0 0 56px; width: 56px; height: 56px; }
body.single-product .sejpro-side-contact__avatar img {
  width: 56px; height: 56px; border-radius: 8px; object-fit: cover; display: block; margin: 0;
}
body.single-product .sejpro-side-contact__text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.single-product .sejpro-side-contact__title { margin: 0 0 2px; font-size: 16px; font-weight: 500; color: #222; line-height: 1.3; }
body.single-product .sejpro-side-contact__phone,
body.single-product .sejpro-side-contact__mail {
  font-size: 14px; line-height: 1.4; color: #222; text-decoration: none; white-space: nowrap;
}
body.single-product .sejpro-side-contact__phone { font-weight: 500; font-size: 16px; }
body.single-product .sejpro-side-contact__phone .fa,
body.single-product .sejpro-side-contact__mail .fa { color: #ec1c23; width: 16px; }
body.single-product .sejpro-side-contact__phone:hover,
body.single-product .sejpro-side-contact__mail:hover { color: #c9171d; }

/* Przełącznik "Odbicie lustrzane" w stylu strony: szary tor, biała gałka, po włączeniu czerwony */
html body .odbicie--switcher,
html body .content--holder .product .single--product__sidebar .product--sidebar__inner .variations_form .addToCart--odbicieLustrzane .odbicie--switcher,
html body .product-title .product-title-2 .addToCart--odbicieLustrzane .odbicie--switcher,
html body .sejpro-side-head__mirror .odbicie--switcher {
  width: 40px !important; height: 22px !important; box-sizing: border-box !important;
  border: 1px solid #d9d9d9 !important; border-radius: 22px !important;
  background: #e6e6e6 !important; position: relative; flex: 0 0 auto;
  vertical-align: middle; transition: background .2s, border-color .2s !important;
}
html body .odbicie--switcher::after,
html body .content--holder .product .single--product__sidebar .product--sidebar__inner .variations_form .addToCart--odbicieLustrzane .odbicie--switcher::after,
html body .product-title .product-title-2 .addToCart--odbicieLustrzane .odbicie--switcher::after,
html body .sejpro-side-head__mirror .odbicie--switcher::after {
  content: '' !important; width: 18px !important; height: 18px !important;
  top: 1px !important; left: 1px !important; border-radius: 50% !important;
  background: #fff !important; box-shadow: 0 1px 3px rgba(0, 0, 0, .25) !important;
  transform: translateX(0); transition: transform .2s !important;
}
html body .odbicie--switcher.odbicie--true,
html body .content--holder .product .single--product__sidebar .product--sidebar__inner .variations_form .addToCart--odbicieLustrzane .odbicie--switcher.odbicie--true,
html body .product-title .product-title-2 .addToCart--odbicieLustrzane .odbicie--switcher.odbicie--true,
html body .sejpro-side-head__mirror .odbicie--switcher.odbicie--true {
  background: #ec1c23 !important; border-color: #ec1c23 !important;
}
html body .odbicie--switcher.odbicie--true::after,
html body .content--holder .product .single--product__sidebar .product--sidebar__inner .variations_form .addToCart--odbicieLustrzane .odbicie--switcher.odbicie--true::after,
html body .product-title .product-title-2 .addToCart--odbicieLustrzane .odbicie--switcher.odbicie--true::after,
html body .sejpro-side-head__mirror .odbicie--switcher.odbicie--true::after {
  transform: translateX(18px);
}
html body .sejpro-side-head__mirror span { color: #222; font-weight: 500; }

/* Cena na stronie projektu: aktualna cena (po promocji albo zwykła) na czerwono, przekreślona szara */
body.single-product .single--product__sidebar .price ins .amount,
body.single-product .single--product__sidebar .price > .amount,
body.single-product .single--product__sidebar .price > .woocommerce-Price-amount,
body.single-product .single--product__sidebar .woocommerce-variation-price .price ins .amount,
body.single-product .single--product__sidebar .woocommerce-variation-price .price > .amount {
  color: #ec1c23 !important;
}
body.single-product .single--product__sidebar .price del,
body.single-product .single--product__sidebar .price del .amount { color: #666!important; }

/* "Dodaj do koszyka" na całą szerokość panelu */
body.single-product .single--product__sidebar form.cart .single_add_to_cart_button {
  display: block !important; width: 100% !important; padding-left: 16px !important; padding-right: 16px !important;
  margin-left: 0 !important; margin-right: 0 !important; float: none !important;
}

/* =====================================================================
   ZASADA TYPOGRAFII (2026-10-01): jedna czcionka Roboto, grubości 400/500/700,
   rozmiary 12/14/16/20/24/32 px (40px tylko baner/h1), kolory tekstu #222 / #666 / #ec1c23.
   Reguły motywu sprowadza do skali wygenerowany plik sejpro-typography.css;
   tu poprawki dla wtyczek i elementów formularzy.
   ===================================================================== */
html body button, html body input, html body select, html body textarea, html body .button,
html body .wcct_countdown_timer, html body .wcct_countdown_timer *,
html body .cli-bar-container, html body .cli-bar-container *,
html body .pum-container, html body .pum-container *:not(.fa) {
  font-family: 'Roboto', sans-serif !important;
}
/* licznik promocji (XL Finale) */
html body .wcct_countdown_timer strong { font-size: 16px !important; font-weight: 500 !important; color: #ec1c23 !important; }
html body .wcct_countdown_timer .wcct_timer_wrap, html body .wcct_countdown_timer .wcct_timer_wrap * { font-size: 20px !important; font-weight: 700 !important; color: #222 !important; }
/* baner cookies */
html body .cli-bar-container .cli-bar-message { font-size: 14px !important; color: #222 !important; }
html body .cli-bar-container .cli-plugin-button, html body .cli-bar-container .cli_settings_button { font-size: 14px !important; font-weight: 500 !important; }
/* przyciski */
html body .single_add_to_cart_button, html body .toolbox__button, html body .landing--button--red, html body .page--button { font-weight: 500 !important; }
html body .single_add_to_cart_button { font-size: 16px !important; }
/* zbyt małe/ niestandardowe rozmiary spoza motywu */
html body .woocommerce-breadcrumb, html body .woocommerce-breadcrumb a, html body #breadcrumbs, html body #breadcrumbs a { font-size: 14px !important; }
html body a.reset_variations { font-size: 12px !important; }
html body .home--groups_col_content p, html body .deliveryMethodPay p { font-size: 12px !important; }
html body strong, html body b { font-weight: 700; }
html body .page--cf__left2 strong { font-weight: 700 !important; }
html body .page--cf__left2 a { color: #ec1c23 !important; }
html body .page--cf__left2 a:hover { color: #c9171d !important; }
html body .cli-bar-container .cli_messagebar_head, html body .cli-bar-container .cli_settings_button { color: #222 !important; }
html body button.popmake-7606 { color: #222 !important; }
html body .page--default__title h1, html body .page--default__title.section--title h1 { font-size: 40px !important; }
@media (max-width: 767px) { html body .page--default__title h1, html body .page--default__title.section--title h1 { font-size: 32px !important; } }
html body .zoom__tab span, html body .zoom__tab { font-size: 14px !important; }

/* =====================================================================
   /zamowienie (eatnet-one-page-checkout) - ujednolicenie z kartą projektu
   ===================================================================== */
/* nagłówki sekcji jak na karcie projektu: Roboto, #222, cienka szara linia, bez czerwonej kreski */
html body .content--holder .eatnet-opch_section h2.section--title {
  font-size: 24px !important; font-weight: 500 !important; color: #222 !important; line-height: 1.3 !important;
  border-bottom: 1px solid #e6e6e6 !important; padding-bottom: 12px !important; margin-bottom: 24px !important;
}
html body .content--holder .eatnet-opch_section h2.section--title::after { display: none !important; }

/* pola formularza: mniej zaokrąglone (8px), ramka 1px */
html body.woocommerce-checkout .eatnet-opch_container .form-row input.input-text,
html body.woocommerce-checkout .eatnet-opch_container .form-row textarea,
html body .select2-container--default .select2-selection--single,
html body #coupon_code,
html body.woocommerce-checkout .eatnet-opch_container .form-row select {
  border: 1px solid #d9d9d9 !important; border-radius: 8px !important; font-size: 16px !important; color: #222 !important;
  box-shadow: none !important;
}
html body.woocommerce-checkout .eatnet-opch_container .form-row input.input-text:focus,
html body.woocommerce-checkout .eatnet-opch_container .form-row textarea:focus,
html body #coupon_code:focus,
html body .select2-container--open .select2-selection--single { border-color: #222 !important; outline: none !important; }
html body.woocommerce-checkout .eatnet-opch_container .form-row label:not(.checkbox) { font-size: 12px !important; color: #666 !important; left: 12px !important; }
html body .select2-container .select2-selection--single .select2-selection__rendered { padding-left: 15px !important; }
html body.woocommerce-checkout .eatnet-opch_container .form-row input.input-text { padding: 14px 15px !important; }
/* komunikaty i kupon: 8px zamiast "pigułek" */
html body .eatnet-opch .woocommerce-error, html body .eatnet-opch .woocommerce-info, html body .eatnet-opch .woocommerce-message,
html body .woocommerce-NoticeGroup-checkout .woocommerce-error, html body .woocommerce form.checkout_coupon {
  border-radius: 8px !important; border-width: 1px !important;
}
html body .eatnet-opch .woocommerce-info::before, html body .eatnet-opch .woocommerce-message::before, html body .eatnet-opch .woocommerce-error::before { border-radius: 0 !important; }
html body .eatnet-opch .woocommerce-info { border-color: #e6e6e6 !important; }

/* dostawa i płatność: lista w dół (radio | nazwa i cena | logo) zamiast kafelków */
html body .woocommerce-checkout-shipping-methods,
html body .eatnet-opch .wc_payment_methods {
  display: flex !important; flex-direction: column !important; gap: 8px; padding: 0 !important; margin: 0 !important; list-style: none;
}
html body .eatnet-opch_method.sejpro-method {
  width: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 14px 16px !important;
  display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: center !important; justify-content: flex-start !important;
  gap: 14px; text-align: left !important; line-height: 1.4 !important;
  border: 1px solid #e6e6e6 !important; border-radius: 8px !important; box-shadow: none !important; background: #fff;
  transition: border-color .15s, box-shadow .15s !important;
}
html body .eatnet-opch_method.sejpro-method:hover { border-color: #bdbdbd !important; }
html body .eatnet-opch_method.sejpro-method.selected { border-color: #222 !important; box-shadow: 0 0 0 1px #222 inset !important; }
html body .eatnet-opch_method.sejpro-method::after { display: none !important; }
html body .eatnet-opch_method.sejpro-method .sejpro-method__radio {
  flex: 0 0 20px; width: 20px; height: 20px; border-radius: 50%; border: 1px solid #bdbdbd; background: #fff; position: relative;
}
html body .eatnet-opch_method.sejpro-method.selected .sejpro-method__radio { border: 6px solid #222; }
html body .eatnet-opch_method.sejpro-method .text { flex: 1 1 auto; margin: 0 !important; min-width: 0; }
html body .eatnet-opch_method.sejpro-method .text p,
html body .eatnet-opch_method.sejpro-method.selected .text p {
  margin: 0 !important; font-size: 16px !important; font-weight: 400 !important; color: #222 !important; letter-spacing: 0 !important; line-height: 1.4 !important;
}
html body .eatnet-opch_method.sejpro-method .text p .woocommerce-Price-amount { color: #666; }
html body .eatnet-opch_method.sejpro-method .logo {
  flex: 0 0 auto; margin-left: auto; display: flex; align-items: center; justify-content: flex-end;
  min-width: 60px; font-size: 22px !important; color: #222 !important; line-height: 1;
}
html body .eatnet-opch_method.sejpro-method .logo img {
  height: 26px !important; width: auto !important; max-width: 90px; opacity: 1 !important; filter: none !important; -webkit-filter: none !important;
}
html body .eatnet-opch_method.sejpro-method .shipping-method-description { flex: 1 1 100%; padding-left: 34px; font-size: 14px; color: #666; }
/* przycisk "Wybierz paczkomat" ponad etykietą, która przykrywa cały wiersz */
html body .eatnet-opch_method.sejpro-method > div:not(.text):not(.logo) { flex: 1 1 100%; padding-left: 34px; position: relative; z-index: 2; }
html body .eatnet-opch_method.sejpro-method .select-paczkomat-button { border-radius: 8px !important; }
@media (max-width: 768px) {
  html body .eatnet-opch_method.sejpro-method { padding: 12px 14px !important; }
}
html body .content--holder .eatnet-opch_section h2.section--title { width: 100% !important; max-width: none !important; }
html body .eatnet-opch_method.sejpro-method .logo img[alt="InPost"] { height: 34px !important; }
html body #shipping_method > li.sejpro-method, html body .wc_payment_methods > li.sejpro-method { margin-bottom: 0 !important; }

/* /zamowienie - dodatki jako lista z polem wyboru (jak dostawa) */
html body.woocommerce-checkout .woocommerce-cart-extras ul.products {
  display: flex !important; flex-direction: column !important; gap: 8px !important; margin: 0 !important; padding: 0 !important;
  grid-template-columns: none !important;
}
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li,
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li.in_cart {
  display: flex !important; flex-direction: row !important; align-items: center !important; gap: 14px !important;
  width: 100% !important; max-width: none !important; float: none !important; margin: 0 !important; padding: 12px 16px !important;
  background: #fff !important; border: 1px solid #e6e6e6 !important; border-radius: 8px !important; box-shadow: none !important;
  cursor: pointer; overflow: visible !important; min-height: 0 !important; transition: border-color .15s, box-shadow .15s;
}
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li:hover { border-color: #bdbdbd !important; }
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li.in_cart { border-color: #222 !important; box-shadow: 0 0 0 1px #222 inset !important; }
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li::before,
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li::after { display: none !important; }
/* pole wyboru */
html body .woocommerce-cart-extras .sejpro-extra__check {
  flex: 0 0 20px; width: 20px; height: 20px; border: 1px solid #bdbdbd; border-radius: 4px; background: #fff;
  display: flex; align-items: center; justify-content: center;
}
html body .woocommerce-cart-extras li.in_cart .sejpro-extra__check { background: #222; border-color: #222; }
html body .woocommerce-cart-extras li.in_cart .sejpro-extra__check::after {
  content: ''; width: 6px; height: 11px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) translate(-1px, -1px);
}
html body:not(.woocommerce-checkout) .woocommerce-cart-extras .sejpro-extra__check,
html body:not(.woocommerce-checkout) .woocommerce-cart-extras .sejpro-extra__price { display: none !important; }
/* miniatura, nazwa, cena */
html body.woocommerce-checkout .woocommerce-cart-extras .extras-image { flex: 0 0 40px !important; width: 40px !important; height: 40px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .extras-image img { width: 40px !important; height: 40px !important; object-fit: contain; border: 0 !important; border-radius: 0 !important; margin: 0 !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .extras-content {
  flex: 1 1 auto !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px;
  padding: 0 !important; margin: 0 !important; width: auto !important; min-width: 0;
}
html body.woocommerce-checkout .woocommerce-cart-extras .extras-content_title { flex: 1 1 auto; min-width: 0; padding: 0 !important; margin: 0 !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .extras-content_title p,
html body.woocommerce-checkout .woocommerce-cart-extras .extras-content_title p a,
html body.woocommerce-checkout .woocommerce-cart-extras li.in_cart .extras-content_title p,
html body.woocommerce-checkout .woocommerce-cart-extras li.in_cart .extras-content_title p a {
  margin: 0 !important; font-size: 16px !important; font-weight: 400 !important; color: #222 !important; line-height: 1.4 !important;
}
html body.woocommerce-checkout .woocommerce-cart-extras .extras-content_title > span { display: none !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__price,
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__price * { flex: 0 0 auto; font-size: 16px !important; font-weight: 500 !important; color: #222 !important; white-space: nowrap; }
html body.woocommerce-checkout .woocommerce-cart-extras .extras-content a.page--button { display: none !important; }

/* /zamowienie - "Bezpłatnie" przy darmowej dostawie */
html body .eatnet-opch_method .sejpro-free { color: #0caa05; font-weight: 500; margin-left: 6px; white-space: nowrap; }

/* /zamowienie - bez czarnego paska z podsumowaniem na dole ekranu */
html body .eatnet-opch_fixed-summary { display: none !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .extras-image::before,
html body.woocommerce-checkout .woocommerce-cart-extras .extras-image::after { display: none !important; }

/* Panel projektu: sam status dostępności, pakiet jako jedna linia z popupem, cena bez etykiety */
html body .single--product__sidebar p.sejpro-availability {
  display: flex !important; align-items: center; gap: 8px; justify-content: flex-start !important;
  color: #0caa05 !important; font-size: 16px !important; font-weight: 500 !important; margin: 0 0 8px !important;
}
html body .single--product__sidebar p.sejpro-availability .fa { font-size: 14px; }
html body .single--product__sidebar p.sejpro-addons-link { display: block !important; margin: 0 0 12px !important; }
html body .single--product__sidebar p.sejpro-addons-link a {
  display: flex; align-items: center; gap: 8px; color: #222 !important; font-size: 16px !important; font-weight: 400 !important; text-decoration: none;
}
html body .single--product__sidebar p.sejpro-addons-link a .fa { color: #ec1c23; font-size: 16px; }
html body .single--product__sidebar p.sejpro-addons-link .sejpro-addons-link__more {
  margin-left: auto; color: #ec1c23; font-size: 14px; font-weight: 500; text-decoration: underline; text-underline-offset: 2px;
}
html body .single--product__sidebar p.sejpro-addons-link a:hover .sejpro-addons-link__more { color: #c9171d; }
html body .single--product__sidebar .sidebar--prod__price .line { justify-content: flex-end !important; }
html body .single--product__sidebar .sidebar--prod__price .line--right { margin-left: auto; text-align: right; }
html body .single--product__sidebar p.sejpro-addons-link a::after,
html body .single--product__sidebar p.sejpro-addons-link::after { display: none !important; content: none !important; }
html body .single--product__sidebar p.sejpro-addons-link a { font-size: 14px !important; text-decoration: underline; text-decoration-color: #d9d9d9; text-underline-offset: 3px; }
html body .single--product__sidebar p.sejpro-addons-link a:hover { text-decoration-color: #222; }
html body .single--product__sidebar p.sejpro-addons-link .sejpro-addons-link__more { text-decoration: none; font-size: 20px; color: #222; line-height: 1; }
html body #extrasModal .extras-modal-content { border-radius: 8px !important; overflow: hidden; }

/* Panel projektu - plakietki zaufania pod przyciskiem zakupu */
html body .single--product__sidebar ul.sejpro-badges {
  list-style: none !important; margin: 12px 0 0 !important; padding: 0 !important;
  display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 6px; clear: both; width: 100%;
}
html body .single--product__sidebar ul.sejpro-badges li {
  display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 6px; text-align: center;
  margin: 0 !important; padding: 10px 4px !important; background: #f7f7f7; border-radius: 8px; border: 0 !important;
  font-size: 12px !important; line-height: 1.3; color: #222; font-weight: 400;
}
html body .single--product__sidebar ul.sejpro-badges li::before { display: none !important; }
html body .single--product__sidebar ul.sejpro-badges li .fa { font-size: 16px; color: #ec1c23; }
/* dostępność i pakiet - jedna czcionka (16px / 500), bez podkreślenia i strzałki */
html body .single--product__sidebar p.sejpro-availability,
html body .single--product__sidebar p.sejpro-addons-link a {
  font-size: 16px !important; font-weight: 500 !important; line-height: 1.4 !important; gap: 8px;
}
html body .single--product__sidebar p.sejpro-addons-link a,
html body .single--product__sidebar p.sejpro-addons-link a:hover { text-decoration: none !important; border: 0 !important; color: #222 !important; }
html body .single--product__sidebar p.sejpro-addons-link a:hover { color: #ec1c23 !important; }
html body .single--product__sidebar p.sejpro-availability .fa,
html body .single--product__sidebar p.sejpro-addons-link a .fa { width: 16px; font-size: 16px !important; text-align: center; }

/* Panel projektu - cena po lewej; po prawej stara cena i pod nią "Poprzednia najniższa cena" (jeden blok) */
html body .single--product__sidebar .sidebar--prod__price .line { display: block !important; }
html body .single--product__sidebar .sidebar--prod__price .line--right.sejpro-price-row {
  display: grid !important; grid-template-columns: auto 1fr; column-gap: 14px; row-gap: 2px; align-items: center;
  margin: 0 !important; text-align: left !important; width: 100%;
}
html body .single--product__sidebar .sejpro-price-row p.price { display: contents !important; }
html body .single--product__sidebar .sejpro-price-row p.price ins,
html body .single--product__sidebar .sejpro-price-row p.price > .woocommerce-Price-amount {
  grid-column: 1; grid-row: 1 / span 2; text-decoration: none; margin: 0 !important;
}
html body .single--product__sidebar .sejpro-price-row p.price ins .amount,
html body .single--product__sidebar .sejpro-price-row p.price > .woocommerce-Price-amount { font-size: 32px !important; font-weight: 700 !important; line-height: 1.1; color: #ec1c23 !important; }
html body .single--product__sidebar .sejpro-price-row p.price del { grid-column: 2; grid-row: 1; align-self: end; margin: 0 !important; line-height: 1.2; }
html body .single--product__sidebar .sejpro-price-row p.price del .amount { font-size: 16px !important; font-weight: 400 !important; color: #666 !important; }
html body .single--product__sidebar .sejpro-price-row .iworks-omnibus {
  grid-column: 2; grid-row: 2; align-self: start; margin: 0 !important; padding: 0 !important; text-align: left !important;
  font-size: 12px !important; line-height: 1.3 !important; color: #666 !important;
}
html body .single--product__sidebar .sejpro-price-row .iworks-omnibus .amount { font-size: 12px !important; color: #666 !important; font-weight: 400 !important; }
html body .single--product__sidebar .woocommerce-variation-add-to-cart > .iworks-omnibus { display: none; }
html body .single--product__sidebar .sejpro-price-row .iworks-omnibus, html body .single--product__sidebar .sejpro-price-row .iworks-omnibus * { font-weight: 400 !important; }
html body .single--product__sidebar .sejpro-price-row .iworks-omnibus .amount, html body .single--product__sidebar .sejpro-price-row .amount { white-space: nowrap; }
/* cena: dół dużej ceny w jednej linii z "Poprzednia najniższa cena" */
html body .single--product__sidebar .sejpro-price-row p.price ins,
html body .single--product__sidebar .sejpro-price-row p.price > .woocommerce-Price-amount,
html body .single--product__sidebar .sejpro-price-row .iworks-omnibus { align-self: last baseline !important; }
html body .single--product__sidebar .sejpro-price-row p.price ins .amount,
html body .single--product__sidebar .sejpro-price-row p.price > .woocommerce-Price-amount { line-height: 1 !important; }
/* cena bliżej przycisku "Dodaj do koszyka" (bez pustych odstępów: ukryte pole ilości, margines tabeli wariantu) */
html body .single--product__sidebar .sidebar--prod__price { margin-bottom: 16px !important; }
html body .single--product__sidebar form.cart table.variations { margin: 0 !important; }
html body .single--product__sidebar form.cart .quantity { display: none !important; }

/* /zamowienie - plakietki zaufania pod przyciskiem "Kupuję i płacę" */
html body.woocommerce-checkout ul.sejpro-badges {
  list-style: none !important; margin: 16px 0 0 !important; padding: 0 !important;
  display: flex !important; flex-wrap: wrap; justify-content: center; gap: 8px 24px; width: 100%; clear: both;
}
html body.woocommerce-checkout ul.sejpro-badges li {
  display: flex; align-items: center; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none;
  font-size: 14px !important; line-height: 1.4; color: #222; font-weight: 400;
}
html body.woocommerce-checkout ul.sejpro-badges li::before { display: none !important; }
html body.woocommerce-checkout ul.sejpro-badges li .fa { font-size: 16px; color: #ec1c23; }
html body.woocommerce-checkout #place_order { border-radius: 8px !important; font-size: 16px !important; font-weight: 500 !important; }

/* Strona projektu - pasek nad zdjęciem: gwarancja najlepszej ceny */
html body.single-product .single--product__info p.sejpro-price-guarantee {
  display: flex; align-items: center; gap: 8px; margin: 0 0 12px !important; padding: 10px 16px !important;
  background: #fdeced; border-radius: 8px; color: #222 !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.4;
}
html body.single-product .single--product__info p.sejpro-price-guarantee .fa { color: #ec1c23; font-size: 16px; flex: 0 0 auto; }
html body.single-product .single--product__info p.sejpro-price-guarantee { padding: 16px 20px !important; }
html body.single-product .single--product__info p.sejpro-price-guarantee .sejpro-price-guarantee__icon { font-size: 16px; line-height: 1; }

/* Pasek "Najlepsza cena..." - wspólny styl (strona projektu + strona główna) */
html body p.sejpro-price-guarantee {
  display: flex; align-items: center; gap: 8px; margin: 0 0 12px !important; padding: 16px 20px !important;
  background: #fdeced; border-radius: 8px; color: #222 !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.4;
}
html body p.sejpro-price-guarantee .sejpro-price-guarantee__icon { font-size: 16px; line-height: 1; }
html body .sejpro-home-guarantee { margin-top: 24px; margin-bottom: 8px; }
html body .sejpro-home-guarantee p.sejpro-price-guarantee { margin: 0 !important; justify-content: center; }

/* Kafelki korzyści (karta projektu, /zamowienie): tytuły lżejsze - 500 zamiast 700 */
html body .product--startPoints li p strong,
html body .product--startPoints li strong,
html body a.openExtrasModal strong { font-weight: 500 !important; }

/* Katalog projektów - mniejsza przerwa między kartami (20px zamiast 60px) */
@media (min-width: 651px) {
  html body .sejpro-woocommerce-content .content-area ul.products { justify-content: space-between; }
  html body .sejpro-woocommerce-content .content-area ul.products li.product { width: calc(50% - 10px) !important; margin-bottom: 20px !important; }
}
@media (max-width: 650px) {
  html body .sejpro-woocommerce-content .content-area ul.products li.product { margin-bottom: 16px !important; }
}
html body .sejpro--labels .sejpro--onsale { background-color: #ec1c23 !important; } /* plakietka rabatu w kolorze ceny */

/* Strona projektu - podsumowanie parametrów nad "Rzuty" */
html body.single-product .sejpro-params {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 0;
  margin: 32px 0 8px; border-top: 1px solid #e6e6e6; border-left: 1px solid #e6e6e6; border-radius: 8px; overflow: hidden;
  border-right: 1px solid #e6e6e6;
}
html body.single-product .sejpro-params__item,
html body.single-product .sejpro-params__more {
  display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 14px 16px;
  border-bottom: 1px solid #e6e6e6; border-right: 1px solid #e6e6e6; margin-right: -1px; min-width: 0;
}
html body.single-product .sejpro-params__label { font-size: 14px; color: #666; line-height: 1.3; }
html body.single-product .sejpro-params__value { display: flex; align-items: center; gap: 8px; font-size: 20px; font-weight: 500; color: #222; line-height: 1.2; white-space: nowrap; }
html body.single-product .sejpro-params__value .fa { color: #ec1c23; font-size: 18px; width: 20px; text-align: center; flex: 0 0 auto; }
html body.single-product .sejpro-params__more { flex-direction: row; align-items: center; justify-content: center; font-size: 14px; font-weight: 500; color: #222 !important; text-decoration: underline; text-underline-offset: 3px; }
html body.single-product .sejpro-params__more:hover { color: #ec1c23 !important; }
@media (max-width: 767px) {
  html body.single-product .sejpro-params { grid-template-columns: repeat(2, 1fr); }
  html body.single-product .sejpro-params__value { font-size: 16px; }
}
html body.single-product .sejpro-params { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
html body.single-product .sejpro-params__value { font-size: 18px; white-space: normal; }
html body.single-product .sejpro-params__label { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 767px) { html body.single-product .sejpro-params { grid-template-columns: repeat(2, 1fr); } html body.single-product .sejpro-params__label { white-space: normal; } }
@media (max-width: 767px) { html body.single-product .sejpro-params__more { grid-column: 1 / -1; } }
/* panel projektu - dodatkowe atuty pod pakietem (ten sam styl co pakiet) */
html body .single--product__sidebar p.sejpro-sidebar-feature {
  display: flex !important; align-items: center; gap: 8px; justify-content: flex-start !important; margin: 0 0 12px !important;
  font-size: 16px !important; font-weight: 500 !important; line-height: 1.4 !important; color: #222 !important;
}
html body .single--product__sidebar p.sejpro-sidebar-feature::after,
html body .single--product__sidebar p.sejpro-sidebar-feature span { display: none !important; }
html body .single--product__sidebar p.sejpro-sidebar-feature .fa { width: 16px; font-size: 16px !important; text-align: center; color: #ec1c23; }
html body .single--product__sidebar p.sejpro-addons-link { margin-bottom: 8px !important; }
html body .single--product__sidebar p.sejpro-sidebar-feature { margin-bottom: 8px !important; }
/* panel projektu: bez przycisku "Zobacz szczegóły projektu" i bez przewijania przyklejonego panelu */
html body .single--product__sidebar .sidebar-sticky-hidden-info-button { display: none !important; }
/* podsumowanie parametrów - niższe (5 w rzędzie, mniejsze odstępy), link pod siatką */
html body.single-product .sejpro-params-wrap { margin: 16px 0 24px; }
html body.single-product .sejpro-params { margin: 0 !important; grid-template-columns: repeat(5, 1fr) !important; }
html body.single-product .sejpro-params__item { padding: 10px 12px !important; gap: 4px !important; }
html body.single-product .sejpro-params__label { font-size: 12px !important; }
html body.single-product .sejpro-params__value { font-size: 16px !important; gap: 6px !important; }
html body.single-product .sejpro-params__value .fa { font-size: 14px !important; width: 16px !important; }
html body.single-product .sejpro-params-wrap .sejpro-params__more {
  display: inline-flex !important; flex-direction: row; align-items: center; gap: 6px; padding: 0 !important; margin-top: 8px;
  border: 0 !important; font-size: 14px; font-weight: 500; color: #222 !important; text-decoration: underline; text-underline-offset: 3px;
}
@media (max-width: 1099px) { html body.single-product .sejpro-params { grid-template-columns: repeat(4, 1fr) !important; } }
@media (max-width: 767px) { html body.single-product .sejpro-params { grid-template-columns: repeat(2, 1fr) !important; } }
@media (min-width: 1100px) {
  html body.single-product .sejpro-params { grid-template-columns: repeat(5, auto) !important; }
}
html body.single-product .sejpro-params__value { white-space: nowrap !important; }

/* Galeria projektu - jeden format 3:2 dla wszystkich zdjęć (bez białej luki przy węższych 16:9) */
html body.single-product .single--product__info .prod--img .slick-slide img,
html body.single-product .single--product__info .prod--gallery .slick-slide img,
html body.single-product .single--product__info .prod--odbicieGallery .slick-slide img {
  width: 100% !important; height: auto !important; aspect-ratio: 3 / 2; object-fit: cover; display: block;
}
html body.single-product .single--product__info .prod--img .slick-slide img,
html body.single-product .single--product__info .prod--gallery .slick-slide img,
html body.single-product .single--product__info .prod--odbicieGallery .slick-slide img { object-position: left center; } /* logo SEJ-PRO w lewym rogu zostaje widoczne */

/* Galeria projektu - strzałki na dużym zdjęciu */
html body.single-product .single--product__info .prod--img { position: relative; }
html body.single-product .sejpro-gal-arrow {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 5;
  width: 44px; height: 44px; border-radius: 50%; border: 0; padding: 0; cursor: pointer;
  background: rgba(255, 255, 255, .9); color: #222; box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
  display: flex; align-items: center; justify-content: center; transition: background .15s, color .15s;
}
html body.single-product .sejpro-gal-arrow .fa { font-size: 24px; line-height: 1; }
html body.single-product .sejpro-gal-arrow--prev { left: 16px; }
html body.single-product .sejpro-gal-arrow--prev .fa { margin-right: 2px; }
html body.single-product .sejpro-gal-arrow--next { right: 16px; }
html body.single-product .sejpro-gal-arrow--next .fa { margin-left: 2px; }
html body.single-product .sejpro-gal-arrow:hover { background: #fff; color: #ec1c23; }
@media (max-width: 767px) {
  html body.single-product .sejpro-gal-arrow { width: 36px; height: 36px; }
  html body.single-product .sejpro-gal-arrow--prev { left: 8px; }
  html body.single-product .sejpro-gal-arrow--next { right: 8px; }
}

/* reCAPTCHA - bez pływającej plakietki (informacja jest pod formularzami: .sejpro-recaptcha-note) */
html body .grecaptcha-badge { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
html body .sejpro-recaptcha-note { margin: 8px 0 0 !important; font-size: 12px !important; line-height: 1.4; color: #666 !important; }
html body .sejpro-recaptcha-note a { color: #666 !important; text-decoration: underline; }

/* Baner cookies (CookieYes) - przyciski i okno w stylu strony */
html body .cky-consent-container .cky-consent-bar, html body .cky-modal { border-radius: 8px !important; }
html body .cky-btn { border-radius: 8px !important; font-family: 'Roboto', sans-serif !important; font-weight: 500 !important; }
html body .cky-consent-container, html body .cky-modal, html body .cky-consent-container *, html body .cky-modal *:not(svg):not(path) { font-family: 'Roboto', sans-serif !important; }

/* /zamowienie - "Twoje zamówienie": niższa tabela, mała miniaturka */
html body.woocommerce-checkout .eatnet-opch_container table.cart img {
  width: 120px !important; height: auto !important; aspect-ratio: 3 / 2; object-fit: cover; object-position: left center; border-radius: 8px; display: block;
}
html body.woocommerce-checkout .eatnet-opch_container table.cart th { padding: 10px 16px !important; font-size: 14px !important; font-weight: 500 !important; }
html body.woocommerce-checkout .eatnet-opch_container table.cart td { padding: 12px 16px !important; vertical-align: middle !important; }
html body.woocommerce-checkout .eatnet-opch_container table.cart td.product-thumbnail,
html body.woocommerce-checkout .eatnet-opch_container table.cart th.product-thumbnail { width: 152px !important; }
html body.woocommerce-checkout .eatnet-opch_container table.cart td.product-remove,
html body.woocommerce-checkout .eatnet-opch_container table.cart th.product-remove { width: 56px !important; text-align: center; }
@media (max-width: 768px) {
  html body.woocommerce-checkout .eatnet-opch_container table.cart img { width: 160px !important; }
  html body.woocommerce-checkout .eatnet-opch_container table.cart td.product-thumbnail { width: auto !important; }
}
html body.woocommerce-checkout .eatnet-opch_container table.cart tr.cart-item__extras td.product-name img {
  width: 48px !important; aspect-ratio: auto; object-fit: contain; border-radius: 4px; display: inline-block; vertical-align: middle; margin-right: 10px;
}
html body.woocommerce-checkout .eatnet-opch_container table.cart tr.cart-item__extras td { padding-top: 8px !important; padding-bottom: 8px !important; }
/* /zamowienie - opis pod nazwą metody płatności (np. lista banków Paynow) */
html body .eatnet-opch_method.sejpro-method .sejpro-method__note { display: block; margin-top: 2px; font-size: 14px; line-height: 1.4; color: #666; font-weight: 400; }
html body .eatnet-opch_method.sejpro-method { flex-wrap: nowrap !important; }
html body .eatnet-opch_method.sejpro-method .text { flex: 1 1 0 !important; min-width: 0 !important; }
html body #shipping_method .eatnet-opch_method.sejpro-method { flex-wrap: wrap !important; } /* dostawa: przycisk paczkomatu w nowej linii */

/* /zamowienie - "Kontynuuj zakupy" jako sam tekst (bez szarego przycisku) */
html body a.checkout-back, html body a.checkout-back:hover {
  background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 6px 0 !important; border-radius: 0 !important;
  font-size: 14px !important; font-weight: 500 !important; color: #222 !important; text-decoration: none;
}
html body a.checkout-back span { display: inline-flex; align-items: center; gap: 8px; }
html body a.checkout-back .fa { margin: 0 !important; font-size: 14px; }
html body a.checkout-back:hover { color: #ec1c23 !important; }

/* Strona główna - równe, mniejsze odstępy między sekcjami (56px, telefon 40px) */
body.home .home--startPoints { margin-bottom: 0 !important; }
body.home .sejpro-home-guarantee { margin-top: 24px !important; margin-bottom: 0 !important; }
body.home section.home--categories,
body.home section.home--bestsellers,
body.home section.home--groups,
body.home section.home--realizacje,
body.home section.home--aboutus,
body.home section.home--blog,
body.home section.deweloper--page,
body.home section.page--cf { margin-top: 56px !important; margin-bottom: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
body.home section.page--cf { margin-bottom: 56px !important; }
@media (max-width: 767px) {
  body.home section.home--categories, body.home section.home--bestsellers, body.home section.home--groups,
  body.home section.home--realizacje, body.home section.home--aboutus, body.home section.home--blog,
  body.home section.deweloper--page, body.home section.page--cf { margin-top: 40px !important; }
  body.home section.page--cf { margin-bottom: 40px !important; }
}
/* Strona główna - mniejsze odstępy wewnątrz sekcji */
body.home .home--bestsellers .home--bestsellers__inner { margin-top: 0 !important; }
body.home .home--bestsellers .slider--title { margin-top: 0 !important; margin-bottom: 24px !important; }
body.home .home--bestsellers .slick-slide { margin-bottom: 0 !important; }
body.home .home--categories .categories--block { margin-bottom: 20px !important; }
body.home .home--categories h2.section--title { margin-bottom: 24px !important; }
body.home .deweloper--page .cta--left { margin-top: 24px !important; margin-bottom: 24px !important; }
body.home .page--cf .page--cf__holder2 { margin-top: 0 !important; }
body.home .page--cf h2.contact--title:first-child { margin-top: 0 !important; }

/* Podstrony - mniejsza przerwa między okruszkami a nagłówkiem strony */
html body p#breadcrumbs { margin-bottom: 0 !important; padding-bottom: 0 !important; }
html body .sejpro-woocommerce-content { margin-top: 16px !important; }
html body h1.woocommerce-products-header__title, html body .sejpro-woocommerce-content h1.page-title { margin-top: 0 !important; margin-bottom: 16px !important; }

/* Strona główna - karty w jednym stylu (8px + ramka 1px #e6e6e6) */
body.home .home--groups_colleft,
body.home .home--blog__article,
body.home .deweloper-cta {
  border: 1px solid #e6e6e6 !important; border-radius: 8px !important; overflow: hidden !important;
  box-shadow: 0 0 40px rgba(0, 0, 0, .04) !important;
}
body.home .home--blog .slick-slide > div { border-radius: 8px; }
body.home .home--groups .page--button,
body.home .home--blog .article--link,
body.home .deweloper-cta a.cri12, body.home .deweloper-cta a.cri22,
body.home .home--categories .page--button, body.home .home--categories a.deweloperwp,
body.home .home--aboutus .page--button { border-radius: 8px !important; }

/* Strona główna - kafelki korzyści: mniej pustego miejsca nad tekstem */
body.home .home--startPoints .startpoint img { margin-top: 20px !important; padding-bottom: 8px !important; }
body.home .home--startPoints .startpoint p { margin-top: 12px !important; margin-bottom: 0 !important; padding-bottom: 20px !important; }

/* Strona główna - mniejsza przerwa nad "Popularne" i "Dla dewelopera" */
body.home .home--categories .slider--title2 { margin-top: 24px !important; margin-bottom: 16px !important; }

/* Filtry katalogu - większy suwak powierzchni (noUiSlider) */
html body .filter--area__slider.noUi-horizontal { height: 6px !important; border: 0 !important; border-radius: 3px !important; background: #e6e6e6 !important; box-shadow: none !important; margin: 20px 12px 8px !important; }
html body .filter--area__slider .noUi-connect { background: #ec1c23 !important; border-radius: 3px; }
html body .filter--area__slider.noUi-horizontal .noUi-handle {
  width: 24px !important; height: 24px !important; top: -9px !important; right: -12px !important;
  border-radius: 50% !important; background: #fff !important; border: 2px solid #ec1c23 !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, .2) !important; cursor: grab;
}
html body .filter--area__slider .noUi-handle::before, html body .filter--area__slider .noUi-handle::after { display: none !important; }
html body .filter--area__slider .noUi-handle:active { cursor: grabbing; transform: scale(1.1); }
body.home .home--startPoints .startpoint img { display: block !important; margin: 20px auto 0 !important; padding-bottom: 0 !important; height: 60px !important; width: auto !important; }
body.home .home--startPoints .startpoint p { top: 0 !important; margin-top: 12px !important; padding-bottom: 20px !important; }

/* Mega menu "Projekty domów" - formularz wyszukiwania w stylu strony (jak pola na /zamowienie) */
html body .mega-menu_search-form input:not([type=hidden]):not([type=submit]),
html body .mega-menu_search-form select {
  height: 44px !important; padding: 0 14px !important; margin: 0 !important;
  background-color: #fff !important; border: 1px solid #d9d9d9 !important; border-radius: 8px !important; box-shadow: none !important;
  font-family: 'Roboto', sans-serif !important; font-size: 16px !important; font-weight: 400 !important; color: #222 !important; text-align: left !important;
}
html body .mega-menu_search-form input::placeholder { color: #666 !important; opacity: 1; }
html body .mega-menu_search-form select {
  -webkit-appearance: none !important; appearance: none !important; padding-right: 40px !important; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23222' stroke-width='1.6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 12px 8px !important;
}
html body .mega-menu_search-form input:focus, html body .mega-menu_search-form select:focus { border-color: #222 !important; outline: none !important; }
html body .mega-menu_search-form button.page--button {
  width: 100%; border-radius: 8px !important; font-size: 16px !important; font-weight: 500 !important; padding: 12px 16px !important;
}

/* Strona główna - baner niższy (proporcje 2,26:1 -> 2,69:1, kadr od środka) */
@media (min-width: 992px) {
  body.home .header--slider .header--slider__slide__img picture,
  body.home .header--slider .header--slider__slide__img picture img {
    display: block; width: 100% !important; height: auto !important; aspect-ratio: 2.687 / 1; object-fit: cover; object-position: center 60%;
  }
}
@media (min-width: 992px) {
  body.home .header--slider .header--slider__slide .slide--content { top: auto !important; bottom: 56px !important; }
}
body.home .home--startPoints .home--startPoints__holder { margin-top: 24px !important; }
body.home .home--startPoints .home--startPoints__blocks { margin-top: 0 !important; }
body.home .home--startPoints .startpoint img { height: 44px !important; margin-top: 20px !important; } /* mniejsze ikony korzyści */

/* =====================================================================
   Strona główna - wyszukiwarka projektów na banerze (parts/hero-search.php)
   ===================================================================== */
.sejpro-hs-wrap { position: relative; z-index: 20; }
.sejpro-hs {
  background: #fff; border-radius: 8px; box-shadow: 0 8px 32px rgba(0, 0, 0, .18); font-family: 'Roboto', sans-serif;
  color: #222;
}
.sejpro-hs__row { display: flex; gap: 12px; padding: 16px 16px 12px; align-items: stretch; }
.sejpro-hs__fields { flex: 1 1 auto; display: flex; border: 1px solid #d9d9d9; border-radius: 8px; min-width: 0; }
.sejpro-hs__field { position: relative; flex: 1 1 0; min-width: 0; }
.sejpro-hs__field + .sejpro-hs__field::before { content: ''; position: absolute; left: 0; top: 12px; bottom: 12px; border-left: 1px dashed #d9d9d9; }
.sejpro-hs__toggle {
  width: 100%; height: 52px; display: flex; align-items: center; gap: 10px; padding: 0 14px; background: none; border: 0; cursor: pointer;
  font-size: 16px; font-weight: 400; color: #222; text-align: left; border-radius: 8px;
}
.sejpro-hs__toggle:hover { background: #f7f7f7; }
.sejpro-hs__toggle > .fa:first-child { color: #ec1c23; font-size: 18px; width: 20px; text-align: center; flex: 0 0 auto; }
.sejpro-hs__label { flex: 1 1 auto; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sejpro-hs__toggle.is-set .sejpro-hs__label { font-weight: 500; }
.sejpro-hs__chev { color: #ec1c23; font-size: 18px; transition: transform .15s; }
.sejpro-hs__field.is-open .sejpro-hs__chev { transform: rotate(180deg); }
.sejpro-hs__panel {
  display: none; position: absolute; top: calc(100% + 8px); left: 0; min-width: 260px; z-index: 30;
  background: #fff; border: 1px solid #e6e6e6; border-radius: 8px; box-shadow: 0 8px 24px rgba(0, 0, 0, .12); padding: 16px;
}
.sejpro-hs__field.is-open .sejpro-hs__panel { display: block; }
.sejpro-hs__panel-title { margin: 0 0 12px !important; font-size: 14px !important; font-weight: 500 !important; color: #222 !important; }
.sejpro-hs__chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.sejpro-hs__chip {
  padding: 6px 12px; border: 1px solid #d9d9d9; border-radius: 8px; background: #fff; cursor: pointer; font-size: 14px; color: #222;
}
.sejpro-hs__chip:hover { border-color: #222; }
.sejpro-hs__chip.is-active { border-color: #ec1c23; background: #fdeced; color: #ec1c23; font-weight: 500; }
.sejpro-hs__range { display: flex; gap: 8px; }
.sejpro-hs__range label { display: flex; align-items: center; gap: 6px; font-size: 14px; color: #666; margin: 0; }
.sejpro-hs__range input {
  width: 90px; height: 40px; padding: 0 10px; border: 1px solid #d9d9d9; border-radius: 8px; font-size: 16px; color: #222; background: #fff;
}
.sejpro-hs__range input:focus { border-color: #222; outline: none; }
.sejpro-hs__check { display: flex !important; align-items: center; gap: 10px; padding: 8px 0; margin: 0 !important; cursor: pointer; font-size: 16px; color: #222; font-weight: 400; }
.sejpro-hs__check input { width: 20px; height: 20px; margin: 0; accent-color: #222; cursor: pointer; flex: 0 0 auto; }
.sejpro-hs__submit {
  flex: 0 0 auto; display: flex; align-items: center; justify-content: center; gap: 10px; min-width: 280px; padding: 0 24px;
  background: #ec1c23; color: #fff; border: 0; border-radius: 8px; font-size: 16px; font-weight: 500; cursor: pointer; transition: background .15s;
}
.sejpro-hs__submit:hover { background: #c9171d; }
.sejpro-hs__quick { display: flex; align-items: center; gap: 12px; padding: 0 16px 14px; flex-wrap: wrap; }
.sejpro-hs__quick-title { font-size: 14px; font-weight: 500; color: #222; }
.sejpro-hs__quick-links { display: flex; flex-wrap: wrap; gap: 8px; }
.sejpro-hs__quick-links a {
  display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid #d9d9d9; border-radius: 8px;
  font-size: 14px; color: #222 !important; text-decoration: none; background: #fff;
}
.sejpro-hs__quick-links a:hover { border-color: #222; }
.sejpro-hs__quick-links a .fa { color: #666; }
.sejpro-hs__more {
  display: flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 16px; border-top: 1px solid #e6e6e6;
  background: #fafafa; border-radius: 0 0 8px 8px; font-size: 14px; font-weight: 500; color: #222 !important; text-decoration: none;
}
.sejpro-hs__more:hover { color: #ec1c23 !important; }

/* komputer: karta na dole banera, tekst banera wyżej, przycisk z banera zastępuje wyszukiwarka */
@media (min-width: 992px) {
  .sejpro-hs-wrap { height: 0; }
  .sejpro-hs { position: absolute; left: 15px; bottom: 32px; width: 880px; max-width: calc(100% - 30px); }
  body.home .header--slider .header--slider__slide .slide--content { bottom: 250px !important; }
  body.home .header--slider .slide--text .page--button { display: none !important; }
  body.home .header--slider .slide--text p2 { padding-bottom: 0 !important; }
  body.home .home--startPoints .home--startPoints__holder { margin-top: 24px !important; }
}
/* telefon/tablet: karta pod banerem, pola jedno pod drugim */
@media (max-width: 991px) {
  .sejpro-hs-wrap { margin-top: 16px; }
  .sejpro-hs { border: 1px solid #e6e6e6; box-shadow: none; }
  .sejpro-hs__row { flex-direction: column; }
  .sejpro-hs__fields { flex-direction: column; }
  .sejpro-hs__field + .sejpro-hs__field::before { left: 12px; right: 12px; top: 0; bottom: auto; border-left: 0; border-top: 1px dashed #d9d9d9; }
  .sejpro-hs__panel { position: static; box-shadow: none; border: 0; border-top: 1px solid #e6e6e6; border-radius: 0; min-width: 0; }
  .sejpro-hs__submit { min-width: 0; height: 52px; }
}
/* kafelki korzyści na telefonie: ikona po lewej z odstępem, tekst obok */
@media (max-width: 991px) {
  body.home .home--startPoints .startpoint { display: flex !important; align-items: center; gap: 16px; padding: 14px 16px !important; }
  body.home .home--startPoints .startpoint img { float: none !important; flex: 0 0 auto; height: 36px !important; width: auto !important; margin: 0 !important; }
  body.home .home--startPoints .startpoint p { flex: 1 1 auto; margin: 0 !important; padding: 0 !important; text-align: left !important; top: 0 !important; }
}
@media (max-width: 991px) { body.home .home--startPoints .startpoint img { position: static !important; } }
@media (max-width: 767px) { body.home .home--bestsellers .slider--title { text-align: left !important; padding-right: 96px !important; font-size: 20px !important; line-height: 1.3 !important; } }
/* wyszukiwarka: węższa karta, przycisk w rzędzie z pastylkami */
.sejpro-hs__row { padding-bottom: 12px; }
.sejpro-hs__quick { display: flex; align-items: center; flex-wrap: nowrap; gap: 12px; padding: 0 16px 16px; }
.sejpro-hs__quick-title { flex: 0 0 auto; }
.sejpro-hs__quick-links { flex: 1 1 auto; min-width: 0; }
.sejpro-hs__quick .sejpro-hs__submit { flex: 0 0 auto; height: 52px; min-width: 280px; margin-left: auto; }
@media (min-width: 992px) {
  .sejpro-hs { width: 720px; }
  body.home .header--slider .header--slider__slide .slide--content { bottom: 280px !important; }
}
@media (max-width: 991px) {
  .sejpro-hs__quick { flex-direction: column; align-items: stretch; }
  .sejpro-hs__quick .sejpro-hs__submit { min-width: 0; width: 100%; margin-left: 0; order: -1; }
}
@media (min-width: 992px) { .sejpro-hs { width: 760px; } }
.sejpro-hs__quick-links { flex-wrap: nowrap; gap: 6px; }
.sejpro-hs__quick-links a { padding: 6px 10px; white-space: nowrap; }
@media (max-width: 991px) { .sejpro-hs__quick-links { flex-wrap: wrap; } }
body.home .home--groups_col_content p { display: none !important; } /* bez "przejdziesz na facebook.com / youtube.com" */

/* =====================================================================
   Strona projektu - pełnoekranowa przeglądarka zdjęć (#sejproViewer)
   ===================================================================== */
html.sejpro-viewer-open, html.sejpro-viewer-open body { overflow: hidden !important; }
.sejpro-viewer[hidden] { display: none !important; }
.sejpro-viewer {
  position: fixed; inset: 0; z-index: 100000; display: flex; flex-direction: column;
  background: #1c1c1c; color: #fff; font-family: 'Roboto', sans-serif;
}
.sejpro-viewer__top { display: flex; align-items: center; gap: 16px; height: 64px; padding: 0 16px 0 24px; border-bottom: 1px solid #333; flex: 0 0 auto; }
.sejpro-viewer__title { font-size: 16px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; flex: 0 1 auto; }
.sejpro-viewer__tabs { display: flex; height: 100%; margin: 0 auto; }
.sejpro-viewer__tab {
  height: 100%; padding: 0 20px; background: none; border: 0; border-bottom: 2px solid transparent; color: #ccc; cursor: pointer;
  font-size: 16px; font-weight: 400; font-family: inherit; white-space: nowrap;
}
.sejpro-viewer__tab:hover { color: #fff; }
.sejpro-viewer__tab.is-active { color: #fff; border-bottom-color: #ec1c23; font-weight: 500; }
.sejpro-viewer__tab[hidden] { display: none; }
.sejpro-viewer__close { width: 44px; height: 44px; background: none; border: 0; color: #fff; font-size: 24px; cursor: pointer; border-radius: 8px; flex: 0 0 auto; }
.sejpro-viewer__close:hover { background: #333; }
.sejpro-viewer__stage { position: relative; flex: 1 1 auto; min-height: 0; display: flex; align-items: center; justify-content: center; padding: 16px 72px; }
.sejpro-viewer__count { position: absolute; top: 12px; left: 24px; font-size: 14px; color: #ccc; }
.sejpro-viewer__figure { margin: 0; height: 100%; max-width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; }
.sejpro-viewer__img { max-width: 100%; max-height: calc(100% - 28px); object-fit: contain; border-radius: 8px; background: #fff; user-select: none; }
.sejpro-viewer__caption { font-size: 14px; color: #ccc; }
.sejpro-viewer__nav {
  position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border-radius: 50%; border: 0; cursor: pointer;
  background: rgba(255, 255, 255, .12); color: #fff; font-size: 28px; display: flex; align-items: center; justify-content: center;
}
.sejpro-viewer__nav:hover { background: rgba(255, 255, 255, .25); }
.sejpro-viewer__nav[hidden] { display: none; }
.sejpro-viewer__nav--prev { left: 16px; }
.sejpro-viewer__nav--next { right: 16px; }
.sejpro-viewer__thumbs { flex: 0 0 auto; display: flex; gap: 8px; padding: 12px 16px 16px; overflow-x: auto; justify-content: safe center; scrollbar-width: thin; }
.sejpro-viewer__thumb { flex: 0 0 auto; width: 104px; height: 70px; padding: 0; border: 2px solid transparent; border-radius: 8px; overflow: hidden; background: #fff; cursor: pointer; opacity: .6; transition: opacity .15s; }
.sejpro-viewer__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sejpro-viewer__thumb:hover { opacity: 1; }
.sejpro-viewer__thumb.is-active { border-color: #ec1c23; opacity: 1; }
@media (max-width: 767px) {
  .sejpro-viewer__top { height: auto; flex-wrap: wrap; padding: 8px 8px 0 16px; gap: 0; }
  .sejpro-viewer__title { flex: 1 1 auto; font-size: 14px; }
  .sejpro-viewer__tabs { order: 3; width: 100%; height: 44px; overflow-x: auto; margin: 0; }
  .sejpro-viewer__tab { padding: 0 12px; font-size: 14px; }
  .sejpro-viewer__stage { padding: 8px; }
  .sejpro-viewer__count { top: 8px; left: 12px; }
  .sejpro-viewer__nav { width: 40px; height: 40px; font-size: 24px; background: rgba(0, 0, 0, .45); }
  .sejpro-viewer__nav--prev { left: 8px; }
  .sejpro-viewer__nav--next { right: 8px; }
  .sejpro-viewer__thumb { width: 72px; height: 48px; }
}
/* /zamowienie - dostępność pod nazwą projektu */
html body .sejpro-cart-availability { display: none; }
html body.woocommerce-checkout .eatnet-opch_container table.cart .sejpro-cart-availability {
  display: flex; align-items: center; gap: 6px; margin-top: 6px; font-size: 14px; font-weight: 500; color: #0caa05; line-height: 1.4;
}

/* =====================================================================
   Strona projektu - okno przy wyjściu (#sejproExit)
   ===================================================================== */
html.sejpro-exit-open, html.sejpro-exit-open body { overflow: hidden !important; }
.sejpro-exit[hidden] { display: none !important; }
.sejpro-exit { position: fixed; inset: 0; z-index: 99999; background: rgba(0, 0, 0, .55); display: flex; align-items: center; justify-content: center; padding: 16px; font-family: 'Roboto', sans-serif; }
.sejpro-exit__box { position: relative; display: flex; width: 860px; max-width: 100%; max-height: calc(100vh - 32px); background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 16px 48px rgba(0, 0, 0, .3); }
.sejpro-exit__close { position: absolute; top: 12px; right: 12px; z-index: 2; width: 40px; height: 40px; border: 0; border-radius: 8px; background: none; color: #222; font-size: 22px; cursor: pointer; }
.sejpro-exit__close:hover { background: #f2f2f2; }
.sejpro-exit__side { flex: 0 0 38%; position: relative; background-size: cover; background-position: center; color: #fff; display: flex; align-items: flex-end; }
.sejpro-exit__side::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.05) 20%, rgba(0,0,0,.75) 75%); }
.sejpro-exit__side-inner { position: relative; padding: 24px; }
.sejpro-exit__project { margin: 0 !important; font-size: 16px !important; line-height: 1.3 !important; color: #fff !important; }
.sejpro-exit__project strong { display: block; font-size: 24px; font-weight: 700; margin-top: 4px; }
.sejpro-exit__line { display: block; width: 48px; height: 2px; background: #fff; margin: 16px 0; }
.sejpro-exit__rodo { margin: 0 !important; font-size: 12px !important; line-height: 1.5 !important; color: rgba(255,255,255,.85) !important; }
.sejpro-exit__rodo a { color: #fff !important; text-decoration: underline; }
.sejpro-exit__main { flex: 1 1 auto; padding: 40px 32px 32px; overflow-y: auto; }
.sejpro-exit__title { margin: 0 32px 12px 0 !important; font-size: 24px !important; font-weight: 700 !important; line-height: 1.25 !important; color: #222 !important; }
.sejpro-exit__title span { color: #ec1c23; }
.sejpro-exit__lead { margin: 0 0 16px !important; font-size: 16px !important; line-height: 1.5 !important; color: #666 !important; }
.sejpro-exit__lead strong { color: #222; font-weight: 500; }
.sejpro-exit__who { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; font-size: 14px; color: #222; }
.sejpro-exit__who .sejpro-avatar img { width: 40px; height: 40px; border-radius: 8px; object-fit: cover; display: block; }
.sejpro-exitform input[type=email], .sejpro-exitform input[type=tel] {
  width: 100%; height: 48px; padding: 0 14px; margin: 0 0 10px; border: 1px solid #d9d9d9; border-radius: 8px; font-size: 16px; color: #222; background: #fff; box-shadow: none;
}
.sejpro-exitform input[type=email]:focus, .sejpro-exitform input[type=tel]:focus { border-color: #222; outline: none; }
.sejpro-exitform__hint { margin: -2px 0 12px !important; font-size: 12px !important; color: #666 !important; }
.sejpro-exitform__acceptance { font-size: 12px; line-height: 1.5; color: #666; margin-bottom: 16px; }
.sejpro-exitform__acceptance a { color: #222; text-decoration: underline; }
.sejpro-exitform__acceptance .wpcf7-list-item { margin: 0; }
.sejpro-exitform__acceptance label { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.sejpro-exitform__acceptance input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: #222; flex: 0 0 auto; }
.sejpro-exitform .sejpro-exitform__submit, .sejpro-exitform input[type=submit] {
  width: 100%; height: 52px; border: 0; border-radius: 8px; background: #ec1c23; color: #fff; font-size: 16px; font-weight: 500; cursor: pointer;
}
.sejpro-exitform input[type=submit]:hover { background: #c9171d; }
.sejpro-exit .wpcf7-not-valid-tip { font-size: 12px; margin: -6px 0 8px; }
.sejpro-exit .wpcf7-response-output { margin: 12px 0 0 !important; padding: 10px 12px !important; border-radius: 8px; font-size: 14px; }
.sejpro-exit .sejpro-recaptcha-note { margin-top: 10px !important; }
@media (max-width: 767px) {
  .sejpro-exit__side { display: none; }
  .sejpro-exit__main { padding: 32px 20px 20px; }
  .sejpro-exit__title { font-size: 20px !important; }
}

/* /zamowienie - pakiet extra dodatków: większe zdjęcie i lista zawartości */
html body.woocommerce-checkout .woocommerce-cart-extras ul.products > li.sejpro-extra--package { flex-wrap: wrap !important; align-items: center !important; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image { flex: 0 0 120px !important; width: 120px !important; height: 85px !important; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image img { width: 120px !important; height: 85px !important; object-fit: contain; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-content { flex-wrap: wrap !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__details {
  flex: 1 1 100%; order: 10; margin-top: 10px; padding-top: 10px; border-top: 1px solid #e6e6e6; cursor: default;
}
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__details-title { margin: 0 0 8px !important; font-size: 14px !important; font-weight: 500 !important; color: #222 !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list {
  list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid !important; grid-template-columns: repeat(2, 1fr); gap: 4px 24px;
}
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list li {
  display: block !important; width: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important;
  font-size: 14px; line-height: 1.5; color: #222; cursor: default;
}
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list li::before, html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list li::after { display: none !important; }
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list .fa { color: #0caa05; width: 16px; }
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list del { color: #666; font-size: 12px; margin-left: 4px; }
@media (max-width: 767px) { html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list { grid-template-columns: 1fr; } }
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list::before,
html body.woocommerce-checkout .woocommerce-cart-extras .sejpro-extra__list::after { display: none !important; content: none !important; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package { align-items: flex-start !important; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .sejpro-extra__check { margin-top: 32px; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image { flex: 0 0 160px !important; width: 160px !important; height: 113px !important; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image img { width: 160px !important; height: 113px !important; }
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .sejpro-extra__check { margin-top: 46px; }
@media (max-width: 767px) {
  html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image { flex-basis: 96px !important; width: 96px !important; height: 68px !important; }
  html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image img { width: 96px !important; height: 68px !important; }
  html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .sejpro-extra__check { margin-top: 24px; }
}
html body.woocommerce-checkout .woocommerce-cart-extras li.sejpro-extra--package .extras-image img { max-width: none !important; padding: 0 !important; transform: none !important; }

/* okno przy wyjściu - wersja 2 (jedna kolumna, karta projektu u góry, Ewelina) */
.sejpro-exit__box { width: 520px !important; flex-direction: column !important; }
.sejpro-exit__side { display: none !important; }
.sejpro-exit__project { display: flex; align-items: center; gap: 12px; padding: 12px 12px 12px 16px; background: #f7f7f7; border-bottom: 1px solid #e6e6e6; }
.sejpro-exit__thumb { width: 72px; height: 50px; object-fit: cover; border-radius: 6px; flex: 0 0 auto; }
.sejpro-exit__project-text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.sejpro-exit__project-name { font-size: 14px; font-weight: 500; color: #222; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sejpro-exit__project-price, .sejpro-exit__project-price * { font-size: 16px !important; font-weight: 700 !important; color: #ec1c23 !important; line-height: 1.3; }
.sejpro-exit__project-price del, .sejpro-exit__project-price del * { font-size: 14px !important; font-weight: 400 !important; color: #666 !important; margin-right: 6px; }
.sejpro-exit__project-price ins { text-decoration: none; }
.sejpro-exit__close { position: static !important; flex: 0 0 auto; color: #666 !important; }
.sejpro-exit__main { padding: 24px 24px 20px !important; }
.sejpro-exit__title { margin: 0 0 8px !important; font-size: 20px !important; font-weight: 700 !important; }
.sejpro-exit__lead { font-size: 14px !important; margin-bottom: 16px !important; }
.sejpro-exit__who { gap: 12px; padding: 12px; border: 1px solid #e6e6e6; border-radius: 8px; margin-bottom: 16px; }
.sejpro-exit__who .sejpro-avatar img { width: 56px !important; height: 56px !important; }
.sejpro-exit__who-text { display: flex; flex-direction: column; gap: 2px; font-size: 14px; color: #222; }
.sejpro-exit__who-text strong { font-weight: 500; font-size: 16px; }
.sejpro-exit__who-text span { color: #666; font-size: 12px; }
.sejpro-exitform__row { display: flex; gap: 8px; }
.sejpro-exitform__row .wpcf7-form-control-wrap { flex: 1 1 0; min-width: 0; }
.sejpro-exitform__row input[type=email], .sejpro-exitform__row input[type=tel] { margin-bottom: 12px !important; }
.sejpro-exitform__acceptance { margin-bottom: 12px !important; }
.sejpro-exit__rodo { margin: 12px 0 0 !important; font-size: 12px !important; line-height: 1.5 !important; color: #666 !important; }
.sejpro-exit__rodo a { color: #666 !important; text-decoration: underline; }
.sejpro-exit .sejpro-recaptcha-note { font-size: 12px !important; }
@media (max-width: 520px) { .sejpro-exitform__row { flex-direction: column; gap: 0; } }
.sejpro-exit form.init .wpcf7-response-output, .sejpro-exit form.resetting .wpcf7-response-output { display: none !important; } .sejpro-exit .wpcf7-spinner { position: absolute; }

/* Stopka - logotypy obsługiwanych płatności i dostaw, copyright */
.sejpro-footer-pay { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; }
.sejpro-footer-pay li { margin: 0; padding: 0; display: flex; align-items: center; }
.sejpro-footer-pay img { height: 28px; width: auto; display: block; }
.sejpro-footer-pay img[alt="Paynow"] { height: 24px; }
.sejpro-footer-pay img[alt="InPost"] { height: 36px; }
.sejpro-footer-pay img[alt="DPD"] { height: 26px; }
.sejpro-footer-pay__ssl { gap: 8px; font-size: 12px; line-height: 1.2; color: #666; }
.sejpro-footer-pay__ssl .fa { font-size: 22px; color: #0caa05; }
html body .page--footer .page--copyrights .copy--info { font-size: 14px !important; color: #666 !important; }

/* =====================================================================
   Porównywarka projektów - przyciski, pływający licznik, podstrona /porownywarka/
   ===================================================================== */
html body li.product { position: relative; }
.sejpro-compare-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; font-family: 'Roboto', sans-serif;
  border: 1px solid #d9d9d9; background: #fff; color: #222; border-radius: 8px; transition: border-color .15s, color .15s, background .15s;
}
.sejpro-compare-btn:hover { border-color: #222; }
.sejpro-compare-btn.is-active { background: #222; border-color: #222; color: #fff; }
.sejpro-compare-btn--card {
  position: absolute; top: 12px; right: 12px; z-index: 6; width: 36px; height: 36px; padding: 0; font-size: 15px;
  border-color: transparent; background: rgba(255, 255, 255, .92); box-shadow: 0 1px 4px rgba(0, 0, 0, .15);
}
html body li.product.sale .sejpro-compare-btn--card { top: 56px; } /* pod plakietką rabatu */
.sejpro-compare-btn--single { height: 36px; padding: 0 12px; font-size: 14px; font-weight: 500; margin-right: 16px; vertical-align: middle; }
.product-title .product-title-2 { display: flex; align-items: center; }
.sejpro-compare-fab {
  position: fixed; left: 16px; bottom: 16px; z-index: 9990; display: inline-flex; align-items: center; gap: 8px; padding: 12px 16px;
  background: #222; color: #fff !important; border-radius: 8px; font-family: 'Roboto', sans-serif; font-size: 14px; font-weight: 500;
  box-shadow: 0 6px 20px rgba(0, 0, 0, .25); text-decoration: none;
}
.sejpro-compare-fab[hidden] { display: none; }
.sejpro-compare-fab__count { background: #ec1c23; border-radius: 10px; min-width: 20px; height: 20px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; }
.sejpro-compare-toast {
  position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 9995; max-width: calc(100% - 32px);
  background: #222; color: #fff; padding: 12px 16px; border-radius: 8px; font-family: 'Roboto', sans-serif; font-size: 14px; box-shadow: 0 6px 20px rgba(0, 0, 0, .25);
}
.sejpro-compare-toast[hidden] { display: none; }
.sejpro-compare-toast a { color: #fff !important; text-decoration: underline; font-weight: 500; margin-left: 6px; }

.sejpro-cmp { padding-bottom: 56px; font-family: 'Roboto', sans-serif; color: #222; }
.sejpro-cmp__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 16px 0 24px; }
.sejpro-cmp__title { margin: 0 !important; font-size: 32px !important; font-weight: 700 !important; }
.sejpro-cmp__title span { color: #666; font-weight: 400; }
.sejpro-cmp__actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sejpro-cmp__action { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 14px; border: 1px solid #d9d9d9; border-radius: 8px; background: #fff; font-size: 14px; color: #222; cursor: pointer; }
.sejpro-cmp__action:hover { border-color: #222; }
.sejpro-cmp__diff { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; margin: 0 8px 0 0; cursor: pointer; }
.sejpro-cmp__diff input { width: 18px; height: 18px; accent-color: #222; margin: 0; }
.sejpro-cmp__scroll { overflow-x: auto; border: 1px solid #e6e6e6; border-radius: 8px; }
.sejpro-cmp__table { width: 100%; border-collapse: collapse; table-layout: fixed; min-width: calc(200px + var(--cols) * 240px); margin: 0 !important; }
.sejpro-cmp__table th, .sejpro-cmp__table td { padding: 12px 16px; border-bottom: 1px solid #e6e6e6; text-align: left; vertical-align: top; font-size: 14px; line-height: 1.5; background: #fff; }
.sejpro-cmp__table tr > :not(:last-child) { border-right: 1px solid #f0f0f0; }
.sejpro-cmp__label-col, .sejpro-cmp__label { width: 200px; position: sticky; left: 0; z-index: 2; background: #fff !important; }
.sejpro-cmp__label { font-weight: 400 !important; color: #666 !important; }
.sejpro-cmp__label .qmark { margin-left: 4px; }
.sejpro-cmp__table td { color: #222; font-weight: 500; }
.sejpro-cmp__na { color: #bdbdbd; font-weight: 400; }
.sejpro-cmp__section-row th { background: #f7f7f7 !important; font-size: 16px !important; font-weight: 500 !important; color: #222 !important; padding: 12px 16px !important; position: sticky; left: 0; }
.sejpro-cmp__product { position: relative; padding: 16px !important; }
.sejpro-cmp__remove { position: absolute; top: 24px; right: 24px; z-index: 2; width: 32px; height: 32px; border: 0; border-radius: 8px; background: rgba(255,255,255,.92); color: #222; cursor: pointer; box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.sejpro-cmp__remove:hover { color: #ec1c23; }
.sejpro-cmp__img { position: relative; display: block; border-radius: 8px; overflow: hidden; margin-bottom: 12px; }
.sejpro-cmp__img img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; display: block; }
.sejpro-cmp__badge { position: absolute; left: 8px; bottom: 8px; background: #ec1c23; color: #fff; font-size: 12px; font-weight: 500; padding: 3px 8px; border-radius: 6px; }
.sejpro-cmp__name { display: block; font-size: 16px; font-weight: 700; color: #222 !important; text-decoration: none; margin-bottom: 4px; }
.sejpro-cmp__price, .sejpro-cmp__price .amount { font-size: 20px; font-weight: 700; color: #ec1c23; }
.sejpro-cmp__price del, .sejpro-cmp__price del .amount { font-size: 14px; font-weight: 400; color: #666; margin-right: 6px; }
.sejpro-cmp__price ins { text-decoration: none; }
.sejpro-cmp__links { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 12px; font-size: 14px; font-weight: 400; }
.sejpro-cmp__links a { color: #222 !important; text-decoration: underline; text-underline-offset: 3px; }
.sejpro-cmp__links a.sejpro-cmp__go { text-decoration: none; background: #ec1c23; color: #fff !important; padding: 8px 12px; border-radius: 8px; font-weight: 500; }
.sejpro-cmp__add { vertical-align: middle !important; }
.sejpro-cmp__add a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 260px; border: 1px dashed #bdbdbd; border-radius: 8px; color: #666 !important; text-decoration: none; font-size: 14px; }
.sejpro-cmp__add a .fa { font-size: 24px; color: #ec1c23; }
.sejpro-cmp__add a:hover { border-color: #222; color: #222 !important; }
.sejpro-cmp__plan { display: block; margin-bottom: 12px; text-decoration: none; color: #666 !important; font-size: 12px; font-weight: 400; }
.sejpro-cmp__plan img { width: 100%; border: 1px solid #e6e6e6; border-radius: 8px; display: block; margin-bottom: 4px; background: #fff; }
.sejpro-cmp.only-diff .sejpro-cmp__row.is-same { display: none; }
.sejpro-cmp__empty { text-align: center; padding: 64px 16px; border: 1px solid #e6e6e6; border-radius: 8px; color: #666; }
.sejpro-cmp__empty > .fa { font-size: 40px; color: #ec1c23; margin-bottom: 12px; }
.sejpro-cmp__empty-title { font-size: 20px !important; font-weight: 500 !important; color: #222 !important; margin: 0 0 8px !important; }
.sejpro-cmp__empty p { max-width: 520px; margin: 0 auto 20px; font-size: 16px; }
.sejpro-cmp__icon { display: inline-flex; width: 26px; height: 26px; align-items: center; justify-content: center; border: 1px solid #d9d9d9; border-radius: 6px; font-size: 13px; color: #222; vertical-align: middle; }
.sejpro-cmp__empty .page--button { border-radius: 8px !important; }
@media (max-width: 767px) {
  .sejpro-cmp__title { font-size: 24px !important; }
  .sejpro-cmp__table { min-width: calc(120px + var(--cols) * 200px); }
  .sejpro-cmp__label-col, .sejpro-cmp__label { width: 120px; }
  .sejpro-cmp__table th, .sejpro-cmp__table td { padding: 10px; font-size: 13px; }
  .sejpro-compare-fab { left: 12px; bottom: 12px; padding: 10px 12px; }
}
.sejpro-compare-btn--card, html body li.product.sale .sejpro-compare-btn--card { top: 10px !important; right: auto !important; left: 52px !important; width: 32px !important; height: 32px !important; font-size: 14px !important; }
.sejpro-cmp__empty p, .sejpro-cmp__empty .sejpro-cmp__empty-title { text-align: center !important; }
.sejpro-cmp__label .qmark { display: inline-flex !important; vertical-align: middle; position: static !important; float: none !important; }
.sejpro-cmp__tip { display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; margin-left: 6px; border-radius: 50%; background: #e6e6e6; color: #222; font-size: 11px; font-weight: 700; cursor: help; vertical-align: 1px; }
.sejpro-cmp__tip:hover, .sejpro-cmp__tip:focus { background: #222; color: #fff; outline: none; }
.sejpro-compare-btn--single { margin-left: 16px !important; margin-right: 12px !important; }

/* Strona projektu - kafelek grupy na Facebooku (sejpro_fb_tile) */
.sejpro-fbtile {
  position: relative; display: flex; align-items: center; gap: 24px; margin: 32px 0; padding: 32px; overflow: hidden;
  border: 1px solid #dde6fb; border-radius: 8px; font-family: 'Roboto', sans-serif;
  background:
    radial-gradient(circle at 85% 40%, rgba(24, 119, 242, .18) 0, rgba(24, 119, 242, 0) 45%),
    linear-gradient(110deg, #f4f7ff 0%, #eef3fe 45%, #e2ebfd 100%);
}
.sejpro-fbtile__text { position: relative; z-index: 1; flex: 1 1 auto; min-width: 0; }
.sejpro-fbtile__pill {
  display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; margin-bottom: 14px;
  border: 1px solid #1877f2; border-radius: 8px; color: #1877f2; background: rgba(255,255,255,.6); font-size: 14px; font-weight: 500;
}
.sejpro-fbtile__title { margin: 0 0 8px !important; font-size: 32px !important; line-height: 1.15 !important; font-weight: 700 !important; color: #222 !important; }
.sejpro-fbtile__title span { color: #1877f2; }
.sejpro-fbtile__lead { margin: 0 0 20px !important; font-size: 16px !important; line-height: 1.5 !important; color: #666 !important; }
.sejpro-fbtile__btn {
  display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 22px; border-radius: 8px;
  background: #1877f2; color: #fff !important; font-size: 16px; font-weight: 500; text-decoration: none !important;
  box-shadow: 0 6px 16px rgba(24, 119, 242, .3); transition: background .15s, transform .15s;
}
.sejpro-fbtile__btn:hover { background: #0f63d6; transform: translateY(-1px); }
.sejpro-fbtile__art { position: relative; flex: 0 0 240px; height: 200px; display: flex; align-items: center; justify-content: center; }
.sejpro-fbtile__ring { position: absolute; border-radius: 50%; border: 1px dashed rgba(24, 119, 242, .35); }
.sejpro-fbtile__ring--1 { width: 170px; height: 170px; }
.sejpro-fbtile__ring--2 { width: 230px; height: 230px; border-style: solid; border-color: rgba(24, 119, 242, .12); }
.sejpro-fbtile__logo {
  position: relative; width: 104px; height: 104px; border-radius: 24px; background: #1877f2; color: #fff;
  display: flex; align-items: flex-end; justify-content: center; font-size: 84px; line-height: 1; overflow: hidden;
  box-shadow: 0 12px 28px rgba(24, 119, 242, .35); transform: rotate(-6deg);
}
.sejpro-fbtile__logo .fa { margin-bottom: -8px; margin-left: 14px; }
.sejpro-fbtile__chip {
  position: absolute; bottom: 4px; left: 50%; transform: translateX(-50%); white-space: nowrap; max-width: 260px; overflow: hidden; text-overflow: ellipsis;
  background: #fff; border-radius: 8px; padding: 6px 10px; font-size: 12px; font-weight: 500; color: #222; box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.sejpro-fbtile__chip .fa { color: #1877f2; }
.sejpro-partners-wrap { margin-top: 32px; }
@media (max-width: 767px) {
  .sejpro-fbtile { flex-direction: column-reverse; align-items: flex-start; padding: 24px 20px; gap: 8px; }
  .sejpro-fbtile__art { flex-basis: auto; width: 100%; height: 150px; }
  .sejpro-fbtile__ring--2 { width: 180px; height: 180px; }
  .sejpro-fbtile__ring--1 { width: 130px; height: 130px; }
  .sejpro-fbtile__logo { width: 80px; height: 80px; font-size: 64px; border-radius: 18px; }
  .sejpro-fbtile__title { font-size: 24px !important; }
  .sejpro-fbtile__btn { width: 100%; justify-content: center; }
}
/* karty projektów: serduszko w takiej samej ramce jak przycisk porównania */
html body li.product .icon--heart {
  top: 10px !important; left: 12px !important; width: 32px !important; height: 32px !important; z-index: 6;
  display: flex !important; align-items: center; justify-content: center;
  background: rgba(255, 255, 255, .92); border-radius: 8px; box-shadow: 0 1px 4px rgba(0, 0, 0, .15);
}
html body li.product .icon--heart .yith-wcwl-add-to-wishlist { margin: 0 !important; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
html body li.product .icon--heart a { display: flex !important; align-items: center; justify-content: center; width: 32px; height: 32px; color: #222 !important; font-size: 15px; line-height: 1; }
html body li.product .icon--heart a i { margin: 0 !important; color: inherit; }
html body li.product .icon--heart a span, html body li.product .icon--heart .feedback { display: none !important; }
html body li.product .icon--heart .fa-heart { color: #ec1c23 !important; }
.sejpro-compare-btn--card, html body li.product.sale .sejpro-compare-btn--card { left: 52px !important; top: 10px !important; }
.sejpro-compare-menu-count { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px; margin-left: 6px; border-radius: 9px; background: #ec1c23; color: #fff !important; font-size: 11px; font-weight: 500; line-height: 1; vertical-align: 2px; }
.sejpro-compare-menu-count[hidden] { display: none; }
html body li.product .icon--heart a i, html body li.product .icon--heart .yith-wcwl-icon { color: #222 !important; }
html body li.product .icon--heart .fa-heart, html body li.product .icon--heart .yith-wcwl-icon.fa-heart { color: #ec1c23 !important; }

/* porównywarka - przyklejony pasek z projektami przy przewijaniu */
.sejpro-cmp__sticky { position: fixed; left: 0; right: 0; z-index: 900; background: #fff; border-bottom: 1px solid #e6e6e6; box-shadow: 0 4px 16px rgba(0,0,0,.08); transform: translateY(-120%); transition: transform .2s; pointer-events: none; }
.sejpro-cmp__sticky.is-visible { transform: none; pointer-events: auto; }
.sejpro-cmp__sticky-inner { overflow: hidden; margin: 0 auto; }
.sejpro-cmp__sticky-track { display: flex; }
.sejpro-cmp__sticky-label { flex: 0 0 auto; display: flex; align-items: center; padding: 10px 16px; font-size: 14px; font-weight: 500; color: #666; background: #fff; position: relative; z-index: 2; }
.sejpro-cmp__sticky-col { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; padding: 10px 16px; min-width: 0; text-decoration: none !important; border-left: 1px solid #f0f0f0; }
.sejpro-cmp__sticky-col img { width: 64px; height: 43px; object-fit: cover; border-radius: 6px; flex: 0 0 auto; }
.sejpro-cmp__sticky-col span { display: flex; flex-direction: column; min-width: 0; }
.sejpro-cmp__sticky-col strong { font-size: 14px; font-weight: 700; color: #222; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sejpro-cmp__sticky-col em { font-style: normal; font-size: 14px; font-weight: 700; color: #ec1c23; white-space: nowrap; }
@media (max-width: 767px) { .sejpro-cmp__sticky-col img { width: 44px; height: 30px; } .sejpro-cmp__sticky-col strong, .sejpro-cmp__sticky-col em { font-size: 12px; } }
/* plakietki na kartach (-300 zł itd.) - zaokrąglenie 8px, wysokość 32px jak przyciski serduszka/porównania */
html body .sejpro--labels .sejpro--onsale, html body .sejpro--labels > span {
  display: inline-flex !important; align-items: center; height: 32px; padding: 0 10px !important; border-radius: 8px !important;
  line-height: 1 !important; font-size: 14px !important; font-weight: 500 !important;
}
html body li.product .sejpro--labels { top: 10px !important; right: 12px !important; }
/* strona projektu - odbicie lustrzane / porównaj / serduszko wyrównane do prawej (krawędź panelu) */
html body .product-title .product-title-2 { justify-content: flex-end !important; gap: 12px; }
html body .product-title .product-title-2 > * { margin-left: 0 !important; margin-right: 0 !important; float: none !important; }
html body .product-title .product-title-2 .sejpro-compare-btn--single { margin: 0 !important; }
html body .product-title .product-title-2 .add-to-whislist-top { margin: 0 !important; }

/* "Firmy partnerskie" na dole strony projektu (poza kolumną treści) - układ jak pozostałe bloki */
.sejpro-partners-wrap { margin: 32px 0 16px; }
.sejpro-partners-wrap .product--imgTextBlock {
  display: flex !important; align-items: center; gap: 24px; padding: 24px !important; margin: 0 !important;
  border: 1px solid #e6e6e6 !important; border-radius: 8px !important; background: #fff; box-shadow: 0 0 40px rgba(0,0,0,.04) !important;
}
.sejpro-partners-wrap .product--imgTextBlock__img {
  flex: 0 0 160px !important; width: 160px !important; height: 160px !important; max-width: none !important; margin: 0 !important; float: none !important;
  object-fit: cover; border-radius: 8px !important; border: 1px solid #e6e6e6 !important;
}
.sejpro-partners-wrap .product--imgTextBlock__content { flex: 1 1 auto; min-width: 0; padding: 0 !important; margin: 0 !important; width: auto !important; float: none !important; }
.sejpro-partners-wrap .block--title { margin: 0 0 8px !important; font-size: 24px !important; font-weight: 700 !important; color: #222 !important; font-family: 'Roboto', sans-serif !important; }
.sejpro-partners-wrap .block--desc { margin: 0 0 16px !important; font-size: 16px !important; line-height: 1.5 !important; color: #666 !important; border: 0 !important; padding: 0 !important; }
.sejpro-partners-wrap .page--button { border-radius: 8px !important; }
@media (max-width: 767px) {
  .sejpro-partners-wrap .product--imgTextBlock { flex-direction: column; align-items: flex-start; }
  .sejpro-partners-wrap .product--imgTextBlock__img { width: 100% !important; height: 180px !important; flex-basis: auto !important; }
}
body.home section.home--groups .sejpro-fbtile { margin: 0 !important; }
/* strona projektu - przyciski w blokach (Pobierz rysunki / zestawienie / Masz pytania) przy prawej krawędzi */
body.single-product .single--product__info .product--imgTextBlock .block--button { display: flex !important; justify-content: flex-end !important; text-align: right !important; }
body.single-product .single--product__info .product--imgTextBlock .block--button .page--button { margin-left: auto !important; margin-right: 0 !important; float: none !important; }

/* ===== poprawki mobilne ===== */
/* licznik promocji - tytuł i czas nie nachodzą na siebie */
html body .wcct_countdown_timer strong { display: block !important; line-height: 1.3 !important; margin-bottom: 4px !important; }
html body .wcct_countdown_timer .wcct_timer_wrap { line-height: 1.3 !important; }
@media (max-width: 767px) {
  html body .wcct_countdown_timer .wcct_timer_wrap, html body .wcct_countdown_timer .wcct_timer_wrap * { font-size: 18px !important; }
}
/* strona projektu - odstęp między przełącznikiem odbicia a paskiem "Najlepsza cena" */
@media (max-width: 991px) {
  html body.single-product .product-title { margin-bottom: 16px !important; }
  html body.single-product .product-title .product-title-2 { justify-content: flex-start !important; flex-wrap: wrap; row-gap: 8px; }
}
/* /zamowienie na telefonie - mniejsze zdjęcie projektu */
@media (max-width: 768px) {
  html body.woocommerce-checkout .eatnet-opch_container table.cart td.product-thumbnail { text-align: left !important; }
  html body.woocommerce-checkout .eatnet-opch_container table.cart td.product-thumbnail img,
  html body.woocommerce-checkout .eatnet-opch_container table.cart img { width: 140px !important; max-width: 140px !important; height: auto !important; margin: 0 !important; }
}
/* kategorie na telefonie: filtry -> lista projektów -> bestsellery -> dlaczego u nas */
@media (max-width: 991px) {
  html body .sejpro-woocommerce-content { display: flex !important; flex-direction: column; }
  html body .sejpro-woocommerce-content > .sidebar--shop { display: contents !important; }
  html body .sejpro-woocommerce-content .sidebar--shop > * { order: 5; width: 100%; }
  html body .sejpro-woocommerce-content .sidebar--shop > .sejpro--projects__filters { order: 1; }
  html body .sejpro-woocommerce-content > #primary { order: 2; width: 100%; }
  html body .sejpro-woocommerce-content .sidebar--shop > .block--bestsellers { order: 3; margin-top: 32px; }
  html body .sejpro-woocommerce-content .sidebar--shop > .block--whyUs { order: 4; }
}
@media (max-width: 991px) {
  html body .sejpro-compare-btn--single { width: 36px; padding: 0 !important; }
  html body .sejpro-compare-btn--single .sejpro-compare-btn__text { display: none; }
  html body.single-product .product-title .product-title-2 { flex-wrap: nowrap; }
}

/* Karty projektów - przewijanie zdjęć (strzałki po najechaniu, kropki) */
.sejpro-cardslider { position: absolute; left: 0; right: 0; top: 0; aspect-ratio: 560 / 310; z-index: 5; pointer-events: none; }
.sejpro-cardslider__nav {
  position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; border-radius: 50%; border: 0; padding: 0; cursor: pointer;
  background: rgba(255, 255, 255, .92); color: #222; box-shadow: 0 2px 8px rgba(0, 0, 0, .15); display: flex; align-items: center; justify-content: center;
  opacity: 0; transition: opacity .15s, color .15s; pointer-events: auto; font-size: 22px; line-height: 1;
}
.sejpro-cardslider__nav:hover { color: #ec1c23; }
.sejpro-cardslider__nav--prev { left: 12px; }
.sejpro-cardslider__nav--next { right: 12px; }
li.product:hover .sejpro-cardslider__nav { opacity: 1; }
.sejpro-cardslider__dots { position: absolute; left: 50%; bottom: 10px; transform: translateX(-50%); display: flex; gap: 6px; pointer-events: auto; padding: 4px 6px; }
.sejpro-cardslider__dot { width: 8px; height: 8px; border-radius: 50%; border: 0; padding: 0; background: rgba(255, 255, 255, .6); box-shadow: 0 0 2px rgba(0, 0, 0, .35); cursor: pointer; transition: background .15s, transform .15s; }
.sejpro-cardslider__dot.is-active { background: #fff; transform: scale(1.25); }
li.product.sejpro-cardslider-used .wp-post-image--secondary { display: none !important; } /* po przewinięciu bez podmiany zdjęcia przez wtyczkę */
@media (hover: none) { .sejpro-cardslider__nav { display: none; } }

/* Strona projektu (telefon) - dolny pasek: Zadzwoń + Dodaj do koszyka */
html body .toolbox .toolbox__wrapper { display: flex !important; gap: 10px; align-items: stretch; padding: 10px 16px !important; }
html body .toolbox .toolbox__button {
  flex: 1 1 0; display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; height: 52px; margin: 0 !important;
  border-radius: 8px !important; font-family: 'Roboto', sans-serif !important; font-size: 16px !important; font-weight: 500 !important; text-decoration: none !important; white-space: nowrap;
}
html body .toolbox .toolbox__button--buy { flex: 1.6 1 0; background: #ec1c23 !important; color: #fff !important; border: 0 !important; }
html body .toolbox .toolbox__button--call { background: #fff !important; color: #ec1c23 !important; border: 1px solid #ec1c23 !important; }
html body .toolbox .toolbox__button .fa { font-size: 18px; }
li.product[data-sejpro-slider] .wp-post-image--secondary { display: none !important; } /* zamiast podmiany zdjęcia po najechaniu - przewijanie strzałkami */
@media (max-width: 991px) { body.single-product .sejpro-compare-fab { bottom: 84px; } }

/* Strona główna (telefon) - wyszukiwarka w banerze, hasło nad nią (wysokość karty: --sejpro-hs-h z JS) */
@media (max-width: 991px) {
  body.home .header--slider .header--slider__slide,
  body.home .header--slider .header--slider__slide .header--slider__slide__img { height: calc(var(--sejpro-hs-h, 360px) + 330px) !important; }
  body.home .header--slider .header--slider__slide .slide--content { top: auto !important; bottom: calc(var(--sejpro-hs-h, 360px) + 28px) !important; }
  body.home .header--slider .slide--text .page--button { display: none !important; }
  body.home .header--slider .slide--text p2 { padding-bottom: 0 !important; }
  body.home .sejpro-hs-wrap { margin-top: calc(-1 * var(--sejpro-hs-h, 360px) - 16px) !important; position: relative; z-index: 20; }
  body.home .sejpro-hs { border: 0 !important; box-shadow: 0 8px 28px rgba(0,0,0,.25) !important; }
  body.home .sejpro-hs__row { padding: 12px 12px 8px; gap: 8px; }
  body.home .sejpro-hs__toggle { height: 46px; }
  body.home .sejpro-hs__quick { padding: 0 12px 12px; gap: 8px; }
  body.home .sejpro-hs__quick-links { flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; }
  body.home .sejpro-hs__quick-links::-webkit-scrollbar { display: none; }
  body.home .sejpro-hs__more { padding: 10px 12px; }
  body.home .home--startPoints .home--startPoints__holder { margin-top: 24px !important; }
}
@media (max-width: 991px) {
  body.home .header--slider .slide--content .slide--text { padding: 0 0 0 1px !important; }
  body.home .header--slider .slide--content .slide--text p2 { display: block; font-size: 24px !important; line-height: 1.25 !important; }
  body.home .header--slider .header--slider__slide,
  body.home .header--slider .header--slider__slide .header--slider__slide__img { height: calc(var(--sejpro-hs-h, 360px) + 300px) !important; }
}
/* serduszko na kartach - ikona dokładnie na środku ramki (wtyczka dodawała wcięcie) */
html body li.product .icon--heart, html body li.product .icon--heart * { box-sizing: border-box !important; }
html body li.product .icon--heart .yith-wcwl-add-to-wishlist,
html body li.product .icon--heart .yith-wcwl-add-button,
html body li.product .icon--heart .yith-wcwl-wishlistaddedbrowse,
html body li.product .icon--heart .yith-wcwl-wishlistexistsbrowse { position: static !important; margin: 0 !important; padding: 0 !important; width: 32px !important; height: 32px !important; display: flex !important; align-items: center; justify-content: center; }
html body li.product .icon--heart a { position: static !important; margin: 0 !important; padding: 0 !important; left: auto !important; top: auto !important; text-indent: 0 !important; }

/* Strona projektu - okno "Pobierz rysunki szczegółowe" (#sejproDraw) */
.sejpro-draw[hidden] { display: none !important; }
.sejpro-draw { position: fixed; inset: 0; z-index: 99999; background: rgba(0, 0, 0, .55); display: flex; align-items: center; justify-content: center; padding: 16px; font-family: 'Roboto', sans-serif; }
.sejpro-draw__box { position: relative; display: flex; width: 820px; max-width: 100%; max-height: calc(100vh - 32px); background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 16px 48px rgba(0, 0, 0, .3); }
.sejpro-draw__close { position: absolute; top: 10px; right: 10px; z-index: 3; width: 40px; height: 40px; border: 0; border-radius: 8px; background: rgba(255,255,255,.9); color: #222; font-size: 20px; cursor: pointer; }
.sejpro-draw__close:hover { background: #f2f2f2; }
.sejpro-draw__side { flex: 0 0 36%; position: relative; background-size: cover; background-position: center; display: flex; align-items: flex-end; color: #fff; min-height: 320px; }
.sejpro-draw__side::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.72) 100%); }
.sejpro-draw__side-inner { position: relative; padding: 20px; }
.sejpro-draw__badge { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; margin-bottom: 10px; border-radius: 8px; background: #ec1c23; font-size: 12px; font-weight: 500; }
.sejpro-draw__project { margin: 0 !important; font-size: 14px !important; color: #fff !important; line-height: 1.3 !important; }
.sejpro-draw__project strong { display: block; font-size: 20px; font-weight: 700; margin-top: 2px; }
.sejpro-draw__main { flex: 1 1 auto; padding: 28px 24px 20px; overflow-y: auto; }
.sejpro-draw__title { margin: 0 40px 12px 0 !important; font-size: 20px !important; font-weight: 700 !important; line-height: 1.3 !important; color: #222 !important; }
.sejpro-draw__list { list-style: none !important; margin: 0 0 16px !important; padding: 0 !important; }
.sejpro-draw__list li { margin: 0 0 4px !important; padding: 0 !important; font-size: 14px; color: #222; list-style: none !important; }
.sejpro-draw__list li::before { display: none !important; }
.sejpro-draw__list .fa { color: #0caa05; width: 18px; }
.sejpro-drawform input[type=text], .sejpro-drawform input[type=email], .sejpro-drawform input[type=tel] {
  width: 100%; height: 46px; padding: 0 14px; margin: 0 0 10px; border: 1px solid #d9d9d9; border-radius: 8px; font-size: 16px; color: #222; background: #fff; box-shadow: none;
}
.sejpro-drawform input:focus { border-color: #222 !important; outline: none; }
.sejpro-drawform__acceptance { font-size: 12px; line-height: 1.5; color: #666; margin-bottom: 8px; }
.sejpro-drawform__acceptance a { color: #222; text-decoration: underline; }
.sejpro-drawform__acceptance .wpcf7-list-item { margin: 0; }
.sejpro-drawform__acceptance label { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.sejpro-drawform__acceptance input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: #222; flex: 0 0 auto; }
.sejpro-drawform input[type=submit] { width: 100%; height: 50px; margin-top: 8px; border: 0; border-radius: 8px; background: #ec1c23; color: #fff; font-size: 16px; font-weight: 500; cursor: pointer; }
.sejpro-drawform input[type=submit]:hover { background: #c9171d; }
.sejpro-draw .wpcf7-not-valid-tip { font-size: 12px; margin: -6px 0 8px; }
.sejpro-draw form.init .wpcf7-response-output { display: none !important; }
.sejpro-draw .wpcf7-response-output { margin: 10px 0 0 !important; padding: 10px 12px !important; border-radius: 8px; font-size: 14px; }
.sejpro-draw .wpcf7-spinner { position: absolute; }
.sejpro-draw__rodo { margin: 10px 0 0 !important; font-size: 11px !important; line-height: 1.5 !important; color: #666 !important; }
.sejpro-draw__rodo a { color: #666 !important; text-decoration: underline; }
.sejpro-draw .sejpro-recaptcha-note { font-size: 11px !important; }
@media (max-width: 767px) {
  .sejpro-draw__box { flex-direction: column; }
  .sejpro-draw__side { flex: 0 0 auto; min-height: 140px; }
  .sejpro-draw__main { padding: 20px 16px 16px; }
  .sejpro-draw__title { font-size: 18px !important; }
}

/* Strona projektu - bez czerwonych podkreśleń nagłówków (stary design), opisy czarne */
html body.single-product .product--section__title::after,
html body.single-product .techParams--title::after { display: none !important; }
html body.single-product .techParams--desc,
html body.single-product .techParams--desc p,
html body.single-product .project--desc,
html body.single-product .project--desc p,
html body.single-product .project--desc li { color: #222 !important; }

/* Stopka - bez linii pod nagłówkami kolumn */
html body .page--footer .footer--col h3::after { display: none !important; }
html body .page--footer .footer--col h3 { padding-bottom: 0 !important; }

/* Stopka - sekcja SEO z kategoriami projektów */
.sejpro-footer-seo { padding-top: 32px !important; padding-bottom: 32px !important; border-top: 1px solid #e6e6e6; margin-top: 24px; }
.sejpro-footer-seo__title { margin: 0 0 20px !important; font-size: 20px !important; font-weight: 700 !important; color: #222 !important; }
.sejpro-footer-seo__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 32px; }
.sejpro-footer-seo__head { margin: 0 0 10px !important; font-size: 14px !important; font-weight: 500 !important; color: #222 !important; }
html body ul.sejpro-footer-seo__list { list-style: none !important; margin: 0 !important; padding: 0 !important; }
html body ul.sejpro-footer-seo__list li { margin: 0 0 6px !important; padding: 0 !important; list-style: none !important; line-height: 1.4; }
html body ul.sejpro-footer-seo__list li::before { display: none !important; }
html body ul.sejpro-footer-seo__list a { font-size: 14px !important; font-weight: 400 !important; color: #666 !important; text-decoration: none; }
html body ul.sejpro-footer-seo__list a:hover { color: #ec1c23 !important; }
@media (max-width: 991px) { .sejpro-footer-seo__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Strona projektu - "Parametry techniczne budynku" ujednolicone: nazwy 400 #666, wartości 500 #222, 14px, linie #e6e6e6 */
html body .product--techParams .techParams--title { font-size: 16px !important; font-weight: 500 !important; color: #222 !important; margin: 0 0 8px !important; padding: 0 !important; border: 0 !important; }
html body .product--techParams .techParams--param ~ .techParams--title { margin-top: 28px !important; }
html body .product--techParams .techParams--param { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 10px 0 !important; margin: 0 !important; min-height: 0 !important; border-bottom: 1px solid #e6e6e6 !important; }
html body .product--techParams .techParams--param p { margin: 0 !important; padding: 0 !important; line-height: 1.45 !important; font-size: 14px !important; }
html body .product--techParams .param--name { font-weight: 400 !important; color: #666 !important; display: flex; align-items: center; gap: 6px; }
html body .product--techParams .param--value { font-weight: 500 !important; color: #222 !important; text-align: right; white-space: nowrap; }
html body .product--techParams .param--name .paramlow { font-size: 12px !important; color: #666 !important; font-weight: 400 !important; }
html body .product--techParams .qmark { width: 16px !important; height: 16px !important; line-height: 16px !important; font-size: 11px !important; font-weight: 500 !important; background: #e6e6e6 !important; color: #666 !important; border-radius: 50% !important; text-align: center; margin: 0 !important; position: static !important; }
html body .product--techParams .techParams--param.param--text { display: block; font-size: 14px !important; line-height: 1.5 !important; color: #222 !important; font-weight: 400 !important; }
html body .product--techParams .techParams--param.param--text span { font-weight: 500 !important; color: #222 !important; }
html body .product--techParams .techParams--desc { font-size: 14px !important; line-height: 1.5 !important; color: #222 !important; margin: 0 0 4px !important; }
html body .product--techParams .qmark::after { display: none !important; }
.sejpro-drawform p { margin: 0 !important; padding: 0 !important; }
.sejpro-drawform br { display: none; }
.sejpro-drawform .wpcf7-form-control-wrap { display: block; }
.sejpro-draw .wpcf7-not-valid-tip { margin: -4px 0 10px !important; }

/* Strona projektu - nagłówki sekcji bez szarej linii, mniejsza ścieżka (breadcrumbs) */
html body.single-product .product--section__title { border-bottom: 0 !important; }
html body.single-product #breadcrumbs, html body.single-product #breadcrumbs * { font-size: 12px !important; line-height: 18px !important; }

/* Bez linii pod nagłówkami: sidebar katalogu (Bestsellery, Dlaczego u nas?), sekcje, box kontaktowy */
html body .block--title { border-bottom: 0 !important; padding-bottom: 0 !important; }
html body .block--title::after { display: none !important; }
html body .product--section__title { border-bottom: 0 !important; }
html body .product--section__title::after { display: none !important; }
html body .cta--right--text { border-bottom: 0 !important; }
/* Strona projektu - ścieżka na dole */
html body.single-product #breadcrumbs.sejpro-breadcrumbs-bottom { margin: 32px 0 0 !important; padding: 0 !important; color: #666 !important; }

/* Strona projektu - "Odbicie lustrzane" wyśrodkowane z "Porównaj", całość wyżej (ścieżka przeniesiona na dół) */
html body.single-product .product-title-2 .addToCart--odbicieLustrzane { display: flex !important; align-items: center !important; gap: 8px; }
html body.single-product .product-title-2 .addToCart--odbicieLustrzane > span { position: static !important; top: auto !important; margin: 0 !important; line-height: 22px !important; font-size: 14px !important; font-weight: 500 !important; color: #222 !important; }
html body.single-product .product-title-2 .odbicie--switcher { margin: 0 !important; vertical-align: middle; }

/* Katalog - ścieżka na dole */
html body #breadcrumbs.sejpro-breadcrumbs-bottom { margin: 32px 0 24px !important; padding: 0 !important; color: #666 !important; }
html body #breadcrumbs.sejpro-breadcrumbs-bottom, html body #breadcrumbs.sejpro-breadcrumbs-bottom * { font-size: 12px !important; line-height: 18px !important; }

/* Karty w katalogu - przewijanie zdjęć palcem (przeglądarka obsługuje pion, poziom przejmuje skrypt) */
li.product a.sejpro-cardslider-touch { touch-action: pan-y pinch-zoom; }
li.product a.sejpro-cardslider-touch img { will-change: transform; -webkit-user-drag: none; user-select: none; }
li.product a.sejpro-cardslider-touch .wp-post-image { backface-visibility: hidden; }
/* Karuzele slick - pion obsługuje przeglądarka, poziom karuzela */
.slick-slider .slick-list { touch-action: pan-y pinch-zoom; }

/* Rzuty i przekroje zawsze czarno-białe (część plików z programów CAD ma żółtawe tło / kolorowe cyfry) */
html body img.rzut--normal, html body img.rzut--odbicie, html body .zoom__room img,
html body .sejpro-viewer[data-tab="rzut"] .sejpro-viewer__img,
html body .sejpro-viewer[data-tab="rzut"] .sejpro-viewer__thumb img { filter: grayscale(1); /* bez brightness/contrast - na iPhonie (EDR) rozjaśniona biel świeciła mocniej niż tło strony */ }

/* Telefon: przyciski w kafelkach (Pobierz rysunki, zestawienie materiałów, Masz pytania?, Firmy partnerskie) na całą szerokość */
@media (max-width: 767px) {
  html body .product--imgTextBlock .block--button { display: block !important; width: 100% !important; }
  html body .product--imgTextBlock .block--button .page--button { display: flex !important; align-items: center; justify-content: center; width: 100% !important; max-width: none !important; min-height: 48px; box-sizing: border-box; text-align: center; white-space: normal; }
  html body .product--imgTextBlock .block--button .page--button span { white-space: normal; line-height: 1.3; }
}

/* Telefon, strona projektu: ikonka ustawień cookies nad dolnym paskiem (Zadzwoń / Dodaj do koszyka) */
@media (max-width: 767px) {
  html body.single-product .cky-btn-revisit-wrapper { bottom: 84px !important; right: 12px !important; width: 40px !important; height: 40px !important; }
  html body.single-product .cky-btn-revisit-wrapper .cky-btn-revisit, html body.single-product .cky-btn-revisit-wrapper .cky-btn-revisit img { width: 40px !important; height: 40px !important; }
}

/* Strona główna, telefon - polecane projekty jeden pod drugim (bez karuzeli) */
.sejpro-home-allbtn { display: none; }
@media (max-width: 767px) {
  .home--bestsellers .bestsellers--slider.sejpro-stacked { display: flex; flex-direction: column; gap: 16px; }
  .home--bestsellers .bestsellers--slider.sejpro-stacked > * { width: 100% !important; margin: 0 !important; }
  .home--bestsellers .bestsellers--slider.sejpro-stacked > :nth-child(n+4) { display: none !important; }
  .home--bestsellers .bestsellers--slider.sejpro-stacked li.product { width: 100% !important; margin: 0 !important; float: none !important; }
  html body a.sejpro-home-allbtn { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; margin: 16px 0 0; border-radius: 8px; background: #ec1c23; color: #fff !important; font-size: 16px; font-weight: 500; text-decoration: none !important; box-sizing: border-box; }
  html body a.sejpro-home-allbtn:hover { background: #c9171d; }
}

/* Strona główna - "Wszystkie projekty" pod kategoriami jako czerwony przycisk */
html body a.deweloperwp { background: #ec1c23 !important; border: 1px solid #ec1c23 !important; color: #fff !important; border-radius: 8px !important; font-weight: 500 !important; text-decoration: none !important; }
html body a.deweloperwp:hover { background: #c9171d !important; border-color: #c9171d !important; color: #fff !important; }

/* /zamowienie - "Twoje zamówienie": bez zdjęcia pakietu dodatków; na telefonie kompaktowe wiersze */
html body table.shop_table tr.cart-item__extras .product-name img { display: none !important; }
@media (max-width: 767px) {
  html body table.shop_table thead { display: none !important; }
  html body table.shop_table tr.cart_item { display: grid !important; grid-template-columns: 64px minmax(0, 1fr) auto 28px; column-gap: 12px; align-items: center; padding: 12px 0 !important; margin: 0 !important; border: 0 !important; border-bottom: 1px solid #e6e6e6 !important; background: none !important; }
  html body table.shop_table tr.cart_item td { display: block !important; padding: 0 !important; margin: 0 !important; border: 0 !important; width: auto !important; min-height: 0 !important; height: auto !important; text-align: left !important; background: none !important; }
  html body table.shop_table tr.cart_item td::before { display: none !important; }
  html body table.shop_table tr.cart_item td.product-thumbnail { grid-column: 1; }
  html body table.shop_table tr.cart_item td.product-thumbnail img { width: 64px !important; height: 64px !important; max-width: none !important; object-fit: cover; border-radius: 8px; display: block; }
  html body table.shop_table tr.cart_item td.product-name { grid-column: 2; font-size: 14px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #222 !important; }
  html body table.shop_table tr.cart_item td.product-name .sejpro-cart-availability { display: block; margin-top: 4px; font-size: 12px !important; font-weight: 400 !important; line-height: 1.35; }
  html body table.shop_table tr.cart_item td.product-name .tm-cart-edit-options { display: inline-block; margin-top: 4px; font-size: 12px !important; font-weight: 400 !important; font-style: normal !important; color: #666 !important; text-decoration: underline; }
  html body table.shop_table tr.cart_item td.product-total { grid-column: 3; text-align: right !important; white-space: nowrap; font-size: 16px !important; font-weight: 700 !important; color: #222; }
  html body table.shop_table tr.cart_item td.product-total * { font-size: 16px !important; }
  html body table.shop_table tr.cart_item td.product-remove { grid-column: 4; position: static !important; justify-self: end; }
  html body table.shop_table tr.cart_item td.product-remove a.remove { position: static !important; width: 24px !important; height: 24px !important; line-height: 22px !important; font-size: 18px !important; margin: 0 !important; }
  /* wiersz pakietu dodatków: bez kolumny zdjęcia */
  html body table.shop_table tr.cart-item__extras td.product-thumbnail { display: none !important; }
  html body table.shop_table tr.cart-item__extras td.product-name { grid-column: 1 / 3; }
}
@media (max-width: 767px) {
  html body.woocommerce-checkout .eatnet-opch_container table.cart tr.cart_item td.product-thumbnail img { width: 64px !important; height: 64px !important; max-width: none !important; object-fit: cover; border-radius: 8px; }
  html body.woocommerce-checkout .eatnet-opch_container table.cart tr.cart_item td.product-remove { width: 28px !important; min-width: 0 !important; }
  html body.woocommerce-checkout .eatnet-opch_container table.cart tr.cart_item td.product-total { min-width: 0 !important; width: auto !important; }
}
@media (max-width: 767px) {
  /* cena pod nazwą, więcej miejsca na tekst */
  html body table.shop_table tr.cart_item { grid-template-columns: 64px minmax(0, 1fr) 24px !important; grid-template-rows: auto auto; row-gap: 4px; align-items: start !important; }
  html body table.shop_table tr.cart_item td.product-thumbnail { grid-column: 1 !important; grid-row: 1 / 3; }
  html body table.shop_table tr.cart_item td.product-name { grid-column: 2 !important; grid-row: 1; }
  html body table.shop_table tr.cart_item td.product-total { grid-column: 2 !important; grid-row: 2; text-align: left !important; }
  html body table.shop_table tr.cart_item td.product-remove { grid-column: 3 !important; grid-row: 1; }
  html body table.shop_table tr.cart-item__extras { align-items: center !important; grid-template-rows: auto; }
  html body table.shop_table tr.cart-item__extras td.product-name { grid-column: 1 / 2 !important; grid-row: 1; }
  html body table.shop_table tr.cart-item__extras { grid-template-columns: minmax(0, 1fr) auto 24px !important; }
  html body table.shop_table tr.cart-item__extras td.product-total { grid-column: 2 !important; grid-row: 1; text-align: right !important; }
  html body table.shop_table tr.cart-item__extras td.product-remove { grid-column: 3 !important; grid-row: 1; }
}
@media (max-width: 767px) {
  html body.woocommerce-checkout .eatnet-opch_container table.cart tr.cart_item:not(.cart-item__extras) td.product-total { text-align: left !important; justify-self: start; }
  html body.woocommerce-checkout .eatnet-opch_section > h2.section--title { margin-bottom: 4px !important; }
}
/* Karty - sąsiednie zdjęcie widoczne podczas przesuwania palcem (bez białego tła i bez przenikania) */
li.product a.sejpro-cardslider-touch { position: relative; overflow: hidden; }
li.product a.sejpro-cardslider-touch img.sejpro-cardslider-ghost { position: absolute; display: none; margin: 0 !important; object-fit: cover; z-index: 1; pointer-events: none; border-radius: 0; will-change: transform; }

/* Zawsze białe tło strony (także na telefonach z trybem ciemnym) */
:root { color-scheme: only light; }
html, html body, html body .pageholder { background-color: #fff !important; }
/* Kafelki "Pobierz rysunki" / "Pobierz zestawienie" - ikony bez ramki */
html body.single-product .content--holder .product .single--product__info .product--imgTextBlock.textblock--views img.product--imgTextBlock__img { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }

/* Telefon/tablet - mniej miejsca nad logo, koszykiem i burgerem */
@media (max-width: 991px) {
  html body .page--header .header--lower { margin-top: 12px !important; }
  html body .page--header .header--upper { padding-bottom: 0 !important; }
}
/* Telefon - ikony (szukaj, ulubione, koszyk) w jednej linii z logo i burgerem */
@media (max-width: 767px) {
  html body .page--header .header--lower > .content--holder { position: relative; }
  html body .page--header .header--lower .header--cart__holder { position: absolute !important; top: 50% !important; right: 60px !important; left: auto !important; transform: translateY(-50%); margin: 0 !important; padding: 0 !important; width: auto !important; }
}
@media (max-width: 389px) {
  html body .page--header .header--lower .header--cart__holder .cart--totalPrice { display: none !important; }
}

/* Przyklejony navbar - bez przerwy nad nim (prześwitywała treść strony) */
html body .page--header.menu--fixed .header--lower { margin-top: 0 !important; }
/* Komputer - mniejszy odstęp nad logo i menu */
@media (min-width: 992px) {
  html body .page--header:not(.menu--fixed) .header--lower { margin-top: 12px !important; }
}
/* Tytuły sekcji (m.in. /zamowienie) bez linii pod spodem */
html body .section--title.section--title__left { border-bottom: 0 !important; }
html body .section--title.section--title__left::after { display: none !important; }
html body .content--holder .eatnet-opch_section h2.section--title.section--title__left { border-bottom: 0 !important; padding-bottom: 0 !important; }

/* /zamowienie - jednakowe odstępy między sekcjami (32 px), tytuł 12 px nad treścią, bez zapasów na końcu sekcji */
html body .eatnet-opch .eatnet-opch_section { padding: 0 !important; margin: 0 0 32px !important; }
html body .eatnet-opch .eatnet-opch_container > .eatnet-opch_section:first-child,
html body .eatnet-opch > .eatnet-opch_section:first-child { padding-top: 24px !important; }
html body .content--holder .eatnet-opch_section h2.section--title { margin: 0 0 12px !important; }
html body .eatnet-opch_section > :last-child,
html body .eatnet-opch_section > :last-child > :last-child,
html body .eatnet-opch_section > :last-child > :last-child > :last-child { margin-bottom: 0 !important; }
html body .eatnet-opch_section ul.woocommerce-shipping-methods > li:last-child,
html body .eatnet-opch_section ul.products > li:last-child,
html body .eatnet-opch_section ul.wc_payment_methods > li:last-child { margin-bottom: 0 !important; }
/* kafelki dostawy/płatności: ten sam margines u góry i u dołu (14 px), także w ostatnim kafelku */
html body .eatnet-opch_section li.eatnet-opch_method { padding-top: 14px !important; padding-bottom: 14px !important; }
html body .eatnet-opch_section li.eatnet-opch_method > :last-child,
html body .eatnet-opch_section li.eatnet-opch_method .shipping-method-description { margin-bottom: 0 !important; }
/* "Metody płatności" - bez dodatkowych 30 px nad listą */
html body .eatnet-opch_section ul.wc_payment_methods { padding: 0 !important; margin: 0 !important; }
html body .eatnet-opch_section .sejpro-bacs-box { margin: 12px 0 0 !important; }
html body .eatnet-opch_section .woocommerce-shipping-fields h3 { margin: 16px 0 0 !important; }
html body .eatnet-opch_section p.form-row:last-child { margin-bottom: 0 !important; }

/* Wszystkie podstrony - tytuły bloków bez szarych/czerwonych linii (stary design) */
html body .slider--title, html body .slider--title2 { border-bottom: 0 !important; }
html body .slider--title::after, html body .slider--title2::after { display: none !important; }

/* Paginacja (katalog, kategorie, blog, realizacje) - osobne kafelki 40 px, radius 8, aktywna strona czerwona */
html body nav.woocommerce-pagination, html body nav.navigation.pagination { display: flex !important; justify-content: center !important; margin: 40px 0 8px !important; padding: 0 !important; border: 0 !important; text-align: center; }
html body nav.woocommerce-pagination ul.page-numbers, html body nav.pagination .nav-links { display: flex !important; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; list-style: none !important; }
html body nav.woocommerce-pagination ul.page-numbers li { display: block !important; float: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; overflow: visible !important; list-style: none !important; }
html body nav.woocommerce-pagination ul.page-numbers li::before { display: none !important; }
html body nav.woocommerce-pagination .page-numbers:is(a, span), html body nav.pagination .nav-links .page-numbers {
  display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box;
  min-width: 40px; height: 40px; padding: 0 12px !important; margin: 0 !important;
  border: 1px solid #e6e6e6 !important; border-radius: 8px !important; background: #fff !important;
  color: #222 !important; font-family: 'Roboto', sans-serif; font-size: 14px !important; font-weight: 500 !important; line-height: 1 !important;
  text-decoration: none !important; transition: border-color .15s, color .15s, background .15s;
}
html body nav.woocommerce-pagination a.page-numbers:hover, html body nav.pagination .nav-links a.page-numbers:hover { border-color: #222 !important; background: #fff !important; color: #222 !important; }
html body nav.woocommerce-pagination .page-numbers.current, html body nav.pagination .nav-links .page-numbers.current { background: #ec1c23 !important; border-color: #ec1c23 !important; color: #fff !important; }
html body nav.woocommerce-pagination .page-numbers.dots, html body nav.pagination .nav-links .page-numbers.dots { border-color: transparent !important; background: transparent !important; min-width: 24px; padding: 0 !important; color: #666 !important; }
html body nav.woocommerce-pagination .page-numbers .fa, html body nav.pagination .nav-links .page-numbers .fa { font-size: 18px; line-height: 1; }
html body nav.woocommerce-pagination .page-numbers:is(a, span), html body nav.pagination .nav-links .page-numbers { height: 40px !important; min-height: 40px !important; width: auto !important; }
@media (max-width: 480px) {
  html body nav.woocommerce-pagination ul.page-numbers, html body nav.pagination .nav-links { gap: 6px; }
  html body nav.woocommerce-pagination .page-numbers:is(a, span), html body nav.pagination .nav-links .page-numbers { min-width: 36px !important; height: 36px !important; min-height: 36px !important; padding: 0 8px !important; }
}

/* Strona projektu - serduszko (ulubione) na wysokości przycisku Porównaj */
html body.single-product .product-title-2 .add-to-whislist-top .yith-wcwl-add-to-wishlist { position: relative; top: -5px; }
/* listy dostawy/płatności: wtyczka dodaje 30 px nad i pod (selektor z #id), a clearfix ::before/::after robił dodatkową przerwę w układzie flex */
html body .woocommerce ul#shipping_method, html body.woocommerce-checkout #payment ul.payment_methods { padding: 0 !important; margin: 0 !important; }
html body.woocommerce-checkout #payment ul.payment_methods::before, html body.woocommerce-checkout #payment ul.payment_methods::after,
html body .woocommerce ul#shipping_method::before, html body .woocommerce ul#shipping_method::after { display: none !important; }

/* Warunki zakupu - wspólny układ (Dostawa i płatność): sekcje, kafelki jak w /zamowienie */
.sejpro-terms { padding-bottom: 24px; }
.sejpro-terms .page--default__title { margin-bottom: 24px !important; border: 0 !important; }
.sejpro-terms__section { margin: 0 0 40px; }
html body .sejpro-terms__title { margin: 0 0 12px !important; font-size: 24px !important; font-weight: 500 !important; color: #222 !important; line-height: 1.3 !important; border: 0 !important; padding: 0 !important; }
html body .sejpro-terms__title::after { display: none !important; }
html body .sejpro-terms__lead { margin: 0 0 16px !important; font-size: 16px !important; color: #222 !important; line-height: 1.5 !important; }
html body ul.sejpro-terms__list { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 8px; }
html body ul.sejpro-terms__list > li.sejpro-terms__item { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 !important; padding: 14px 16px !important; border: 1px solid #e6e6e6; border-radius: 8px; background: #fff; list-style: none !important; }
html body ul.sejpro-terms__list > li.sejpro-terms__item::before { display: none !important; }
.sejpro-terms__text { flex: 1 1 260px; min-width: 0; }
html body .sejpro-terms__name { margin: 0 !important; font-size: 16px !important; font-weight: 500 !important; color: #222 !important; line-height: 1.4 !important; }
html body .sejpro-terms__free { margin-left: 8px; font-weight: 500; color: #0caa05; }
html body .sejpro-terms__desc { margin: 2px 0 0 !important; font-size: 14px !important; color: #666 !important; line-height: 1.5 !important; }
.sejpro-terms__logo { flex: 0 0 auto; margin-left: auto; display: flex; align-items: center; justify-content: flex-end; min-width: 60px; font-size: 22px; color: #222; }
.sejpro-terms__logo img { height: 26px; width: auto; max-width: 96px; display: block; }
.sejpro-terms__logo img[alt="InPost"] { height: 34px; }
html body ul.sejpro-terms__banks { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 6px; list-style: none !important; margin: 4px 0 0 !important; padding: 0 !important; }
html body ul.sejpro-terms__banks li { margin: 0 !important; padding: 4px 10px !important; border: 1px solid #e6e6e6; border-radius: 8px; font-size: 12px; font-weight: 500; color: #222; background: #fafafa; list-style: none !important; line-height: 1.4; }
html body ul.sejpro-terms__banks li::before { display: none !important; }
.sejpro-terms__bank { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 8px 48px; padding: 12px 16px; border-radius: 8px; background: #f7f7f7; }
html body .sejpro-terms__bank p { margin: 0 !important; font-size: 14px !important; color: #222 !important; line-height: 1.6 !important; }
html body .sejpro-terms__note { margin: 12px 0 0 !important; font-size: 14px !important; color: #666 !important; line-height: 1.5 !important; }
@media (max-width: 767px) {
  html body .sejpro-terms__title { font-size: 20px !important; }
  .sejpro-terms__bank { gap: 8px; }
}
/* Dostawa i płatność - widoczny tytuł strony (motyw chowa h1 podstron pod menu: margin-top -165px, biały) */
html body .sejpro-terms .page--default__title h1 { margin: 8px 0 0 !important; color: #222 !important; font-size: 32px !important; font-weight: 500 !important; line-height: 1.25 !important; }
@media (max-width: 767px) { html body .sejpro-terms .page--default__title h1 { font-size: 24px !important; } }

/* ===== Warunki zakupu: Pakiet extra (2114), Dodatki (419) - Wymiana/Zwrot/Reklamacja zostają w starym układzie ===== */
/* h1 strony: motyw chowa go ujemnym marginesem (-165px) pod menu, co na stronach bez treści wciągało tekst pod menu -> ukryty dostępnie */
html body:is(.page-id-2114, .page-id-419) .page--default__title h1 {
  position: absolute !important; width: 1px !important; height: 1px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important;
}
html body:is(.page-id-2114, .page-id-419) .page--default__title { margin: 0 !important; border: 0 !important; }


/* Pakiet extra dodatków / Dodatki - lista dodatków jak kafelki w /zamowienie */
html body :is(.extras--page, .other--extras) { padding: 24px 0 8px !important; margin: 0 !important; background: transparent !important; }
html body :is(.extras--page, .other--extras) .slider--title { margin: 24px 0 12px !important; padding: 0 !important; }
html body :is(.extras--page, .other--extras) .slider--title h1 { margin: 0 !important; font-size: 24px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #222 !important; text-transform: none !important; }
html body :is(.extras--page__holder, .other--extras__holder) > p { margin: 0 0 8px !important; font-size: 16px !important; line-height: 1.6 !important; color: #222 !important; max-width: 820px; }
html body :is(.extras, .other_extras) {
  display: flex !important; align-items: center !important; gap: 16px 24px; flex-wrap: nowrap;
  margin: 0 0 8px !important; padding: 16px 20px !important; min-height: 0 !important; height: auto !important;
  border: 1px solid #e6e6e6 !important; border-radius: 8px !important; box-shadow: none !important; background: #fff !important;
}
html body :is(.extras, .other_extras)::before, html body :is(.extras, .other_extras)::after { display: none !important; }
html body :is(.extras, .other_extras) > img { flex: 0 0 64px !important; width: 64px !important; height: 64px !important; max-width: 64px !important; object-fit: contain; margin: 0 !important; }
html body :is(.extras, .other_extras) > div { flex: 1 1 auto !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
html body :is(.extras, .other_extras) > div h1 { margin: 0 0 4px !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.4 !important; color: #222 !important; }
html body :is(.extras, .other_extras) > div p { margin: 0 !important; font-size: 14px !important; line-height: 1.5 !important; color: #666 !important; max-width: 640px; }
html body :is(.extras, .other_extras) > p2 { flex: 0 0 auto !important; width: auto !important; position: static !important; margin: 0 0 0 auto !important; padding: 0 !important; border: 0 !important; font-size: 16px !important; font-weight: 500 !important; color: #222 !important; text-align: right; white-space: nowrap; }
html body :is(.extras, .other_extras) > p2::before, html body :is(.extras, .other_extras) > p2::after { display: none !important; }
html body .other_extrasImg { gap: 8px; margin: 0 0 16px !important; flex-wrap: wrap; }
html body .other_extrasImg img { border: 1px solid #e6e6e6; border-radius: 8px; object-fit: cover; }
html body :is(.extras--page__holder, .other--extras__holder) :is(.UnderInf, .UnderInf2, p[class^="UnderInf"]) { margin: 12px 0 0 !important; font-size: 14px !important; color: #666 !important; line-height: 1.5 !important; }
@media (max-width: 767px) {
  html body :is(.extras, .other_extras) { flex-wrap: wrap; padding: 14px 16px !important; gap: 8px 14px; }
  html body :is(.extras, .other_extras) > img { flex-basis: 48px !important; width: 48px !important; height: 48px !important; }
  html body :is(.extras, .other_extras) > div { flex: 1 1 calc(100% - 64px) !important; }
  html body :is(.extras, .other_extras) > p2 { margin-left: 62px !important; text-align: left; }
}
html body:is(.page-id-2114, .page-id-419) .page--default__title { padding: 0 !important; height: 0; }
html body :is(.extras--page, .other--extras) > .content--holder { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 0 !important; }
html body .page--default + .extras--page { padding-top: 8px !important; }
/* Dostawa i płatność - logo po lewej, kafelki w siatce (3 dostawy / 2 płatności w rzędzie) */
html body ul.sejpro-terms__list--grid { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 8px; }
html body ul.sejpro-terms__list--pay { grid-template-columns: repeat(auto-fill, minmax(420px, 1fr)); }
html body ul.sejpro-terms__list--grid > li.sejpro-terms__item { align-items: flex-start; flex-wrap: wrap; gap: 8px 14px; }
html body .sejpro-terms__list--grid .sejpro-terms__logo { order: 0; flex: 0 0 72px; width: 72px; min-width: 0; height: 40px; margin: 0 !important; justify-content: center; border: 1px solid #e6e6e6; border-radius: 8px; background: #fff; }
html body .sejpro-terms__list--grid .sejpro-terms__logo img { height: 22px; max-width: 60px; }
html body .sejpro-terms__list--grid .sejpro-terms__logo img[alt="InPost"] { height: 30px; }
html body .sejpro-terms__list--grid .sejpro-terms__logo .fa { font-size: 20px; }
html body .sejpro-terms__list--grid .sejpro-terms__text { order: 1; flex: 1 1 0; min-width: 0; }
html body .sejpro-terms__list--grid :is(.sejpro-terms__banks, .sejpro-terms__bank) { order: 2; }
@media (max-width: 767px) {
  html body ul.sejpro-terms__list--grid, html body ul.sejpro-terms__list--pay { grid-template-columns: 1fr; }
}
html body .sejpro-terms__list--grid :is(.sejpro-terms__banks, .sejpro-terms__bank) { margin-left: 86px !important; flex-basis: calc(100% - 86px) !important; }
@media (max-width: 767px) { html body .sejpro-terms__list--grid :is(.sejpro-terms__banks, .sejpro-terms__bank) { margin-left: 0 !important; flex-basis: 100% !important; } }
/* Dostawa i płatność - samo logo, bez ramki wokół */
html body .sejpro-terms__list--grid .sejpro-terms__logo { border: 0 !important; background: transparent !important; justify-content: center !important; }
/* Strony z dużym banerem (np. Dla dewelopera, Program korzyści) - odstęp pod banerem po przeniesieniu ścieżki na dół */
html body:not(.home) .header--slider ~ .page--default { padding-top: 0 !important; }
html body:not(.home) .header--slider ~ .home--startPoints .home--startPoints__holder { margin-top: 156px !important; } /* h1 -165px wciąga sekcję pod baner; 156 = 48 px odstępu pod banerem */
html body:not(.home) .header--slider ~ .whybuy--page .whybuy--pahe__holder { padding-top: 116px !important; } /* wstęp był pod banerem */
html body:not(.home) .header--slider ~ .whybuy--page .whybuy-cols { margin-top: 48px !important; }

/* Poradnik / blog - karty wpisów jak kafelki projektów (parts/blog.php) */
html body .blog--primary { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
html body .blog--primary > * { grid-column: 1 / -1; }
html body .blog--primary > [class^="blog-sejpro-post-"] { grid-column: auto; width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important; display: flex; }
html body .blog--primary > .x { display: none !important; }
html body .blog--primary > .title-blog { margin: 0 0 4px !important; }
html body article.sejpro-postcard { display: flex; flex-direction: column; width: 100%; margin: 0 !important; padding: 0 !important; border: 1px solid #e6e6e6; border-radius: 8px; overflow: hidden; background: #fff; box-shadow: none !important; transition: box-shadow .2s, border-color .2s; }
html body article.sejpro-postcard:hover { border-color: #d6d6d6; box-shadow: 0 8px 24px rgba(0, 0, 0, .08) !important; }
html body .sejpro-postcard__img { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: #f2f2f2; }
html body .sejpro-postcard__img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; display: block; margin: 0 !important; transition: transform .3s; }
html body article.sejpro-postcard:hover .sejpro-postcard__img img { transform: scale(1.03); }
.sejpro-postcard__noimg { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; font-size: 40px; color: #bdbdbd; }
html body .sejpro-postcard__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 16px 20px 20px; }
html body .sejpro-postcard__title { margin: 0 0 8px !important; padding: 0 !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.4 !important; min-height: calc(1.4em * 2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-transform: none !important; }
html body .sejpro-postcard__title a { color: #222 !important; text-decoration: none !important; }
html body .sejpro-postcard__title a:hover { color: #ec1c23 !important; }
html body .sejpro-postcard__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin: 0 0 10px !important; font-size: 12px !important; color: #666 !important; line-height: 1.4 !important; }
.sejpro-postcard__author .fa { margin-right: 2px; }
.sejpro-postcard__date::before { content: '·'; margin-right: 12px; color: #bdbdbd; }
html body .sejpro-postcard__excerpt { margin: 0 0 14px !important; font-size: 14px !important; line-height: 1.5 !important; color: #666 !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
html body a.sejpro-postcard__more { margin-top: auto; align-self: flex-start; font-size: 14px; font-weight: 500; color: #ec1c23 !important; text-decoration: none !important; }
html body a.sejpro-postcard__more:hover { color: #c9171d !important; }
html body a.sejpro-postcard__more .fa { margin-left: 4px; }
@media (max-width: 767px) {
  html body .blog--primary { grid-template-columns: 1fr; gap: 16px; }
}

/* Poradnik / blog - kategorie w bocznym pasku jak filtry w katalogu (pole 22 px, ramka 1 px, radius 5, tekst 16 px #222) */
html body .block--categories .block--title { margin: 0 0 8px !important; padding: 0 !important; border: 0 !important; font-size: 20px !important; font-weight: 700 !important; color: #222 !important; line-height: 1.3 !important; text-transform: none !important; }
html body .block--categories .block--title::after, html body .block--categories .block--title::before { display: none !important; }
html body .block--categories ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
html body .block--categories li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body .block--categories li::before, html body .block--categories li::after { display: none !important; }
html body .block--categories ul.subcategories--list { padding-left: 34px !important; }
html body .block--categories li a {
  display: flex !important; align-items: center; gap: 12px; padding: 7px 0 !important; margin: 0 !important;
  font-family: 'Roboto', sans-serif; font-size: 16px !important; font-weight: 400 !important; line-height: 20.8px !important; color: #222 !important; text-decoration: none !important; background: none !important;
}
html body .block--categories li a::before {
  content: '' !important; flex: 0 0 22px; width: 22px; height: 22px; box-sizing: border-box; margin: 0 !important;
  border: 1px solid #111; border-radius: 5px; background: #fff center / 12px 12px no-repeat; font-family: inherit !important; font-size: 0 !important; color: transparent !important; position: static !important;
}
html body .block--categories li a::after { display: none !important; }
html body .block--categories li a.currentCategory::before {
  background-color: #222; border-color: #222;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.2l2.6 2.6L10 3.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
html body .block--categories li a:hover { color: #ec1c23 !important; }
html body .block--categories li a:hover::before { border-color: #ec1c23; }

/* Pojedynczy wpis na blogu (single.php) */
html body .blog--primary.sejpro-single { display: block !important; }
.sejpro-single__article { max-width: 760px; }
html body .sejpro-single__cats { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px !important; }
html body .sejpro-single__cats a { padding: 4px 10px; border-radius: 8px; background: #fdeced; color: #ec1c23 !important; font-size: 12px; font-weight: 500; text-decoration: none !important; line-height: 1.4; }
html body .sejpro-single__cats a:hover { background: #ec1c23; color: #fff !important; }
html body h1.sejpro-single__title { margin: 0 0 12px !important; padding: 0 !important; font-size: 32px !important; font-weight: 500 !important; line-height: 1.25 !important; color: #222 !important; text-transform: none !important; }
html body .sejpro-single__meta { display: flex; flex-wrap: wrap; gap: 4px 0; margin: 0 0 24px !important; font-size: 14px !important; color: #666 !important; line-height: 1.5 !important; }
html body .sejpro-single__meta span + span::before { content: '·'; margin: 0 10px; color: #bdbdbd; }
html body .sejpro-single__meta .fa { margin-right: 4px; }
html body .sejpro-single__cover { margin: 0 0 32px !important; border-radius: 8px; overflow: hidden; aspect-ratio: 16 / 9; background: #f2f2f2; }
html body .sejpro-single__cover img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; display: block; margin: 0 !important; }
/* treść artykułu */
html body .sejpro-single__content { font-size: 16px; color: #222; }
html body .sejpro-single__content :is(p, li) { font-size: 16px !important; line-height: 1.75 !important; color: #222 !important; font-weight: 400; }
html body .sejpro-single__content p { margin: 0 0 16px !important; }
html body .sejpro-single__content :is(h2) { margin: 40px 0 12px !important; font-size: 24px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #222 !important; text-transform: none !important; }
html body .sejpro-single__content :is(h3, h4) { margin: 28px 0 8px !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.4 !important; color: #222 !important; text-transform: none !important; }
html body .sejpro-single__content :is(h2, h3, h4)::after { display: none !important; }
html body .sejpro-single__content :is(ul, ol) { margin: 0 0 16px !important; padding-left: 24px !important; }
html body .sejpro-single__content li { margin: 0 0 6px !important; }
html body .sejpro-single__content ul li::marker { color: #ec1c23; }
html body .sejpro-single__content a { color: #ec1c23 !important; text-decoration: underline; text-underline-offset: 2px; }
html body .sejpro-single__content a:hover { color: #c9171d !important; }
html body .sejpro-single__content img { max-width: 100%; height: auto; border-radius: 8px; }
html body .sejpro-single__content figure { margin: 24px 0 !important; }
html body .sejpro-single__content figcaption { margin-top: 6px; font-size: 12px; color: #666; text-align: center; }
html body .sejpro-single__content blockquote { margin: 24px 0 !important; padding: 16px 20px !important; border: 0 !important; border-left: 3px solid #ec1c23 !important; border-radius: 0 8px 8px 0; background: #f7f7f7; font-style: normal; }
html body .sejpro-single__content hr { margin: 32px 0 !important; border: 0 !important; border-top: 1px solid #e6e6e6 !important; background: none !important; height: 0 !important; }
html body .sejpro-single__content iframe { max-width: 100%; border-radius: 8px; }
html body .sejpro-single__content table { width: 100%; border-collapse: collapse; margin: 0 0 16px; font-size: 14px; }
html body .sejpro-single__content :is(td, th) { padding: 8px 12px; border: 1px solid #e6e6e6; }
html body .sejpro-single__tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 24px 0 0 !important; }
html body .sejpro-single__tags a { padding: 4px 10px; border: 1px solid #e6e6e6; border-radius: 8px; font-size: 12px; color: #666 !important; text-decoration: none !important; }
html body .sejpro-single__tags a:hover { border-color: #222; color: #222 !important; }
/* powiązane wpisy - te same karty co na liście */
html body .sejpro-single__related { margin: 48px 0 0 !important; padding: 0 !important; }
html body h2.sejpro-single__related-title { margin: 0 0 16px !important; font-size: 24px !important; font-weight: 500 !important; color: #222 !important; border: 0 !important; padding: 0 !important; }
html body h2.sejpro-single__related-title::after { display: none !important; }
html body .sejpro-single__related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
html body .sejpro-single__related-grid .sejpro-postcard__excerpt { display: none; }
html body .sejpro-single .blog-banner-above:empty { display: none; }
html body .sejpro-single .post--commentsform { margin-top: 40px; }
@media (max-width: 991px) { html body .sejpro-single__related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  html body h1.sejpro-single__title { font-size: 24px !important; }
  html body .sejpro-single__related-grid { grid-template-columns: 1fr; }
  html body .sejpro-single__content :is(h2) { font-size: 20px !important; margin-top: 32px !important; }
  html body .sejpro-single__content :is(h3, h4) { font-size: 16px !important; }
}
html body.single-post .page--blog__holder { padding-top: 0 !important; }
html body .sejpro-single__content :is(p, li, div, span) { text-align: left !important; }
html body .sejpro-single .post--commentsform .section--title { margin: 0 0 12px !important; font-size: 24px !important; font-weight: 500 !important; color: #222 !important; border: 0 !important; padding: 0 !important; }
html body .sejpro-single .post--commentsform .section--title::after { display: none !important; }
html body .sejpro-single .post--commentsform :is(p, label) { font-size: 14px !important; color: #666 !important; }
html body .sejpro-single .post--commentsform :is(input[type=text], input[type=email], input[type=url], textarea) { border: 1px solid #d9d9d9 !important; border-radius: 8px !important; padding: 10px 14px !important; font-size: 16px !important; }
html body .sejpro-single .post--commentsform :is(input[type=submit], button[type=submit]) { border: 0 !important; border-radius: 8px !important; background: #ec1c23 !important; color: #fff !important; padding: 12px 24px !important; font-weight: 500 !important; }
html body .post--commentsform .section--title { width: auto !important; max-width: 100% !important; }
/* treść wpisów: ręczne kolory i rozmiary w nagłówkach (stary edytor) -> styl strony */
html body .sejpro-single__content :is(h1, h2, h3, h4, h5) { text-align: left !important; }
html body .sejpro-single__content :is(h1, h2, h3, h4, h5) :is(span, strong, em, font) { color: inherit !important; font-size: inherit !important; font-weight: inherit !important; }
html body .sejpro-single__content :is(p, li, blockquote) span[style*="font-size"] { font-size: inherit !important; }
html body .sejpro-single__content blockquote p { margin-bottom: 8px !important; }

/* FAQ (inc/sejpro-seo.php): rozwijane <details>, plus po prawej, bez ramek; treść odpowiedzi jest w HTML */
html body .sejpro-faq-holder { padding-top: 8px; padding-bottom: 40px; }
html body .sejpro-faq { margin: 40px 0 0 !important; }
html body .sejpro-faq__title { margin: 0 0 8px !important; font-size: 24px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #222 !important; text-transform: none !important; text-align: left !important; }
html body .sejpro-faq__title::after { display: none !important; }
html body .sejpro-faq__item { border: 0; border-bottom: 1px solid #e6e6e6; border-radius: 0; padding: 0; margin: 0; background: transparent; }
html body .sejpro-faq__summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0; cursor: pointer; list-style: none; }
html body .sejpro-faq__summary::-webkit-details-marker { display: none; }
html body .sejpro-faq__summary::marker { content: ''; }
html body .sejpro-faq__q { margin: 0 !important; font-size: 18px !important; font-weight: 400 !important; line-height: 1.4 !important; color: #222 !important; text-transform: none !important; text-align: left !important; }
html body .sejpro-faq__q::after { display: none !important; }
html body .sejpro-faq__summary:hover .sejpro-faq__q { color: #ec1c23 !important; }
html body .sejpro-faq__icon { position: relative; flex: 0 0 20px; width: 20px; height: 20px; }
html body .sejpro-faq__icon::before, html body .sejpro-faq__icon::after { content: ''; position: absolute; left: 50%; top: 50%; width: 16px; height: 2px; margin: -1px 0 0 -8px; background: #ec1c23; border-radius: 1px; transition: transform .2s ease; }
html body .sejpro-faq__icon::after { transform: rotate(90deg); }
html body .sejpro-faq__item[open] .sejpro-faq__icon::after { transform: rotate(0deg); }
html body .sejpro-faq__summary:focus-visible { outline: 2px solid #ec1c23; outline-offset: 2px; }
html body .sejpro-faq__a { padding: 0 36px 18px 0; }
html body .sejpro-faq__a, html body .sejpro-faq__a p { font-size: 16px !important; line-height: 1.6 !important; color: #444 !important; margin: 0 !important; text-align: left !important; }
html body .sejpro-faq__a p + p { margin-top: 8px !important; }
html body .sejpro-faq__a a { color: #ec1c23; text-decoration: underline; }
html body .sejpro-faq__a ul { margin: 0 !important; padding-left: 20px !important; list-style: disc !important; }
html body .sejpro-faq__a li { font-size: 16px !important; line-height: 1.6 !important; color: #444 !important; margin: 0 0 6px !important; list-style: disc !important; }
html body .sejpro-date-updated { color: #666; }
@media (max-width: 767px) {
  html body .sejpro-faq__title { font-size: 20px !important; }
  html body .sejpro-faq__q { font-size: 16px !important; }
  html body .sejpro-faq__summary { padding: 16px 0; }
  html body .sejpro-faq__a { padding-right: 0; }
}


/* Blog: spis treści, bloki CTA i przewijane tabele we wpisach generowanych z blog/posty/*.md (2026-10) */
html body .sejpro-single__content .sejpro-toc { margin: 24px 0 32px; padding: 16px 20px; border: 1px solid #e6e6e6; border-radius: 8px; background: #fafafa; }
html body .sejpro-single__content .sejpro-toc__title { margin: 0 0 8px !important; font-size: 16px !important; font-weight: 500 !important; color: #222 !important; }
html body .sejpro-single__content .sejpro-toc ol { margin: 0 !important; padding-left: 20px !important; }
html body .sejpro-single__content .sejpro-toc li { margin: 0 0 4px !important; font-size: 14px !important; line-height: 1.5 !important; }
html body .sejpro-single__content .sejpro-toc a { color: #222 !important; text-decoration: none; }
html body .sejpro-single__content .sejpro-toc a:hover { color: #ec1c23 !important; text-decoration: underline; }
html body .sejpro-single__content .sejpro-cta { margin: 32px 0; padding: 20px 24px; border: 1px solid #e6e6e6; border-left: 3px solid #ec1c23; border-radius: 8px; background: #fff; }
html body .sejpro-single__content .sejpro-cta__title { margin: 0 0 6px !important; font-size: 20px !important; font-weight: 500 !important; line-height: 1.4 !important; color: #222 !important; }
html body .sejpro-single__content .sejpro-cta__text { margin: 0 0 16px !important; font-size: 16px !important; color: #666 !important; }
html body .sejpro-single__content .sejpro-cta a.sejpro-cta__btn { display: inline-block; padding: 12px 24px; border-radius: 8px; background: #ec1c23; color: #fff !important; font-size: 16px; font-weight: 500; text-decoration: none !important; }
html body .sejpro-single__content .sejpro-cta a.sejpro-cta__btn:hover { background: #c9171d; color: #fff !important; }
html body .sejpro-single__content .sejpro-table-wrap { overflow-x: auto; margin: 0 0 16px; }
html body .sejpro-single__content .sejpro-table-wrap table { margin: 0; min-width: 480px; }
html body .sejpro-single__content th { background: #f7f7f7; font-weight: 500; text-align: left; color: #222; }
html body .sejpro-single__content :is(h2, h3)[id] { scroll-margin-top: 100px; }

/* Pełnoekranowa przeglądarka zdjęć/rzutów - powiększanie */
html body .sejpro-viewer__stage { overflow: hidden; touch-action: none; }
html body .sejpro-viewer__img { cursor: zoom-in; transform-origin: center center; will-change: transform; position: relative; z-index: 1; }
html body .sejpro-viewer.is-zoomed .sejpro-viewer__img { cursor: grab; }
html body .sejpro-viewer.is-dragging .sejpro-viewer__img { cursor: grabbing; }
html body .sejpro-viewer.is-zoomed :is(.sejpro-viewer__nav, .sejpro-viewer__caption) { opacity: 0; pointer-events: none; }
.sejpro-viewer__zoom { position: absolute; right: 16px; bottom: 16px; z-index: 3; display: flex; align-items: center; gap: 4px; padding: 4px; border-radius: 8px; background: rgba(0, 0, 0, .6); }
html body .sejpro-viewer__zbtn { width: 36px; height: 36px; border: 0; border-radius: 6px; background: transparent; color: #fff; font-size: 14px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
html body .sejpro-viewer__zbtn:hover { background: rgba(255, 255, 255, .15); }
.sejpro-viewer__zval { min-width: 44px; text-align: center; color: #fff; font-size: 12px; font-weight: 500; }
@media (max-width: 767px) { .sejpro-viewer__zoom { right: 8px; bottom: 8px; } .sejpro-viewer__zval { display: none; } }

/* Strona projektu, sekcja Rzuty - lupa w miejscu (komputer) i przycisk Powiększ */
html body .single--product__info .product--views a.btn-full-rzut { position: relative; display: block; overflow: hidden; cursor: zoom-in; }
html body .single--product__info .product--views a.btn-full-rzut img { transition: transform .15s ease-out; }
html body .single--product__info .product--views a.btn-full-rzut.is-zoom img { transform: scale(2.5); transition: none; }
html body .sejpro-rzutzoom-btn { position: absolute; right: 12px; bottom: 12px; z-index: 3; display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px; border-radius: 8px; background: rgba(255, 255, 255, .92); border: 1px solid #e6e6e6; color: #222; font-size: 14px; font-weight: 500; cursor: pointer; box-shadow: 0 2px 8px rgba(0, 0, 0, .12); }
html body .sejpro-rzutzoom-btn:hover { background: #fff; color: #ec1c23; }
html body .product--views a.btn-full-rzut.is-zoom .sejpro-rzutzoom-btn { opacity: 0; }

/* Galeria projektu przed uruchomieniem slick (CLS): tylko pierwsze zdjęcie 3:2, miniatury od razu w rzędzie po 4 */
html body.single-product .single--product__info .prod--img:not(.slick-initialized) > a:not(:first-child) { display: none; }
html body.single-product .single--product__info .prod--img:not(.slick-initialized) img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; object-position: left center; margin: 0 0 10px; }
html body.single-product .single--product__info .prod--gallery:not(.slick-initialized),
html body.single-product .single--product__info .prod--odbicieGallery:not(.slick-initialized) { display: flex; align-items: flex-start; overflow: hidden; margin: 0 -7px; }
html body.single-product .single--product__info .prod--gallery:not(.slick-initialized) img,
html body.single-product .single--product__info .prod--odbicieGallery:not(.slick-initialized) img { flex: 0 0 calc(25% - 14px); width: calc(25% - 14px); height: auto; aspect-ratio: 45 / 26; object-fit: cover; margin: 0 7px 14px; }
@media (max-width: 767px) {
  html body.single-product .single--product__info .prod--gallery:not(.slick-initialized) img,
  html body.single-product .single--product__info .prod--odbicieGallery:not(.slick-initialized) img { aspect-ratio: 3 / 2; }
}

/* H1 -> H2/H3 na stronach Dodatki, Pakiet extra dodatków, Program korzyści: te same style co dotąd h1 (style.css) */
.extras--page__holder :is(h2, h3) { font-family: 'Roboto', sans-serif;
  font-size: 18px;
  font-weight: 700; }
.other--extras__holder :is(h2, h3) { font-family: 'Roboto', sans-serif;
  font-size: 18px;
  font-weight: 700; }
.other_extras :is(h2, h3) { font-size: 24px;
  font-family: 'Roboto',sans-serif;
  font-weight: 600; }
@media screen and (max-width: 1180px) { .extras--page__holder .extras :is(h2, h3) { font-size: 24px;
    font-family: 'Roboto',sans-serif;
    font-weight: 600; } }
@media screen and (max-width:  767px) { .extras--page__holder .extras :is(h2, h3) { font-size: 20px;
    font-family: 'Roboto',sans-serif;
    font-weight: 600; } }
@media screen and (max-width: 1180px) { .other--extras__holder .other_extras :is(h2, h3) { font-size: 24px;
    font-family: 'Roboto',sans-serif;
    font-weight: 600; } }
@media screen and (max-width:  767px) { .other--extras__holder .other_extras :is(h2, h3) { font-size: 20px;
    font-family: 'Roboto',sans-serif;
    font-weight: 600; } }
.whybuy-col-left :is(h2, h3) { font-family: 'Roboto',sans-serif;
  font-size: 28px;
  font-weight: medium;
  margin-top: 0px; }
@media screen and (max-width:  767px) { .whybuy-col-left :is(h2, h3) { font-family: 'Roboto',sans-serif;
    font-size: 28px;
    font-weight: medium;
    margin-top: 30px; } }
html body :is(.extras--page, .other--extras) .slider--title :is(h2, h3) { margin: 0 !important; font-size: 24px !important; font-weight: 500 !important; line-height: 1.35 !important; color: #222 !important; text-transform: none !important; }
html body :is(.extras, .other_extras) > div :is(h2, h3) { margin: 0 0 4px !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.4 !important; color: #222 !important; }
/* O nas: tytuł banera jako H1 (wcześniej <p>) z wyglądem jak dotąd */
html body h1.col--header { font-size: 32px; font-weight: 400; line-height: 40px; margin: 0 0 32px; text-transform: none; }
html body .whybuy-col-left h2 { font-size: 24px !important; font-weight: 500 !important; margin-bottom: 16.08px !important; }

/* Parametry techniczne jako tabela (th/td, czytelna dla wyszukiwarek i AI) z wyglądem dotychczasowych wierszy */
html body .product--techParams .techParams--table,
html body .product--techParams .techParams--table tbody { display: block; width: 100%; border: 0; border-collapse: collapse; margin: 0; padding: 0; background: none; }
html body .product--techParams .techParams--table th,
html body .product--techParams .techParams--table td { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; line-height: 1.45 !important; font-size: 14px !important; vertical-align: baseline; }
html body .product--techParams .techParams--table th { text-align: left; }
html body .product--techParams .techParams--table td.param--value { text-align: right; }
html body .product--techParams .techParams--table tr.param--desc-row { display: block; }
html body .product--techParams .techParams--table tr.param--desc-row td { display: block; }

/* Tabela pomieszczeń: nazwa jako nagłówek wiersza (th) z wyglądem dotychczasowej komórki; podpis tylko dla czytników i AI */
html body .view--rooms th.room--name { font-family: 'Roboto', sans-serif; font-size: 14px; font-weight: 400; line-height: normal; padding: 2px 3px; text-align: left; vertical-align: middle; color: #222; border: 0; background: none; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
html body .view--rooms .view--room__summary th.room--name { font-weight: 700; }

/* Strona projektu - "Pakiet extra dodatków o wartości 4100 zł" w ofercie zawsze czerwony (nie tylko po najechaniu) */
html body .single--product__sidebar p.sejpro-addons-link a, html body .single--product__sidebar p.sejpro-addons-link a * { color: #ec1c23 !important; }
html body .single--product__sidebar p.sejpro-addons-link a:hover, html body .single--product__sidebar p.sejpro-addons-link a:hover * { color: #c9171d !important; }

/* Strona projektu - strzałki karuzeli miniaturek jak duże strzałki galerii (białe kółko z cieniem), w mniejszej wersji */
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-arrow {
  position: absolute !important; top: 50% !important; transform: translateY(-50%) !important; z-index: 3;
  width: 32px !important; height: 32px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  border: 0 !important; border-radius: 50% !important; background: rgba(255, 255, 255, .9) !important; color: #222 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .15) !important; font-size: 18px !important; line-height: 1 !important; cursor: pointer; opacity: 1;
}
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-arrow:hover { background: #fff !important; color: #ec1c23 !important; }
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-arrow .fa { font-size: 18px !important; line-height: 1 !important; margin: 0 !important; }
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-prev { left: 6px !important; right: auto !important; }
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-next { right: 6px !important; left: auto !important; }
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-arrow.slick-disabled { opacity: 0 !important; pointer-events: none; }
html body .single--product__info :is(.prod--gallery, .prod--odbicieGallery).slick-initialized .slick-arrow::before { display: none !important; }

/* Strona główna (CLS): baner widoczny od pierwszego rysowania także na telefonie (style.css chował go do startu slick,
   po czym spychał całą treść o ~600 px); przed startem slick tylko pierwszy slajd */
@media screen and (max-width: 767px) { html body.home .header--slider { display: block; } }
html body.home .header--slider:not(.slick-initialized) > *:not(:first-child) { display: none; }
/* Przełącznik "Odbicie lustrzane" - bez znaku "−" po włączeniu (przesuwał przełącznik) */
html body .addToCart--odbicieLustrzane::after, html body .addToCart--odbicieLustrzane.active::after { content: none !important; display: none !important; }

/* Karta projektu: wersja lustrzana (galeria, rzuty, elewacje) ukryta od pierwszego rysowania; skrypt odsłania ją
   stylem inline po włączeniu odbicia. Dzięki temu jej zdjęcia nie pobierają się razem z głównym zdjęciem. */
html body.single-product:not(.product-odbicie) :is(.gallery--odbicie, .rzut--odbicie, .elewacja--odbicie) { height: 0; overflow: hidden; }

/* Strona projektu - baner "Bezpłatna analiza działki" (jak baner Facebooka, kolory SEJ-PRO) */
.sejpro-plottile {
  position: relative; display: flex; align-items: stretch; gap: 0; margin: 24px 0 32px; overflow: hidden; min-height: 280px;
  border: 1px solid #f6d5d6; border-radius: 8px; font-family: 'Roboto', sans-serif;
  background: linear-gradient(110deg, #fff7f7 0%, #fdf0f0 50%, #fbe6e7 100%);
}
.sejpro-plottile__text { position: relative; z-index: 2; flex: 1 1 58%; min-width: 0; padding: 32px; }
.sejpro-plottile__pill { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px; padding: 6px 12px; border: 1px solid #ec1c23; border-radius: 8px; background: #fff; color: #ec1c23; font-size: 14px; font-weight: 500; }
html body .sejpro-plottile__title { margin: 0 0 8px !important; font-size: 32px !important; line-height: 1.15 !important; font-weight: 700 !important; color: #222 !important; }
.sejpro-plottile__title span { color: #ec1c23; }
html body .sejpro-plottile__lead { margin: 0 0 20px !important; font-size: 16px !important; line-height: 1.5 !important; color: #666 !important; max-width: 460px; }
.sejpro-plottile__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
html body a.sejpro-plottile__btn { display: inline-flex; align-items: center; height: 48px; padding: 0 22px; border-radius: 8px; background: #ec1c23; color: #fff !important; font-size: 16px; font-weight: 500; text-decoration: none !important; box-shadow: 0 6px 16px rgba(236, 28, 35, .28); transition: background .15s, transform .15s; }
html body a.sejpro-plottile__btn:hover { background: #c9171d; transform: translateY(-1px); }
html body a.sejpro-plottile__tel { color: #222 !important; font-size: 16px; font-weight: 500; text-decoration: none !important; }
html body a.sejpro-plottile__tel .fa { color: #ec1c23; margin-right: 6px; }
.sejpro-plottile__art { position: relative; flex: 0 0 42%; background: #eee center / cover no-repeat; }
.sejpro-plottile__art::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #fdf0f0 0%, rgba(253, 240, 240, .75) 22%, rgba(253, 240, 240, 0) 60%); }
.sejpro-plottile__grid { position: absolute; left: 22%; right: 12%; top: 18%; bottom: 22%; border: 2px dashed rgba(255, 255, 255, .95); border-radius: 8px; box-shadow: 0 0 0 9999px rgba(0, 0, 0, .08); }
.sejpro-plottile__chip { position: absolute; right: 16px; bottom: 16px; display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: 8px; background: #fff; color: #222; font-size: 14px; font-weight: 500; box-shadow: 0 4px 14px rgba(0, 0, 0, .12); }
.sejpro-plottile__chip .fa { color: #0caa05; }
@media (max-width: 767px) {
  .sejpro-plottile { flex-direction: column-reverse; min-height: 0; }
  .sejpro-plottile__art { flex: 0 0 170px; }
  .sejpro-plottile__art::before { background: linear-gradient(0deg, #fdf0f0 0%, rgba(253, 240, 240, 0) 55%); }
  .sejpro-plottile__text { padding: 8px 20px 24px; }
  html body .sejpro-plottile__title { font-size: 24px !important; }
  html body a.sejpro-plottile__btn { width: 100%; justify-content: center; }
}
/* baner analizy działki - zdjęcie płynnie wygaszone pod tekst */
@media (min-width: 768px) {
  .sejpro-plottile__text { flex: 0 0 62%; }
  .sejpro-plottile__art { position: absolute; top: 0; right: 0; bottom: 0; width: 55%; flex: none;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.35) 25%, #000 60%); mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.35) 25%, #000 60%); }
  .sejpro-plottile__art::before { display: none; }
  .sejpro-plottile__grid { left: 38%; right: 10%; }
  html body .sejpro-plottile__title { font-size: 28px !important; }
}
@media (max-width: 767px) {
  .sejpro-plottile__art { -webkit-mask-image: linear-gradient(0deg, transparent 0%, #000 55%); mask-image: linear-gradient(0deg, transparent 0%, #000 55%); }
  .sejpro-plottile__art::before { display: none; }
}
@media (min-width: 768px) { html body .sejpro-plottile__lead { max-width: 390px; } }
@media (max-width: 767px) { .sejpro-plottile__chip { top: 12px; bottom: auto; right: 12px; } .sejpro-plottile__grid { top: 26%; bottom: 30%; } }
/* banery z wygaszonym zdjęciem: jednakowe odstępy, gdy stoją jeden pod drugim */
html body .sejpro-plottile { margin: 24px 0 !important; }
html body .sejpro-plottile--drawings .sejpro-plottile__art, html body .sejpro-plottile--materials .sejpro-plottile__art { background-position: center; }
/* banery z wygaszonym zdjęciem - spokojniejsze kolory (neutralne tło, czerwień tylko jako akcent) */
html body .sejpro-plottile { border-color: #e6e6e6 !important; background: linear-gradient(110deg, #fafafa 0%, #f5f5f3 55%, #efefec 100%) !important; }
html body .sejpro-plottile__pill { border-color: #e6e6e6 !important; color: #222 !important; background: #fff !important; }
html body .sejpro-plottile__pill .fa { color: #ec1c23; }
@media (max-width: 767px) { html body .sejpro-plottile__art::before { background: none !important; } }
html body .sejpro-plottile--materials .sejpro-plottile__art { background-position: center 75% !important; }
