/* ==========================================================================
   AJPrinters — custom.css (wersja uporządkowana i bezpieczna)
   Motyw: Leo Stationero / PrestaShop 1.7.8.11

   Zasady tej wersji:
   - zachowana kolejność wszystkich reguł, deklaracji, @media i @supports;
   - nie usunięto żadnego selektora ani deklaracji;
   - skrócono i ujednolicono wyłącznie komentarze oraz formatowanie;
   - późniejsze nadpisania pozostają w dotychczasowym miejscu, aby nie zmienić kaskady.

   Układ funkcjonalny pliku:
   01. Globalne przyciski, fonty i komunikaty
   02. Listingi produktów i karuzele
   03. Produkt: galeria, zakładki i dostawa
   04. Nagłówek, wyszukiwarka i menu
   05. Checkout, koszyk i płatności
   06. Kategorie i podkategorie
   07. Strona główna: paski, kafle, marki, B2B i usługi
   08. Stopka i strony CMS
   09. Wyszukiwarka Leo i wyjątki listingów
   10. Produkt: benefity, Quick View, przewoźnicy i finalne nadpisania
========================================================================== */

/* Wspólna kolorystyka przycisków sklepu; bez zmian ich kształtu. */

.btn,
button.btn,
input[type="submit"].btn,
input[type="button"].btn,
input[type="reset"].btn,
.btn-product,
.quick-view,
.view-more,
.button-banner a,
.add-to-cart {
  background-color: #303A46 !important;
  border-color: #303A46 !important;
  color: #fff !important;
}

/* Jednolite, delikatne zaokraglenie dla prostokatnych przyciskow. */

.btn,
button.btn,
input[type="submit"].btn,
input[type="button"].btn,
input[type="reset"].btn,
.view-more,
.button-banner a,
.add-to-cart,
.aj-b2b-main-btn,
#btn_place_order {
  border-radius: 1px !important;
}

.btn:hover,
.btn:focus,
button.btn:hover,
button.btn:focus,
input[type="submit"].btn:hover,
input[type="submit"].btn:focus,
input[type="button"].btn:hover,
input[type="button"].btn:focus,
input[type="reset"].btn:hover,
input[type="reset"].btn:focus,
.btn-product:hover,
.btn-product:focus,
.quick-view:hover,
.quick-view:focus,
.view-more:hover,
.view-more:focus,
.button-banner a:hover,
.button-banner a:focus,
.add-to-cart:hover,
.add-to-cart:focus {
  background-color: #EEF1F4 !important;
  border-color: #D9DEE5 !important;
  color: #303A46 !important;
}

/* Finalizacja zamowienia pozostaje wyroznionym przyciskiem. */

#btn_place_order,
#onepagecheckoutps #btn_place_order,
#payment_modal #btn_place_order {
  background-color: #F8014E !important;
  border-color: #F8014E !important;
  color: #fff !important;
}

#btn_place_order:hover,
#btn_place_order:focus,
#onepagecheckoutps #btn_place_order:hover,
#onepagecheckoutps #btn_place_order:focus,
#payment_modal #btn_place_order:hover,
#payment_modal #btn_place_order:focus {
  background-color: #F8014E !important;
  border-color: #F8014E !important;
  color: #fff !important;
}

/* Neutralne przyciski: ciemne tło zapewnia kontrast z białą etykietą. */

.latest-blogs a.view-more {
  background-color: #303A46 !important;
  border-color: #303A46 !important;
  color: #fff !important;
}

.latest-blogs a.view-more:hover,
.latest-blogs a.view-more:focus {
  background-color: #EEF1F4 !important;
  border-color: #D9DEE5 !important;
  color: #102A43 !important;
}

/* Blog: strzałka „więcej” zamiast znaku plus. */

.latest-blogs a.view-more i::before {
  content: "\2192";
  font-family: Arial, sans-serif;
  font-style: normal;
}

/* Lupa wyszukiwarki zachowuje jasne tło. */

.search-widget form button[type=submit] {
  background-color: #fff !important;
  border-color: transparent !important;
  color: #303A46 !important;
}

.search-widget form button[type=submit]:hover,
.search-widget form button[type=submit]:focus {
  background-color: #F6F7F9 !important;
  color: #303A46 !important;
}

/* Nagłówek: wyszukiwarka Leo z lupą nałożoną na prawą krawędź pola. */

#leo_search_block_top,
#leo_search_block_top form {
  position: relative;
}

#leo_search_block_top input[type="text"],
#leo_search_block_top #leo_search_query_top,
#leo_search_block_top .search_query,
#leo_search_block_top .form-control {
  border-radius: 100px !important;
  padding-right: 68px !important;
}

#leo_search_block_top #leo_search_top_button {
  position: absolute !important;
  top: 50% !important;
  right: 0 !important;
  z-index: 2;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  border-radius: 100px !important;
  background: #fff !important;
  border-color: #fff !important;
  color: #303A46 !important;
  transform: translateY(-50%);
}

#leo_search_block_top #leo_search_top_button:hover,
#leo_search_block_top #leo_search_top_button:focus {
  color: #303A46 !important;
  background: #fff !important;
  border-color: #fff !important;
}

#leo_search_block_top #leo_search_top_button .search,
#leo_search_block_top #leo_search_top_button .search::before,
#leo_search_block_top #leo_search_top_button i,
#leo_search_block_top #leo_search_top_button i::before {
  color: #303A46 !important;
}

/* Newsletter: zachowuje oryginalny, niezależny styl przycisku. */

.block_newsletter form .btn,
.block_newsletter form .btn:hover,
.block_newsletter form .btn:focus {
  background: transparent !important;
  border: none !important;
  border-radius: 3px !important;
  color: #222 !important;
}

/* Globalne: Fonty Poppins */

body,
button,
input,
select,
textarea {
  font-family: "Poppins", sans-serif !important;
}

/* Strona błędu - logo Zapobiega wychodzeniu logo poza kontener na stronie błędu. */

#layout-error .logo img {
  max-width: 100% !important;
}

/* Ukrycie alertu danger Ukrywa wybrany czerwony komunikat UI, który pojawiał się w motywie/module. */

#subcategories {
  display: none !important;
}

.ui-banner--danger[data-v-8e4d75b9],
div.ui-banner.ui-banner--danger.ui-banner--disable-border {
  display: none !important;
}

/* Listing produktów - układ grid Wymusza elastyczny układ listy produktów i 4 produkty w
   rzędzie. Ukrywa też krótki opis produktu na kaflach. */

.product_list.grid.product-list-default,
.product_list.grid.product-list-default > .row,
.product_list.grid.product-list-default .row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.product_list.grid .ajax_block_product {
  width: 25%;
  flex: 0 0 25%;
  max-width: 25%;
  min-width: 0;
  box-sizing: border-box;
}

.product_list.grid .description-short,
.product_list.grid .product-description-short {
  display: none !important;
}

/* Tablet */

@media (max-width: 1199px) {
  .product_list.grid .ajax_block_product {
    width: 33.3333%;
    flex: 0 0 33.3333%;
    max-width: 33.3333%;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .product_list.grid .ajax_block_product {
    width: 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
}

/* Małe ekrany */

@media (max-width: 480px) {
  .product_list.grid .ajax_block_product {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

/* Listing produktów: pojedyncze male zdjecia nie moga zostawac miniaturami */

#products .product-list-default .thumbnail-container,
#js-product-list .product-list-default .thumbnail-container {
  width: 100%;
  min-width: 0;
  border: 1px solid #f3f3f3;
  border-radius: 0;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease;
}

#products .product-list-default .thumbnail-container:hover,
#js-product-list .product-list-default .thumbnail-container:hover {
  border-color: #303A46;
}

#index .ApProductCarousel .thumbnail-container,
#index .ApProductList .thumbnail-container {
  border: 1px solid #e9e9e9;
  border-radius: 0;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease;
}

#index .ApProductCarousel .thumbnail-container:hover,
#index .ApProductList .thumbnail-container:hover {
  border-color: #303A46;
}

#products .product-list-default .thumbnail-container .product-image,
#js-product-list .product-list-default .thumbnail-container .product-image {
  /* Wysokosc jest wspolna dla zdjecia i warstwy ikon akcji. */
  --aj-listing-image-height: 210px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: var(--aj-listing-image-height);
  background: #fff;
  box-sizing: border-box;
}

/* Listing produktów: znacznik opcji tylko gdy kafel ma drugie zdjecie */

#products article.product-miniature .product-image:has(.product-additional img)::after,
#products article.product-miniature .product-image:has(.second-image-style img)::after,
#js-product-list article.product-miniature .product-image:has(.product-additional img)::after,
#js-product-list article.product-miniature .product-image:has(.second-image-style img)::after {
  content: "\f0ae";
  position: absolute;
  left: 3px;
  bottom: 3px;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  background: #303A46;
  color: #fff;
  border-radius: 0;
  font-family: "Font Awesome 5 Pro";
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  pointer-events: none;
}

#products article.product-miniature .product-image:has(.product-additional img)::before,
#products article.product-miniature .product-image:has(.second-image-style img)::before,
#js-product-list article.product-miniature .product-image:has(.product-additional img)::before,
#js-product-list article.product-miniature .product-image:has(.second-image-style img)::before {
  content: "dost\0119pne opcje";
  position: absolute;
  left: 31px;
  bottom: 3px;
  z-index: 5;
  display: block;
  max-width: calc(100% - 43px);
  padding: 5px 8px 4px;
  background: #303A46;
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.2;
  opacity: 0;
  pointer-events: none;
  text-transform: uppercase;
  transform: translateX(-4px);
  transition: opacity .18s ease, transform .18s ease;
  white-space: nowrap;
}

#products article.product-miniature .product-image:has(.product-additional img):hover::before,
#products article.product-miniature .product-image:has(.second-image-style img):hover::before,
#js-product-list article.product-miniature .product-image:has(.product-additional img):hover::before,
#js-product-list article.product-miniature .product-image:has(.second-image-style img):hover::before {
  opacity: 1;
  transform: translateX(0);
}

.category-id-6059 #products article.product-miniature .product-image::before,
.category-id-6059 #products article.product-miniature .product-image::after,
.category-id-6059 #js-product-list article.product-miniature .product-image::before,
.category-id-6059 #js-product-list article.product-miniature .product-image::after,
.category-id-parent-6059 #products article.product-miniature .product-image::before,
.category-id-parent-6059 #products article.product-miniature .product-image::after,
.category-id-parent-6059 #js-product-list article.product-miniature .product-image::before,
.category-id-parent-6059 #js-product-list article.product-miniature .product-image::after,
body:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-image::before,
body:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-image::after,
body:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-image::before,
body:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-image::after,
.aj-hide-options-marker #products article.product-miniature .product-image::before,
.aj-hide-options-marker #products article.product-miniature .product-image::after,
.aj-hide-options-marker #js-product-list article.product-miniature .product-image::before,
.aj-hide-options-marker #js-product-list article.product-miniature .product-image::after {
  display: none;
}

#products .product-list-default .thumbnail-container .product-image .product-thumbnail,
#js-product-list .product-list-default .thumbnail-container .product-image .product-thumbnail {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

#products .product-list-default .thumbnail-container .product-image .product-additional,
#products .product-list-default .thumbnail-container .product-image .second-image-style,
#js-product-list .product-list-default .thumbnail-container .product-image .product-additional,
#js-product-list .product-list-default .thumbnail-container .product-image .second-image-style {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
}

#products .product-list-default .thumbnail-container .product-image .product-additional:has(img),
#products .product-list-default .thumbnail-container .product-image .second-image-style:has(img),
#js-product-list .product-list-default .thumbnail-container .product-image .product-additional:has(img),
#js-product-list .product-list-default .thumbnail-container .product-image .second-image-style:has(img) {
  background: #fff;
}

#products .product-list-default .thumbnail-container .functional-buttons,
#js-product-list .product-list-default .thumbnail-container .functional-buttons {
  z-index: 5;
}

#products .product-list-default .thumbnail-container .functional-buttons > div,
#js-product-list .product-list-default .thumbnail-container .functional-buttons > div {
  z-index: 6;
}

#products .product-list-default .thumbnail-container .functional-buttons .quick-view,
#products .product-list-default .thumbnail-container .functional-buttons .btn-product,
#js-product-list .product-list-default .thumbnail-container .functional-buttons .quick-view,
#js-product-list .product-list-default .thumbnail-container .functional-buttons .btn-product {
  z-index: 7;
}

/* Akcje na zdjeciu produktu: oczko u gory, koszyk u dolu. */

#products .product-list-default .thumbnail-container,
#js-product-list .product-list-default .thumbnail-container {
  position: relative;
}

#products .product-list-default .thumbnail-container .functional-buttons,
#js-product-list .product-list-default .thumbnail-container .functional-buttons {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: var(--aj-listing-image-height);
  pointer-events: none;
}

#products .product-list-default .thumbnail-container .functional-buttons > div,
#js-product-list .product-list-default .thumbnail-container .functional-buttons > div {
  right: 3px !important;
  left: auto !important;
  transform: none !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: auto;
  transition: opacity .2s ease, visibility .2s ease;
}

#products .product-list-default .thumbnail-container:hover .functional-buttons > div,
#js-product-list .product-list-default .thumbnail-container:hover .functional-buttons > div {
  opacity: 1;
  visibility: visible;
}

#products .product-list-default .thumbnail-container .functional-buttons .quickview,
#js-product-list .product-list-default .thumbnail-container .functional-buttons .quickview {
  top: 3px !important;
}

#products .product-list-default .thumbnail-container .functional-buttons .cart,
#js-product-list .product-list-default .thumbnail-container .functional-buttons .cart {
  top: auto !important;
  bottom: 3px;
}

/* Listing produktów: jasne akcje, odwrocone kolory po najechaniu. */

#products .product-list-default .btn-product,
#products .product-list-default .quick-view,
#products .product-list-default .add-to-cart,
#js-product-list .product-list-default .btn-product,
#js-product-list .product-list-default .quick-view,
#js-product-list .product-list-default .add-to-cart {
  background-color: #EEF1F4 !important;
  border-color: #D9DEE5 !important;
  color: #303A46 !important;
}

#products .product-list-default .quick-view,
#js-product-list .product-list-default .quick-view {
  border-radius: 3px !important;
}

#products .product-list-default .btn-product:hover,
#products .product-list-default .btn-product:focus,
#products .product-list-default .quick-view:hover,
#products .product-list-default .quick-view:focus,
#products .product-list-default .add-to-cart:hover,
#products .product-list-default .add-to-cart:focus,
#js-product-list .product-list-default .btn-product:hover,
#js-product-list .product-list-default .btn-product:focus,
#js-product-list .product-list-default .quick-view:hover,
#js-product-list .product-list-default .quick-view:focus,
#js-product-list .product-list-default .add-to-cart:hover,
#js-product-list .product-list-default .add-to-cart:focus {
  background-color: #303A46 !important;
  border-color: #303A46 !important;
  color: #fff !important;
}

#products .product-list-default .quick-view i,
#products .product-list-default .quick-view .leo-quickview-bt-content i,
#js-product-list .product-list-default .quick-view i,
#js-product-list .product-list-default .quick-view .leo-quickview-bt-content i {
  color: #303A46 !important;
}

#products .product-list-default .quick-view:hover i,
#products .product-list-default .quick-view:focus i,
#js-product-list .product-list-default .quick-view:hover i,
#js-product-list .product-list-default .quick-view:focus i {
  color: #fff !important;
}

