/* CSS Document */

/* -------------------------------------------- */
/* ------------------ CONTACTO  --------------- */
/* -------------------------------------------- */

.contacto-container {
/*	padding: 80px;*/
	padding-top: 10px;
	text-align: center;
	width: 80%;
	margin-inline: auto;
}

.contacto-panes-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 70px;
	justify-content: space-between;
	padding: 20px 0 0px;
	/*	padding-bottom: 25px;*/
	text-align: center;	
	width: 100%;
/*	border: 1px solid #F00;*/
	margin: 40px auto 0px;
}

@media screen and (max-width: 500px) {
    
    .contacto-panes-container {		
		flex-direction: column;
		flex-wrap: nowrap;
    }
}

.contacto-left-pane {
	max-width: 420px;
    text-align: center;
    flex: 1;
    min-width: 250px;
	margin-inline: auto;
}

.contacto-right-pane {
	min-height: 60vh;
/*	padding-left: 70px;*/
	min-width: 300px;
/*	padding-right: 20px;*/
	flex: 1;
	vertical-align: top;
	margin: 0 auto;
	text-align: center;		
}

@media screen and (max-width: 500px) {
    
    .contacto-right-pane, 
	.contacto-left-pane {			
		min-width: auto;
		margin-inline: 0
    }
}


.contact-img {
	width: 100%;
    height: 60vh;
    object-fit: cover;
	border-radius: 10px;
}

.contacto-pie {
	color: #A1A1A1;
	margin-bottom: 35px;
}

/* ----------- FORM -------------- */
           
.form_container {
    display: block;
    width: 100%;
    margin-top: 38px;    
    margin-left: auto;
    margin-right: auto;  
/*    border-radius: 15px;   */    
    text-align: center;
}

label {
    display: block;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3px;
	font-size: 14px;
	color: #E3E3E3
}

.form_input, textarea {
	display: block;
	width: 80%;
	margin-left: auto;
	margin-right: auto;	
	border: none;
	line-height: 1.8;
	border-radius: 6px;
	padding: 3px 8px;	
	color: #FFFFFF;
	font-weight: 500;
	font-size: 15px;
	background-color: #444444;
/*	border: 2px dashed #666;*/
	text-align: left;
}

textarea {	
	resize: vertical;
	max-height: 300px;
}

@media screen and (max-width: 1300px) {
	
	.form_input, textarea {
		width: 100%;
	}
}
input:focus, textarea:focus {
	outline: none;
	border: 1px solid #4AA19A;
}

.form_boton_submit {
	display: block;
	background-color: #4AA19A;
	margin-left: auto;
	margin-right: auto;
	margin-top: 30px;
	color: #000000;
	font-weight: bold;
	font-size: 16px;
	padding: 8px 70px;
	margin-bottom: 50px;
}

.form_boton_submit:hover {
	background-color: #FCB900;
}

input::placeholder, textarea::placeholder {
  	font-weight: normal;
	font-size: 95%;
	font-style: italic;
	text-align: left;
}



/* ============================
          RESPONSIVENESS       
    ==========================  */
  
   /* ----------------------------
             1230
   ---------------------------- */

@media screen and (max-width: 1318px) {

        .form_container {
            box-sizing: border-box;
            width: 100%;
        }
           
}


/* ----------------------------
          732
---------------------------- */

@media screen and (max-width: 732px) {
    
    .form_boton_submit {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    .form_button_reset {        
        margin-left: auto;
        margin-right: auto;
        margin-top: 20px;
    }
}


/* ----------------------------
             370
---------------------------- */  

@media screen and (max-width: 370px) {
    
    .form_boton_submit {
        width: 150px;
        text-align: center;
        padding-inline: 20px;  
    }

    .form_container {
/*        padding-left: 40px;*/
        /* padding-right: 40px; */
    }
}




/*----- EFECTO DE REDONDEL TIZA ------*/

/*
.form_container {
  position: relative;
  padding: 40px;
  background-color: #000;  
  border-radius: 50%;
  width: 100%;
  max-width: 600px;
  margin: 20px auto;
}

.form_container::before {
  content: "";
  position: absolute;
  top: -12px;  
  left: -12px;
  right: -12px;
  bottom: -12px;
  border: 8px solid transparent;
  border-radius: 50%;
  background: 
*/
    /* Chalk texture - only visible on border */
/*
    padding-box,
    url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><filter id="noise"><feTurbulence type="fractalNoise" baseFrequency="1" numOctaves="2"/></filter><rect width="100" height="100" filter="url(%23noise)" fill="white"/></svg>') border-box;
  background-size: 30px 30px;
  z-index: -1;
  animation: chalk-glow 5s infinite alternate;
  filter: drop-shadow(0 0 5px rgba(248,248,248,0.3));
}

@keyframes chalk-glow {
  0% { opacity: 0.6; }
  100% { opacity: 1; }
}
*/

/*  ========================  
              FORM 
    ========================
*/

/*  SUCCESS/ERROR MESSAGES  */

    .form-message {
        display: block;   
        width: 80%;
        padding: 14px 40px;     
        font-size: .9rem;
        text-align: center;
        border-style: solid;
        border-width: 1px;
        border-radius: 8px;
        margin: 25px auto 15px auto;
        font-weight: 600;
    }

    .success {
        color: #063E09;
        background-color: #CBEDBB;
        border-color: #77BC7F;
    }

    .error {
        color: #5A0A0A;
        background-color: #FFD8D8;
        border-color: #FF5656;
    }

    .blue {
        color: #133B56;
        background-color: #BFE0EF;
        border-color: #779CBC;
    }


    /*   Error fields  */

    .error-field {
        border-color: #e74c3c !important;
        background-color: #fde8e8;
       
    }

    .error-field-border {
        border-color: #e74c3c !important;
        background-color: #fffafa;
    }

    .error-field-text {
        display: block;   
        color: #ba3122;
        font-size: 0.9rem;
        position: absolute;
        left: 170px; 
        top: 95%; 
        margin-top: 2px;
        width: calc(100% - 170px);           
    }    


 /*  Submit button - spinning when loading */

    @keyframes spin {
        from { transform: translateY(-50%) rotate(0deg); }
        to { transform: translateY(-50%) rotate(360deg); }
    }

    .loading {
        margin: 50px auto -10px auto;        
        pointer-events: none;
        text-align: center;
        width: 45px;
        height: 45px;
        border: 6px solid var(--redok);
        border-radius: 50%;
        border-top-color: transparent;
        animation: spin 0.8s linear infinite;   
		display: block;
	}

/* =========================== */
/*        RESPONSIVENESS      */
/* =========================== */

@media screen and (max-width: 1318px) {

	.form-message {
		width: 100%;
	}
}

@media screen and (max-width: 760px) {

	 .error-field-text {
		position: relative;
		text-align: center;
		width: 100%;
		left: 0;
		top: 0;
	 }
}
