/* =========================================================
   PS9 (classic) – CMS: #pufy-reklamowe
   ========================================================= */

/* scope: CMS page (różne wersje body/klas w PS) */
#cms #pufy-reklamowe,
.page-cms #pufy-reklamowe,
body#cms #pufy-reklamowe {
  --faq-accent: #d10000;
}

/* tekst */
#cms #pufy-reklamowe p,
.page-cms #pufy-reklamowe p,
body#cms #pufy-reklamowe p {
  text-align: justify;
}

/* typografia elementów */
#cms #pufy-reklamowe dt,
#cms #pufy-reklamowe dd,
#cms #pufy-reklamowe p,
#cms #pufy-reklamowe li,
.page-cms #pufy-reklamowe dt,
.page-cms #pufy-reklamowe dd,
.page-cms #pufy-reklamowe p,
.page-cms #pufy-reklamowe li,
body#cms #pufy-reklamowe dt,
body#cms #pufy-reklamowe dd,
body#cms #pufy-reklamowe p,
body#cms #pufy-reklamowe li {
  font-size: 16px;
}

#cms #pufy-reklamowe .center,
.page-cms #pufy-reklamowe .center,
body#cms #pufy-reklamowe .center {
  text-align: center;
}

#cms #pufy-reklamowe h1,
#cms #pufy-reklamowe h2,
#cms #pufy-reklamowe h3,
.page-cms #pufy-reklamowe h1,
.page-cms #pufy-reklamowe h2,
.page-cms #pufy-reklamowe h3,
body#cms #pufy-reklamowe h1,
body#cms #pufy-reklamowe h2,
body#cms #pufy-reklamowe h3 {
  text-align: center;
  padding: 20px 0;
  border-bottom: 1px solid #b8b8b8;
}

/* galerie/listy bez kropek */
#cms .pufy-small-gallery-2 li,
#cms ul.pufy-small-gallery li,
.page-cms .pufy-small-gallery-2 li,
.page-cms ul.pufy-small-gallery li,
body#cms .pufy-small-gallery-2 li,
body#cms ul.pufy-small-gallery li {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

/* obrazy (zamiast #center_column) */
.page-cms .page-content img,
#cms .page-content img,
body#cms .page-content img {
  border: 0;
  max-width: 100%;
  height: auto;
}

/* =========================================================
   Układ (zamiast floatów)
   ========================================================= */

#cms #pufy-reklamowe .section,
.page-cms #pufy-reklamowe .section,
body#cms #pufy-reklamowe .section {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

#cms #pufy-reklamowe .left,
#cms #pufy-reklamowe .right,
.page-cms #pufy-reklamowe .left,
.page-cms #pufy-reklamowe .right,
body#cms #pufy-reklamowe .left,
body#cms #pufy-reklamowe .right {
  width: 100%;
}

/* Twoje .item / .item-6 */
#cms #pufy-reklamowe .item,
.page-cms #pufy-reklamowe .item,
body#cms #pufy-reklamowe .item {
  padding: 0;
}

#cms #pufy-reklamowe .item-6,
.page-cms #pufy-reklamowe .item-6,
body#cms #pufy-reklamowe .item-6 {
  width: 100%;
}

/* desktop */
@media (min-width: 992px) {
  #cms #pufy-reklamowe .section,
  .page-cms #pufy-reklamowe .section,
  body#cms #pufy-reklamowe .section {
    flex-direction: row;
    align-items: center;
  }

  #cms #pufy-reklamowe .left,
  .page-cms #pufy-reklamowe .left,
  body#cms #pufy-reklamowe .left {
    flex: 0 0 50%;
    padding-right: 10%;
  }

  #cms #pufy-reklamowe .right,
  .page-cms #pufy-reklamowe .right,
  body#cms #pufy-reklamowe .right {
    flex: 0 0 50%;
  }

  #cms #pufy-reklamowe .item,
  .page-cms #pufy-reklamowe .item,
  body#cms #pufy-reklamowe .item {
    padding: 5%;
  }

  #cms #pufy-reklamowe .item-6,
  .page-cms #pufy-reklamowe .item-6,
  body#cms #pufy-reklamowe .item-6 {
    width: 50%;
  }
}