/* Karuzele produktów: taka sama kolorystyka jak na listingu. */

#index .ApProductCarousel .btn-product,
#index .ApProductCarousel .quick-view,
#index .ApProductCarousel .add-to-cart,
#index .ApProductList .btn-product,
#index .ApProductList .quick-view,
#index .ApProductList .add-to-cart {
  background-color: #EEF1F4 !important;
  border-color: #D9DEE5 !important;
  color: #303A46 !important;
}

/* Oczko w karuzeli korzysta z tego samego zaokraglenia co kontrolki koszyka. */

#index .ApProductCarousel .quick-view,
#index .ApProductList .quick-view {
  border-radius: 3px !important;
}

/* Karuzele: akcje produktu sa widoczne tylko po najechaniu na zdjecie. */

#index .ApProductCarousel .thumbnail-container,
#index .ApProductList .thumbnail-container {
  position: relative;
}

#index .ApProductCarousel .thumbnail-container .product-image,
#index .ApProductList .thumbnail-container .product-image {
  --aj-carousel-image-height: 210px;
  min-height: var(--aj-carousel-image-height);
}

#index .ApProductCarousel .thumbnail-container .functional-buttons,
#index .ApProductList .thumbnail-container .functional-buttons {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: var(--aj-carousel-image-height);
  pointer-events: none;
}

#index .ApProductCarousel .thumbnail-container .functional-buttons > div,
#index .ApProductList .thumbnail-container .functional-buttons > div {
  right: 3px !important;
  left: auto !important;
  transform: none !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: auto;
  transition: opacity .2s ease, visibility .2s ease;
}

#index .ApProductCarousel .thumbnail-container:hover .functional-buttons > div,
#index .ApProductList .thumbnail-container:hover .functional-buttons > div {
  opacity: 1;
  visibility: visible;
}

#index .ApProductCarousel .thumbnail-container .functional-buttons .quickview,
#index .ApProductList .thumbnail-container .functional-buttons .quickview {
  top: 3px !important;
}

#index .ApProductCarousel .thumbnail-container .functional-buttons .cart,
#index .ApProductList .thumbnail-container .functional-buttons .cart {
  top: auto !important;
  bottom: 3px;
}

#index .ApProductCarousel .btn-product:hover,
#index .ApProductCarousel .btn-product:focus,
#index .ApProductCarousel .quick-view:hover,
#index .ApProductCarousel .quick-view:focus,
#index .ApProductCarousel .add-to-cart:hover,
#index .ApProductCarousel .add-to-cart:focus,
#index .ApProductList .btn-product:hover,
#index .ApProductList .btn-product:focus,
#index .ApProductList .quick-view:hover,
#index .ApProductList .quick-view:focus,
#index .ApProductList .add-to-cart:hover,
#index .ApProductList .add-to-cart:focus {
  background-color: #303A46 !important;
  border-color: #303A46 !important;
  color: #fff !important;
}

#products .product-list-default .thumbnail-container .product-meta,
#js-product-list .product-list-default .thumbnail-container .product-meta {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 132px;
  padding-top: 12px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 18px;
  box-sizing: border-box;
}

#products .product-list-default .thumbnail-container .product-price-and-shipping,
#js-product-list .product-list-default .thumbnail-container .product-price-and-shipping {
  white-space: nowrap;
}

#products .product-list-default .thumbnail-container .product-image img,
#js-product-list .product-list-default .thumbnail-container .product-image img {
  width: 86% !important;
  max-width: 210px !important;
  max-height: 210px;
  height: auto;
  object-fit: contain;
}

/* Produkt: Zoom zdjęcia i warstwy Zoom zdjęcia zostaje nad treścią produktu, ale ikonka lupki
   nie wychodzi nad rozwijane menu boczne. */

/* Kontener zoomu - nie przycinamy, bo obraz po kliknięciu może się zmniejszać */

.zoomContainer {
  z-index: 5 !important;
}

#product .product-cover {
  aspect-ratio: 1 / 1;
}

.product-detail .product-cover img,
#zoom_product {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

#product .product-cover .js-qv-product-cover {
  height: 100%;
}

/* Ikonka lupki / warstwa klikana na głównym zdjęciu */

.product-cover .layer,
.product-cover .zoom-in,
.images-container .layer,
.product-cover .layer i,
.images-container .layer i,
.product-cover .layer .zoom-in,
.images-container .layer .zoom-in {
  z-index: 1 !important;
}

/* Produkt: Zakładki / tabs Ograniczone tylko do karty produktu. */

#product .nav-tabs .nav-link.active:hover,
#product .nav-tabs .nav-link.active {
  color: #FFF !important;
  background: #F8014E !important;
}

#product .nav-tabs .nav-link:focus,
#product .nav-tabs .nav-link:hover {
  border-color: #eceeef #eceeef #ddd;
  background: #3D3D3D;
  color: #FFF;
  border-radius: 100px;
}

/* Produkt: Informacja o dostawie */

.tax-shipping-delivery-label .delivery-information {
  display: block;
  margin-top: 4px;
  color: #777;
  font-size: 13px;
}

/* Nagłówek: Typografia linków */

#leo-top-menu a,
.header-nav a {
  font-weight: 500 !important;
  letter-spacing: 0.2px;
}

/* Globalne: Nagłówki H1-H6 */

h1 {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
}

h2 {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}

h3 {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
}

h4 {
  font-size: 15px;
  font-weight: 500;
}

h5 {
  font-size: 14px;
  font-weight: 500;
}

h6 {
  font-size: 13px;
  font-weight: 500;
}

/* Katalog - Nagłówki filtrów */

#search_filters .facet .facet-title,
#search_filters_brands .facet .facet-title,
#search_filters_suppliers .facet .facet-title {
  font-family: "Poppins", sans-serif !important;
  font-weight: 600 !important;
  /* zamiast bold */
  font-size: 16px;
  line-height: 1.4;
  text-transform: none;
  /* usuwa capitalize */
}

/* Boczne filtry: ramka otwartego wyboru i podświetlenie opcji. */

.facet-dropdown.open > .select-title {
  border-color: #303A46;
}

.facet-dropdown .select-list:hover {
  background: #303A46;
}

/* Leo top menu - Wyłączenie kapitalizacji */

#leo-top-menu a {
  text-transform: none !important;
}

/* Kategorie boczne - Warstwa menu i submenu Submenu musi byc nad lupa/zoomem produktu i nie
   moze byc przycinane. */

#categories_block_left,
#categories_block_left .block_content,
#categories_block_left .vertical,
div.verticalmenu,
div.verticalmenu .navbar-collapse,
div.verticalmenu .navbar-vertical,
div.verticalmenu .navbar-nav,
div.verticalmenu .dropdown-menu {
  position: relative;
  overflow: visible !important;
  z-index: 20;
  background: #fff !important;
}

div.verticalmenu .dropdown-menu {
  z-index: 20001 !important;
}

#categories_block_left li {
  position: relative;
}

#categories_block_left li:hover {
  z-index: 20000;
}

#categories_block_left li ul {
  top: 0 !important;
  left: 100% !important;
  margin-left: 0 !important;
  z-index: 20001 !important;
  background: #fff !important;
}

#categories_block_left li:hover > ul {
  z-index: 20001 !important;
  background: #fff !important;
}

#categories_block_left li:hover::after {
  content: "";
  position: absolute;
  top: 0;
  right: -12px;
  width: 12px;
  height: 100%;
  background: transparent;
  z-index: 9998;
}

/* Koszyk: powiekszamy podstawowe zdjecie produktu, bez dodatkowej warstwy zoomu modulu. */

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .image_product {
  overflow: visible !important;
  position: relative;
  z-index: 1;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .image_product > a {
  display: block;
  position: relative;
  box-sizing: border-box;
  transform-origin: center;
  transition: margin .2s ease, padding .2s ease, box-shadow .2s ease;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .image_product .media-object {
  display: block;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  cursor: pointer;
}

/* Drugi obraz modulu jest zbedny: podstawowe zdjecie jest juz klikalne i powiekszane. */

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .image_product .image_zoom {
  display: none !important;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .image_product:hover > a {
  z-index: 2;
  margin: -6px;
  padding: 6px;
  background: #fff;
  box-shadow: 0 0 0 1px #D7DEE5;
}

/* One Page Checkout PS - pola formularza OMNIBUS */

div#onepagecheckoutps #onepagecheckoutps_step_one div.form-group label {
  display: block;
  float: left;
  width: 100%;
  margin: 5px 0;
  font-size: 15px;
}

div#onepagecheckoutps #onepagecheckoutps_step_one .form-group .form-control {
  padding: 10px;
  font-size: 16px;
}

/* Wybrana karta */

div#onepagecheckoutps .container_card.selected .alert::before {
  display: none;
}

/* Przycisk kontynuacji zakupów */

div#onepagecheckoutps div#onepagecheckoutps_step_review #btn_continue_shopping {
  margin-top: 6.4px;
  padding: 10px;
  font-size: 16px;
  background: #fff;
  border: 1px solid #000;
  border-radius: 2px;
}

/* Koszyk: pasek przycisków pozostaje pod pozycjami i nie jest przez nie zasłaniany. */

div#onepagecheckoutps div#onepagecheckoutps_step_review #container_float_review {
  clear: both;
  z-index: 1000 !important;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #container_float_review > .col-xs-12 {
  clear: both;
  overflow: hidden;
}

/* Cena produktu w podsumowaniu - bez szerokiego łapania Omnibusa */

div#onepagecheckoutps #order-detail-content span.product-price {
  font-size: 150%;
}

/* Suma pozycji: rowny, czytelny rytm wszystkich wierszy podsumowania. */

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .item_total {
  align-items: flex-end;
  min-height: 28px;
  margin: 3px 0;
  padding: 0 !important;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .item_total > div[class*="col-"] {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .item_total .price {
  display: inline-block;
  font-size: 120%;
  white-space: nowrap;
}

/* Koncowa kwota RAZEM: czytelniejsza i wyrozniona, bez zmiany pozostalych cen. */

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .order_total_items .cart_total_price .price,
div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content #total_price {
  font-size: 150% !important;
  font-weight: 700;
  text-transform: lowercase;
}

/* Nie powiększaj potencjalnych komunikatów Omnibus */

div#onepagecheckoutps #order-detail-content .omnibus,
div#onepagecheckoutps #order-detail-content .price-history,
div#onepagecheckoutps #order-detail-content .lowest-price,
div#onepagecheckoutps #order-detail-content .lowest-price-history,
div#onepagecheckoutps #order-detail-content .price-history-block {
  font-size: inherit;
}

/* Kategorie: Kafelki podkategorii */

.subcategory-name {
  font-weight: 500;
  font-size: 13px;
  display: block;
  text-align: center;
  padding: 5px 10px;
  line-height: 14px;
  text-transform: capitalize;
}

.subcategory-image img {
  border-radius: 100%;
  display: inline-block;
  padding: 5px;
  border: 1px solid transparent;
  transition: all 0.3s ease;
  width: 120px;
  object-fit: cover;
  height: 120px;
}

.subcategory-block {
  margin-bottom: 5px;
  text-align: center;
  border: solid 1px #eee;
}

#subcategories div.row {
  display: flex;
  flex-wrap: wrap;
}

/* Cena jednostkowa produktu Ukrywa cenę jednostkową, np. cenę za sztukę, kg lub arkusz. */

.product-unit-price {
  display: none !important;
}

/* AJ: Leo Bootstrap Megamenu */

/* Główny wrapper */

.aj-main-megamenu {
  width: 100%;
  background: #FFF;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  box-shadow: none;
}

/* Kontenery wewn?trzne */

.aj-main-megamenu .navbar,
.aj-main-megamenu .navbar-collapse,
.aj-main-megamenu .navbar-nav {
  background: #FFF;
  border: 0;
  box-shadow: none;
}

/* Lista pozioma */

.aj-main-megamenu .navbar-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  width: 100%;
  max-width: 1290px;
  margin: 0 auto;
}

/* Elementy główne */

.aj-main-megamenu .navbar-nav > li {
  position: relative;
}

/* Linki głwnego menu */

.aj-main-megamenu .navbar-nav > li > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 75px;
  padding: 0 14px;
  background: transparent !important;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2;
  text-transform: none;
  letter-spacing: 0;
  text-decoration: none;
  transition: none;
}

/* Usunięcie domyśllnego tła hover, bez zmiany koloru czcionki */

.aj-main-megamenu .navbar-nav > li:hover > a,
.aj-main-megamenu .navbar-nav > li.active > a,
.aj-main-megamenu .navbar-nav > li.current > a,
.aj-main-megamenu .navbar-nav > li.open > a,
.aj-main-megamenu .navbar-nav > li > a:hover,
.aj-main-megamenu .navbar-nav > li > a:focus {
  background: transparent !important;
}

/* Gorne menu: aktywna pozycja ma kolor bazowy, rozowy dopiero po najechaniu */

.aj-main-megamenu .navbar-nav > li > a,
.aj-main-megamenu .navbar-nav > li.active > a,
.aj-main-megamenu .navbar-nav > li.current > a,
.aj-main-megamenu .navbar-nav > li.open > a,
.leo-megamenu .navbar-nav > li.active > a,
.leo-megamenu .navbar-nav > li.current > a,
.leo-megamenu .navbar-nav > li.open > a {
  color: #01193b !important;
}

.aj-main-megamenu .navbar-nav > li:hover > a,
.aj-main-megamenu .navbar-nav > li > a:hover,
.aj-main-megamenu .navbar-nav > li > a:focus,
.leo-megamenu .navbar-nav > li:hover > a,
.leo-megamenu .navbar-nav > li > a:hover,
.leo-megamenu .navbar-nav > li > a:focus {
  color: #F8014E !important;
}

/* Dropdown / megamenu */

.aj-main-megamenu .dropdown-menu {
  margin-top: 0;
  padding: 22px;
  background: #FFF;
  border: 1px solid rgba(48, 58, 70, 0.08);
  border-radius: 0 0 16px 16px;
  box-shadow: 0 18px 44px rgba(48, 58, 70, 0.13);
}

/* Linki w dropdownie ? bez zmiany koloru */

.aj-main-megamenu .dropdown-menu a {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  text-decoration: none;
  transition: padding-left .2s ease;
}

.aj-main-megamenu .dropdown-menu a:hover,
.aj-main-megamenu .dropdown-menu a:focus {
  padding-left: 4px;
  text-decoration: none;
}

/* Nagłówki kolumn */

.aj-main-megamenu .dropdown-menu .mega-col-title,
.aj-main-megamenu .dropdown-menu .widget-heading,
.aj-main-megamenu .dropdown-menu .title_block,
.aj-main-megamenu .dropdown-menu h4 {
  margin: 0 0 10px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
}

/* Listy w dropdownie */

.aj-main-megamenu .dropdown-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.aj-main-megamenu .dropdown-menu li {
  margin: 0;
  padding: 0;
}

.aj-main-megamenu .dropdown-menu li > a {
  display: inline-block;
  padding: 5px 0;
}

/* Mobile */

