/* JAPI Custom CSS Edit */
/* CarSow - komunikat pustej kategorii Joomla */
.view-category .alert.alert-info,
.com-content-category-blog .alert.alert-info,
.com-content-category-list .alert.alert-info {
    display: flex;
    align-items: center;
    gap: 14px;

    margin: 35px 0;
    padding: 18px 22px;

    color: #f5f5f5 !important;
    background: linear-gradient(135deg, #151515 0%, #090909 100%) !important;

    border: 1px solid rgba(220, 30, 35, 0.55) !important;
    border-left: 4px solid #dc1e23 !important;
    border-radius: 8px;

    box-shadow:
        0 15px 35px rgba(0, 0, 0, 0.35),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);

    font-size: 16px;
    line-height: 1.5;
}

/* Ikona informacji */
.view-category .alert.alert-info [class*="icon-"],
.view-category .alert.alert-info svg,
.com-content-category-blog .alert.alert-info [class*="icon-"],
.com-content-category-list .alert.alert-info [class*="icon-"] {
    flex: 0 0 auto;
    color: #dc1e23 !important;
    fill: #dc1e23 !important;
    font-size: 22px;
}

/* Usunięcie domyślnego niebieskiego wyglądu Bootstrap/Joomla */
.view-category .alert-info,
.com-content-category-blog .alert-info,
.com-content-category-list .alert-info {
    --bs-alert-color: #f5f5f5;
    --bs-alert-bg: #101010;
    --bs-alert-border-color: rgba(220, 30, 35, 0.55);
}

/* Telefon */
@media (max-width: 767px) {
    .view-category .alert.alert-info,
    .com-content-category-blog .alert.alert-info,
    .com-content-category-list .alert.alert-info {
        align-items: flex-start;
        margin: 25px 0;
        padding: 16px 18px;
        font-size: 14px;
        border-radius: 6px;
    }
}





/* =========================================================
   CARSOW — SP Easy Image Gallery
   Styl galerii bez wymuszania liczby kolumn
   Kolumny zostają z ustawień modułu / komponentu
   Poprawione kadrowanie: nie ucina góry zdjęć
   Nie rusza lightboxa / popupu
   ========================================================= */


/* Kontener galerii */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  overflow: visible !important;
}


/* Wiersz galerii
   Bez grid-template-columns, bez sztywnej liczby kolumn */
.carsow-realizacje-gallery-slot .speasyimagegallery-row {
  width: 100% !important;
  max-width: 100% !important;

  display: flex !important;
  flex-wrap: wrap !important;

  margin-left: -11px !important;
  margin-right: -11px !important;
  padding: 0 !important;

  float: none !important;
  clear: both !important;
}


/* Wyłączenie clearfixów, które mogą mieszać w układzie */
.carsow-realizacje-gallery-slot .speasyimagegallery-row::before,
.carsow-realizacje-gallery-slot .speasyimagegallery-row::after {
  display: none !important;
  content: none !important;
}


/* Kolumny komponentu
   NIE ustawiamy width ani max-width.
   Liczba kolumn zostaje z ustawień SP Easy Image Gallery. */
.carsow-realizacje-gallery-slot .speasyimagegallery-row > div {
  min-width: 0 !important;

  float: none !important;
  clear: none !important;

  box-sizing: border-box !important;

  padding-left: 11px !important;
  padding-right: 11px !important;
  margin-bottom: 22px !important;
}


/* Kafel galerii */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item {
  display: block !important;
  width: 100% !important;
  height: auto !important;

  margin: 0 !important;
  padding: 4px !important;

  background: #0B0E0D !important;
  border-radius: 18px !important;
  overflow: hidden !important;

  text-decoration: none !important;

  box-shadow: 0 16px 38px rgba(0, 0, 0, .22) !important;
  transition: transform .28s ease, box-shadow .28s ease !important;
}


/* Wewnętrzny wrapper zdjęcia */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item > div {
  display: block !important;
  position: relative !important;

  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;
  border-radius: 14px !important;
  background: #111 !important;
}


/* Zdjęcie wypełnia kafel, ale trzyma kadr od góry */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item img {
  position: absolute !important;
  inset: 0 !important;

  display: block !important;

  width: 100% !important;
  height: 100% !important;
  max-width: none !important;

  object-fit: cover !important;
  object-position: center top !important;

  transform-origin: center top !important;

  border-radius: 14px !important;
  transition: transform .35s ease, filter .35s ease !important;
}


