.close-button {
  position: absolute;
  top: 25px;
  right: 25px; /* Możesz dostosować pozycję zgodnie z potrzebami */
  font-size: 34px;
  cursor: pointer;
  color: #000b37;
}

.contact-form {
  position: fixed;
  right: -30%;
  top: 0;
  width: 30%;
  height: 100%;
  /*background-color: #2ec1f6;*/
  background-color: rgba(0, 90, 255, 0.25);
  box-shadow: -2px 0 10px rgba(0, 0, 0, 0.5);
  transition: right 0.3s;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 1001; /* Wyższy z-index, aby być nad stopką i treścią */
}

.contact-form.open {
  right: 0;
}

.contact-form h3 {
  text-align: center;
  color: #000b37;
  margin-bottom: 20px;
}

.contact-form form {
  display: flex;
  flex-direction: column;
}

.contact-form label {
  margin-bottom: 5px;
  color: #000b37;
  font-weight: bold;
}

.contact-form input,
.contact-form textarea,
.contact-form button {
  margin-bottom: 15px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 16px;
}

.contact-form input:focus,
.contact-form textarea:focus,
.contact-form button:focus {
  border-color: #000b37;
  outline: none;
}

.contact-form textarea {
  resize: vertical;
  min-height: 100px;
  width: 100%;
}

.contact-form button {
  background-color: #000b37;
  color: white;
  cursor: pointer;
  border: none;
}

.contact-form button:hover {
  background-color: #575757;
}

#charCount {
  font-size: 14px;
  color: #000b37;
  margin-top: 1px;
}

div {
  width: 100%; /* Ustawienie szerokości dla div */
}

/* Styling for the response message */
.form-response {
  margin-top: 20px; /* Add spacing between the message and the button */
  text-align: center; /* Center the text */
}

/* Success message */
.success-message {
  color: green;
  font-weight: bold;
  font-size: 18px;
}

/* Error message */
.error-message {
  color: red;
  font-weight: bold;
  font-size: 18px;
}

/* Animacja przesuwania na prawo */
.slide-out {
  transform: translateX(100%); /* Przesunięcie poza ekran */
  transition: transform 0.5s ease-in-out; /* Płynne przesuwanie */
}

/* Ukrywanie elementu */
.hidden {
  display: none !important; /* Całkowite ukrycie elementu */
}

@media (max-width: 768px) {
  /* Stylizacja formularza kontaktowego na mobile */
  .contact-form {
    display: flex;
    flex-direction: column; /* Elementy ułożone jeden pod drugim */
    justify-content: flex-start; /* Wyrównanie zawartości od góry */
    align-items: stretch; /* Elementy na pełną szerokość */
    position: fixed; /* Przypięcie formularza do widoku */
    /*padding-top: 20%;  Przesunięcie formularza lekko poniżej góry (dostosuj wartość) */
    left: 0;
    width: 100%; /* Pełna szerokość na urządzeniach mobilnych */
    height: 100%; /* Dynamiczna wysokość formularza dopasowana do zawartości */
    background-color: #2ec1f6; /* Kolor tła */
    padding: 20px; /* Odstępy wewnętrzne */
    z-index: 1001; /* Formularz nad pozostałą treścią */
    transform: translateX(100%); /* Ukrycie poza ekranem po prawej stronie */
    transition: transform 0.3s ease-in-out; /* Animacja wejścia i wyjścia */
    overflow-y: auto; /* Dodanie przewijania w przypadku dużej treści */
  }

  /* Formularz otwarty na mobile */
  .contact-form.open {
    transform: translateX(0); /* Formularz wchodzi na ekran */
  }

  /* Zawartość formularza (inputy, textarea, przyciski) */
  .contact-form form {
    margin-top: 0; /* Resetowanie marginesu formularza */
  }

  /* Nagłówek formularza */
  .contact-form h3 {
    font-size: 20px; /* Rozmiar tekstu dla mobile */
    margin-top: 65px; /* Odstęp pod nagłówkiem */
    margin-bottom: 15px; /* Odstęp pod nagłówkiem */
    text-align: center;
    color: #000b37;
  }

  /* Pola tekstowe */
  .contact-form input,
  .contact-form textarea {
    width: 100%; /* Pełna szerokość */
    margin-bottom: 15px; /* Odstępy między polami */
    font-size: 16px; /* Komfortowy rozmiar tekstu */
    padding: 10px; /* Wygodne odstępy wewnętrzne */
    box-sizing: border-box; /* Uwzględnienie paddingu w szerokości */
  }

  .contact-form textarea {
    min-height: 120px; /* Większy obszar na wiadomości */
  }

  /* Przyciski */
  .contact-form button {
    width: 100%; /* Przycisk na pełną szerokość */
    padding: 15px; /* Komfortowy padding */
    font-size: 16px; /* Wielkość tekstu w przycisku */
    margin-top: 10px; /* Mały odstęp nad przyciskiem */
  }

  /* Licznik znaków */
  #charCount {
    font-size: 14px;
    color: #000b37; /* Kolor licznika */
    text-align: right; /* Wyrównanie licznika do prawej */
    margin-top: -5px; /* Opcjonalne dopasowanie */
  }
}