@media (max-width: 991px) {
  .aj-main-megamenu {
    border-top: 0;
  }
  .aj-main-megamenu .navbar-nav {
    display: block;
    width: 100%;
  }
  .aj-main-megamenu .navbar-nav > li > a {
    min-height: 48px;
    padding: 0 16px;
    font-size: 15px;
  }
  .aj-main-megamenu .navbar-nav > li > a::after {
    display: none;
  }
  .aj-main-megamenu .dropdown-menu {
    padding: 10px 16px 14px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
}

/* Uniwersalne zawijanie rzędów */

.flex-w {
  display: flex;
  flex-wrap: wrap;
}

.mb_80 {
  margin-bottom: 80px;
}

.mb_40 {
  margin-bottom: 40px;
}

.mb_20 {
  margin-bottom: 20px;
}

.mb_10 {
  margin-bottom: 10px;
}

/* AJ: Top info bar */

.aj-top-info-bar {
  width: 100%;
  background: #FFF;
}

.aj-top-info-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
  max-width: 1360px;
  min-height: 58px;
  margin: 0 auto;
  padding: 11px 32px 6px;
  font-family: inherit;
}

.aj-top-info-item {
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
  text-decoration: none;
}

.aj-top-info-item .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  line-height: 1;
  color: #102A43;
}

.aj-top-info-item .content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.15;
}

.aj-top-info-item .title {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #303A46;
  text-decoration: none;
}

.aj-top-info-item p {
  margin: 2px 0 0;
  font-size: 13px;
  font-weight: 400;
  color: #667085;
  text-decoration: none;
}

.aj-top-info-separator {
  display: block;
  width: 1px;
  height: 40px;
  background: #e5e5e5;
  opacity: 0.9;
  flex: 0 0 auto;
}

/* Skrajne separatory – zgodne z liniami między pozycjami */

.aj-top-info-inner::before,
.aj-top-info-inner::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1px;
  height: 40px;
  background: #e5e5e5;
  opacity: 0.9;
  transform: translateY(-50%);
}

.aj-top-info-inner::before {
  left: 0;
}

.aj-top-info-inner::after {
  right: 0;
}

.header-container .header-banner {
  position: static;
  display: block;
  clear: both;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #FFF;
  z-index: 1;
}

.header-container .header-banner:empty {
  display: none;
}

.header-container .header-banner img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

/* Tablet: top info bar */

@media (max-width: 991px) {
  .aj-top-info-inner {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 20px;
    padding: 7px 16px;
  }
  .aj-top-info-item {
    width: calc(50% - 10px);
    white-space: normal;
  }
  .aj-top-info-separator {
    display: none;
  }
  .aj-top-info-inner::before,
  .aj-top-info-inner::after {
    display: none;
  }
  .aj-top-info-item .title {
    font-size: 13px;
  }
  .aj-top-info-item p {
    font-size: 12px;
  }
  .aj-top-info-item .icon {
    font-size: 22px;
  }
}

/* Mobile: top info bar */

@media (max-width: 767px) {
  .aj-top-info-inner {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 10px 16px;
    padding: 8px 12px;
  }
  .aj-top-info-item {
    width: calc(50% - 8px);
    white-space: normal;
  }
  .aj-top-info-separator {
    display: none;
  }
}

/* AJ: Benefit bar */

.aj-benefits-bar {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  background: #FFF;
  /* tylko pionowe kreski na początku i końcu */
  border-left: 1px solid #e5e5e5;
  border-right: 1px solid #e5e5e5;
}

#index .aj-benefits-bar {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

.aj-benefit-item {
  flex: 1 1 25%;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 76px;
  padding: 10px 28px;
  color: #303A46;
  background: #FFF;
}

/* pionowe kreski między elementami */

.aj-benefit-item + .aj-benefit-item {
  border-left: 1px solid #e5e5e5;
}

.aj-benefit-item__icon {
  flex: 0 0 34px;
  width: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #102A43;
}

.aj-benefit-item__icon i {
  font-size: 25px;
  line-height: 1;
  font-weight: normal;
}

.aj-benefit-item__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.aj-benefit-item__title {
  display: block;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 400;
  color: #303A46;
  text-transform: none;
}

.aj-benefit-item__text {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 400;
  color: #666666;
}

/* Tablet */

@media (max-width: 991px) {
  .aj-benefits-bar {
    flex-wrap: wrap;
  }
  .aj-benefit-item {
    flex: 1 1 50%;
    min-height: 72px;
    padding: 12px 20px;
  }
  .aj-benefit-item:nth-child(3) {
    border-left: 0;
  }
}

/* Mobile */

@media (max-width: 575px) {
  .aj-benefits-bar {
    display: block;
    border-left: 0;
    border-right: 0;
  }
  .aj-benefit-item {
    justify-content: flex-start;
    min-height: 64px;
    padding: 10px 16px;
    border-left: 0 !important;
  }
  .aj-benefit-item + .aj-benefit-item {
    border-left: 0;
  }
  .aj-benefit-item__icon {
    flex-basis: 30px;
    width: 30px;
  }
  .aj-benefit-item__icon i {
    font-size: 22px;
  }
  .aj-benefit-item__title {
    font-size: 13px;
  }
  .aj-benefit-item__text {
    font-size: 12px;
  }
}

/* AJ: Duże kafle główne Układ 4 kafli: Dobierz toner, Zamów papier, Artykuły biurowe, B2B. */

/* Slider i benefits: wspolna szerokosc oraz pelne linie benefits */

#index div.container.naglowek,
#index .aj-slider-column,
#index .aj-benefits-column {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

#index div.container.naglowek div,
#index .aj-slider-column div {
  padding-left: 0;
  padding-right: 0;
}

.aj-benefits-bar {
  border-left: 0;
  border-right: 0;
  border-bottom: 1px solid #e5e5e5;
  position: relative;
}

.aj-benefit-item {
  position: relative;
}

.aj-benefit-item + .aj-benefit-item {
  border-left: 0;
}

.aj-benefit-item::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 1px;
  background: #e5e5e5;
}

.aj-benefit-item:first-child::before {
  display: none;
}

.aj-benefits-bar::before,
.aj-benefits-bar::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: 1px;
  background: #e5e5e5;
}

.aj-benefits-bar::before {
  left: 0;
}

.aj-benefits-bar::after {
  right: 0;
}

@media (max-width: 575px) {
  #index div.container.naglowek {
    max-width: 100%;
  }
  .aj-benefit-item::before,
  .aj-benefits-bar::before,
  .aj-benefits-bar::after {
    display: none;
  }
}

/* AJ: mobile benefits bar - keep all four items in a two-column grid. */
@media (max-width: 767px) {
  #index .aj-slider-column {
    width: 100%;
    max-width: 100%;
  }

  #index .aj-slider-column .aj-benefits-bar {
    position: static;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 14px 0;
    transform: none;
    overflow: visible;
    box-sizing: border-box;
  }

  #index .aj-slider-column .aj-benefit-item {
    position: static;
    display: flex;
    width: 100%;
    min-width: 0;
    max-width: none;
    height: auto;
    margin: 0;
    padding: 12px 10px;
    transform: none;
    box-sizing: border-box;
  }

  #index .aj-slider-column .aj-benefit-item:nth-child(n) {
    display: flex;
  }
}

.aj-full-width-line {
  width: 100vw;
  height: 1px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background: #e5e5e5;
}

.aj-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  width: 100%;
}

.aj-feature-tile {
  --tile-color: #222;
  --tile-accent: #102A43;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 210px;
  padding: 24px 18px;
  text-align: center;
  text-decoration: none;
  color: var(--tile-color);
  background: #FFF;
  border: 1px solid #e9e9e9;
  border-radius: 0;
  transition: transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease;
}

.aj-feature-tile:hover {
  transform: translateY(-3px);
  border-color: var(--tile-accent);
  box-shadow: 0 6px 16px rgba(48, 58, 70, 0.12);
}

.aj-feature-tile__icon {
  width: 100%;
  height: 125px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}

.aj-feature-tile__icon img {
  display: block;
  width: 100%;
  max-width: 165px;
  height: 125px;
  object-fit: contain;
  object-position: center;
  transition: transform 0.2s ease,
    opacity 0.2s ease;
}

.aj-feature-tile:hover .aj-feature-tile__icon img {
  transform: scale(1.04);
}

.aj-feature-tile__title {
  display: block;
  width: 100%;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 700;
  color: var(--tile-color);
}

@media (max-width: 991px) {
  .aj-feature-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .aj-feature-tile {
    min-height: 200px;
  }
}

@media (max-width: 575px) {
  .aj-feature-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .aj-feature-tile {
    min-height: 185px;
    padding: 22px 16px;
  }
  .aj-feature-tile__icon {
    height: 110px;
    margin-bottom: 14px;
  }
  .aj-feature-tile__icon img {
    max-width: 150px;
    height: 110px;
  }
  .aj-feature-tile__title {
    font-size: 17px;
  }
}

/* AJ: Małe kafle kategorii 12 ikon */

.aj-small-feature-grid {
  display: grid;
  grid-template-columns: repeat(12, 92px);
  justify-content: space-between;
  gap: 0;
  width: 100%;
  max-width: 1290px;
  margin: 0 auto;
  padding: 28px 0 34px;
  font-family: inherit;
}

.aj-small-feature-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 92px;
  text-decoration: none;
  color: #222;
  --aj-icon-color: #F8014E;
}

.aj-small-feature-tile:hover {
  text-decoration: none;
}

.aj-small-feature-tile__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 92px;
  height: 136px;
  margin-bottom: 22px;
  background: #FFF;
  border: 1px solid #e9e9e9;
  border-radius: 2px;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.aj-category-icon {
  display: block;
  width: 64px;
  height: 64px;
  margin: 0 auto;
  background-color: #303A46;
  -webkit-mask-image: var(--aj-icon);
  mask-image: var(--aj-icon);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.aj-category-tile--notes {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/notatnik.svg");
}

.aj-category-tile--writing {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/dlugopis.svg");
}

.aj-category-tile--archive {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/binder.svg");
}

.aj-category-tile--school {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/school.svg");
}

.aj-category-tile--binding {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/oprawa.svg");
}

.aj-category-tile--envelopes {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/koperta.svg");
}

.aj-category-tile--packing {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/pakowa.svg");
}

.aj-category-tile--labels {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/label.svg");
}

.aj-category-tile--peripherals {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/mouse.svg");
}

.aj-category-tile--presentation {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/clipboard.svg");
}

.aj-category-tile--cleaning {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/cleaning.svg");
}

.aj-category-tile--coffee {
  --aj-icon: url("/themes/leo_stationero/assets/img/svg/coffe.svg");
}

.aj-small-feature-tile:hover .aj-category-icon {
  background-color: var(--aj-icon-color);
  transform: scale(1.08);
}

.aj-small-feature-tile__title {
  display: block;
  width: 110px;
  min-height: 36px;
  margin-top: 0;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
  color: #222;
}

.aj-small-feature-tile:hover .aj-small-feature-tile__icon {
  border-color: #102A43;
  box-shadow: 0 6px 16px rgba(48, 58, 70, 0.12);
  transform: translateY(-2px);
}

/* Tablet */

@media (max-width: 1199px) {
  .aj-small-feature-grid {
    grid-template-columns: repeat(6, 92px);
    justify-content: center;
    gap: 26px 18px;
    max-width: 720px;
    padding: 24px 16px 32px;
  }
  .aj-small-feature-tile__icon {
    width: 92px;
    height: 124px;
    margin-bottom: 22px;
  }
}

/* Mobile */

@media (max-width: 767px) {
  #index .aj-categories-column .aj-small-feature-grid {
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
  }

  .aj-small-feature-grid {
    grid-template-columns: repeat(3, 1fr);
    justify-content: center;
    gap: 22px 10px;
    max-width: 420px;
    padding: 18px 12px 28px;
  }
  .aj-small-feature-tile {
    width: 100%;
  }
  .aj-small-feature-tile__icon {
    width: 100%;
    max-width: 92px;
    height: 92px;
    margin-bottom: 10px;
  }
  .aj-category-icon {
    width: 54px;
    height: 54px;
  }
  .aj-small-feature-tile__title {
    width: 100%;
    max-width: 110px;
    min-height: 32px;
    font-size: 13px;
    line-height: 1.2;
  }
}

/* AJ: Siatka marek producentów */

.aj-brands-wrapper {
  width: 100%;
  padding: 24px 0;
  background: #F3F8FC;
}

.aj-brands-inner {
  width: 100%;
  padding: 0 24px;
}

.aj-brands-heading {
  margin-bottom: 18px;
}

.aj-brands-heading h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
  color: #102A43;
}

.aj-brands-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}

.aj-brand-item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 96px;
  padding: 18px 20px;
  background: #FFF;
  border: 1px solid rgba(48, 58, 70, 0.08);
  border-radius: 0;
  text-decoration: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.aj-brand-item img {
  display: block;
  max-width: 175px;
  max-height: 58px;
  width: auto;
  height: auto;
  opacity: .78;
  filter: grayscale(100%);
  transition: opacity .2s ease, filter .2s ease, transform .2s ease;
}

.aj-brand-item:hover {
  border-color: #102A43;
  box-shadow: 0 10px 26px rgba(48, 58, 70, 0.08);
  transform: translateY(-2px);
  text-decoration: none;
}

.aj-brand-item:hover img {
  opacity: 1;
  filter: grayscale(0%);
  transform: scale(1.03);
}

/* Tablet */

@media (max-width: 1199px) {
  .aj-brands-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .aj-brands-heading h2 {
    font-size: 21px;
  }
  .aj-brand-item img {
    max-width: 150px;
    max-height: 52px;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .aj-brands-wrapper {
    padding: 22px 0;
  }
  .aj-brands-inner {
    padding: 0 12px;
  }
  .aj-brands-heading {
    margin-bottom: 16px;
  }
  .aj-brands-heading h2 {
    font-size: 18px;
  }
  .aj-brands-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .aj-brand-item {
    min-height: 78px;
    padding: 14px 12px;
  }
  .aj-brand-item img {
    max-width: 135px;
    max-height: 46px;
  }
}

/* AJ: Tytuły sekcji niezależne od wrapperów */

.aj-section-title {
  width: 100%;
  max-width: 1290px;
  margin: 0 auto 22px;
  padding: 0 24px;
}

.aj-section-title h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
  color: #102A43;
}

@media (max-width: 767px) {
  .aj-section-title {
    margin-bottom: 18px;
    padding: 0 12px;
  }
  .aj-section-title h2 {
    font-size: 18px;
  }
}

/* AJ: Sekcja B2B: Dla firm, szkół i instytucji Oferta i korzyści dla firm, szkół, urzędów oraz
   instytucji. */

.aj-b2b-section {
  display: grid;
  grid-template-columns: 250px 1fr;
  width: 100%;
  margin-top: 22px;
  background: #FFF;
  border: 1px solid rgba(48, 58, 70, 0.08);
  border-radius: 0;
  overflow: hidden;
  font-family: inherit;
}

/* Lewa część z nagłówkiem */

.aj-b2b-intro {
  padding: 28px 28px 24px;
  background: #FFF;
  border-right: 1px solid rgba(48, 58, 70, 0.08);
}

.aj-b2b-intro h2 {
  margin: 0 0 12px;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.12;
  color: #102A43;
}

.aj-b2b-intro p {
  margin: 0 0 20px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: #303A46;
}

/* Główny przycisk */

.aj-b2b-main-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 20px;
  background: #303A46;
  border: 1px solid #303A46;
  font-size: 14px;
  font-weight: 700;
  color: #FFF !important;
  text-decoration: none !important;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.aj-b2b-main-btn:hover,
.aj-b2b-main-btn:focus {
  background: #EEF1F4;
  border-color: #D9DEE5;
  color: #303A46 !important;
  transform: translateY(-1px);
}

/* Kontrolki ilosci produktu: zgodne kolory, bez zmiany ksztaltu. */

