/* ================================
   SECCIÓN CONTACTO
   ================================ */

.contacto{
  background:#f7f9fc;
  padding:80px 0;
}

.contacto__grid{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(0,1.6fr);
  gap:40px;
  align-items:flex-start;
}

/* Intro */
.contacto__intro{
  max-width:600px;
  margin:0 0 24px;
  font-size:0.98rem;
  line-height:1.6;
  color:#4a5670;
}

/* Formulario */
.form{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.form__row{
  display:flex;
  gap:16px;
}

.form__field{
  flex:1;
  display:flex;
  flex-direction:column;
}

.form__field label{
  font-size:0.9rem;
  font-weight:600;
  margin-bottom:4px;
  color:#00295E;
}

.form__field input,
.form__field textarea{
  border:1px solid #d0d7e2;
  border-radius:6px;
  padding:10px 12px;
  font-family:"Montserrat",system-ui,-apple-system,Segoe UI,Roboto,Arial;
  font-size:0.95rem;
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
  background:#ffffff;
}

.form__field textarea{
  resize:vertical;
  min-height:140px;
}

.form__field input:focus,
.form__field textarea:focus{
  border-color:var(--navbar-accent);
  box-shadow:0 0 0 1px rgba(0,160,51,0.15);
  background:#ffffff;
}

.form__actions{
  margin-top:8px;
  display:flex;
  flex-direction:column;
  gap:6px;
}

.form__submit{
  align-self:flex-start;
  border:none;
  border-radius:999px;
  padding:10px 22px;
  font-weight:600;
  font-size:0.95rem;
  cursor:pointer;
  background:var(--navbar-accent);
  color:#ffffff;
  box-shadow:0 10px 20px rgba(0,0,0,0.15);
  transition:background .2s ease, transform .15s ease, box-shadow .15s ease;
}

.form__submit:hover{
  background:#01852b;
  transform:translateY(-1px);
  box-shadow:0 14px 26px rgba(0,0,0,0.2);
}

.form__submit:active{
  transform:translateY(0);
  box-shadow:0 8px 16px rgba(0,0,0,0.18);
}

.form__note{
  font-size:0.8rem;
  color:#7a859a;
}

/* COLUMN RIGHT (INFO + MAPA) */
.contacto__info{
  background:#ffffff;
  border-radius:14px;
  padding:24px 22px;
  box-shadow:0 18px 40px rgba(10,26,54,0.12);
}

.contacto__subtitle{
  font-size:1.05rem;
  font-weight:700;
  color:#00295E;
  margin:0 0 10px;
}

.contacto__subtitle--map{
  margin-top:24px;
}

.contacto__list{
  list-style:none;
  padding:0;
  margin:0 0 16px;
  font-size:0.95rem;
  color:#4a5670;
}

.contacto__list li{
  margin-bottom:8px;
}

.contacto__list strong{
  font-weight:600;
  color:#00295E;
}

.contacto__list a{
  color:var(--navbar-accent);
  text-decoration:none;
}

.contacto__list a:hover{
  text-decoration:underline;
}

/* Mapa */
.contacto__map-wrap{
  border-radius:12px;
  overflow:hidden;
  background:#dbe2ea;
}

.contacto__map{
  width:100%;
  height:260px;
  display:block;
}

.contacto__whatsapp{
  margin-top:12px;
  font-size:0.9rem;
  color:#4a5670;
}

.contacto__whatsapp a{
  color:var(--navbar-accent);
  font-weight:600;
  text-decoration:none;
}

.contacto__whatsapp a:hover{
  text-decoration:underline;
}

/* ================================
   RESPONSIVE
   ================================ */
@media (max-width:900px){
  .contacto__grid{
    grid-template-columns:1fr;
  }

  .contacto__info{
    order:-1; /* podés quitar esto si preferís que quede abajo */
  }

  .form__row{
    flex-direction:column;
  }

  .form__submit{
    width:100%;
    text-align:center;
  }
}
