/* Blok promo */
.promo { margin-top:35px !important; margin-bottom:25px !important;}
.promo .strona {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  border: 2px solid #258837;
  border-radius: 12px;
  padding: 1.5rem;
  max-width: 700px;
  padding-top: 25px !important;
}
.promo .grafikapromocji {
  /* no specific styling */
}
.promo .opispromocji {
  flex: 1;
  text-align: left;
}
.promo .opispromocji h2, .promo .opispromocji h3, .promo .opispromocji h4 {
  margin: 0 0 .5rem;
  padding-top:0px !important;
  font-size: 1.5rem;
  text-align: left;
}
.is-inactive {
  opacity: 0.5;
  filter: grayscale(50%);
  transition: opacity 0.2s ease;
}

.promo .opispromocji p {
  margin: 0 0 1rem;
}
.promomore, #open-promo-modal, .wp a.promomore {
  background: #258837;
  color: #fff;
  padding-top:8px;
  padding-bottom:8px;
  border: none;
  border-radius: 6px;
  transition: all 0.5s ease;
  font-weight: 600;
  letter-spacing:1px;
  text-decoration: none;
  display:block;
  width:100%;
  max-width:120px;
  text-align: center;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
}
.promo img {
	width: 160px !important;
  max-width: 100% !important;
  border-radius: 500px;
}
.promo img[src$=".svg"] { border-radius:0px;}
.promomore:hover, #open-promo-modal:hover, .promomore:focus, #open-promo-modal:focus, .wp a.promomore:focus, .wp a.promomore:hover {
  background: #121212; color:#fff;
}

/* Blokada scrolla dla otwartego modala */
html.promo-modal-open {
    overflow-y: hidden !important; /* Blokuje przewijanie na iOS i desktop */
    padding-right: var(--scrollbar-width, 0); 
}

/* Modal - WYMUSZONE CENTROWANIE DZIĘKI !IMPORTANT */
.promo-modal {
  position: fixed !important; /* Wymuszenie */
  top: 0 !important; 
  left: 0 !important;
  right: 0 !important; 
  bottom: 0 !important;
  width: 100vw !important; 
  height: 100vh !important;
  display: none;
  /* Centrowanie modala */
  justify-content: center !important;
  align-items: center !important;
  z-index: 100000 !important;
  /* Dodatkowy fallback centrowania dla starszych przeglądarek */
  margin: 0 auto;
}
.promo-modal:not([hidden]) {
  display: flex !important;
}
.modal-overlay { 
  position: fixed;
  top: 0; left: 0;
  width: 100vw; height: 100vh;
  background: rgba(0,0,0,0.7);
  z-index: 99999 !important;
}
.promo-modal .modal-content {
  max-width: 800px;
  width: 90%;
  max-height: 90vh;
  overflow-y: auto;
  padding: 25px;
  padding-top:15px !important;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 0 15px rgba(0,0,0,0.5);
  z-index: 100000 !important;
  position: relative; 
  /* Dodatkowy fallback centrowania */
  margin: auto 0;
}

.close-modal { margin:0px; padding:0px; border:0px; background:#fff; color:#121212;}
.close-modal { position: absolute; cursor: pointer; right: 10px; top: 10px; z-index: 10;  width: 30px;  height: 30px; line-height: 30px; text-align: center;	transition: all 0.5s ease; padding:0px; border:0px; background:0px;}
.close-modal:after {  content: '\f00d';  font-family: 'Font Awesome 6 Solid'; font-size: 20px;	color:#121212; width: 30px;  height: 30px; text-align: center; line-height: 30px;display:block;}
.close-modal:hover:after,
.close-modal:focus:after {
  color: #258837;
}
.modal-content h3 { padding-top: 0px; padding-right:30px;}
.promo-modal .modal-title { text-align: left !important; padding-top:0px !important; font-size:150% !important; margin-bottom:10px !important; display:block; padding-right:25px !important; font-weight: 600;}
.contrast .promo-modal .close-modal:after, .contrast .close-modal:after { color:#ff0 !important;}

.sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}
.wp-block .promo .strona { margin: auto;}
@media (max-width: 768px) {
.promo .strona { display:block; text-align: center !important;}
.promo .opispromocji h3, .promo .opispromocji { text-align: center !important;}
.promomore {  margin: auto;}
.opispromocji, .opispocromocji h2, .opispromocji p { text-align: center !important;}
}