.product-quantity .bootstrap-touchspin-up,
.product-quantity .bootstrap-touchspin-down {
  background-color: #303A46 !important;
  border-color: #303A46 !important;
  color: #fff !important;
}

.product-quantity .bootstrap-touchspin-up i,
.product-quantity .bootstrap-touchspin-down i {
  color: #fff !important;
}

.product-quantity .bootstrap-touchspin-up:hover,
.product-quantity .bootstrap-touchspin-up:focus,
.product-quantity .bootstrap-touchspin-down:hover,
.product-quantity .bootstrap-touchspin-down:focus {
  background-color: #EEF1F4 !important;
  border-color: #D9DEE5 !important;
  color: #303A46 !important;
}

.product-quantity .bootstrap-touchspin-up:hover i,
.product-quantity .bootstrap-touchspin-up:focus i,
.product-quantity .bootstrap-touchspin-down:hover i,
.product-quantity .bootstrap-touchspin-down:focus i {
  color: #303A46 !important;
}

/* Karta produktu: uklad ilosci taki sam jak w koszyku. */

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin {
  position: relative;
  width: 72px;
  height: 50px;
  padding: 0 22px 0 0;
  margin-right: 30px;
  border: 1px solid #D9DEE5;
  border-radius: 3px;
  overflow: hidden;
  box-sizing: border-box;
}

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin input#quantity_wanted {
  width: 48px;
  height: 48px;
  padding: 0;
  color: #303A46;
  background-color: #fff;
  border-radius: 3px 0 0 3px;
  box-sizing: border-box;
}

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin .input-group-btn-vertical {
  position: static;
}

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin .input-group-btn-vertical .btn {
  position: absolute;
  right: 0;
  left: auto;
  width: 22px;
  height: 24px;
  padding: 0;
  margin: 0;
  border-radius: 0 !important;
}

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
  top: 0;
  border-radius: 0 3px 0 0 !important;
}

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
  top: 24px;
  border-radius: 0 0 3px 0 !important;
}

.product-add-to-cart .product-quantity .qty .input-group.bootstrap-touchspin .input-group-btn-vertical .btn i {
  font-size: 10px;
  top: 0;
  left: 0;
}

/* Koszyk ma osobny modul, dlatego wymaga wlasnego koloru ikon ilosci. */

#onepagecheckoutps .bootstrap-touchspin-up,
#onepagecheckoutps .bootstrap-touchspin-down {
  background-color: #303A46 !important;
  border-color: #303A46 !important;
  color: #fff !important;
}

#onepagecheckoutps .bootstrap-touchspin-up i,
#onepagecheckoutps .bootstrap-touchspin-down i {
  color: #fff !important;
}

#onepagecheckoutps .bootstrap-touchspin-up:hover,
#onepagecheckoutps .bootstrap-touchspin-up:focus,
#onepagecheckoutps .bootstrap-touchspin-down:hover,
#onepagecheckoutps .bootstrap-touchspin-down:focus {
  background-color: #EEF1F4 !important;
  border-color: #D9DEE5 !important;
  color: #303A46 !important;
}

#onepagecheckoutps .bootstrap-touchspin-up:hover i,
#onepagecheckoutps .bootstrap-touchspin-up:focus i,
#onepagecheckoutps .bootstrap-touchspin-down:hover i,
#onepagecheckoutps .bootstrap-touchspin-down:focus i {
  color: #303A46 !important;
}

/* Prawa część */

.aj-b2b-content {
  display: flex;
  flex-direction: column;
}

/* Rząd benefitów */

.aj-b2b-features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  flex: 1;
}

.aj-b2b-feature {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  min-height: 170px;
  padding: 28px 22px 22px;
  text-align: center;
}

/* Pionowe separatory między kaflami - nie dotykają poziomych ramek */

.aj-b2b-feature + .aj-b2b-feature::before {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 1px;
  background: rgba(48, 58, 70, 0.08);
}

.aj-b2b-feature__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  margin-bottom: 14px;
  font-size: 34px;
  line-height: 1;
  color: #303A46;
}

.aj-b2b-feature h3 {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
  color: #222;
}

.aj-b2b-feature p {
  margin: 0;
  max-width: 170px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  color: #303A46;
}

/* Dolny pasek przewag */

.aj-b2b-bottom {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 54px;
  min-height: 44px;
  padding: 10px 22px;
  border-top: 1px solid rgba(48, 58, 70, 0.08);
  background: #FFF;
}

.aj-b2b-bottom span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  color: #303A46;
  white-space: nowrap;
}

.aj-b2b-bottom i {
  font-size: 13px;
  color: #F8014E;
}

/* Tablet */

@media (max-width: 1199px) {
  .aj-b2b-section {
    grid-template-columns: 1fr;
    margin-top: 20px;
  }
  .aj-b2b-intro {
    border-right: 0;
    border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  }
  .aj-b2b-features {
    grid-template-columns: repeat(2, 1fr);
  }
  .aj-b2b-feature {
    border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  }
  /* Na tablecie wyłączamy desktopowe separatory */
  .aj-b2b-feature + .aj-b2b-feature::before {
    display: none;
  }
  /* Pionowa linia między 2 kolumnami na tablecie */
  .aj-b2b-feature:nth-child(2n) {
    border-left: 1px solid rgba(48, 58, 70, 0.08);
  }
  .aj-b2b-feature:nth-child(n+3) {
    border-bottom: 0;
  }
  .aj-b2b-bottom {
    flex-wrap: wrap;
    gap: 14px 28px;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .aj-b2b-section {
    margin-top: 18px;
  }
  .aj-b2b-intro {
    padding: 24px 18px 20px;
  }
  .aj-b2b-intro h2 {
    font-size: 24px;
  }
  .aj-b2b-features {
    grid-template-columns: 1fr;
  }
  .aj-b2b-feature {
    min-height: auto;
    padding: 22px 18px;
    border-left: 0;
    border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  }
  .aj-b2b-feature:last-child {
    border-bottom: 0;
  }
  .aj-b2b-bottom {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    gap: 10px;
    padding: 16px 18px;
  }
  .aj-b2b-bottom span {
    white-space: normal;
  }
}

/* AJ: Usługi dla biura i szkoły Sekcja usług lokalnych: ksero, skanowanie, pieczątki, ploter. */

.aj-services-box {
  display: grid;
  grid-template-columns: 250px 1fr;
  width: 100%;
  max-width: 1290px;
  margin: 34px auto 0;
  background: #FFF;
  border: 1px solid rgba(48, 58, 70, 0.08);
  border-radius: 0;
  overflow: hidden;
  font-family: inherit;
}

/* Lewy panel z tytułem */

.aj-services-intro {
  padding: 28px 28px 24px;
  background: #FFF;
  border-right: 1px solid rgba(48, 58, 70, 0.08);
}

.aj-services-intro span {
  display: inline-block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #F8014E;
}

.aj-services-intro h2 {
  margin: 0 0 12px;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.12;
  color: #102A43;
}

.aj-services-intro p {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: #303A46;
}

/* Prawa część z usługami */

.aj-services-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

/* Pojedyncza usługa */

.aj-service-item {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 22px 20px 20px;
  color: #303A46;
  text-decoration: none !important;
  background: #FFF;
  transition: background-color .2s ease;
}

/* Pionowe separatory między usługami - nie dotykają poziomych ramek */

.aj-service-item + .aj-service-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 1px;
  background: rgba(48, 58, 70, 0.08);
}

.aj-service-item:hover {
  background: #FAFBFC;
}

/* Zdjęcie */

.aj-service-item__image {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  margin-bottom: 16px;
  background: #F5F7FA;
  border-radius: 0;
  overflow: hidden;
}

.aj-service-item__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .25s ease;
}

.aj-service-item:hover .aj-service-item__image img {
  transform: scale(1.04);
}

/* Treść */

.aj-service-item__content {
  display: block;
}

.aj-service-item__title {
  display: block;
  margin-bottom: 7px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: #222;
}

.aj-service-item__text {
  display: block;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  color: #303A46;
}

/* Tablet */

@media (max-width: 1199px) {
  .aj-services-box {
    grid-template-columns: 1fr;
  }
  .aj-services-intro {
    border-right: 0;
    border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  }
  .aj-services-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .aj-service-item + .aj-service-item::before {
    display: none;
  }
  .aj-service-item:nth-child(2n) {
    border-left: 1px solid rgba(48, 58, 70, 0.08);
  }
  .aj-service-item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  }
}

/* Mobile */

@media (max-width: 767px) {
  .aj-services-box {
    margin-top: 28px;
  }
  .aj-services-intro {
    padding: 24px 18px 20px;
  }
  .aj-services-intro h2 {
    font-size: 24px;
  }
  .aj-services-list {
    grid-template-columns: 1fr;
  }
  .aj-service-item {
    padding: 20px 18px;
    border-bottom: 1px solid rgba(48, 58, 70, 0.08);
  }
  .aj-service-item:last-child {
    border-bottom: 0;
  }
  .aj-service-item:nth-child(2n) {
    border-left: 0;
  }
  .aj-service-item__image {
    aspect-ratio: 16 / 9;
  }
}

/* Homepage wrappers: use the parent global container. */
#index .aj-small-feature-grid,
#index .aj-brands-inner,
#index .aj-section-title,
#index .aj-b2b-section,
#index .aj-services-box {
  width: 100%;
  box-sizing: border-box;
}
/* Najczęściej kupowane - cien kart bez uciekania produktow poza strone */

/* Miejsce na cien nad kaflami produktow */

#index .product_list {
  padding-top: 10px;
  overflow: visible !important;
}

/* Glowne kontenery nie moga przycinac cienia w pionie */

#index .ApProductCarousel,
#index .ApProductList {
  overflow: visible !important;
}

/* Okno karuzeli: blokuje poziome wyjscie kafli, ale zostawia cien gora/dol */

#index .owl-wrapper-outer,
#index .owl-stage-outer,
#index .ApProductCarousel .slick-list,
#index .ApProductList .slick-list {
  overflow-x: clip !important;
  overflow-y: visible !important;
  padding-top: 10px;
  margin-top: -10px;
}

/* Awaryjnie dla starszych przegladarek bez overflow: clip */

@supports not (overflow: clip) {
  #index .owl-wrapper-outer,
  #index .owl-stage-outer,
  #index .ApProductCarousel .slick-list,
  #index .ApProductList .slick-list {
    overflow-x: hidden !important;
    overflow-y: visible !important;
  }
}

/* Tablet: Najczęściej kupowane */

@media (min-width: 768px) and (max-width: 991px) {
  #index .product_list {
    padding-top: 12px;
    overflow: visible !important;
  }
  #index .ApProductCarousel,
  #index .ApProductList {
    overflow: visible !important;
  }
  #index .owl-wrapper-outer,
  #index .owl-stage-outer,
  #index .ApProductCarousel .slick-list,
  #index .ApProductList .slick-list {
    overflow-x: clip !important;
    overflow-y: visible !important;
    padding-top: 12px;
    margin-top: -12px;
  }
  @supports not (overflow: clip) {
    #index .owl-wrapper-outer,
    #index .owl-stage-outer,
    #index .ApProductCarousel .slick-list,
    #index .ApProductList .slick-list {
      overflow-x: hidden !important;
      overflow-y: visible !important;
    }
  }
}

/* Mobile: Najczęściej kupowane */

@media (max-width: 767px) {
  #index .product_list {
    padding-top: 10px;
    overflow: visible !important;
  }
  #index .ApProductCarousel,
  #index .ApProductList {
    overflow: visible !important;
  }
  #index .owl-wrapper-outer,
  #index .owl-stage-outer,
  #index .ApProductCarousel .slick-list,
  #index .ApProductList .slick-list {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding-top: 10px;
    margin-top: -10px;
  }
}

.header-logo img {
  height: 60px;
  width: auto;
  max-width: 100%;
}

@media (max-width: 991px) {
  .header-logo img {
    height: 52px;
  }
}

@media (max-width: 767px) {
  .header-logo img {
    height: 46px;
  }
}

/* AJ: kursor lapki na glownym zdjeciu produktu */

.product-cover img,
#zoom_product,
.js-qv-product-cover {
  cursor: pointer;
}

/* Menu: nazwa kategorii bez dodatkowego tla i podkreslenia */

.vertical_category_name {
  display: block !important;
  width: 100% !important;
  background: none !important;
  border-radius: 0 !important;
  padding: 0 0 4px 0 !important;
  margin: 0 !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  position: relative !important;
}

/* Legacy: reguły przeniesione z theme.css */

/* Produkt: blok informacji przed zakupem Wspolne style dla modulu w leftcolumn i leftcolumn product. */

.aj-product-before-buy-title {
  color: #222;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  margin: 18px 0 10px;
}

.aj-product-before-buy-box {
  background: #fff;
  border: 1px solid rgba(48, 58, 70, 0.18);
  border-radius: 0;
  box-sizing: border-box;
  color: #4B5563;
  font-size: 13px;
  line-height: 1.35;
  margin: 0 0 18px;
  padding: 8px 12px;
  width: 100%;
}

.aj-product-before-buy-item {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  min-width: 0;
  padding: 9px 0;
}

.aj-product-before-buy-item + .aj-product-before-buy-item {
  border-top: 1px solid rgba(48, 58, 70, 0.12);
}

.aj-product-before-buy-icon {
  color: #303A46;
  flex: 0 0 auto;
  font-size: 20px;
  line-height: 1;
  margin-right: 10px;
  text-align: center;
  width: 24px;
}

.aj-product-before-buy-content {
  min-width: 0;
}

.aj-product-before-buy-content strong {
  color: #303A46;
  display: block;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 2px;
}

.aj-product-before-buy-content span,
.aj-product-before-buy-content a {
  display: block;
  overflow-wrap: anywhere;
  word-break: normal;
}

.aj-product-before-buy-content a {
  color: #F8014E !important;
  font-weight: 700;
  text-decoration: none;
}

.aj-product-before-buy-content a:hover {
  color: #303A46 !important;
}

div.blockreassurance_product span.block-title {
  font-weight: bold;
}

div.blockreassurance_product span.item-product {
  margin-right: 15px;
  display: inline-table;
}

.product-tabs-2 .nav-item .nav-link.active {
  background: #F8014E !important;
  color: #FFF !important;
}

div.carrier-logo img {
  max-width: 100%;
  height: auto;
}

img.thumb.js-thumb.selected,
img.thumb.js-thumb {
  max-width: 100% !important;
}

@media screen and (max-width: 767px) {
  div.topnav {
    display: none;
  }
}

div.container.naglowek {
  margin: 0 auto;
  padding: 0;
}

div.container.naglowek div {
  padding: 0 4px;
}

div.copyright {
  font-size: 12px;
}

#footer .footer-center .inner > .ApRow,
#footer .footer-center .inner > .row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  column-gap: 48px;
}

#footer .footer-center .ApColumn {
  float: none;
  width: auto;
  max-width: none;
  flex: initial;
  display: block;
}

#footer .footer-center .ApColumn .block {
  width: 100%;
}

#footer .footer-center .footer_logo {
  margin-bottom: 18px;
}

#footer .footer-center .footer_logo img {
  display: block;
  max-width: 100% !important;
  height: auto !important;
}

@media (max-width: 991px) {
  #footer .footer-center .inner > .ApRow,
  #footer .footer-center .inner > .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 24px;
  }
}

@media (max-width: 575px) {
  #footer .footer-center .inner > .ApRow,
  #footer .footer-center .inner > .row {
    grid-template-columns: 1fr;
  }
}

