.elementor-4642 .elementor-element.elementor-element-ad46735{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4642 .elementor-element.elementor-element-8bf40d7{--display:flex;--min-height:800px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:#C7C7C7;--border-color:#C7C7C7;--border-radius:0px 0px 0px 0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-4642 .elementor-element.elementor-element-8bf40d7:not(.elementor-motion-effects-element-type-background), .elementor-4642 .elementor-element.elementor-element-8bf40d7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-4642 .elementor-element.elementor-element-8bf40d7.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4642 .elementor-element.elementor-element-1530c6f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}@media(max-width:1024px){.elementor-4642 .elementor-element.elementor-element-8bf40d7{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}}@media(min-width:768px){.elementor-4642 .elementor-element.elementor-element-ad46735{--content-width:1600px;}.elementor-4642 .elementor-element.elementor-element-8bf40d7{--width:18%;}.elementor-4642 .elementor-element.elementor-element-1530c6f{--width:66.6666%;}}@media(max-width:1024px) and (min-width:768px){.elementor-4642 .elementor-element.elementor-element-8bf40d7{--width:230px;}}/* Start custom CSS for template, class: .elementor-element-bf8b92c *//* ===== CONTENEDOR GENERAL DEL FORMULARIO ===== */
form {
  max-width: 900px;
  margin: auto;
  padding: 30px;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  font-family: 'Segoe UI', sans-serif;
}

/* ===== CAMPOS DE TEXTO, EMAIL, SELECT, TEXTAREA ===== */
form input[type="text"],
form input[type="email"],
form input[type="url"],
form input[type="date"],
form input[type="tel"],
form select,
form textarea {
  width: 100%;
  padding: 12px 14px;
  margin-bottom: 20px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  font-size: 15px;
  transition: all 0.2s ease;
}

form input:focus,
form textarea:focus,
form select:focus {
  border-color: #38b2ac;
  outline: none;
  box-shadow: 0 0 0 2px #38b2ac33;
}

/* ===== CATEGORÍAS Y AMENITIES EN DOS COLUMNAS ===== */
form fieldset div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
form fieldset label {
  flex: 1 1 45%;
  display: flex;
  align-items: center;
  padding: 10px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  background-color: #f8fafc;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s ease;
}
form fieldset input[type="checkbox"] {
  margin-right: 8px;
}

/* ===== BOTÓN DE ENVÍO ===== */
form button[type="submit"],
form input[type="submit"] {
  background-color: #38b2ac;
  color: white;
  padding: 14px 26px;
  font-size: 16px;
  font-weight: 600;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  display: inline-block;
  transition: background 0.3s ease;
  margin-top: 10px;
}

form button[type="submit"]:hover {
  background-color: #2c7a7b;
}

/* ===== BOTONES DE INPUT FILE PERSONALIZADOS ===== */
.file-upload-wrapper {
  margin-bottom: 20px;
}

.file-upload-wrapper input[type="file"] {
  display: none;
}

.custom-upload-label {
  display: inline-block;
  background-color: #38b2ac;
  color: white;
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  margin-bottom: 10px;
  transition: background 0.3s ease;
}

.custom-upload-label:hover {
  background-color: #2c7a7b;
}

/* ===== PREVIEW DE IMÁGENES CON BOTÓN DE ELIMINAR ===== */
.image-preview {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.preview-wrapper {
  position: relative;
  display: inline-block;
  margin: 6px;
}

.preview-wrapper img {
  width: 70px;
  height: 70px;
  object-fit: cover;
  border-radius: 4px;
  box-shadow: 0 0 4px rgba(0,0,0,0.15);
}

/* Botón ❌ */
.remove-preview {
  position: absolute;
  top: -6px;
  right: -6px;
  background: #e53e3e;
  color: white;
  font-size: 12px;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
}

/* ===== MENSAJES DE ÉXITO Y ERROR ===== */
.notice-success {
  background-color: #e6fffa;
  border-left: 5px solid #38b2ac;
  padding: 12px 18px;
  border-radius: 6px;
  margin-bottom: 20px;
  color: #234e52;
}

.notice-error {
  background-color: #fed7d7;
  border-left: 5px solid #e53e3e;
  padding: 12px 18px;
  border-radius: 6px;
  margin-bottom: 20px;
  color: #742a2a;
}

.custom-upload-label {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px 0;
    background-color: #38b2ac;
    color: #fff;
    font-weight: bold;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.custom-upload-label:hover {
    background-color: #319b94;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 600px) {
  form fieldset label {
    flex: 1 1 100%;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0d139fe *//* ===== CONTENEDOR GENERAL DEL FORMULARIO ===== */
form {
  max-width: 900px;
  margin: auto;
  padding: 30px;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  font-family: 'Segoe UI', sans-serif;
}

/* ===== CAMPOS DE TEXTO, EMAIL, SELECT, TEXTAREA ===== */
form input[type="text"],
form input[type="email"],
form input[type="url"],
form input[type="date"],
form input[type="tel"],
form select,
form textarea {
  width: 100%;
  padding: 12px 14px;
  margin-bottom: 20px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  font-size: 15px;
  transition: all 0.2s ease;
}

form input:focus,
form textarea:focus,
form select:focus {
  border-color: #38b2ac;
  outline: none;
  box-shadow: 0 0 0 2px #38b2ac33;
}

/* ===== CATEGORÍAS Y AMENITIES EN DOS COLUMNAS ===== */
form fieldset div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
form fieldset label {
  flex: 1 1 45%;
  display: flex;
  align-items: center;
  padding: 10px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  background-color: #f8fafc;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s ease;
}
form fieldset input[type="checkbox"] {
  margin-right: 8px;
}

/* ===== BOTÓN DE ENVÍO ===== */
form button[type="submit"],
form input[type="submit"] {
  background-color: #38b2ac;
  color: white;
  padding: 14px 26px;
  font-size: 16px;
  font-weight: 600;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  display: inline-block;
  transition: background 0.3s ease;
  margin-top: 10px;
}

form button[type="submit"]:hover {
  background-color: #2c7a7b;
}

/* ===== BOTONES DE INPUT FILE PERSONALIZADOS ===== */
.file-upload-wrapper {
  margin-bottom: 20px;
}

.file-upload-wrapper input[type="file"] {
  display: none;
}

.custom-upload-label {
  display: inline-block;
  background-color: #38b2ac;
  color: white;
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  margin-bottom: 10px;
  transition: background 0.3s ease;
}

.custom-upload-label:hover {
  background-color: #2c7a7b;
}

/* ===== PREVIEW DE IMÁGENES CON BOTÓN DE ELIMINAR ===== */
.image-preview {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.preview-wrapper {
  position: relative;
  display: inline-block;
  margin: 6px;
}

.preview-wrapper img {
  width: 70px;
  height: 70px;
  object-fit: cover;
  border-radius: 4px;
  box-shadow: 0 0 4px rgba(0,0,0,0.15);
}

/* Botón ❌ */
.remove-preview {
  position: absolute;
  top: -6px;
  right: -6px;
  background: #e53e3e;
  color: white;
  font-size: 12px;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
}

/* ===== MENSAJES DE ÉXITO Y ERROR ===== */
.notice-success {
  background-color: #e6fffa;
  border-left: 5px solid #38b2ac;
  padding: 12px 18px;
  border-radius: 6px;
  margin-bottom: 20px;
  color: #234e52;
}

.notice-error {
  background-color: #fed7d7;
  border-left: 5px solid #e53e3e;
  padding: 12px 18px;
  border-radius: 6px;
  margin-bottom: 20px;
  color: #742a2a;
}

.custom-upload-label {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px 0;
    background-color: #38b2ac;
    color: #fff;
    font-weight: bold;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.custom-upload-label:hover {
    background-color: #319b94;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 600px) {
  form fieldset label {
    flex: 1 1 100%;
  }
}/* End custom CSS */