/* Ukrycie tytułów / podpisów / numerków na kaflach */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item-content,
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item-title {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;

  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;
}


/* Delikatny hover kafla */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item:hover {
  transform: translateY(-2px) scale(1.005) !important;
  box-shadow: 0 22px 52px rgba(0, 0, 0, .30) !important;
}


/* Hover zdjęcia
   Mały zoom i transform-origin top, żeby nie ucinało góry */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item:hover img {
  transform: scale(1.01) !important;
  filter: brightness(.92) contrast(1.04) !important;
}


/* Delikatny ciemny nalot na hover — tylko kafel, nie lightbox */
.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item > div::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;

  background: rgba(0, 0, 0, .16) !important;
  opacity: 0 !important;

  transition: opacity .28s ease !important;

  pointer-events: none !important;
  z-index: 2 !important;
}

.carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item:hover > div::after {
  opacity: 1 !important;
}


/* Tablet — tylko odstępy, bez zmiany liczby kolumn */
@media (max-width: 991px) {
  .carsow-realizacje-gallery-slot .speasyimagegallery-row {
    margin-left: -9px !important;
    margin-right: -9px !important;
  }

  .carsow-realizacje-gallery-slot .speasyimagegallery-row > div {
    padding-left: 9px !important;
    padding-right: 9px !important;
    margin-bottom: 18px !important;
  }
}


/* Telefon — tylko odstępy i zaokrąglenia, bez zmiany liczby kolumn */
@media (max-width: 767px) {
  .carsow-realizacje-gallery-slot .speasyimagegallery-row {
    margin-left: -6px !important;
    margin-right: -6px !important;
  }

  .carsow-realizacje-gallery-slot .speasyimagegallery-row > div {
    padding-left: 6px !important;
    padding-right: 6px !important;
    margin-bottom: 12px !important;
  }

  .carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item {
    padding: 3px !important;
    border-radius: 14px !important;
  }

  .carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item > div,
  .carsow-realizacje-gallery-slot .speasyimagegallery-gallery-item img {
    border-radius: 11px !important;
  }
}







/* =========================================================
   CARSOW
   NAWIGACJA POPRZEDNI / NASTĘPNY ARTYKUŁ
   ========================================================= */

.pagenavigation .pagination,
.pager.pagenav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:38px 0!important;
  padding:0!important;
}

.pagenavigation .page-item,
.pager.pagenav li{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  border:0!important;
  background:none!important;
}

/* Główne przyciski */
.pagenavigation .page-link,
.pagenavigation a,
.pager.pagenav a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;

  min-height:52px!important;
  padding:15px 26px!important;

  border:1px solid rgba(255,40,48,.45)!important;
  border-radius:14px!important;

  background:
    linear-gradient(
      135deg,
      #ff252d 0%,
      #e3121c 100%
    )!important;

  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;

  font-family:inherit!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.015em!important;

  text-decoration:none!important;
  text-shadow:none!important;

  box-shadow:
    0 12px 30px rgba(237,20,30,.18)!important;

  transition:
    transform .2s ease,
    background .2s ease,
    border-color .2s ease,
    box-shadow .2s ease!important;
}

/* Hover / focus */
.pagenavigation .page-link:hover,
.pagenavigation .page-link:focus,
.pagenavigation a:hover,
.pagenavigation a:focus,
.pager.pagenav a:hover,
.pager.pagenav a:focus{
  background:
    linear-gradient(
      135deg,
      #ff343b 0%,
      #ef1822 100%
    )!important;

  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;

  border-color:rgba(255,62,69,.70)!important;

  transform:translateY(-2px);

  box-shadow:
    0 16px 36px rgba(237,20,30,.28)!important;
}

/* Strzałki / ikony Joomla */
.pagenavigation .page-link span,
.pagenavigation a span,
.pager.pagenav a span{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* Telefon */
@media(max-width:560px){

  .pagenavigation .pagination,
  .pager.pagenav{
    gap:10px;
  }

  .pagenavigation .page-link,
  .pagenavigation a,
  .pager.pagenav a{
    min-height:48px!important;
    padding:13px 19px!important;
    border-radius:12px!important;
    font-size:13px!important;
  }
}