section#content ul {
  margin-left: 15px !important;
}

section#content ul li {
  list-style: circle !important;
  margin: 5px 0 !important;
}

div.product-description ul li {
  border-bottom: solid 1px #DDD;
  padding: 5px;
}

/* Menu boczne: układ zgodny z blokami left column. Główne kategorie oddzielają cienkie linie;
   wyróżnienie pojawia się tylko po najechaniu. */

/* Menu boczne: aktywna kategoria zachowuje kolor bazowy; roz wyroznia tylko hover/focus. */

div.verticalmenu .navbar-nav > li > a,
div.verticalmenu .navbar-nav > li.active > a,
div.verticalmenu .navbar-nav > li.current > a,
div.verticalmenu .navbar-nav > li.selected > a,
div.verticalmenu .navbar-nav > li.open > a,
#categories_block_left .vertical > li > a,
#categories_block_left .vertical li.active > a,
#categories_block_left .vertical li.current > a,
#categories_block_left .vertical li.selected > a,
#categories_block_left .vertical a.active,
#categories_block_left .vertical a.current,
#categories_block_left .vertical a.selected {
  color: #303A46 !important;
  font-weight: 400 !important;
  background: #fff !important;
  box-shadow: none !important;
}

div.verticalmenu .navbar-nav > li > a .menu-title,
#categories_block_left .vertical > li > a .vertical_category_name {
  color: #222 !important;
  font-weight: 500 !important;
  background: none !important;
}

div.verticalmenu .navbar-nav > li:not(:last-child) > a,
#categories_block_left .vertical > li:not(:last-child) > a {
  border-bottom: 1px solid #D7DEE5 !important;
}

div.description-short {
  display: none !important;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #order-detail-content .cart_description .s_title_block {
  font-size: 12px;
  font-size: 0.9rem;
  line-height: 16px;
}

/* Koszyk: oddech pomiędzy nagłówkami kolumn a listą produktów. */

div#onepagecheckoutps div#onepagecheckoutps_step_review #header-order-detail-content + #order-detail-content {
  margin-top: 18px;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) h2 span,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) h3 span {
  font-weight: 500;
}

/* Strony CMS - wspolny styl dokumentow informacyjnych Dotyczy fragmentow z klasami xte-h,
   xte-p oraz xte-div. */

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper {
  color: #4B5563 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  max-width: 980px;
  box-sizing: border-box;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-frame {
  background: #F6F7F9 !important;
  border: 1px solid #D9DEE5 !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
  clear: both;
  display: block;
  margin: 18px 0 !important;
  padding: 14px 16px !important;
  width: 100%;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-frame:nth-of-type(odd) {
  background: #EEF1F4 !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) h1.xte-h,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper > h1.xte-h:first-child {
  color: #222 !important;
  font-size: 24px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  margin: 0 0 18px !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) h2.xte-h {
  color: #303A46 !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  margin: 28px 0 12px !important;
  padding-top: 4px;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-p {
  color: #303A46 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin: 0 0 1px !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-p:last-child {
  margin-bottom: 0 !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-frame .xte-p {
  margin-bottom: 8px !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-frame .xte-p:last-child {
  margin-bottom: 0 !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-p strong,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper strong {
  color: #303A46;
  font-weight: 600;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-p a,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper a {
  color: #303A46 !important;
  font-weight: 600;
  text-decoration: none !important;
}

:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-p a:hover,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper a:hover,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-p a:focus,
:is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper a:focus {
  color: #303A46 !important;
  text-decoration: underline !important;
}

@media (max-width: 767px) {
  :is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper {
    font-size: 13px !important;
    line-height: 1.65 !important;
  }
  :is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) h1.xte-h,
  :is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-div.block-wrapper > h1.xte-h:first-child {
    font-size: 21px !important;
    margin-bottom: 14px !important;
  }
  :is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) h2.xte-h {
    font-size: 16px !important;
    margin-top: 22px !important;
  }
  :is(body#cms, body[class*="cms-id-"], .page-cms, .cms-page) .xte-frame {
    margin: 14px 0 !important;
    padding: 12px 14px !important;
  }
}

/* Listing kategorii 6059 i jej podkategorii: bez znacznika dostepnych opcji */

body#category.category-id-6059 #products article.product-miniature .product-image::before,
body#category.category-id-6059 #products article.product-miniature .product-image::after,
body#category.category-id-parent-6059 #products article.product-miniature .product-image::before,
body#category.category-id-parent-6059 #products article.product-miniature .product-image::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-image::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-image::after,
body#category.aj-hide-options-marker #products article.product-miniature .product-image::before,
body#category.aj-hide-options-marker #products article.product-miniature .product-image::after,
body#category.category-id-6059 #js-product-list article.product-miniature .product-image::before,
body#category.category-id-6059 #js-product-list article.product-miniature .product-image::after,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .product-image::before,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .product-image::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-image::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-image::after,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .product-image::before,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .product-image::after,
body#category.category-id-6059 #products article.product-miniature .product-thumbnail::before,
body#category.category-id-6059 #products article.product-miniature .product-thumbnail::after,
body#category.category-id-parent-6059 #products article.product-miniature .product-thumbnail::before,
body#category.category-id-parent-6059 #products article.product-miniature .product-thumbnail::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-thumbnail::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-thumbnail::after,
body#category.aj-hide-options-marker #products article.product-miniature .product-thumbnail::before,
body#category.aj-hide-options-marker #products article.product-miniature .product-thumbnail::after,
body#category.category-id-6059 #js-product-list article.product-miniature .product-thumbnail::before,
body#category.category-id-6059 #js-product-list article.product-miniature .product-thumbnail::after,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .product-thumbnail::before,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .product-thumbnail::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-thumbnail::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-thumbnail::after,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .product-thumbnail::before,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .product-thumbnail::after,
body#category.category-id-6059 #products article.product-miniature .product-additional::before,
body#category.category-id-6059 #products article.product-miniature .product-additional::after,
body#category.category-id-parent-6059 #products article.product-miniature .product-additional::before,
body#category.category-id-parent-6059 #products article.product-miniature .product-additional::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-additional::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .product-additional::after,
body#category.aj-hide-options-marker #products article.product-miniature .product-additional::before,
body#category.aj-hide-options-marker #products article.product-miniature .product-additional::after,
body#category.category-id-6059 #js-product-list article.product-miniature .product-additional::before,
body#category.category-id-6059 #js-product-list article.product-miniature .product-additional::after,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .product-additional::before,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .product-additional::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-additional::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .product-additional::after,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .product-additional::before,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .product-additional::after,
body#category.category-id-6059 #products article.product-miniature .second-image-style::before,
body#category.category-id-6059 #products article.product-miniature .second-image-style::after,
body#category.category-id-parent-6059 #products article.product-miniature .second-image-style::before,
body#category.category-id-parent-6059 #products article.product-miniature .second-image-style::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .second-image-style::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #products article.product-miniature .second-image-style::after,
body#category.aj-hide-options-marker #products article.product-miniature .second-image-style::before,
body#category.aj-hide-options-marker #products article.product-miniature .second-image-style::after,
body#category.category-id-6059 #js-product-list article.product-miniature .second-image-style::before,
body#category.category-id-6059 #js-product-list article.product-miniature .second-image-style::after,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .second-image-style::before,
body#category.category-id-parent-6059 #js-product-list article.product-miniature .second-image-style::after,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .second-image-style::before,
body#category:has(.breadcrumb a[href*="/6059-"]) #js-product-list article.product-miniature .second-image-style::after,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .second-image-style::before,
body#category.aj-hide-options-marker #js-product-list article.product-miniature .second-image-style::after,
body#manufacturer #products article.product-miniature .product-image::before,
body#manufacturer #products article.product-miniature .product-image::after,
body#manufacturer #js-product-list article.product-miniature .product-image::before,
body#manufacturer #js-product-list article.product-miniature .product-image::after {
  content: none !important;
  display: none !important;
}

/* Wyniki wyszukiwarki Leo: listing ma trzymac 4 kafle w rzedzie na desktopie */

body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default,
body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default > .row,
body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default,
body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch;
  width: 100% !important;
}

body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default > .row > .ajax_block_product {
  width: 25% !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
  min-width: 0 !important;
  box-sizing: border-box;
}

body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default .thumbnail-container,
body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default .thumbnail-container {
  /* Wyniki wyszukiwania maja wyzsze zdjecie, wiec ikony zostaja przy jego krawedziach. */
  --aj-listing-image-height: 250px;
  width: 100% !important;
  max-width: none !important;
}

body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default .product-image,
body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default .product-image {
  min-height: var(--aj-listing-image-height);
}

body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default .product-meta,
body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default .product-meta {
  min-height: 170px;
  padding-top: 22px;
  padding-bottom: 24px;
}

@media (max-width: 1199px) {
  body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 33.3333% !important;
    flex: 0 0 33.3333% !important;
    max-width: 33.3333% !important;
  }
}

@media (max-width: 767px) {
  body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}

@media (max-width: 480px) {
  body#module-leoproductsearch-productsearch #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#module-leoproductsearch-productsearch #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Wyszukiwarka: bez znacznika „DOSTĘPNE OPCJE” na kaflach produktów. */

body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .product-image::before,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .product-image::after,
body#module-leoproductsearch-productsearch #products article.product-miniature .product-image::before,
body#module-leoproductsearch-productsearch #products article.product-miniature .product-image::after,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .product-thumbnail::before,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .product-thumbnail::after,
body#module-leoproductsearch-productsearch #products article.product-miniature .product-thumbnail::before,
body#module-leoproductsearch-productsearch #products article.product-miniature .product-thumbnail::after,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .product-additional::before,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .product-additional::after,
body#module-leoproductsearch-productsearch #products article.product-miniature .product-additional::before,
body#module-leoproductsearch-productsearch #products article.product-miniature .product-additional::after,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .second-image-style::before,
body#module-leoproductsearch-productsearch #js-product-list article.product-miniature .second-image-style::after,
body#module-leoproductsearch-productsearch #products article.product-miniature .second-image-style::before,
body#module-leoproductsearch-productsearch #products article.product-miniature .second-image-style::after {
  content: none !important;
  display: none !important;
}

/* Filtrowanie kategorii: kafel ma wypełniać całą kolumnę 25%. */

body#category #js-product-list .product_list.grid.product-list-default,
body#category #js-product-list .product_list.grid.product-list-default > .row,
body#category #products .product_list.grid.product-list-default,
body#category #products .product_list.grid.product-list-default > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch;
  width: 100% !important;
}

body#category #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
body#category #products .product_list.grid.product-list-default > .row > .ajax_block_product {
  width: 25% !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
  min-width: 0 !important;
}

body#category #js-product-list .product_list.grid.product-list-default .thumbnail-container,
body#category #products .product_list.grid.product-list-default .thumbnail-container {
  width: 100% !important;
  max-width: none !important;
}

@media (max-width: 1199px) {
  body#category #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#category #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 33.3333% !important;
    flex: 0 0 33.3333% !important;
    max-width: 33.3333% !important;
  }
}

@media (max-width: 767px) {
  body#category #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#category #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}

@media (max-width: 480px) {
  body#category #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#category #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Lista produktów marki: ten sam pełny układ kafli co na stronie kategorii. */

body#manufacturer #js-product-list .product_list.grid.product-list-default,
body#manufacturer #js-product-list .product_list.grid.product-list-default > .row,
body#manufacturer #products .product_list.grid.product-list-default,
body#manufacturer #products .product_list.grid.product-list-default > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch;
  width: 100% !important;
}

body#manufacturer #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
body#manufacturer #products .product_list.grid.product-list-default > .row > .ajax_block_product {
  width: 25% !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
  min-width: 0 !important;
  box-sizing: border-box;
}

body#manufacturer #js-product-list .product_list.grid.product-list-default .thumbnail-container,
body#manufacturer #products .product_list.grid.product-list-default .thumbnail-container {
  width: 100% !important;
  max-width: none !important;
}

@media (max-width: 1199px) {
  body#manufacturer #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#manufacturer #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 33.3333% !important;
    flex: 0 0 33.3333% !important;
    max-width: 33.3333% !important;
  }
}

@media (max-width: 767px) {
  body#manufacturer #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#manufacturer #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}

@media (max-width: 480px) {
  body#manufacturer #js-product-list .product_list.grid.product-list-default > .row > .ajax_block_product,
  body#manufacturer #products .product_list.grid.product-list-default > .row > .ajax_block_product {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}
/* Leo Product Search: pole typu „pill” z lupą wysuniętą poza prawą krawędź. */

/* Leo Search: numer strony pozostaje biały na ciemnym tle po najechaniu. */

body#module-leoproductsearch-productsearch .pagination a.js-search-link:hover,
body#module-leoproductsearch-productsearch .pagination a.js-search-link:focus {
  color: #fff !important;
}

div.verticalmenu .navbar-nav > li:hover > a,
div.verticalmenu .navbar-nav > li:hover > a:hover,
div.verticalmenu .navbar-nav > li:hover > a:focus,
div.verticalmenu ul li a:hover,
div.verticalmenu ul li a:focus,
#categories_block_left .vertical li:hover > a,
#categories_block_left .vertical a:hover,
#categories_block_left .vertical a:focus,
div.verticalmenu .navbar-nav > li.active > a,
div.verticalmenu .navbar-nav > li.current > a,
div.verticalmenu .navbar-nav > li.selected > a,
div.verticalmenu .navbar-nav > li.open > a,
#categories_block_left .vertical li.active > a,
#categories_block_left .vertical li.current > a,
#categories_block_left .vertical li.selected > a,
#categories_block_left .vertical a.active,
#categories_block_left .vertical a.current,
#categories_block_left .vertical a.selected,
div.verticalmenu .navbar-nav > li:hover > a .menu-title,
div.verticalmenu ul li a:hover .menu-title,
div.verticalmenu ul li a:focus .menu-title,
#categories_block_left .vertical li:hover > a .vertical_category_name,
#categories_block_left .vertical a:hover .vertical_category_name,
#categories_block_left .vertical a:focus .vertical_category_name,
div.verticalmenu .navbar-nav > li.active > a .menu-title,
div.verticalmenu .navbar-nav > li.current > a .menu-title,
div.verticalmenu .navbar-nav > li.selected > a .menu-title,
div.verticalmenu .navbar-nav > li.open > a .menu-title,
#categories_block_left .vertical li.active > a .vertical_category_name,
#categories_block_left .vertical li.current > a .vertical_category_name,
#categories_block_left .vertical li.selected > a .vertical_category_name,
#categories_block_left .vertical a.active .vertical_category_name,
#categories_block_left .vertical a.current .vertical_category_name,
#categories_block_left .vertical a.selected .vertical_category_name {
  color: #F8014E !important;
}

/* Menu boczne: różowy akcent wyłącznie dla stanu hover i focus. */

div.verticalmenu .navbar-nav > li:hover > a,
div.verticalmenu .navbar-nav > li:hover > a:hover,
div.verticalmenu .navbar-nav > li:hover > a:focus,
div.verticalmenu ul li a:hover,
div.verticalmenu ul li a:focus,
#categories_block_left .vertical li:hover > a,
#categories_block_left .vertical a:hover,
#categories_block_left .vertical a:focus,
div.verticalmenu .navbar-nav > li:hover > a .menu-title,
div.verticalmenu ul li a:hover .menu-title,
div.verticalmenu ul li a:focus .menu-title,
#categories_block_left .vertical li:hover > a .vertical_category_name,
#categories_block_left .vertical a:hover .vertical_category_name,
#categories_block_left .vertical a:focus .vertical_category_name {
  color: #F8014E !important;
}

