.elementor-29689 .elementor-element.elementor-element-3e959ce{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29689 .elementor-element.elementor-element-290f15f{width:100%;max-width:100%;}/* Start custom CSS for html, class: .elementor-element-290f15f *//* (Opcional) si el tema no carga fuentes */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;600&family=Rufina:wght@400;700;900&display=swap');

/* ===== Layout general ===== */
.amaro-form-body {
  font-family: 'lato', sans-serif;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  margin: 0;
  background-image: url('https://amaro-oud.ch/wp-content/uploads/2025/08/b801050f8ab3b9bdf30ba2a19ba48fa516589016-2-scaled.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.amaro-form-container {
  display: flex;
  gap: 1rem;
  max-width: 1100px;
  width: 100%;
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1s ease-out, transform 1s ease-out;
  margin: 0 auto;
  overflow: hidden;
}
.amaro-form-container.show { opacity: 1; transform: translateY(0); }

/* ===== Columna izquierda ===== */
.amaro-contact-info {
  background-color: #136F60;
  color: #f0f0f0;
  padding: 50px;
  border-radius: 10px 70px 10px 10px;
}
.amaro-contact-info h2 {
  color: #F5E9D6;
  font-family: 'lato', serif;
  font-weight: 500;
  font-size: clamp(28px,5vw,52px);
  line-height: clamp(36px,6vw,64px);
  letter-spacing: clamp(0.5px,0.2vw,1px);
  margin: 0 0 30px;
  margin-top:8px;
}
.amaro-contact-info .amaro-info-item { display:flex; gap:2.5rem; margin-bottom:20px; }
.amaro-contact-info .amaro-info-item p {
  margin:0; font-family:'lato',serif; font-weight:500;
  font-size: clamp(14px,1.5vw,16px); line-height: clamp(20px,2.5vw,24px);
}
.amaro-social-icons { margin-top:60px; }
.amaro-social-icons a {
  color:#fff; text-decoration:none; font-size:18px; margin-right:15px;
  width:35px; height:35px; display:inline-flex; justify-content:center; align-items:center;
  transition: background-color .3s, color .3s;
}
.amaro-social-icons a:hover { background:#fff; color:#004643; }

/* ===== Columna derecha (formulario) ===== */
.amaro-registration-form {
  font-family: 'lato', sans-serif;
  background-color: #fff;
  padding: 28px 32px;
  width: 100%;
  max-width: 980px;
  border-radius: 10px 10px 70px 10px;
 
}
.amaro-registration-form h2 {
  font-family: 'lato', ease-out;
  margin: 0 0 10px;
  font-weight: 500;
  color: #333;
  padding: 6px;
  font-size: 45px;
}

/* Filas y grupos */
.amaro-registration-form .amaro-form-row { display:flex; gap:20px; flex-wrap:wrap; }
.amaro-registration-form .amaro-form-group { position:relative; margin-bottom:14px; width:100%; }

/* === Inputs/Textareas (forzamos sobre tema) === */
.amaro-registration-form .amaro-form-group > .amaro-input,
.amaro-registration-form .amaro-form-group > .amaro-textarea {
  width: 100% !important;
  border: none !important;
  border-bottom: 1px solid #353940 !important;
  background-color: transparent !important;
  box-shadow: none !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  color: #000 !important;
  outline: none !important;
}

/* === Label flotante (UNA sola definición) === */
.amaro-registration-form .amaro-form-group > .amaro-label {
  font-family: 'Rufina', serif;
  position: absolute;
  top: 10px; left: 14px;
  font-size: 14px;
  color: #555;
  pointer-events: none;
  transition: .2s ease all;
  line-height: 1;
}

/* Activo/focus o con valor */
.amaro-registration-form .amaro-input:focus + .amaro-label,
.amaro-registration-form .amaro-input:not(:placeholder-shown) + .amaro-label,
.amaro-registration-form .amaro-textarea:focus + .amaro-label,
.amaro-registration-form .amaro-textarea:not(:placeholder-shown) + .amaro-label {
  top: -8px; left: 14px;
  font-size: 12px;
  color: #004643;
}

/* Textarea */
.amaro-registration-form .amaro-textarea {
  resize: vertical; min-height: 90px;
  font-family: 'Rufina', serif !important;
}

/* Checkbox */
.amaro-registration-form .amaro-form-group-checkbox {
  display: flex; align-items: flex-start; gap: 10px;
  margin: 10px 0 16px;
}
.amaro-registration-form .amaro-form-group-checkbox label {
  font-size: 12px; color: #666; margin: 0; line-height: 1.5;
}

/* Botón */
.amaro-registration-form .amaro-submit-btn {
  font-family: 'Rufina', serif;
  background-color: #063029 !important;
  color: #fff !important;
  border: none; padding: 12px 30px;
  font-weight: 600; font-size: 14px;
  border-radius: 5px !important;
  cursor: pointer; transition: background-color .3s;
  margin-top: 4px;
}
.amaro-registration-form .amaro-submit-btn:hover {
  background-color: #094c40 !important; color: #fff !important;
}

/* 2 columnas en desktop */
@media (min-width: 769px){
  .amaro-registration-form .amaro-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 2 columnas iguales */
    column-gap: 24px;
    row-gap: 0;
  }
  .amaro-registration-form .amaro-form-row > .amaro-form-group {
    width: 100%;
  }
}


/* Responsive */
@media (max-width: 768px) {
  .amaro-form-container { flex-direction: column-reverse; }
  .amaro-contact-info, .amaro-registration-form { width: 100%; }
  .amaro-registration-form .amaro-form-row { flex-direction: column; gap: 0; }
}

/* Reducir la altura de "Nachricht" y dar padding interno */
.amaro-registration-form textarea#message {
  height: 84px;       /* <- si lo quieres más bajo prueba 72px */
  min-height: 84px;
  padding: 10px 14px; /* aire interno para que el texto no quede pegado */
  line-height: 1.4;
  resize: vertical;   /* permite estirarlo si el usuario quiere */
  width: 100%;
  max-width: 100%;
}/* End custom CSS */