/* Custom CSS */

.twoheads-header {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
}
.wp-block-latest-posts__list li{
	line-height:1.6;
}

body {
  max-width: 100vw;
  overflow-x: hidden;
}
a:link, a:visited{
	color: #000;
}
a:hover{
	color: #6E3B66;
}

.casestudy-button a.wp-block-post-excerpt__more-link{
	color: #fdfdfd;
    background: #000000;
    border-top-left-radius: 99px;
    border-top-right-radius: 99px;
    border-bottom-right-radius: 99px;
    border-bottom-left-radius: 99px;
	font-size: .9rem;
	padding:10px 20px;
	margin-top:20px;
}

@media (max-width: 767px) {
  html {
    width: 100%;
    overflow-x: hidden;
  }

  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    position: relative;
  }
}

.border-radius img{
	border-radius:20px !important;
}
.no-margin{
	margin:0 !important;
}
.kb-table-of-content-list .active{
	font-weight:700 !important;
}

.kb-form .kadence-blocks-form-field.kb-accept-form-field .kb-checkbox-style~label {
    font-size:.7rem !important;
	line-height:1.4 !important;
}
.kb-form .kadence-blocks-form-field.kb-accept-form-field .kb-checkbox-style {
    margin: 0px 3px !important;
}

.grecaptcha-badge { 
    visibility: hidden !important; 
}

/* Stylizacja komunikatów błędów Kadence */
.kb-form-error-msg.kadence-blocks-form-warning {
    background: transparent !important; /* Usuwa różowe tło */
    border: none !important;            /* Usuwa czerwoną ramkę */
    color: #cc0000 !important;          /* Czysty, czytelny czerwony */
    padding: 5px 0 0 2px !important;    /* Minimalny odstęp od pola powyżej */
    font-size: 12px !important;         /* Mniejszy, dyskretniejszy druk */
    font-weight: 500 !important;
    text-align: left !important;
    box-shadow: none !important;        /* Usuwa ewentualne cienie */
}
/* Opcjonalnie: Dodaje czerwoną kropkę przed komunikatem dla lepszego UX */
.kb-form-error-msg.kadence-blocks-form-warning::before {
    content: "●";
    margin-right: 6px;
    font-size: 10px;
    vertical-align: middle;
}
/* Stylizacja głównego komunikatu pod przyciskiem "Popraw błędy..." */
.kadence-blocks-form-warning {
    border-radius: 4px !important;
    margin-top: 3px !important;
}
/* Stylizacja głównego komunikatu pod przyciskiem */
.kadence-blocks-form-message.kadence-blocks-form-warning {
    background-color: #fff5f5 !important; /* Bardzo delikatne pastelowe tło */
    border: 1px solid #feb2b2 !important; /* Subtelna ramka */
    color: #c53030 !important;          /* Ciemniejszy, czytelny tekst */
    border-radius: 99px !important;      /* Zaokrąglone rogi pasujące do przycisku */
    padding: 12px 20px !important;      /* Odpowiedni oddech wewnątrz */
    font-size: 15px !important;
    font-weight: 600 !important;
    text-align: center !important;      /* Wyśrodkowanie pod przyciskiem */
    margin-top: 20px !important;        /* Odstęp od przycisku */
    box-shadow: 0 2px 4px rgba(0,0,0,0.05) !important; /* Lekki cień dla głębi */
}
/* Opcjonalnie: zmiana ikony lub dodanie wykrzyknika przed tekstem */
.kadence-blocks-form-message.kadence-blocks-form-warning::before {
    content: "⚠️"; 
    margin-right: 10px;
}
/* Stylizacja komunikatu sukcesu (Zgłoszenie powiodło się) */
.kadence-blocks-form-message.kadence-blocks-form-success {
    background-color: #f0fff4 !important; /* Bardzo jasny, świeży zielony */
    border: 1px solid #c6f6d5 !important; /* Subtelna zielona ramka */
    color: #276749 !important;          /* Ciemna, elegancka zieleń tekstu */
    border-radius: 99px !important;      /* Zaokrąglone rogi spójne z resztą */
    padding: 15px 25px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-align: center !important;
    margin-top: 20px !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.03) !important;
}
/* Opcjonalnie: Dodanie ikonki sukcesu */
.kadence-blocks-form-message.kadence-blocks-form-success::before {
    content: "✓"; 
    margin-right: 10px;
    font-weight: bold;
}
#backToTop {
  display: none; /* Ukryty domyślnie */
  position: fixed; /* Zawsze w tym samym miejscu */
  bottom: 15px; /* Odległość od dołu */
  right: 15px; /* Odległość od prawej */
  z-index: 99; /* Musi być nad innymi elementami */
  border: none;
  outline: none;
  background-color: #000; /* Kolor tła - dopasuj do brandingu 2heads */
  color: white;
  cursor: pointer;
  padding: 15px 20px;
  border-radius: 50%; /* Okrągły kształt */
  font-size: 18px;
  transition: opacity 0.3s, background-color 0.3s;
  box-shadow: 0px 4px 10px rgba(0,0,0,0.3);
}
#backToTop:hover {
  background-color: #6E3B66; /* Kolor po najechaniu myszką */
}
/* Ustawienie czcionki dla całego formularza i jego elementów */
.kb-form, 
.kb-form input, 
.kb-form textarea, 
.kb-form label, 
.kb-form button {
    font-family: 'Montserrat', sans-serif !important;
}
/* Ujednolicenie stylu placeholderów (tekstów wewnątrz pól) */
.kb-form input::placeholder,
.kb-form textarea::placeholder {
    font-family: 'Montserrat', sans-serif !important;
    color: #757575 !important; /* Kolor szary ze zrzutu ekranu */
    opacity: 1; /* Dla Firefoxa */
}
/* Opcjonalne: dopasowanie tła pól do zdjęcia (jasny róż/fiolet) */
.kb-form input.kb-field, 
.kb-form textarea.kb-field {
    background-color: #f5f0f5 !important; /* Delikatne tło widoczne na screenie */
    border: none !important;
    border-radius: 4px !important;
    padding: 15px !important;
}
.taxonomy-post_tag a, .taxonomy-category a{
	color: #000;
    background: transparent;
    border-top-left-radius: 99px;
    border-top-right-radius: 99px;
    border-bottom-right-radius: 99px;
    border-bottom-left-radius: 99px;
	font-size: .9rem;
	padding:5px 10px;
	border: 1px solid #000;
}
/* Ukrywa separator (przecinek) między tagami */
.wp-block-post-terms .wp-block-post-terms__separator {
    display: none;
}
/* Opcjonalnie: dodaj odstęp między tagami, skoro nie ma już przecinka */
.wp-block-post-terms a {
    margin-right: 10px;
	margin-top:10px;
    display: inline-block;
}

/* Wymuszenie renderowania stopki w Safari */
.site-footer, footer {
    display: block !important;
    min-height: 100px !important;
    opacity: 1 !important;
    -webkit-appearance: none;
}