/* CMS: Usługi dla biura i szkoły Wszystkie reguły są ograniczone do.aj-uslugi-page. */

.aj-uslugi-page {
  --aj-pink: #F8014E;
  --aj-navy: #102A43;
  --aj-graphite: #3F464E;
  --aj-text: #1F2937;
  --aj-muted: #6B7280;
  --aj-light: #F4F6F8;
  --aj-light-blue: #F1F6FA;
  --aj-border: #E5E7EB;
  --aj-white: #FFF;
  max-width: 1290px;
  margin: 0 auto;
  padding: 24px;
  color: var(--aj-text);
  font-family: "Poppins", sans-serif;
  line-height: 1.5;
}

.aj-uslugi-page *,
.aj-uslugi-page *::before,
.aj-uslugi-page *::after {
  box-sizing: border-box;
}

.aj-uslugi-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 18px;
  font-size: 13px;
  color: var(--aj-muted);
}

.aj-uslugi-breadcrumbs a {
  color: var(--aj-graphite);
  text-decoration: none;
}

.aj-uslugi-breadcrumbs a:hover {
  color: var(--aj-pink);
  text-decoration: underline;
}

.aj-uslugi-hero {
  position: relative;
  display: block;
  min-height: 340px;
  overflow: hidden;
  background: #E7EDF1;
}

.aj-uslugi-hero__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 47%;
  min-height: 340px;
  padding: 48px;
}

.aj-uslugi-eyebrow {
  margin: 0 0 9px;
  color: var(--aj-pink);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.aj-uslugi-hero h1,
.aj-uslugi-page h2,
.aj-uslugi-page h3 {
  margin-top: 0;
  color: var(--aj-navy);
}

.aj-uslugi-hero h1 {
  margin-bottom: 18px;
  font-size: 40px;
  line-height: 1.16;
  font-weight: 700;
}

.aj-uslugi-hero h1 span {
  color: var(--aj-pink);
}

.aj-uslugi-hero__content > p:not(.aj-uslugi-eyebrow) {
  max-width: 470px;
  margin: 0 0 26px;
  color: var(--aj-graphite);
  font-size: 16px;
}

.aj-uslugi-hero__image-placeholder,
.aj-uslugi-placeholder,
.aj-uslugi-cta__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 300px;
  padding: 24px;
  border: 1px dashed #CBD5E1;
  background: var(--aj-light);
  color: var(--aj-muted);
  font-size: 14px;
  text-align: center;
}

.aj-uslugi-hero__image-placeholder {
  position: absolute;
  inset: 0;
  z-index: 0;
  min-height: 340px;
  border: 0;
  background: linear-gradient(90deg, #E7EDF1 0%, rgba(231, 237, 241, .90) 34%, rgba(231, 237, 241, .25) 58%, rgba(231, 237, 241, .08) 100%);
  color: var(--aj-muted);
  justify-content: flex-end;
  padding: 30px 10%;
}

.aj-uslugi-hero__image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.aj-uslugi-hero::after {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, .97) 0%, rgba(255, 255, 255, .92) 34%, rgba(255, 255, 255, .28) 58%, rgba(255, 255, 255, .03) 100%);
  content: "";
  pointer-events: none;
}

.aj-uslugi-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  padding: 11px 18px;
  border: 1px solid transparent;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

.aj-uslugi-button:hover {
  transform: translateY(-1px);
  text-decoration: none;
}

.aj-uslugi-button--primary {
  background: var(--aj-pink);
  color: var(--aj-white);
}

.aj-uslugi-button--primary:hover {
  background: #D90042;
  color: var(--aj-white);
}

.aj-uslugi-button--secondary {
  border-color: var(--aj-navy);
  background: var(--aj-navy);
  color: var(--aj-white);
}

.aj-uslugi-button--secondary:hover {
  background: #0B2238;
  color: var(--aj-white);
}

.aj-uslugi-button--outline {
  border-color: var(--aj-navy);
  background: var(--aj-white);
  color: var(--aj-navy);
}

.aj-uslugi-button--outline:hover {
  background: var(--aj-navy);
  color: var(--aj-white);
}

.aj-uslugi-hero .aj-uslugi-button {
  align-self: flex-start;
  min-width: 200px;
  border-radius: 10px;
}

.aj-uslugi-nav {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin: 24px 0 56px;
  border: 1px solid var(--aj-border);
  background: var(--aj-white);
}

.aj-uslugi-nav a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 74px;
  padding: 12px 10px;
  border-right: 1px solid var(--aj-border);
  color: var(--aj-graphite);
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
}

.aj-uslugi-nav a:last-child {
  border-right: 0;
}

.aj-uslugi-nav a::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: var(--aj-pink);
  content: "";
  opacity: 0;
  transition: opacity .2s ease;
}

.aj-uslugi-nav a:hover {
  color: var(--aj-navy);
  text-decoration: none;
}

.aj-uslugi-nav a:hover::after,
.aj-uslugi-nav a:focus::after {
  opacity: 1;
}

.aj-uslugi-nav i {
  color: var(--aj-navy);
  font-size: 20px;
}

.aj-uslugi-intro,
.aj-uslugi-section-heading {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.aj-uslugi-intro {
  padding: 0 0 56px;
}

.aj-uslugi-intro h2,
.aj-uslugi-section-heading h2 {
  margin-bottom: 14px;
  font-size: 30px;
  line-height: 1.25;
  font-weight: 700;
}

.aj-uslugi-intro > p:last-child {
  margin: 0;
  color: var(--aj-graphite);
  font-size: 16px;
}

.aj-uslugi-list {
  border-top: 1px solid var(--aj-border);
}

.aj-uslugi-section {
  display: grid;
  grid-template-columns: 40% 60%;
  min-height: 320px;
  border-bottom: 1px solid var(--aj-border);
}

.aj-uslugi-section:nth-child(even) {
  background: var(--aj-light);
}

.aj-uslugi-section--reverse .aj-uslugi-placeholder {
  order: 2;
}

.aj-uslugi-section--reverse .aj-uslugi-section__content {
  order: 1;
}

.aj-uslugi-placeholder {
  min-height: 320px;
  border: 0;
  border-right: 1px solid var(--aj-border);
}

.aj-uslugi-section--reverse .aj-uslugi-placeholder {
  border-right: 0;
  border-left: 1px solid var(--aj-border);
}

.aj-uslugi-section__content {
  align-self: center;
  padding: 38px 48px;
}

.aj-uslugi-section__icon {
  display: inline-flex;
  margin-bottom: 11px;
  color: var(--aj-pink);
  font-size: 26px;
}

.aj-uslugi-section h2 {
  margin-bottom: 10px;
  font-size: 25px;
  line-height: 1.25;
  font-weight: 700;
}

.aj-uslugi-section p {
  margin: 0 0 14px;
  color: var(--aj-graphite);
  font-size: 15px;
}

.aj-uslugi-section ul {
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

.aj-uslugi-section li {
  position: relative;
  margin: 6px 0;
  padding-left: 18px;
  color: var(--aj-graphite);
  font-size: 14px;
}

.aj-uslugi-section li::before {
  position: absolute;
  top: .62em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--aj-pink);
  content: "";
}

.aj-uslugi-benefits {
  margin: 56px 0;
  padding: 52px 42px;
  background: var(--aj-light);
}

.aj-uslugi-benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 36px;
}

.aj-uslugi-benefits__grid > div {
  padding: 4px 26px 8px;
  border-right: 1px solid var(--aj-border);
  text-align: center;
}

.aj-uslugi-benefits__grid > div:last-child {
  border-right: 0;
}

.aj-uslugi-benefits i {
  color: var(--aj-navy);
  font-size: 27px;
}

.aj-uslugi-benefits h3 {
  margin: 12px 0 7px;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 600;
}

.aj-uslugi-benefits p {
  margin: 0;
  color: var(--aj-graphite);
  font-size: 14px;
}

/* Korzyści w oknie produktu. */

.aj-product-benefits {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  min-height: auto;
  padding: 20px 10px 4px 18px;
  box-sizing: border-box;
  background: transparent;
}

.aj-product-benefit {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  padding: 4px 0;
  background: transparent;
  transition: transform 0.2s ease;
}

.aj-product-benefit:hover {
  transform: translateX(4px);
}

.aj-product-benefit__icon {
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid currentColor;
  border-radius: 3px;
  font-size: 21px;
  box-sizing: border-box;
}

.aj-product-benefit__text {
  flex: 1;
  min-width: 0;
}

.aj-product-benefit__text h3 {
  margin: 0 0 4px;
  padding: 0;
  color: #01193b;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
}

.aj-product-benefit__text p,
.aj-carriers__title {
  padding: 0;
  color: #626b7a;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
}

.aj-product-benefit__text p {
  margin: 0;
}

.aj-benefit-blue {
  color: #2563eb;
  background: transparent;
}

.aj-benefit-pink {
  color: #F8014E;
  background: transparent;
}

.aj-benefit-green {
  color: #059669;
  background: transparent;
}

.aj-benefit-orange {
  color: #ea580c;
  background: transparent;
}

@media (max-width: 991px) {
  .aj-product-benefits {
    min-height: auto;
    padding: 15px 0;
  }
}

@media (max-width: 575px) {
  .aj-product-benefit {
    align-items: flex-start;
    gap: 13px;
  }
  .aj-product-benefit__icon {
    flex-basis: 46px;
    width: 46px;
    height: 46px;
    font-size: 18px;
  }
  .aj-product-benefit__text h3 {
    font-size: 14px;
  }
  .aj-product-benefit__text p {
    font-size: 12.5px;
  }
}

/* Quick View: miniatury sa przycinane w obrebie listy Slick. */

#index .quickview .slick-list,
.quickview .images-container .slick-list {
  overflow: hidden !important;
}

/* AJ Printers - zakladki produktu */

#product .aj-product-tabs {
  margin-top: 26px;
  font-family: "Poppins", sans-serif;
}

#product .aj-product-tabs .nav-tabs {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #dfe5eb;
  background: transparent;
}

#product .aj-product-tabs .nav-tabs .nav-item {
  float: none;
  margin: 0;
}

#product .aj-product-tabs .nav-tabs .nav-link {
  position: relative;
  display: block;
  margin: 0;
  padding: 15px 22px 16px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #687384 !important;
  font-family: "Poppins", sans-serif;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4;
  letter-spacing: .01em;
  text-transform: uppercase;
  transition: color .2s ease, background-color .2s ease;
}

#product .aj-product-tabs .nav-tabs .nav-link:hover,
#product .aj-product-tabs .nav-tabs .nav-link:focus {
  color: #172033 !important;
  background: #f7f9fc !important;
  text-decoration: none;
  outline: 0;
}

#product .aj-product-tabs .nav-tabs .nav-link.active,
#product .aj-product-tabs .nav-tabs .nav-item.show .nav-link {
  color: #172033 !important;
  background: transparent !important;
  font-weight: 500 !important;
}

#product .aj-product-tabs .nav-tabs .nav-link.active::after,
#product .aj-product-tabs .nav-tabs .nav-item.show .nav-link::after {
  position: absolute;
  right: 22px;
  bottom: -1px;
  left: 22px;
  height: 2px;
  background: #172033;
  content: "";
}

/* Wyłącza fabryczne podkreslenie motywu; zostaje tylko linia::after powyzej. */

#product .aj-product-tabs .nav-tabs .nav-link::before {
  display: none !important;
}

#product .aj-product-tabs .tab-content {
  position: relative;
  margin-top: 18px;
  overflow: hidden;
  border: 1px solid #e3e8ee;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(1,25,59,.04), 0 1px 3px rgba(1,25,59,.03);
}

#product .aj-product-tabs .tab-pane {
  padding: 26px 28px 30px;
  color: #211e1f;
  font-size: 14px;
  line-height: 1.75;
}

#product .aj-product-tabs .product-description {
  max-width: 100%;
  color: #211e1f;
}

#product .aj-product-tabs .product-description p {
  margin: 0 0 10px;
}

#product .aj-product-tabs .product-description p:last-child {
  margin-bottom: 0;
}

#product .aj-product-tabs .product-description strong,
#product .aj-product-tabs .product-description b {
  color: #172033;
  font-weight: 500;
}

#product .aj-product-tabs .product-description ul,
#product .aj-product-tabs .product-description ol {
  margin: 14px 0;
  padding-left: 22px;
}

#product .aj-product-tabs .product-description li {
  margin-bottom: 5px;
}

#product .aj-product-tabs .aj-product-details {
  color: #211e1f;
}

#product .aj-product-tabs .product-manufacturer,
#product .aj-product-tabs .product-reference,
#product .aj-product-tabs .product-quantities,
#product .aj-product-tabs .product-availability-date,
#product .aj-product-tabs .product-condition {
  display: flex;
  align-items: baseline;
  gap: 7px;
  margin: 0;
  padding: 5px 0;
  color: #211e1f;
  font-size: 14px;
  line-height: 1.55;
}

#product .aj-product-tabs .product-reference .label,
#product .aj-product-tabs .product-quantities .label,
#product .aj-product-tabs .product-condition .label,
#product .aj-product-tabs .product-availability-date label {
  margin: 0;
  color: #172033;
  font-size: 14px;
  font-weight: 500;
}

#product .aj-product-tabs .product-manufacturer img {
  width: auto;
  max-height: 52px;
  margin-bottom: 10px;
}

#product .aj-product-tabs .product-features {
  margin-top: 28px;
}

#product .aj-product-tabs .product-features:first-of-type {
  margin-top: 24px;
}

#product .aj-product-tabs .product-features h3,
#product .aj-product-tabs .product-features .h6 {
  position: relative;
  margin: 0 0 12px;
  padding: 0 0 10px;
  color: #172033;
  font-family: "Poppins", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: none;
}

#product .aj-product-tabs .product-features h3::after,
#product .aj-product-tabs .product-features .h6::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 42px;
  height: 2px;
  background: #172033;
  content: "";
}

#product .aj-product-tabs .data-sheet {
  display: grid;
  grid-template-columns: minmax(190px,34%) 1fr;
  column-gap: 0;
  row-gap: 0;
  width: 100%;
  margin: 0;
  border-top: 1px solid #e4e9ee;
}

#product .aj-product-tabs .data-sheet dt.name,
#product .aj-product-tabs .data-sheet dd.value {
  float: none;
  box-sizing: border-box;
  width: auto;
  min-height: 0;
  margin: 0;
  padding: 8px 12px;
  border: 0;
  border-bottom: 1px solid #e4e9ee;
  background: transparent !important;
  font-size: 14px;
  line-height: 1.5;
}

#product .aj-product-tabs .data-sheet dt.name {
  padding-left: 0;
  color: #5b6571;
  font-weight: 500;
}

#product .aj-product-tabs .data-sheet dd.value {
  padding-right: 0;
  color: #01193b;
  font-weight: 500;
}

#product .aj-product-tabs .data-sheet dt.name:hover,
#product .aj-product-tabs .data-sheet dd.value:hover {
  background: transparent !important;
}

#product .aj-product-tabs .product-attachments {
  color: #211e1f;
}

#product .aj-product-tabs .product-attachments > h3 {
  margin: 0 0 18px;
  color: #172033;
  font-size: 16px;
  font-weight: 500;
  text-transform: none;
}

#product .aj-product-tabs .attachment {
  padding: 16px 0;
  border-bottom: 1px solid #e4e9ee;
}

