#titulo { 
  width: 902px;
  height: 43px;
  margin-left: 22px;
  margin-bottom: 10px; 
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-size: 36px;
  line-height: 120%; 
  text-transform: uppercase; 
  color: #000000; 
}

body{
  display: flex;
    flex-direction: column;
    justify-content: space-between;
}

p1 {
  margin-left: 23px;
}

#contactoCont {
  display: flex;
  flex-direction: row;
  height: 1150px;
  width: -webkit-fill-available;
  position: relative;
  margin-top: 30px;
  margin-left: auto;
  right: 0;
  justify-content: center;
}

#partDer {
  display: flex;
  margin-top: 100px;
  margin-left: 15px;
  flex-direction: column !important;
}


form {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 50%;
  margin: 60px auto;
  padding: 30px 20px;
  border-radius: 20px;
  background: linear-gradient(145deg, #e7f8ff, #ffdfcc);
  box-shadow: 0 12px 30px rgb(0 0 0 / 28%);
  font-family: "Poppins", sans-serif;
  transition: all 0.3s ease;
}
  

#mapContainer {
  width: -webkit-fill-available;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  justify-content: center;
  margin-bottom: 50px;
}

#mapBottom {
  display: flex;
  flex-direction: row;
  width: 70%;
  align-self: anchor-center;
}

#contactInfo {
  align-items: center;
  display: flex;
  flex-direction: row;
  width: 250px;
  align-content: flex-start;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0;
}

#mapDirections {
  display: flex;
  flex-direction: column-reverse;
  width: 90%;
      margin-right: 20px;
  align-content: space-between;
  flex-wrap: wrap;
}

#map {
  margin-top: 20px;
  width: 70%;
  align-self: anchor-center;
  z-index: 0;
  margin-bottom: 20px;
  height: 400px;
  box-shadow: 0px 0px 10px 0px gray;
  border-radius: 20px;
}

#btnRuta {
  font-size: 20px;
  padding: 10px;
  width: -webkit-fill-available;
  align-self: center;
  cursor: pointer;
  margin-top: auto;
  margin-bottom: 0px;
  border: none;
  border-radius: 5px;
  user-select: none;
  background-color: rgb(248, 140, 0);
  color: white;
  box-shadow: none;
}

#btnRuta:hover {
  background-color: rgb(205, 117, 1);

  text-underline-offset: 3px;
  font-style: bold;
}

#direccionUsuario {
  align-self: center;
  cursor: auto;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 10px 15px;
  font-size: 1rem;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 10px;
  transition: all 0.25s ease;
  background: #fafafa;
  outline: none;
  width: -webkit-fill-available;
}

#direccionUsuario:focus {
  border-color: #f39e61;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(243, 97, 150, 0.15);
}

h2 {
  font-size: 1.8rem;
  color: #333;
  margin-bottom: 10px;
}

h1 {
  justify-self: center;
}

hr {
  display: none;
  width: 50%;
  border: 2px solid #f3af61;
  border-radius: 2px;
  margin-bottom: 15px;
  margin-top: 10px;
} 

#formData {
  display: flex;
  flex-direction: row;
  width: 95%;
  justify-content: space-between;
  flex-wrap: wrap;
}

#mailData {
  display: flex;
  width: 50%;
  flex-direction: column;
}

label {
  font-size: 0.9rem;
  font-weight: 600;
  margin-left: 5px;
  color: #555;
  width: auto;
  margin-bottom: 6px;
}

a1 {
  font-weight: bold;
  font-family: "Inter", sans-serif;
  font-size: 40px;
  color: #ff8b36;
}

.wpp-icon2 path {
  fill: #25D366; 
}

input,
textarea {
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 10px 15px;
  font-size: 1rem;
  margin-left: 5px;
  margin-right: 5px;
  background: #fafafa;
  outline: none;
  width: auto;
}

#nombre_,
#email {
  cursor: no-drop;
}

#nombre_:focus,
#email:focus {
  border-color: #f39e61;
  box-shadow: 0 0 0 3px rgba(243, 97, 150, 0.15);
}

textarea {
  width: 80%;
  min-height: 120px;
  resize: vertical;
  margin-top: 10px;
  margin-bottom: 20px;
}

#sendBtn {
  background: linear-gradient(135deg, #f3b661, #ff7d70);
  color: white;
  padding: 20px;
  width: 200px;
  border: none;
  border-radius: 50px;
  font-size: 1rem;
  cursor: pointer;
  font-weight: 600;
  letter-spacing: 0.5px;
  transition: all 0.25s ease;
}

#sendBtn:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 18px rgba(243, 97, 150, 0.4);
}
 
@media (max-width: 768px) {
  form {
    width: 90%;
    padding: 20px;
  }

  #formData {
    display: flex;
    flex-direction: row;
    width: 94%;
    justify-content: center;
    flex-wrap: wrap;
  }

  textarea {
    width: 100%;
  }
}