@media (min-width: 1100px) {
  #cms #pufy-reklamowe p,
  .page-cms #pufy-reklamowe p,
  body#cms #pufy-reklamowe p {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
  }

  #cms #pufy-reklamowe .section2,
  .page-cms #pufy-reklamowe .section2,
  body#cms #pufy-reklamowe .section2 {
    width: 60%;
    margin: 0 auto;
  }
}

/* =========================================================
   FAQ / dt-dd (bez FontAwesome)
   ========================================================= */

#cms #pufy-reklamowe dt,
.page-cms #pufy-reklamowe dt,
body#cms #pufy-reklamowe dt {
  cursor: pointer;
  font-weight: 700;
  border-bottom: 1px solid #ccc;
  padding: 10px 0;
  margin: 0;
  color: #484848;
  font-size: 18px;
  position: relative;
  padding-right: 34px; /* miejsce na strzałkę */
}

/* domyślnie chowamy odpowiedzi */
#cms #pufy-reklamowe dd,
.page-cms #pufy-reklamowe dd,
body#cms #pufy-reklamowe dd {
  display: none;
  margin-left: 20px;
  padding: 15px 0;
}

/* po aktywacji pokazujemy */
#cms #pufy-reklamowe dt.active + dd,
.page-cms #pufy-reklamowe dt.active + dd,
body#cms #pufy-reklamowe dt.active + dd {
  display: block;
}

#cms #pufy-reklamowe dt.active,
.page-cms #pufy-reklamowe dt.active,
body#cms #pufy-reklamowe dt.active {
  color: var(--faq-accent);
}

/* strzałka CSS (bez fontów) */
#cms #pufy-reklamowe dt::after,
.page-cms #pufy-reklamowe dt::after,
body#cms #pufy-reklamowe dt::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-60%) rotate(45deg);
  transition: transform 0.2s ease;
}

#cms #pufy-reklamowe dt.active::after,
.page-cms #pufy-reklamowe dt.active::after,
body#cms #pufy-reklamowe dt.active::after {
  transform: translateY(-40%) rotate(-135deg);
}

/* clear (jeśli gdzieś jeszcze masz stare markup) */
#cms #pufy-reklamowe .clear,
.page-cms #pufy-reklamowe .clear,
body#cms #pufy-reklamowe .clear {
  clear: both;
}

#cms #pufy-reklamowe .pufy-small-gallery,
.page-cms #pufy-reklamowe .pufy-small-gallery,
body#cms #pufy-reklamowe .pufy-small-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2%;
  padding: 0;
  margin: 0;
}

#cms #pufy-reklamowe .pufy-small-gallery li,
.page-cms #pufy-reklamowe .pufy-small-gallery li,
body#cms #pufy-reklamowe .pufy-small-gallery li {
  list-style: none;
}

@media (max-width: 767px) {
  #cms #pufy-reklamowe .pufy-small-gallery,
  .page-cms #pufy-reklamowe .pufy-small-gallery,
  body#cms #pufy-reklamowe .pufy-small-gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* =========================================
   GALERIA 2
========================================= */

#cms #pufy-reklamowe .pufy-small-gallery-2,
.page-cms #pufy-reklamowe .pufy-small-gallery-2,
body#cms #pufy-reklamowe .pufy-small-gallery-2 {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 25% */
  gap: 20px;
  padding: 0;
  margin: 0;
}

#cms #pufy-reklamowe .pufy-small-gallery-2 li,
.page-cms #pufy-reklamowe .pufy-small-gallery-2 li,
body#cms #pufy-reklamowe .pufy-small-gallery-2 li {
  list-style: none;
}

/* >= 1920px → 5 kolumn (20%) */
@media (min-width: 1920px) {
  #cms #pufy-reklamowe .pufy-small-gallery-2,
  .page-cms #pufy-reklamowe .pufy-small-gallery-2,
  body#cms #pufy-reklamowe .pufy-small-gallery-2 {
    grid-template-columns: repeat(5, 1fr);
  }
}

/* mobile */
@media (max-width: 767px) {
  #cms #pufy-reklamowe .pufy-small-gallery-2,
  .page-cms #pufy-reklamowe .pufy-small-gallery-2,
  body#cms #pufy-reklamowe .pufy-small-gallery-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}