#product .aj-product-tabs .attachment:first-of-type {
  padding-top: 0;
}

#product .aj-product-tabs .attachment:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

#product .aj-product-tabs .attachment h4 {
  margin: 0 0 5px;
  color: #172033;
  font-size: 15px;
  font-weight: 500;
}

#product .aj-product-tabs .attachment p {
  margin: 0 0 6px;
  color: #211e1f;
}

#product .aj-product-tabs .attachment a,
#product .aj-product-tabs .tab-pane a {
  color: #01193b;
  text-decoration: none;
}

#product .aj-product-tabs .attachment a {
  font-weight: 500;
}

#product .aj-product-tabs .attachment a:hover,
#product .aj-product-tabs .tab-pane a:hover {
  color: #0f315f;
  text-decoration: underline;
}

#product .aj-product-tabs .product-out-of-stock:empty {
  display: none;
}

@media (max-width: 991px) {
  #product .aj-product-tabs .tab-pane {
    padding: 24px 22px 28px;
  }
  #product .aj-product-tabs .data-sheet {
    grid-template-columns: minmax(170px,38%) 1fr;
  }
}

@media (max-width: 767px) {
  #product .aj-product-tabs {
    margin-top: 20px;
  }
  #product .aj-product-tabs .nav-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
  }
  #product .aj-product-tabs .nav-tabs .nav-item {
    flex: 0 0 auto;
  }
  #product .aj-product-tabs .nav-tabs .nav-link {
    padding: 13px 16px 14px;
    font-size: 13px !important;
  }
  #product .aj-product-tabs .nav-tabs .nav-link.active::after,
  #product .aj-product-tabs .nav-tabs .nav-item.show .nav-link::after {
    right: 16px;
    left: 16px;
  }
  #product .aj-product-tabs .tab-content {
    margin-top: 14px;
    border-radius: 3px;
    box-shadow: none;
  }
  #product .aj-product-tabs .tab-pane {
    padding: 20px 16px 24px;
  }
  #product .aj-product-tabs .data-sheet {
    grid-template-columns: 42% 58%;
  }
  #product .aj-product-tabs .data-sheet dt.name,
  #product .aj-product-tabs .data-sheet dd.value {
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 13px;
  }
}

@media (max-width: 420px) {
  #product .aj-product-tabs .data-sheet {
    display: block;
    border-top: 0;
  }
  #product .aj-product-tabs .data-sheet dt.name {
    padding: 12px 0 3px;
    border-bottom: 0;
    color: #687384;
    font-size: 12px;
    font-weight: 500;
  }
  #product .aj-product-tabs .data-sheet dd.value {
    padding: 0 0 12px;
    border-bottom: 1px solid #e4e9ee;
    color: #01193b;
    font-size: 14px;
  }
  #product .aj-product-tabs .product-reference,
  #product .aj-product-tabs .product-quantities,
  #product .aj-product-tabs .product-availability-date,
  #product .aj-product-tabs .product-condition {
    display: block;
  }
}

/* Odbierz wygodnie – przewoźnicy w ramkach. */

.aj-carriers {
  width: 100%;
  margin: 24px 0;
}

.aj-carriers__title {
  margin: 0 0 14px;
  color: #01193b;
  font-size: 15px;
  font-weight: 600;
}

.aj-carriers__icons {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  width: 100%;
  gap: 14px;
}

.aj-carriers__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 72px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #dbe2ea;
  border-radius: 4px;
  box-sizing: border-box;
  overflow: visible;
}

.aj-carriers__item img {
  display: block;
  width: 100%;
  height: 48px;
  max-width: 120px;
  object-fit: contain;
  transition: transform .2s ease;
}

.aj-carriers__item img[src="/img/s/11.jpg"] {
  height: 54px;
  max-width: 132px;
  transform: scale(1.15);
}

.aj-carriers__item:hover {
  z-index: 1;
}

.aj-carriers__item:hover img {
  transform: scale(1.08);
}

.aj-carriers__item:hover img[src="/img/s/11.jpg"] {
  transform: scale(1.25);
}

@media (max-width: 991px) {
  .aj-carriers__icons {
    gap: 10px;
  }
  .aj-carriers__item {
    height: 64px;
    padding: 7px 9px;
  }
  .aj-carriers__item img {
    height: 44px;
    max-width: 108px;
  }
  .aj-carriers__item img[src="/img/s/11.jpg"] {
    height: 48px;
    max-width: 118px;
  }
}

@media (max-width: 575px) {
  .aj-carriers__icons {
    gap: 6px;
  }
  .aj-carriers__item {
    height: 58px;
    padding: 6px;
  }
  .aj-carriers__item img {
    height: 36px;
    max-width: 88px;
  }
  .aj-carriers__item img[src="/img/s/11.jpg"] {
    height: 40px;
    max-width: 98px;
  }
}

/* AJ Services - isolated CMS page layout. */
.aj-services-page {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  font-family: "Poppins", sans-serif;
  color: #0f172a;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.aj-services-page,
.aj-services-page * {
  box-sizing: border-box;
}

.aj-services-page > section:first-child {
  margin-top: 0 !important;
}

/* Shared inner container and typography. */
.aj-services-page .aj-services-container {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 28px;
}

.aj-services-page .aj-services-title {
  margin: 0 0 14px;
  color: #0f172a;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.25;
}

.aj-services-page .aj-services-lead {
  max-width: 100%;
  margin: 0;
  color: #334155;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.75;
}

.aj-services-page .aj-services-section-title {
  margin: 0 0 24px;
  color: #0f172a;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.3;
}

.aj-services-page .aj-services-intro {
  padding: 10px 0 34px;
}

/* Benefits. */
.aj-services-page .aj-services-benefits {
  padding: 0 0 34px;
}

.aj-services-page .aj-services-benefits__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.aj-services-page .aj-services-benefit {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 180px;
  padding: 28px 24px;
  border: 2px solid #dfe5ec;
  border-radius: 8px;
  background: #ffffff;
  text-align: center;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.aj-services-page .aj-services-benefit:hover {
  border-color: rgba(248, 1, 78, .35);
  box-shadow: 0 8px 24px rgba(1, 25, 59, .08);
}

.aj-services-page .aj-services-benefit__title {
  margin: 0 0 10px;
  color: #0f172a;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.35;
}

.aj-services-page .aj-services-benefit__text,
.aj-services-page .aj-services-more__text,
.aj-services-page .aj-order-guide__value {
  color: #334155;
  font-size: 16px;
  line-height: 1.75;
}

/* Main service cards. */
.aj-services-page .aj-services-list {
  padding: 0 0 40px;
}

.aj-services-page .aj-service-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  margin-bottom: 28px;
  border: 2px solid #dfe5ec;
  border-radius: 8px;
  background: #ffffff;
}

.aj-services-page .aj-service-card__media {
  min-height: 390px;
  background: #f7f9fc;
}

.aj-services-page .aj-service-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 390px;
  object-fit: cover;
}

.aj-services-page .aj-service-card__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 38px 42px;
}

.aj-services-page .aj-service-card__title {
  margin: 0 0 12px;
  color: #0f172a;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.3;
}

.aj-services-page .aj-service-card__text {
  color: #334155;
  font-size: 16px;
  line-height: 1.75;
}

.aj-services-page .aj-service-card__list {
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.aj-services-page .aj-service-card__list li {
  margin: 0 0 9px;
  padding-left: 24px;
  color: #334155;
  font-size: 16px;
  line-height: 1.55;
}

.aj-services-page .aj-service-card__list li::before {
  content: "";
  display: inline-block;
  width: 24px;
  margin-left: -24px;
  color: #F8014E;
  font-weight: 700;
}

/* Additional services. */
.aj-services-page .aj-services-more {
  padding: 10px 0 40px;
}

.aj-services-page .aj-services-more__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-bottom: 24px;
}

.aj-services-page .aj-services-more__grid--wide {
  grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
}

.aj-services-page .aj-services-more__card {
  min-height: 190px;
  padding: 28px;
  border: 2px solid #dfe5ec;
  border-radius: 8px;
  background: #f7f9fc;
}

.aj-services-page .aj-services-more__title {
  margin: 0 0 10px;
  color: #0f172a;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.35;
}

/* Order guide. */
.aj-services-page .aj-order-guide {
  padding: 8px 0 40px;
}

.aj-services-page .aj-order-guide__table {
  width: 100%;
  overflow: hidden;
  border: 2px solid #dfe5ec;
  border-radius: 8px;
  background: #ffffff;
}

.aj-services-page .aj-order-guide__group + .aj-order-guide__group {
  border-top: 2px solid #dfe5ec;
}

.aj-services-page .aj-order-guide__group-title {
  margin: 0;
  padding: 18px 22px;
  border-bottom: 1px solid #dfe5ec;
  background: #f7f9fc;
  color: #0f172a;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
}

.aj-services-page .aj-order-guide__row {
  display: grid;
  grid-template-columns: minmax(240px, 30%) minmax(0, 1fr);
}

.aj-services-page .aj-order-guide__row + .aj-order-guide__row {
  border-top: 1px solid #dfe5ec;
}

.aj-services-page .aj-order-guide__label,
.aj-services-page .aj-order-guide__value {
  padding: 18px 20px;
}

.aj-services-page .aj-order-guide__label {
  border-right: 1px solid #dfe5ec;
  color: #0f172a;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  text-align: right;
}

@media (max-width: 991px) {
  .aj-services-page .aj-services-container {
    padding: 0 20px;
  }

  .aj-services-page .aj-services-benefits__grid,
  .aj-services-page .aj-services-more__grid,
  .aj-services-page .aj-services-more__grid--wide {
    grid-template-columns: 1fr;
  }

  .aj-services-page .aj-service-card {
    grid-template-columns: 1fr;
  }

  .aj-services-page .aj-service-card__media,
  .aj-services-page .aj-service-card__media img {
    min-height: 320px;
  }

  .aj-services-page .aj-service-card__content {
    padding: 30px;
  }
}

@media (max-width: 767px) {
  .aj-services-page .aj-services-container {
    padding: 0 15px;
  }

  .aj-services-page .aj-services-title {
    font-size: 27px;
  }

  .aj-services-page .aj-services-section-title {
    font-size: 24px;
  }

  .aj-services-page .aj-service-card__title {
    font-size: 22px;
  }

  .aj-services-page .aj-services-lead,
  .aj-services-page .aj-service-card__text,
  .aj-services-page .aj-services-more__text,
  .aj-services-page .aj-services-benefit__text,
  .aj-services-page .aj-order-guide__value {
    font-size: 15px;
  }

  .aj-services-page .aj-services-benefit,
  .aj-services-page .aj-services-more__card {
    padding: 22px 18px;
  }

  .aj-services-page .aj-service-card__content {
    padding: 24px 20px;
  }

  .aj-services-page .aj-service-card__media,
  .aj-services-page .aj-service-card__media img {
    min-height: 240px;
  }

  .aj-services-page .aj-order-guide__row {
    grid-template-columns: 1fr;
  }

  .aj-services-page .aj-order-guide__label {
    border-right: 0;
    border-bottom: 1px solid #dfe5ec;
    text-align: left;
  }
}

/* AJ Services - isolated CMS page refinements. */
.aj-services-page .aj-services-intro { padding: 10px 0 32px; }
.aj-services-page .aj-services-lead { width: 100%; color: #475569; }

.aj-services-page .aj-services-benefit {
  transition: border-color .2s ease, box-shadow .2s ease;
}
.aj-services-page .aj-services-benefit__text { margin: 0; color: #475569; line-height: 1.7; }

.aj-services-page .aj-services-list { padding-bottom: 42px; }
.aj-services-page .aj-service-card {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  margin: 0 0 30px;
}
.aj-services-page .aj-service-card__media { min-width: 0; min-height: 410px; }
.aj-services-page .aj-service-card__media img { min-height: 410px; }
.aj-services-page .aj-service-card__content { min-width: 0; padding: 42px 46px; }
.aj-services-page .aj-service-card__title { margin-bottom: 14px; }
.aj-services-page .aj-service-card__text { margin: 0; color: #475569; }
.aj-services-page .aj-service-card__list { margin-top: 20px; }
.aj-services-page .aj-service-card__list li { position: relative; margin-bottom: 10px; padding-left: 25px; }
.aj-services-page .aj-service-card__list li:last-child { margin-bottom: 0; }
.aj-services-page .aj-service-card__list li::before {
  display: inline;
  width: auto;
  margin-left: 0;
}

.aj-services-page .aj-services-more { padding: 6px 0 42px; }
.aj-services-page .aj-services-more__grid { margin: 0 0 24px; }
.aj-services-page .aj-services-more__grid--wide { grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr); }
.aj-services-page .aj-services-more__card { padding: 30px; }
.aj-services-page .aj-services-more__text { margin: 0; color: #475569; line-height: 1.7; }

.aj-services-page .aj-order-guide { padding: 6px 0 42px; }
.aj-services-page .aj-order-guide__value { color: #475569; line-height: 1.7; }

@media (max-width: 991px) {
  .aj-services-page .aj-service-card__media {
    order: 1;
    min-height: 320px;
  }
  .aj-services-page .aj-service-card__content {
    order: 2;
    padding: 32px;
  }
  .aj-services-page .aj-service-card__media img { min-height: 320px; }
}

@media (max-width: 767px) {
  .aj-services-page .aj-services-intro { padding-bottom: 26px; }
  .aj-services-page .aj-services-lead { font-size: 15px; line-height: 1.65; }
  .aj-services-page .aj-services-benefit { min-height: 0; }
  .aj-services-page .aj-services-benefit__title,
  .aj-services-page .aj-services-more__title { font-size: 20px; }
  .aj-services-page .aj-services-benefit__text,
  .aj-services-page .aj-services-more__text,
  .aj-services-page .aj-service-card__text,
  .aj-services-page .aj-service-card__list li,
  .aj-services-page .aj-order-guide__label,
  .aj-services-page .aj-order-guide__value { font-size: 15px; }
  .aj-services-page .aj-service-card { margin-bottom: 22px; }
  .aj-services-page .aj-services-more__card { min-height: 0; padding: 22px 18px; }
}

/* AJ Service Page - final isolated layout. */
.aj-services-page .aj-services-container { max-width: 1280px; padding: 0 24px; }
.aj-services-page .aj-services-intro { padding: 12px 0 32px; }
.aj-services-page .aj-services-title { margin-bottom: 12px; font-size: 30px; }
.aj-services-page .aj-services-lead { font-size: 16px; line-height: 1.7; }
.aj-services-page .aj-services-benefits { padding-bottom: 32px; }
.aj-services-page .aj-services-benefit { min-width: 0; padding: 26px 22px; border-radius: 6px; transition: none; }
.aj-services-page .aj-services-benefit:hover { transform: none; }
.aj-services-page .aj-services-benefit__title { font-size: 20px; }
.aj-services-page .aj-services-benefit__text { line-height: 1.65; }

.aj-services-page .aj-services-list { padding-bottom: 36px; }
.aj-services-page .aj-service-card { margin-bottom: 26px; border-radius: 6px; }
.aj-services-page .aj-service-card__media { display: flex; min-height: 360px; }
.aj-services-page .aj-service-card__placeholder {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  width: 100%; min-width: 0; min-height: 360px; padding: 30px;
  border: 2px dashed #b8c2cf; background: #f7f9fc; text-align: center;
}
.aj-services-page .aj-service-card__placeholder-title { display: block; margin: 0 0 8px; color: #0f172a; font-size: 20px; font-weight: 600; }
.aj-services-page .aj-service-card__placeholder-text { display: block; color: #64748b; font-size: 15px; line-height: 1.5; }
.aj-services-page .aj-service-card__content { padding: 38px 42px; }
.aj-services-page .aj-service-card__title { font-size: 24px; }
.aj-services-page .aj-service-card__list li {
  position: relative;
  margin-bottom: 8px;
  padding-left: 26px;
}
.aj-services-page .aj-service-card__list li::before {
  content: "";
  position: absolute;
  top: 0.78em;
  left: 0;
  width: 6px;
  height: 6px;
  margin: 0;
  border-radius: 50%;
  background: #f8014e;
  transform: translateY(-50%);
}

.aj-services-page .aj-services-more { padding: 0 0 38px; }
.aj-services-page .aj-services-section-title { margin-bottom: 22px; font-size: 27px; }
.aj-services-page .aj-services-more__grid--wide { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
.aj-services-page .aj-services-more__card { padding: 26px; border-radius: 6px; }
.aj-services-page .aj-services-more__title { font-size: 20px; }
.aj-services-page .aj-services-more__text { line-height: 1.65; }

.aj-services-page .aj-order-guide { padding: 0 0 40px; }
.aj-services-page .aj-order-guide__table { border-radius: 6px; }
.aj-services-page .aj-order-guide__group-title { padding: 18px 20px; }
.aj-services-page .aj-order-guide__row { grid-template-columns: minmax(220px, 30%) minmax(0, 1fr); }
.aj-services-page .aj-order-guide__label,
.aj-services-page .aj-order-guide__value { min-width: 0; font-size: 16px; line-height: 1.65; }

@media (max-width: 991px) {
  .aj-services-page .aj-service-card__media { order: 1; min-height: 300px; }
  .aj-services-page .aj-service-card__placeholder { min-height: 300px; }
  .aj-services-page .aj-service-card__content { order: 2; padding: 30px; }
}

@media (max-width: 767px) {
  .aj-services-page .aj-services-container { padding: 0 15px; }
  .aj-services-page .aj-services-title { font-size: 26px; }
  .aj-services-page .aj-service-card__media,
  .aj-services-page .aj-service-card__placeholder { min-height: 230px; }
}



/* AJ Service Page - isolated ajsp module. */
.ajsp-page,
.ajsp-page * { box-sizing: border-box; }
.ajsp-page { width: 100%; margin: 0; padding: 0; color: #0f172a; font-family: "Poppins", sans-serif; }
.ajsp-page .ajsp-container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.ajsp-page .ajsp-intro { padding: 30px 0 26px; }
.ajsp-page .ajsp-main-title { display: block; width: 100%; margin: 0 0 12px; padding: 0; border: 0; background: transparent; box-shadow: none; color: #0f172a; font-size: 32px; font-weight: 600; line-height: 1.25; }
.ajsp-page .ajsp-lead { width: 100%; max-width: none; margin: 0; color: #5b6571; font-size: 15px; line-height: 1.75; }
.ajsp-page .ajsp-benefits { padding-bottom: 40px; }
.ajsp-page .ajsp-benefits-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ajsp-page .ajsp-benefit { min-width: 0; padding: 22px; border: 1px solid #e5e7eb; border-radius: 4px; background: #fff; }
.ajsp-page .ajsp-benefit-title { margin: 0 0 9px; color: #0f172a; font-size: 17px; font-weight: 600; line-height: 1.4; }
.ajsp-page .ajsp-benefit-text { margin: 0; color: #5b6571; font-size: 14px; line-height: 1.65; }
.ajsp-page .ajsp-list { width: 100%; padding: 10px 0 0; }
.ajsp-page .ajsp-service-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); width: 100%; margin: 0 0 30px; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 4px; background: #fff; }
.ajsp-page .ajsp-service-card:last-child { margin-bottom: 0; }
.ajsp-page .ajsp-service-media { display: flex; min-width: 0; min-height: 340px; }
.ajsp-page .ajsp-service-placeholder { display: flex; flex: 1 1 auto; flex-direction: column; align-items: center; justify-content: center; min-height: 340px; padding: 30px; background: #f7f9fc; color: #64748b; text-align: center; }
.ajsp-page .ajsp-service-placeholder-title { margin: 0 0 7px; color: #0f172a; font-size: 16px; font-weight: 600; }
.ajsp-page .ajsp-service-placeholder-text { font-size: 13px; line-height: 1.5; }
.ajsp-page .ajsp-service-content { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 38px 40px; }

/* AJSP: naprzemienny uk?ad us?ug, zaczynaj?cy si? od tekstu po lewej. */
@media (min-width: 768px) {
  .ajsp-page .ajsp-service-card:nth-child(odd) .ajsp-service-content {
    order: 1;
  }

  .ajsp-page .ajsp-service-card:nth-child(odd) .ajsp-service-media {
    order: 2;
  }

  .ajsp-page .ajsp-service-card:nth-child(even) .ajsp-service-media {
    order: 1;
  }

  .ajsp-page .ajsp-service-card:nth-child(even) .ajsp-service-content {
    order: 2;
  }
}

.ajsp-page .ajsp-service-title { margin: 0 0 14px; color: #0f172a; font-size: 22px; font-weight: 600; line-height: 1.35; }
.ajsp-page .ajsp-service-text { margin: 0 0 18px; color: #5b6571; font-size: 14px; line-height: 1.75; }
.ajsp-page .ajsp-service-list { margin: 0; padding: 0; list-style: none; }
.ajsp-page .ajsp-service-list li { margin: 0 0 9px; padding-left: 19px; color: #334155; font-size: 14px; line-height: 1.55; }
.ajsp-page .ajsp-service-list li::before { content: "•"; display: inline-block; width: 19px; margin-left: -19px; color: #f8014e; font-weight: 700; }
.ajsp-page .ajsp-more { padding: 50px 0 0; background: #f7f9fc; }
.ajsp-page .ajsp-section-title { margin: 0 0 24px; color: #0f172a; font-size: 24px; font-weight: 600; line-height: 1.35; }
.ajsp-page .ajsp-more-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 0; }
.ajsp-page .ajsp-more-grid-wide { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; }
.ajsp-page .ajsp-more-card { min-width: 0; padding: 24px; border: 1px solid #e5e7eb; border-radius: 4px; background: #fff; }
.ajsp-page .ajsp-more-title { margin: 0 0 10px; color: #0f172a; font-size: 17px; font-weight: 600; line-height: 1.4; }
.ajsp-page .ajsp-more-text { margin: 0; color: #5b6571; font-size: 14px; line-height: 1.7; }
.ajsp-page .ajsp-guide { padding: 50px 0; }
.ajsp-page .ajsp-guide-table { overflow: hidden; border: 1px solid #e5e7eb; border-radius: 4px; }
.ajsp-page .ajsp-guide-group + .ajsp-guide-group { border-top: 1px solid #e5e7eb; }
.ajsp-page .ajsp-guide-group-title { margin: 0; padding: 17px 22px; background: #f7f9fc; color: #0f172a; font-size: 16px; font-weight: 600; }
.ajsp-page .ajsp-guide-row { display: grid; grid-template-columns: 230px minmax(0, 1fr); border-top: 1px solid #e5e7eb; }
.ajsp-page .ajsp-guide-label { padding: 17px 22px; border-right: 1px solid #e5e7eb; background: #fbfcfe; color: #0f172a; font-size: 14px; font-weight: 500; }
.ajsp-page .ajsp-guide-value { min-width: 0; padding: 17px 22px; color: #5b6571; font-size: 14px; line-height: 1.7; }
@media (max-width: 767px) {
  .ajsp-page .ajsp-container { padding: 0 15px; }
  .ajsp-page .ajsp-benefits-grid,
  .ajsp-page .ajsp-more-grid,
  .ajsp-page .ajsp-more-grid-wide { grid-template-columns: 1fr; }
  .ajsp-page .ajsp-service-card { display: flex; flex-direction: column; }
  .ajsp-page .ajsp-service-media { min-height: 240px; }
  .ajsp-page .ajsp-service-placeholder { min-height: 240px; }
  .ajsp-page .ajsp-service-content { order: 2; padding: 26px 22px; }
  .ajsp-page .ajsp-service-media { order: 1; }
  .ajsp-page .ajsp-guide-row { grid-template-columns: 1fr; }
  .ajsp-page .ajsp-guide-label { border-right: 0; border-bottom: 1px solid #e5e7eb; }
}

.ajsp-page .ajsp-benefit {
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease;
}

.ajsp-page .ajsp-benefit:hover {
  border-color: #F8014E;
  box-shadow: 0 8px 22px rgba(248, 1, 78, 0.10);
}

.ajsp-page .ajsp-service-list {
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.ajsp-page .ajsp-service-list li {
  position: relative;
  margin: 0 0 9px;
  padding: 0 0 0 18px;
  list-style: none !important;
}

.ajsp-page .ajsp-service-list li::marker {
  content: "";
}

.ajsp-page .ajsp-service-list li::before {
  content: "";
  display: block !important;
  position: absolute;
  top: 10px;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #F8014E;
}


.ajsp-page .ajsp-guide {
  display: block;
  width: 100%;
}

.ajsp-page .ajsp-guide .ajsp-container {
  width: 100%;
}

.ajsp-page .ajsp-guide-table {
  display: block;
  width: 100%;
  max-width: none;
}

.ajsp-page .ajsp-guide-group,
.ajsp-page .ajsp-guide-row {
  width: 100%;
}

.ajsp-page .ajsp-benefit {
  cursor: pointer;
}

@media (max-width: 991px) {
  .ajsp-page .ajsp-main-title {
    font-size: 28px;
  }
}

@media (max-width: 767px) {
  .ajsp-page .ajsp-main-title {
    font-size: 24px;
  }
}

/* AJSP section anchors account for the sticky header. */
.ajsp-page .ajsp-service-card[id] {
  scroll-margin-top: 120px;
}
/* AJSP: editor-injected classes stay local to the CMS module. */
body.cms-id-22 .ajsp-page .ajsp-benefits-grid.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-more-grid.xte-div.block-wrapper {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
}

body.cms-id-22 .ajsp-page .ajsp-guide-table.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-guide-group.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-guide-row.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-guide-label.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-guide-value.xte-div.block-wrapper {
  max-width: none !important;
}

body.cms-id-22 .ajsp-page .ajsp-service-media.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-service-content.xte-div.block-wrapper,
body.cms-id-22 .ajsp-page .ajsp-service-placeholder.xte-div.block-wrapper {
  max-width: none !important;
}

body.cms-id-22 .ajsp-page.xte-div.block-wrapper {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.cms-id-22 .ajsp-page .ajsp-container.xte-div.block-wrapper {
  display: block !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 20px !important;
  padding-left: 20px !important;
  box-sizing: border-box !important;
}

body.cms-id-22 .ajsp-page .xte-div.block-wrapper:not(.ajsp-container) {
  max-width: none !important;
}

@media (max-width: 767px) {
  body.cms-id-22 .ajsp-page .ajsp-container.xte-div.block-wrapper {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
}

/* Removed CMS 22 width overrides. */
body.cms-id-22 .ajsp-page {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.cms-id-22 .ajsp-page .ajsp-intro,
body.cms-id-22 .ajsp-page .ajsp-benefits,
body.cms-id-22 .ajsp-page .ajsp-list,
body.cms-id-22 .ajsp-page .ajsp-more,
body.cms-id-22 .ajsp-page .ajsp-guide {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
  box-sizing: border-box;
}

body.cms-id-22 .ajsp-page .ajsp-container,
body.cms-id-22 .ajsp-page .ajsp-container.xte-div.block-wrapper {
  display: block;
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
}

/* CMS 22: t?o sekcji zostaje w ramach wsp?lnego kontenera. */
body.cms-id-22 .ajsp-page .ajsp-more {
  padding: 0;
  background: transparent;
}

body.cms-id-22 .ajsp-page .ajsp-more .ajsp-container {
  padding-top: 50px;
  padding-bottom: 0;
  background: transparent;
}

body.cms-id-22 .ajsp-page .ajsp-more .ajsp-section-title,
body.cms-id-22 .ajsp-page .ajsp-guide .ajsp-section-title {
  margin: 0 0 24px !important;
  padding-top: 0 !important;
}

body.cms-id-22 .ajsp-page .ajsp-more-frame {
  width: calc(100% + 40px);
  margin-right: -20px;
  margin-left: -20px;
  padding: 24px;
  border: 1px solid #e5e7eb;
  background: #f7f9fc;
  box-sizing: border-box;
}

body.cms-id-22 .ajsp-page .ajsp-benefits-grid,
body.cms-id-22 .ajsp-page .ajsp-more-grid,
body.cms-id-22 .ajsp-page .ajsp-guide-table,
body.cms-id-22 .ajsp-page .ajsp-service-card {
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
  box-sizing: border-box;
}

body.cms-id-22 .ajsp-page .ajsp-list .ajsp-service-card,
body.cms-id-22 .ajsp-page .ajsp-guide .ajsp-guide-table {
  width: calc(100% + 40px);
  margin-right: -20px;
  margin-left: -20px;
}
/* CMS 22: top introduction and tiles align with service cards. */
body.cms-id-22 .ajsp-page .ajsp-intro .ajsp-main-title,
body.cms-id-22 .ajsp-page .ajsp-intro .ajsp-lead,
body.cms-id-22 .ajsp-page .ajsp-benefits-grid {
  width: calc(100% + 40px);
  margin-right: -20px;
  margin-left: -20px;
}
body.cms-id-22 .ajsp-page .ajsp-benefits-grid.xte-div.block-wrapper {
  width: calc(100% + 40px) !important;
  margin-right: -20px;
  margin-left: -20px;
}
@media (min-width: 768px) {
  body.cms-id-22 .ajsp-page .ajsp-intro .ajsp-main-title,
  body.cms-id-22 .ajsp-page .ajsp-intro .ajsp-lead {
    width: calc(100% + 40px) !important;
    margin-right: -20px !important;
    margin-left: -20px !important;
  }
}

body.cms-id-22 .ajsp-page .ajsp-benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

body.cms-id-22 .ajsp-page .ajsp-more-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

body.cms-id-22 .ajsp-page .ajsp-more-grid-wide {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

body.cms-id-22 .ajsp-page .ajsp-guide-table {
  display: block;
  width: 100%;
}

body.cms-id-22 .ajsp-page .ajsp-guide-group,
body.cms-id-22 .ajsp-page .ajsp-guide-row {
  width: 100%;
  max-width: none;
}

@media (max-width: 767px) {
  body.cms-id-22 .ajsp-page .ajsp-container,
  body.cms-id-22 .ajsp-page .ajsp-container.xte-div.block-wrapper {
    padding-right: 15px;
    padding-left: 15px;
  }

  body.cms-id-22 .ajsp-page .ajsp-more-frame {
    width: calc(100% + 30px);
    margin-right: -15px;
    margin-left: -15px;
    padding: 15px;
  }

  body.cms-id-22 .ajsp-page .ajsp-benefits-grid,
  body.cms-id-22 .ajsp-page .ajsp-more-grid,
  body.cms-id-22 .ajsp-page .ajsp-more-grid-wide {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  body.cms-id-22 .ajsp-page .ajsp-list .ajsp-service-card,
  body.cms-id-22 .ajsp-page .ajsp-guide .ajsp-guide-table {
    width: calc(100% + 30px);
    margin-right: -15px;
    margin-left: -15px;
  }
}
